曲向宇 ,李一平
(1. 中國科學(xué)院沈陽自動化研究所 機器人學(xué)國家重點實驗室,遼寧 沈陽 110016;2. 中國科學(xué)院機器人與智能制造創(chuàng)新研究院,遼寧 沈陽 110169;3. 中國科學(xué)院大學(xué),北京 100049)
海洋鋒面是指海洋中存在兩種或多種理化性質(zhì)顯著不同的水體的區(qū)域,該區(qū)域水文要素呈現(xiàn)較高的水平梯度,在空間上呈狹長帶狀結(jié)構(gòu)[1]。因為鋒面區(qū)域內(nèi)的能量交換非常強烈,所以海洋鋒面在海洋動力學(xué)的研究中十分重要。同時,由于鋒區(qū)內(nèi)存在特殊的物理過程,特別是上升流現(xiàn)象,使得該區(qū)域海水富營養(yǎng)化,海水初級生產(chǎn)力提高,與海洋產(chǎn)業(yè)活動聯(lián)系十分緊密。另外,海洋鋒面對水聲通信技術(shù)的影響也非常明顯。因此,研究和觀測海洋鋒面這種海洋現(xiàn)象,對于海洋科學(xué)、海洋漁業(yè)以及海洋軍事作戰(zhàn)具有重大意義[2]。
常規(guī)的海洋特征觀測方法如潛標(biāo)、浮標(biāo),使用相應(yīng)的傳感器,在固定的位置或在漂流狀態(tài)下進行觀測。而自主水下機器人(AUV)利用自身搭載的傳感器,可以實現(xiàn)對目標(biāo)區(qū)域水文要素的連續(xù)動態(tài)觀測,相較于常規(guī)方法具有快速性和自主性的優(yōu)點[3]。由于鋒面這種海洋特征,易受風(fēng)、海流等因素影響,水文要素復(fù)雜且變化較快,為了快速對指定區(qū)域采樣,通常使用AUV 進行海洋特征的觀測[4]。
AUV 通常采用梳狀觀測方法,對感興趣區(qū)域進行覆蓋觀測,但該方法缺乏自主性和靈活性,不適合作為海洋特征觀測的方法[5-6]。Zhang Y 等[7-8]提出了一種基于溫度梯度閾值的“之”字鋒面跟蹤算法,該方法設(shè)置了鋒面的溫度梯度閾值,用來判斷AUV是否進入鋒面,并通過對航向角的調(diào)整,實現(xiàn)AUV在觀測區(qū)域內(nèi)的往復(fù)鋒面跟蹤。Wang D[9]根據(jù)實時觀測到的溫度數(shù)據(jù),利用最小二乘法估計鋒面區(qū)域的梯度方向,保持AUV 沿著溫度梯度上升或下降的方向前進,當(dāng)?shù)竭_設(shè)定的等溫線進行折返,實現(xiàn)AUV 在指定溫度邊界之間的鋒面跟蹤??紤]到鋒區(qū)的形態(tài)往往較為復(fù)雜,需要鋒面跟蹤算法具有較高的環(huán)境適應(yīng)性,避免陷入特定區(qū)域重復(fù)觀測?;谝陨峡紤],本文提出了一種基于溫度動態(tài)估計的鋒面跟蹤算法,在AUV 到達鋒面邊界時,通過沿等溫線跟蹤一段距離,來加快鋒面跟蹤速度,并脫離“陷阱”區(qū)域,保持了對鋒面的持續(xù)跟蹤能力;選用高斯過程回歸(GPR),替代最小二乘法作為溫度動態(tài)估計的方法,增加了近鄰區(qū)溫度預(yù)測的準確性[10-12]。
中國的東部近海在冬季有著穩(wěn)定豐富的海洋鋒面現(xiàn)象。本文選取一個典型的沿岸鋒面——山東半島南部“N”形鋒面作為研究對象。該鋒面在冬季位置穩(wěn)定,具有規(guī)則的形態(tài),在121°E 西面平行于海岸線,在 121°E,36°N(A 區(qū)域)以東呈離岸走勢,向東南方向約伸展到 122°E,35.5°N 附近,在該位置東面,沿東北方向分布至山東外海。該鋒面呈現(xiàn)了一個完整的“N”形結(jié)構(gòu),在12 月中旬至2 月中旬之間,鋒面豐富且形態(tài)成熟,3 月份之后逐漸消亡[13]??紤]到AUV 的續(xù)航力有限,無法對整個鋒面全部觀測,故本文選取“N”形鋒面的A 區(qū)域,用于鋒面跟蹤算法的仿真驗證。
本文選用MODIS 海溫衛(wèi)星遙感資料作為鋒區(qū)溫度數(shù)據(jù)來源,MODIS 的L3 級數(shù)據(jù)產(chǎn)品可提供全球范圍的遙感數(shù)據(jù)。文中所需的海水表層溫度(SST)數(shù)據(jù)由美國國家航空航天局(NASA)網(wǎng)站免費提供,下載的數(shù)據(jù)集名稱為AQUA_MODIS.20191211.L3m.DAY.SST.sst.4 km.NRT.nc,空間分辨率為4.64 km,時間分辨率為1 d。通過對數(shù)據(jù)集的處理,可以繪制出“N”形鋒面的SST 圖像。如圖1 所示,給出了在2019 年12 月11 日該區(qū)域的海水溫度情況。
圖1 山東半島南部“N”形鋒面
從圖中可以明顯地觀察到“N”形鋒面的形態(tài)和位置,其中鋒面的 A 區(qū)域在 121°E、36°N 附近。進一步縮小數(shù)據(jù)集范圍,A 區(qū)域SST 圖像如圖2 所示。
圖2 鋒面A 區(qū)域
考慮數(shù)據(jù)集中溫度值的空間分辨率為4.64 km,圖2 中所示區(qū)域內(nèi)的數(shù)據(jù)點過少,無法滿足在鋒面跟蹤任務(wù)中對算法對采樣數(shù)據(jù)的處理需求。因此,本文利用樣條函數(shù)插值的方法對所選區(qū)域的數(shù)據(jù)點進行插值處理。定義了一個長度為45 km、寬度為35 km 的任務(wù)區(qū)域,設(shè)置溫度數(shù)據(jù)點的間距為0.1 km,經(jīng)插值后得到的A 區(qū)域溫度場如圖3 所示。至此,本文完成了任務(wù)所選鋒面區(qū)域的溫度場模擬。
圖3 插值后的鋒面A 區(qū)域
考慮到海洋特征的水平與垂直性質(zhì),AUV 通常采用水平分層觀測或者垂直剖面觀測的方法進行特征跟蹤。由于鋒面具有較高的溫度水平梯度,一般令A(yù)UV 在固定的深度執(zhí)行鋒面觀測任務(wù)。本文利用AUV 近一段時間內(nèi)采集的溫度數(shù)據(jù),通過高斯過程回歸的方法預(yù)測近鄰區(qū)溫度分布,并根據(jù)預(yù)測結(jié)果,選取AUV 下一次鋒面跟蹤的路徑點。在路徑規(guī)劃階段,首先判斷AUV 所處鋒區(qū)位置,若在鋒區(qū)內(nèi)部,則保持跟蹤路徑沿著溫度梯度方向,在鋒區(qū)內(nèi)執(zhí)行梯度下降或上升的鋒面跟蹤動作;當(dāng)航行到鋒面邊界時,采取沿等溫線跟蹤的動作。本文提出的鋒面跟蹤算法流程圖如圖4 所示。
本文令A(yù)UV 在觀測區(qū)內(nèi)的等溫線Thot和Tcold之間(冷熱水團分界面),進行鋒面跟蹤任務(wù)。當(dāng)開始執(zhí)行任務(wù)時,假定AUV 的任務(wù)初始點在任務(wù)區(qū)域外,令其沿著預(yù)定義航向運動到等溫線Thot或Tcold上,之后開始執(zhí)行鋒面跟蹤算法。這樣做有兩個好處,一是AUV 的布放位置可以有更多的選擇,二是為溫度預(yù)測累計輸入樣本。
圖4 本文鋒面跟蹤算法流程圖
高斯過程回歸(GPR)是一種優(yōu)秀的環(huán)境模型估計方法,本文利用GPR 方法對AUV 一段時間內(nèi)采樣的溫度數(shù)據(jù)進行分析,來預(yù)測當(dāng)前位置附近區(qū)域的溫度場分布。已知AUV 在鋒區(qū)近一段時間內(nèi)n次溫度采樣的數(shù)據(jù),其中輸入位置集合X={xi∈Rd|i=1,2,…,n},對應(yīng)有溫度集合 y={yi|i=1,2,…,n},共同構(gòu)成訓(xùn)練數(shù)據(jù)集D={X,y}。利用GPR 方法,可對D 找到反映出訓(xùn)練集合內(nèi)輸入與輸出之間的函數(shù)映射關(guān)系,并根據(jù)測試位置X*,求出對應(yīng)的預(yù)測值y*,獲得了指定位置的溫度預(yù)測值。
在任務(wù)區(qū)域內(nèi),AUV 保持固定航速,Δt 為相鄰采樣時間間隔,相鄰采樣點之間的距離為R0。隨著任務(wù)執(zhí)行時間的不斷增加,AUV 溫度采樣的數(shù)據(jù)越來越多。若將所有的數(shù)據(jù)都作為GPR 的樣本輸入,無疑會增加溫度預(yù)測的數(shù)據(jù)處理時間,并且較早的歷史數(shù)據(jù)會干擾當(dāng)前位置的預(yù)測結(jié)果。本文通過設(shè)定預(yù)測窗口寬度m,來定期更新GPR 的樣本輸入數(shù)據(jù)集合。如果采樣點無法填滿窗口,將寬度m 臨時調(diào)整為此時的采樣點數(shù)量。
AUV 的自適應(yīng)路徑規(guī)劃主要被分為兩種情況,沿梯度方向跟蹤和沿等溫線跟蹤。通過判斷AUV當(dāng)前位置,決定其下一步規(guī)劃執(zhí)行的具體任務(wù)。如圖5 所示,為自適應(yīng)路徑規(guī)劃的示意圖。
2.3.1 位置判斷方法 本文將溫度閾值作為對AUV 位置進行判斷的條件,表示為:
圖5 自適應(yīng)路徑規(guī)劃示意圖
式中:Tk表示當(dāng)前位置的溫度值;Tb為上一次所達邊界的溫度值;閾值當(dāng)滿足ΔT≥Tth時,判斷當(dāng)前位置位于等溫線邊界,開始執(zhí)行沿等溫線跟蹤任務(wù),并且令Tb=Tk,更新邊界溫度;若不滿足,判斷位于鋒區(qū),繼續(xù)執(zhí)行沿梯度方向跟蹤任務(wù)。
2.3.2 沿梯度方向跟蹤 鋒區(qū)具有較高的溫度水平梯度,本文定義從溫度邊界Thot向Tcold運動時,執(zhí)行梯度下降搜索策略,反之執(zhí)行梯度上升搜索策略。海洋鋒面是動態(tài)變化的,為了提高觀測速度,結(jié)合實時預(yù)測的溫度場可以確定鋒區(qū)內(nèi)AUV 相鄰觀測點之間的最優(yōu)距離R。考慮預(yù)測溫度場的準確性隨距離成負相關(guān),觀測點之間的距離不宜過大,定義Ri∈[R0hR0],其中h 為常數(shù)。若AUV 當(dāng)前位置為xk,溫度值為yk,利用GPR 對與當(dāng)前位置距離為Ri的圓形觀測區(qū)域的溫度場進行估計,可以獲得溫度預(yù)測集合YRi,對應(yīng)位置坐標(biāo)集合PRi。若為梯度上升方向,對應(yīng)Ri的估計梯度值GRi表示為:
若為梯度下降方向,GRi表示為:
式中:αRi為距離權(quán)重因子,衡量預(yù)測半徑對估計值的影響,表示為:
i最優(yōu)觀測距離R=Ri,表示對應(yīng)期望觀測點的鋒面強度最高。接下來求取期望觀測點的坐標(biāo),考慮對應(yīng)R的坐標(biāo)集合溫度預(yù)測值集合Y=R若為梯度上升搜索,則YR;若為梯度下降搜索,則將對應(yīng)的作為 AUV 的第 k+1 次觀測位置 xk+1。考慮AUV 的采樣間隔為R0,則觀測目標(biāo)之間的采樣路徑點數(shù)記為R/R0,分布在相鄰觀測點所在位置之間的直線上,沿梯度方向路徑點選取如圖6 所示。
圖6 沿梯度方向路徑點選取
2.3.3 沿等溫線跟蹤 當(dāng)AUV 沿著梯度方向運動到溫度邊界時,根據(jù)鋒面跟蹤算法,將路徑規(guī)劃策略切換為沿等溫線跟蹤。該部分將觀測距離固定為R0,便于控制跟蹤路徑長度。本文定義跟蹤等溫線的路徑點數(shù)量為w,那么一次等溫線跟蹤的路徑長度為w·R0。沿等溫線方向路徑點選取的示意圖,如圖7 所示。
圖7 沿等溫線方向路徑點選取
當(dāng)AUV 第k 次觀測到達溫度邊界Thot時,將采取沿等溫線跟蹤的動作。近鄰區(qū)位置坐標(biāo)集合調(diào)整為 PB_circle,溫度預(yù)測值集合為 YB_circle,令選擇預(yù)測值最接近Thot的位置作為新的觀測點。半圓B 的方向角度為ψB,它決定了半圓內(nèi)的可選觀測點范圍,即PB_circle。ψB的值為上次跟蹤等溫線的方向,即上次等溫線跟蹤路徑上末點與始點之間的方向角,用來預(yù)測當(dāng)前跟蹤的等溫線角度。每次AUV 切換到沿等溫線跟蹤的動作時,ψB都會被重新計算。當(dāng)AUV 沿著等溫線跟蹤的累計距離為w·R0時,將重新切換為沿梯度方向跟蹤。
已知觀測區(qū)域A 尺寸為35 km × 45 km,設(shè)置AUV 的采樣間隔R0=0.1 km,固定航速V=1.5 m/s,定義Thot=13℃,Tcold=12.4℃,路徑點總數(shù)為Num=1 500(150 km),起始位置為(8,10)。在選取不同等溫線跟蹤長度w 的情況下,文中提出算法的仿真結(jié)果如8 所示。
圖8 不同w 下本文算法仿真結(jié)果
從仿真結(jié)果可以發(fā)現(xiàn),當(dāng)w=20 時,AUV 在鋒帶彎折區(qū)域內(nèi)觀測較為密集,速度較慢,耗費了較多的時間;當(dāng)w=25、w=30 時,算法均迅速地擺脫了彎折區(qū)域,較快地完成了鋒面跟蹤任務(wù);當(dāng)w=35 時,AUV 在路徑點Num=1 201 時就完成了該區(qū)域的跟蹤任務(wù),但是過快的跟蹤速度導(dǎo)致了鋒面觀測效率變低。
基于以上分析,本文算法通過改變w 的大小,可以調(diào)整AUV 在鋒面跟蹤過程中的精細觀測程度。w 應(yīng)根據(jù)具體任務(wù)選取一個合適的值,若要加快跟蹤速度、覆蓋更廣的鋒面區(qū)域,則適當(dāng)提高w 的值;若要提高對當(dāng)前區(qū)域的鋒面跟蹤精細程度,應(yīng)適當(dāng)減小w 的值。
為了驗證GPR 環(huán)境模型估計方法的準確性,本文利用不同時刻預(yù)測的近鄰區(qū)溫度場和對應(yīng)的實際溫度場的均方誤差進行描述。均方誤差的表達式為:
式中,yi表示預(yù)測值,tpi表示真實值。選取算法(w=25)執(zhí)行期間的4 個不同時刻,GPR 不同預(yù)測半徑R 對應(yīng)的均方誤差如圖9 所示。
圖中不同的Num 值描述了AUV 任務(wù)期間的不同時刻所處的位置。由上圖可知,GPR 的預(yù)測半徑R 越小,對環(huán)境的預(yù)測誤差值越低;任務(wù)執(zhí)行的越久,GPR 對環(huán)境估計的越準確。算法中的預(yù)測半徑R 一般不超過0.5 km,此時預(yù)測誤差量級約為10-4,可以較為準確地估計當(dāng)前AUV 近鄰區(qū)的溫度場,表現(xiàn)了GPR 對鋒面觀測區(qū)域優(yōu)秀的溫度估計能力。
圖9 GPR 環(huán)境實時預(yù)測的均方誤差
為了分析算法性能,將傳統(tǒng)的鋒面之字跟蹤算法(簡稱為對比方法1)和基于最小二乘法的鋒面之字跟蹤算法(簡稱為對比方法2),與本文算法(w=25)進行對比仿真實驗。本次仿真不對路徑點數(shù)目進行限制,直至完成觀測區(qū)域內(nèi)的鋒面跟蹤任務(wù)。其余仿真參數(shù)不變,各算法的仿真結(jié)果如圖10 所示。
圖10 對比仿真結(jié)果1
由上圖仿真結(jié)果可知,對比算法1 在鋒面彎折區(qū)域失去了對鋒面的跟蹤能力,無法完成對鋒面的跟蹤;對比算法2 和本文算法均可在上述仿真情況下完成鋒面跟蹤任務(wù)。
為了比較算法的觀測效率,定義了平均路徑鋒面溫度梯度值GM,代表了單位觀測路徑長度上鋒面所占的比重,表示為:
式中:Gi為對應(yīng)觀測位置的溫度梯度值,采用sobel 梯度算子對插值后的溫度場進行計算而得到。算法的快速性可通過任務(wù)總時間TA 來表示:
在上述仿真結(jié)果下,對比算法2 和本文算法的性能指標(biāo)如表1 所示。
表1 性能指標(biāo)
本文算法在觀測效率上與對比算法2 相近,在跟蹤速度上快了約39.4%,體現(xiàn)了本文算法鋒面跟蹤的快速性。
接下來重點考慮算法的穩(wěn)定性和環(huán)境適應(yīng)能力。設(shè)置Thot=13.2℃,Tcold=12.3℃,擴大了待觀測的鋒面區(qū)域,并將起始位置調(diào)整為(5,10),保持其他參數(shù)不變,對比算法2 和本文算法的仿真結(jié)果如圖11所示。
圖11 對比仿真結(jié)果2
對比算法2 執(zhí)行任務(wù)的過程中于3 處區(qū)域陷入了重復(fù)觀測,整個任務(wù)耗費了大量時間??梢园l(fā)現(xiàn),當(dāng)鋒面的形態(tài)變化較為顯著時,鋒面跟蹤任務(wù)要求算法具有一定的抗干擾能力。本文算法通過沿等溫線(即鋒區(qū)邊界)跟蹤,不斷擺脫“陷阱”,即便邊界形態(tài)變化較大,算法也能持續(xù)地跟蹤鋒面,并且保持了快速的跟蹤速度??梢姳疚奶岢龅匿h面跟蹤算法,具有良好的環(huán)境適應(yīng)能力,且能夠穩(wěn)定、快速地跟蹤鋒面。
本文提出了一種基于溫度動態(tài)估計的AUV 鋒面跟蹤算法,該算法利用更新的環(huán)境信息實時預(yù)測近鄰區(qū)溫度分布,并根據(jù)當(dāng)前位置選擇不同的路徑規(guī)劃策略。若在鋒區(qū)內(nèi)部,則沿梯度方向跟蹤來搜索鋒面,通過實時預(yù)測的環(huán)境確定最優(yōu)觀測距離,從而提高鋒面觀測速度;若在鋒區(qū)邊界,則沿等溫線跟蹤來加速擺脫鋒面,通過改變邊界跟蹤長度,可以實現(xiàn)對鋒面不同程度的精細觀測。使用該算法對不同觀測區(qū)域的鋒面進行仿真,結(jié)果顯示,本文算法較于常規(guī)算法,在觀測速度和環(huán)境適應(yīng)能力上有更好的表現(xiàn),可應(yīng)用于不同鋒面區(qū)域的跟蹤任務(wù)。本文研究中的鋒面觀測區(qū)域是水平方向的,下一步計劃是結(jié)合鋒面在垂直方向上的特性,進行空間上的AUV 鋒面跟蹤算法研究。