樓建坤,王鴻東*,王檢耀,易宏
1 上海交通大學 海洋智能裝備與系統教育部重點實驗室,上海 200240
2 上海交通大學 海洋工程國家重點實驗室,上海 200240
隨著人工智能技術在船海裝備領域的滲透與應用,以無人艇(USV)為代表的海洋智能裝備與系統迎來前所未有的發(fā)展機遇,并逐漸應用于水路運輸、海洋測繪和軍事作戰(zhàn)等領域[1-3]。不同于基于人機交互操控的傳統裝備,無人艇的功能實質上是由算法軟件所定義。信息感知、規(guī)劃決策和運動控制等無人艇自主系統關鍵技術在實際應用中存在的問題,也逐漸被人們所認知,并提出了“無人艇智能演進”需求的概念[1]。
無人艇效能是指無人艇在給定時間內特定海域完成指定任務的能力,是無人艇價值高低的度量[4-5]。因此,無人艇智能演進的目標,是裝備效能的提升。無人艇智能演進的路徑,是通過學習運行過程中的觀測數據,實現自主系統的持續(xù)迭代優(yōu)化[6]。然而,相比于無人機、無人車等無人裝備,無人艇自主系統的學習與迭代面臨更大的挑戰(zhàn):
一是無人艇自身系統的復雜性。同其他復雜裝備的系統類似,無人艇系統本身繼承了大量子系統,屬于“系統之系統”。而無人艇系統子功能單項性能的提高與無人艇系統效能的增長并非單調遞增的線性關系。因此,無人艇效能評估具有乏信息、多層次和強耦合等特點。例如,感知系統的輸出結果會顯著影響規(guī)劃算法的表現,進而對控制系統提出更高的要求。
二是無人艇任務環(huán)境的復雜性。在海洋環(huán)境中,無人艇面臨的風浪流等外部隨機載荷與艇體控制力相比,大多處于同一量級。在惡劣條件下,甚至會出現外載荷遠大于艇體控制力的情況[7]。目前,大部分無人艇控制算法在投入工程應用時,都需要針對運行環(huán)境特點,進行控制參數的人工整定。這一現象雖然在船舶控制領域已被廣泛討論,也形成了一些應對方法,然而,面對變幻莫測的海洋環(huán)境,無人艇單純依靠控制算法參數的自整定并不能解決問題。例如,圖像識別預處理過程中的濾波算法參數需根據天氣和光線條件隨時改變;路徑規(guī)劃算法的步長應根據任務執(zhí)行范圍和障礙物分布情形進行調整。
針對上述問題,本文認為無人艇智能演進應聚焦于無人艇自主系統中算法函數和算法參數的演進,并將提出相應的智能演進方法流程。在此基礎上,擬給出一套可演進的無人艇自主系統控制結構體系。最后,以無人艇避碰算法為例,結合實海域測試,驗證機器學習方法在無人艇智能演進中的可行性和有效性。
當無人艇完成前期設計和建造后,其硬件設備及性能已基本固定。因此,無人艇智能演進應重點聚焦自主系統中算法函數及算法參數的演進。目前,在自主系統算法函數方面,已形成大量研究成果。例如,在感知方面,有語義分割和監(jiān)督學習等圖像識別算法[8];在規(guī)劃方面,有A*,D*和快速搜索樹(RRT)等路徑規(guī)劃算法[9];在控制方面,有PID和自抗擾控制(ADRC)等航行控制算法[7,10]。算法函數的演進,是指通過函數的構建、調用或組合,拓展無人艇自主系統的功能,為無人艇完成更多復雜任務提供可能。在自主系統算法參數方面,人工智能方法也已被廣泛應用于感知、規(guī)劃和控制算法參數的整定[11-12]。現有算法參數的整定大多基于準確的量化目標函數,在仿真層面或實測階段取得了一定效果,但是在考慮算法之間耦合作用及環(huán)境影響的問題上尚無深入研究。算法參數的演進,是指通過協同整定各算法參數集合,使自適應系統適應當前海洋環(huán)境和任務需求,不斷提升無人艇的裝備效能。
綜上分析,無人艇智能演進方法應用流程如圖1 所示。
無人艇人工演進階段是指在無人艇自主系統的早期設計階段,設計者需基于標準化的輸入輸出,建立算法函數庫,豐富無人艇自主系統的算法庫儲備,并根據實海域測試情況,對算法參數進行初步整定。其中,無人艇裝備效能的評估可由人工完成。這一階段的演進能夠建立對于算法性能和適用范圍的認知,并為后續(xù)自主演進及在線演進階段提供具有參考意義的參數集分類、可行參數域和演進目標函數。
無人艇自主演進階段是指無人艇在實海域測試場地,開展大量標準科目測試工作,并根據目標函數對裝備效能的自主評估結果[13],實現多種海洋環(huán)境下算法參數的自主整定。在完成該階段的演進流程后,無人艇將初步形成一組能夠應對多種海洋環(huán)境載荷特性,并完成任務的算法函數及參數集合。
無人艇在線演進階段是指在實際執(zhí)行任務的過程中,保持對于無人艇自主系統的動態(tài)測試和評估。若系統判斷當前算法函數及參數能滿足任務需求,則接受一定范圍內的裝備效能降低,減少頻繁更換算法或改變系統參數對于系統穩(wěn)定性的影響;當裝備效能降低至一定閾值,被系統判定為無法滿足任務需求,系統將根據積累的在線測試數據和以往訓練集,調節(jié)算法參數或選擇其他算法函數。由于無人艇硬件性能的限制,在某些極端天氣下,外載荷的影響可能超出無人艇自身調節(jié)范圍。此時,系統可及時反饋情況,根據岸基指揮決策,選擇返航、人工遙控或改變任務需求等方式,減少在惡劣情況下的損失。
圖1 無人艇智能演進方法應用流程Fig. 1 The application process of USV intelligent evolution
可演進的無人艇自主系統(圖2)主要是指在不同總體任務需求下,能夠選擇不同算法函數并整定參數,實現無人艇裝備效能提升的智能系統。系統中的數據流程是一種面向對象的處理過程,算法可被定義為對于相應數據對象的處理方法,因此,算法本身的變化不影響數據對象的傳遞,從而確保系統的高效運行。
可演進的無人艇自主系統包含演進器,感知器,規(guī)劃器和執(zhí)行器4 個子系統,受總體任務和海洋環(huán)境影響表現出不同的性能[7,14]。演進器平行作用于感知器、規(guī)劃器和執(zhí)行器,將各子系統產生的數據用于無人艇裝備效能的測試與評估,作為子系統算法單獨優(yōu)化的參考,并將總體任務的表現記錄作為系統演進的方向。算法函數的改變和參數的調整,不影響系統架構和運行模式。該無人艇自主系統的演進目標是提升無人艇裝備效能,也即提升無人艇在給定時間內特定海洋環(huán)境下完成指定任務的能力。
圖2 可演進的無人艇自主系統控制體系Fig. 2 The evolution-capable control architecture of USV autonomous system
無人艇完成預期規(guī)定任務的能力受到多層次多技術節(jié)點耦合影響。如表1 所示,首先,指標層是指無人艇的硬件基礎,例如推進功率、油耗、配置算力和光學圖像分辨率等,該層次的優(yōu)化主要針對無人艇前期設計和建造水平。其次,行為層是指無人艇硬件設施在一系列時序操作指令下的表現,例如船舶戰(zhàn)術半徑、制動距離和垂蕩加速度等,該層次的優(yōu)化主要針對指令給出的頻率和方式。第三,功能層是指各類智能算法的表現,例如圖像識別算法和路徑規(guī)劃算法,該層次的優(yōu)化主要針對算法函數與算法參數。最后,任務層是指無人艇投入實際場景應用后的裝備效能,該層次是前3 個層次多技術節(jié)點基于系統設計架構耦合影響的結果。可見,傳統的自主系統優(yōu)化方法,大多針對某個單一節(jié)點的表現進行優(yōu)化,例如更換動力設備、改變操控模式和優(yōu)化控制算法,其優(yōu)化過程缺乏對于裝備效能的綜合考量。
目前,大量研究致力于子系統的獨立優(yōu)化,對于子系統之間的互動影響考慮較少。例如,感知器的識別結果是規(guī)劃器的必要信息,規(guī)劃的結果(例如規(guī)劃路徑點)將影響控制器中自動舵的參數,進而影響感知器的識別準確率、識別時間等性能。因此,一個設計良好的無人艇自主系統,其智能演進是在針對各部分算法進行獨立優(yōu)化的基礎上,充分考慮各部分之間的耦合影響,對算法進行學習迭代[6],以實現無人艇裝備效能的持續(xù)優(yōu)化。
可演進的無人艇自主系統能夠充分利用實海域的觀測數據,基于建立的目標函數量化算法,對各子系統及裝備效能進行優(yōu)化。其先進性在于,系統可在原有子系統算法單獨優(yōu)化的基礎上,結合復雜的海洋環(huán)境影響及總體任務需求,對系統中存在耦合關系的算法特征進行持續(xù)改進,以獲得更好的裝備效能。
作為算法軟件定義的裝備,無人艇智能演進面臨的首要問題,是算法與裝備效能之間的關系缺少可量化的數學表達,難以采用解析方法將演進目標函數分解至各子算法。該問題屬于智能無人裝備效能評估研究范疇[13]。因此,為快速驗證所提方法的可行性與有效性,研究團隊選取演進目標函數較為明確的RRT 局部路徑規(guī)劃算法,開展實海域無人艇智能演進示例研究工作。
局部路徑規(guī)劃算法的計算性能,例如時間復雜度和空間復雜度,由其算法本身結構決定。以RRT 算法為例,其對裝備效能的影響,通過算法中步長與目標偏向概率的變化得以體現,可選為待演進參數[8]??紤]實海域測試環(huán)境,無人艇路徑規(guī)劃算法的最終效能,受無人艇本身控制系統特性與環(huán)境載荷影響,其運動狀態(tài)信號傳遞的系統框圖如圖3 所示。
根據無人艇感知算法給出的地圖信息,在路徑規(guī)劃算法給出期望航路信息T(x,y)后,在每一個采樣周期下,無人艇的運動狀態(tài)都與其上一時刻運動狀態(tài)、上一時刻控制指令、環(huán)境載荷及無人艇的軟、硬件系統時延有關。無人艇的運動狀態(tài)s通過慣導直接測量,由位置、速度與加速度等表示,即
式中:x,y,z為位置信息;u,v,r為速度信息; α,β,γ為加速度信息。同時,運動狀態(tài)還可包括加速度與角加速度等高階量。
而無人艇的控制算法可被表示為基于期望航路和運動狀態(tài)s生 成控制量e的映射,即
式中,fc為控制算法關于運動狀態(tài)到控制量的映射??刂屏縠視不同無人艇動力系統而改變。
在此案例中,考慮虛擬障礙物的前提條件,在單次避碰航行任務過程中,期望航路為定值。
此外,海洋環(huán)境載荷一般難以測量,Fossen 等[7]采用概率分布方法對其進行描述,環(huán)境載荷可表示為
式中:fenv為當前運動狀態(tài)下的外載荷預測值;PDF(ωw,A)為 當前海況下波浪頻率 ωw和浪高A的概率分布。在特定海域條件下,一段時間內可認為概率分布不變,也即該函數是時不變的。
隨后,考慮在無人艇系統的實際運行中,算法功能模塊之間的通信及計算延遲由系統設計及算法決定,一般固定不變;實海域環(huán)境下的軟、硬件系統延遲主要體現為執(zhí)行器執(zhí)行時間的延遲。例如,打舵時間與打舵的大小有關。因此,無人艇系統時延對運動狀態(tài)的影響可被表示為一個與控制量e有關的函數,即
式中:fd為運動狀態(tài)到系統時延的映射;gd為控制量到系統時延的映射。因此,特定海域環(huán)境下,單次避碰的無人艇運動狀態(tài)的變化可被表示為多個影響因子映射函數的卷積,也即
式中,st(k+1),stk分別表示連續(xù)的2 個測量時刻下無人艇的運動狀態(tài)。
由此,可得到對于無人艇運動狀態(tài)總體表現的分析結果,其中包含控制算法性能、環(huán)境載荷及系統時延等多種信息??紤]無人艇避碰性能時,可從無人艇的運動軌跡(位置及速度信息)及其運動穩(wěn)定性(角速度等信息)方面來進行。
基于上述分析,特定海域環(huán)境下單次任務無人艇避碰效能可通過對測試過程中的無人艇運動狀態(tài)分析來度量,無人艇自身特性及環(huán)境載荷等未知因素已耦合在運動狀態(tài)變化的過程中。此外,考慮到在實際應用中,運動狀態(tài)是最容易被監(jiān)測和記錄的系統信息,基于運動狀態(tài)分析的效能評價極為重要。
在此案例中,受限于測量數據,研究團隊基于無人艇任務需求,選取路徑長度及路徑平滑度2 個指標,生成算法演進的目標函數。其中,路徑長度是用于考察在給定起點與終點時路徑規(guī)劃算法所規(guī)劃的避碰路徑的工作效率,較小的路徑長度表示無人艇能較為有效地避開地圖中的障礙物;路徑平滑度影響規(guī)劃的路徑對無人艇操縱性的需求,較小的路徑平滑度表示生成路徑對于無人艇水動力性能需求較小,在較復雜的環(huán)境下有更高的穩(wěn)定性。兩者的計算公式分別為:
式 中:n為 路 徑 段 數; ?Li為 第i段 路 徑 的 長 度;?θi為第i段路徑與第i+1 段路徑的角度變化。對同一組測試的結果,采用歸一化方法將測試指標映射到[0,100]的范圍內。
對于路徑規(guī)劃算法的傳統優(yōu)化方法為:基于式(6)中的2 個目標函數,尋找使2 個表達式值最小的算法參數。此方法雖能在一定程度上提升算法的表現,但是,對于生成的路徑與無人艇航跡跟蹤算法之間的耦合效應和實海域環(huán)境下的外載荷擾動考慮不足。
若考慮實海域測試,路徑規(guī)劃及航跡跟蹤算法的耦合效應體現為:基于給出的規(guī)劃路徑,無人艇在實海域環(huán)境下的實際軌跡。因此,無人艇路徑規(guī)劃算法的實際表現可相應地通過無人艇的航跡長度和累計艏向變化表述,其表達式為:
考慮RRT 算法的隨機性,即針對每一組超參數值可能存在不同解,以及有限的實海域測試資源。在利用算法規(guī)劃路徑的過程中,采用式(6)和式(7)對規(guī)劃結果進行分析,選取實際生成的若干組路徑中效果最好的一組作為該組超參數下的規(guī)劃路徑結果,用于實海域測試。
經過歸一化方法處理后,實海域測試環(huán)境下局部路徑規(guī)劃算法的目標函數可表示為
考慮到實際環(huán)境的復雜性,一般可認為系統參數與無人艇裝備效能之間的關系為一個多峰函數,難以使用傳統的線性或非線性回歸方法來擬合兩者的關系。同時,無人艇單次測試持續(xù)時間長、過程復雜,且獲取的數據樣本量少。有鑒于此,研究團隊利用實驗設計原理,在高維的參數空間內選取分散錯落的數據點,以減少實海域環(huán)境下對數據的需求[15]。隨后,采用以高斯回歸過程(Gaussian regression process,GRP)為代表的機器學習方法,用代理模型代替尋優(yōu)算法中目標函數和優(yōu)化參數之間的關系[16-20]。在此基礎上,通過快速遍歷或遺傳算法等尋優(yōu)算法,找到裝備效能最優(yōu)的參數集。
算法參數演進流程如圖4 所示,其中,高斯代理模型的擬合精度一方面受到樣本集的分布影響;另一方面,其核函數、均值函數及似然函數的模型都會影響其收斂精度。針對不同的參數集,考慮其運行過程中的物理過程特點,選取合適的數學模型,有助于提高算法參數演進的可靠性和精度。
圖4 基于代理模型的算法參數演進流程Fig. 4 The evolution process of algorithm parameter based on the surrogated model
此外,考慮到工程實際中的調整參數過程,確定一個可用參數的定義域并不困難,但是使無人艇效能最優(yōu)的參數組一定落在所選定義域內卻難以確定。因此,基于代理模型的算法參數演進,主要解決基于樣本集數據分布形成的參數定義域及其鄰域中尋找最優(yōu)參數組的問題。
本次用來測試的船艇為“追夢三號”無人艇,艇長約7 m,計劃航速8~10 kn,其外觀如圖5 所示。
圖5 “追夢三號”無人艇Fig. 5 Zhuimeng 3 USV
“追夢三號”無人艇的組成系統包括:供電系統、執(zhí)行機構系統、監(jiān)控系統、感知系統、計算系統和網絡系統。其中:供電系統包括發(fā)電機和蓄電池,感知系統包括海事雷達、攝像機群和風速計,執(zhí)行機構為水星舷外機。該無人艇的航跡跟蹤控制算法受限于舷外掛機的物理特性,相較于傳統的槳舵或噴泵的控制精度不足,對路徑規(guī)劃算法的結果要求較高。此外,測試海域常處于3~4級海況,對于被測試無人艇來說,此時的海況屬于外載荷較大的情況,因此,這對于路徑規(guī)劃算法的參數演進有較高實際應用價值。
測試時,航速約8 kn,考慮單次測試時長不超過30 min,選取的地圖大小為2 400 m×2 400 m。在算法程序中,使用的實際網格數為600×600,因此,單個網格的長度對應實際地圖長度為4 m。以網格左上角為零點,相應障礙物位置及障礙物半徑(膨脹安全半徑為15 m)如表2 所示。
表2 虛擬障礙物坐標及相應避碰半徑Table 2 The location of virtual obstacles and corresponding avoiding radius
路徑規(guī)劃的起點與終點分別設置為(100 m,100 m)和(480 m,500 m)。其虛擬障礙物地圖如圖6 所示。
圖6 虛擬障礙物設置Fig. 6 The virtual obstacle setting
在前期算法的仿真測試中,選取了目標偏向概率和步長的范圍分別為[0.1,0.3]和[150 m,180 m]。
根據實驗設計原理,選擇了9 組參數作為實海域測試的樣本點,令權重向量 ω=(0.5, 0.5)T,得到參數值及實海域測試結果如表3 和圖7 所示。
基于上述數據,采用高斯模型建立“參數?評分”關系代理模型[16],其核函數k選為
式中: σ 和 ξ 分別為預測方差和縮放系數;x,x′為輸入的參數組。該核函數適用于輸出結果隨參數變化平滑的物理過程[17],考慮RRT 算法中的隨機性,可以認為實海域測試評分應當隨2 個參數平滑變化。同時,相應代理模型收斂條件為調整 σ和ξ的值以最小化損失函數,也即相應預測值應滿足:
式中:x?為 需要預測的參數對;yguess為相應的預測值;R?L為期望的損失函數,arg min 為求損失函數值最小的預測值。本次測試中采用的損失函數為
式中:y?為 真實值。R?L即 為預測值yguess和真實值y?之差的平方和。令該值最小的預測模型為最終得到的參數?評分映射模型。
實海域測試數據隨算法參數變化的高斯模型回歸結果如圖8(a)所示, 其中“+”表示實測數據,曲面為擬合數據。損失函數隨迭代次數變化的趨勢如圖8(b)所示。由高斯模型擬合得到的地圖與海域環(huán)境下的最優(yōu)RRT 算法參數如下:步長D=164 m,目標偏向概率P=0.05。
由該參數組生成的避碰路徑如圖9 所示。根據實測結果,用于測試的樣本集參數組在實際任務場景中已滿足需求,能夠完成避碰任務。通過代理模型方法得到的結果,是在樣本空間對應的參數組定義域中表現更好的參數組。因此,基于代理模型生成的參數?評價映射中,已經包含了最優(yōu)參數組與隨機選用的可用參數組對應的無人艇效能之間的比較結果。通過擴大樣本數量,增加循環(huán)測試等手段,能夠更準確地生成測試海域下對于“追夢三號”無人艇最優(yōu)的避碰參數。
此外,考慮RRT 算法參數對其運算結果的影響,最優(yōu)步長的選取趨勢體現為在有限空間內盡可能搜索障礙物避碰半徑區(qū)域的邊界。圖9 中路徑與數個障礙物膨脹后的避碰半徑接近相切,說明對空間進行了盡可能的搜索。目標偏向概率的選取趨勢體現為在空間中搜索路徑的發(fā)散性,在上述障礙物地圖中,起點與終點間存在較多障礙物,且障礙物間距較小,目標偏向概率的合理減小有助于規(guī)劃算法對空間的搜索性,在狹窄范圍內搜索到高質量路徑。由此可見,在有限組數據集前提下,高斯代理模型能有效擬合系統在實海域條件下相應算法效能的變化趨勢,其生成的最優(yōu)參數值具有符合實際情況的可解釋性。
圖8 高斯代理模型擬合數據Fig. 8 The fitting data based on Gaussian surrogated model
圖9 采用RRT 算法基于最優(yōu)參數集生成的避碰路徑Fig. 9 The obstacle-avoidance path generated by RRT algorithm based on optimized parameters
海洋環(huán)境是一個巨大的復雜隨機系統,無人艇自身又由多個復雜子系統構成,這導致了無人艇裝備效能是一個復雜多系統耦合作用的結果。針對上述難點問題,結合無人艇自主系統算法特征,本文從智能算法的角度提出了無人艇智能演進的2 種主要形式:一是算法函數的演進;二是算法參數的演進。在此基礎上,本文以無人艇避碰算法為例,基于實海域環(huán)境下的測試結果,初步驗證了所提方法在提升無人艇裝備效能方面的可行性與有效性。
受限于對無人裝備智能戰(zhàn)斗力生成機理認識深度的不足,以及實海域環(huán)境下測試技術的不完善,本研究尚處實驗探索階段,未來還需針對海洋無人裝備的智能演進機理與實海域環(huán)境測試技術,開展更加廣泛而深入的研究。針對無人艇智能演進問題,提出以下研究方法建議:
一是無人艇智能演進目標函數的量化模型研究。由于無人艇裝備效能是一個復雜環(huán)境與多算法耦合作用的結果,難以用解析方法描述其智能演進目標函數。因此,基于無人裝備智能裝備戰(zhàn)斗力生成機理,提出無人艇智能演進目標函數的量化模型,是實現智能演進的前提。
二是無人艇智能演進機器學習模型構建方法研究。機器學習的底層是各類線性或非線性的數學回歸模型,這些模型也稱為機器學習中的超參數?,F有的大量研究證明,不同的超參數選取,面對不同的學習對象時會呈現完全不同的結果。因此,探究這些超參數與無人艇裝備效能之間的作用機理,進而提出無人艇智能演進機器學習模型的構建方法,是實現智能演進的路徑。
三是無人艇智能演進學習數據高效獲取的方法研究。大中型無人艇在實海域環(huán)境下的測試成本高、時間長,且單次測試流程復雜,應根據無人艇系統的特點合理地進行具有代表性的測試。大批高質量的學習數據集是無人艇智能演進的原材料。因此,在建設海洋無人裝備實海域測試場的基礎上,研究標準化測試科目的制定、測試數據的采集處理,是實現智能演進的保障。