王 天,葉秀芬,劉曉陽,王 雷
(哈爾濱工程大學自動化學院,黑龍江哈爾濱 150001)
水下機器人具有高自由度、非線性、強耦合等特性[1],因此,對其進行控制極具難度,而要實現良好的控制則需要建立高精度的動態模型。
水下機器人的主要建模方法可以總結為2種,分別是機理建模和模型辨識。機理建模過程復雜[2~3],獲得的非線性模型仍不適合直接應用到控制當中,需要通過實驗反復對模型進行修正。傳統的方法(如最小二乘法[4]、梯度校驗法、極大似然法[5]等)都不能很好地解決非線性多輸入多輸出問題。人工神經網絡方法[6]也存在網絡結構選擇難、泛化能力差,需要大量的樣本,并且神經網絡結構依賴工程經驗。
支持向量機(SVM)是近年來基于統計學習理論的一種新型機器學習方法[7],以結構風險最小化原則來自動學習模型結構。該種算法是一種凸二次優化問題,可以很好地得到全局最優解,具有結構簡單、泛化能力強等優點,且能較好地解決小樣本、非線性和高維數的問題?,F有的SVM主要解決單輸入單輸出問題,而水下機器人是一個具有多輸入多輸出、強耦合、欠驅動、時變和不穩定特性的復雜動態系統,水動力學特性呈現強非線性。針對該問題,本文提出一種基于SVM的碟形水下機器人姿態運動的多輸入多輸出非線性系統辨識模型,并結合離線運行數據辨識出該潛水器在水中姿態變化的控制模型參數,最后通過水池實驗數據檢驗了該辨識器的性能。
本文針對一種具有碟形水動力外形的新型水下機器人進行研究,該機器人外形完全封閉無外掛舵系、推進器等,具有良好的水動力特性與平層運動能力。該機器人通過4臺矢量布置的噴水推進器來控制機器人在操縱面內的運動,并且由2個可移動質量塊控制機器人重心與浮心的相對位置以此來達到改變機器人操縱面的目的,從而實現了全方位的運動,碟形水下機器人的結構如圖1所示。

圖1 機器人結構圖Fig 1 Structure diagram of robot
圖1為慣性坐標系。O-XbYbZb稱為機器人體坐標系,原點O為機器人體質心、幾何中心。O-XvYvZv為速度坐標系。質量滑塊m1和m2分別在OXb1,OZb2兩軸上移動,令機器人質心位置改變。坐標系O-XbYbZb與O-Xb1Yb1Zb1和O-Xb2Yb2Zb2完全平行,且各坐標系Y軸重合。平面XbOYb與Xb1OYb1,Xb2OYb2間距離均為ybm。矢量布置的推進器作用于質心上的合推力T和合力矩MT,α是推力線與OXb軸的夾角。
通過以上分析可以看出:該碟形水下機器人受到4臺噴水推進器產生的推力T1,T2,T3,T4,變質心移動模塊的移動量,對應的輸出為體坐標系與大地坐標系的夾角。考慮機器人工作在較淺的水深,水深對姿態控制的影響也不作考慮。用狀態空間描述碟形水下機器人的一般形式如下

對上式進行離散化的非線性模型

[8]中提到了關于單輸入單輸出系統的辨識模型,本文分別針對機器人俯仰角、橫滾角、偏航角設計了基于SVM的碟形潛器的預測系統結構,如圖2所示。

圖2 SVM預測結構框圖Fig 2 Structure block diagram of SVM identifier
在圖2 中,T1(k),T2(k),T3(k),T4(k)分別代表 時刻4個推進器的輸出量。xb(k),zb(k)為k時刻2個姿態調節質心塊的偏移量,經過合成后作為輸入u(k)與上一時刻3個輸出的迭代結果v(k)一起作為3個SVM的輸入量。θ(k+1),ψ(k+1),φ(k+1)分別為時刻機器人的俯仰角、橫滾角和偏航角。
首先,針對求解線性回歸問題,在如式(3)所示的線性函數集合中來估計回歸函數

加入給定訓練樣本集

其中,xi∈X=Rl,yi∈Y=Rm,n,l,m分別為樣本數與輸入輸出變量的維數。

那么,約束條件下基于經驗風險最小化原理Remp(ω,b),需尋找ω,b使得它們最小化由松弛變量ξi(i=1,…,n),定義的下述變量

針對以上公式建立拉格朗日函數

上式的求解是一個復雜的優化問題,可以轉換為給定正則化參數C值,變為求解式(8)與限定條件式(9)的凸優化問題。
可將該凸二次規劃問題轉換為求解



針對非線性問題則是通過核函數將非線性數據映射到高維空間,在高維空間中進行線性回歸。因此,二次規劃優化形式可轉化為

其中,K(xi,xj)為核函數。
多輸入多輸出SVM回歸估計函數則變為

對應

其中,閾值b為一常數如式(14)。將支持向量和參數代入式(13)即可求得

本文實驗水池參數為(長)17.3m×(寬)2m×(深)1.7m。該測試主要是測量機器人的3個姿態角,分別是俯仰角、橫滾角和艏搖角,并且可以獲得調節質心塊偏移量、深度以及推力輸出值。
機器人外觀如圖3。

圖3 機器人外觀圖Fig 3 Robot appearance
在實驗水池中,配重令機器人懸浮于水中,通過交替改變推力與2個質心塊,對機器人姿態進行檢測,分別有輸入7個變量、輸出3個變量,采樣頻率為5 Hz。
為了便于SVM的訓練,在進行模型辨識之前首先對樣本數據進行了歸一化處理。
本文采用徑向積核函數

其中,核半徑σ>0,該函數可以很好地逼近任意非線性關系,計算難度小。
通過均方差(MSE)的大小和平方相關系數與1的趨近程度來評判該SVM的辨識與預測效果。
這里把測得的2328組數據分為訓練數據集2000組和328組測試數據集,利用網格搜索方法得到參數最優值,通過網格尋優得到等高線圖,以SVM1為例得到的參數網格尋優等高線如圖5所示。選取圖中MSE最小位置點對應的C和g即為最優值,其中

因此,獲得SVM最優效果參數如表1。

表1 SVM最優參數表Tab 1 Optimal parameters table of SVM

圖4 SVM1參數網格尋優等高線圖Fig 4 Contour map of grid optimization of SVM1 parameters
為了檢測辨識精度,需要將測試樣本輸入到SVM模型當中針對實測角度輸出數據進行比對,以SVM1為例的效果如圖5所示。從辨識精度表2可以看出:該辨識器表現出良好的擬合與預測效果,一般機理建模所能達到的r2也僅有0.81左右。并且本文模型計算速度較快,因此,該模型完全適合應用到碟形潛器仿真、預測控制當中。

表2 辨識精度表Tab 2 Table of identification precision

圖5 SVM1擬合數據對比圖Fig 5 Contrast figure of SVM1 fitting datas
水下機器人存在自由度多、非線性和耦合強等特性。現有水下機器人建模方法存在很多缺陷,本文分析了一種新型碟形水下機器人的結構與控制特點,結合提出了碟形水下機器人系統的多輸入多輸出的SVM模型并求取了它的最優的參數。利用該算法對水下機器人姿態控制數據進行離線辨識得到了水下機器人的姿態控制模型后通過預測仿真并與真實數據進行比較,相似度至少可達97.82%,且預測計算速度均在秒級??梢钥闯?該模型具有預測精度高、實時性好的優點。
參考文獻:
[1]馬偉鋒,胡 震.AUV的研究現狀與發展趨勢[J].火力與指揮控制,2008,33(6):129 -131.
[2]Fossen T.Nonlinear modeling and control of underwater vehicle[D].Trondheim:Norwegian Institute of Technology,1991.
[3]Healey A,Lienard D.Multivariable sliding node control for autonomous diving and steering of unmanned underwater vehicles[J].IEEE Journal of Ocean Eng,1993,18(13):327 -339.
[4]田亞杰,邊信黔.應用全局最小二乘法辨識AUV運動參數[J].自動化技術與應用,2006,25(2):4 -7.
[5]劉建成,劉學敏,徐玉如.極大似然法在水下機器人系統辨識中的應用[J].哈爾濱工程大學學報,2001,22(5):1 -4.
[6]于開平,董好志,鄒經湘.基于前向神經網的時變非線性結構系統辨識快速遞推最小二乘法[J].振動工程學報,2007,20(5):963- 967.
[7]丁世飛,齊丙娟,譚紅艷.支持向量機理論與算法研究綜述[J].電子科技大學學報,2011,40(1):2 -10.
[8]李應紅,尉詢楷,劉建勛.支持向量機的工程應用[M].北京:兵器工業出版社,2004.12.