施冬梅
(鎮(zhèn)江市高等專科學(xué)校電子信息系,江蘇鎮(zhèn)江212003)
航向控制是船舶操縱控制中最基本的,它的任務(wù)是保持航向和改變航向,航向控制直接關(guān)系到船舶航行的操縱性、經(jīng)濟性,它與航行安全、能源節(jié)約和操作省力密切相關(guān)。傳統(tǒng)的船舶航向控制算法有PID控制、自適應(yīng)控制。隨著計算機技術(shù)和現(xiàn)代控制理論的發(fā)展出現(xiàn)了各種新的控制算法,如模型參考自適應(yīng)控制、神經(jīng)網(wǎng)絡(luò)、模糊控制、模糊神經(jīng)網(wǎng)絡(luò)控制、變結(jié)構(gòu)控制、廣義模糊CMAC等算法。這些新的算法均先后應(yīng)用于船舶航向控制中,但是大多數(shù)航向控制器的設(shè)計,人們普遍采用Nomoto線性模型進行設(shè)計,線性運動方程只適用于小擾動的情況。實際上,由于船舶本身存在的不確定性和風(fēng)、浪、流等干擾,特別是對于不具有直航特性的船舶,在航向急劇改變的情況下,采用線性模型已經(jīng)不能精確地描述系統(tǒng)的動態(tài)特性。本文針對常規(guī)自動舵響應(yīng)速度慢,舵角操作不穩(wěn)定,誤差較大等缺陷,提出了將支持向量機系統(tǒng)辨識的方法與廣義預(yù)測控制基本算法結(jié)合起來對船舶航向進行控制,以達到預(yù)期的控制效果。
支持向量機是一種基于統(tǒng)計學(xué)習(xí)和結(jié)構(gòu)風(fēng)險最小化原理的學(xué)習(xí)機,其原理是在最小化樣本點誤差的同時,縮小模型預(yù)測誤差的上界,從而提高模型的泛化能力。它不同于神經(jīng)網(wǎng)絡(luò)等傳統(tǒng)方法以訓(xùn)練誤差最小化作為優(yōu)化目標(biāo),而是以訓(xùn)練誤差作為優(yōu)化問題的約束條件,以置信范圍值最小化作為優(yōu)化目標(biāo),因此,支持向量機的泛化能力要明顯優(yōu)越于神經(jīng)網(wǎng)絡(luò)等傳統(tǒng)學(xué)習(xí)方法。另外,支持向量機的求解最后轉(zhuǎn)化成二次規(guī)劃問題的求解,因此,支持向量機的解是唯一的、也是全局最優(yōu)的。正是上述兩大優(yōu)點,使得支持向量機一經(jīng)提出就得到了廣泛的重視,支持向量機方法在非線性系統(tǒng)辨識、預(yù)測預(yù)報、建模與控制等方面已取得廣泛應(yīng)用。
其中:f(x)為通過對樣本集的學(xué)習(xí)而構(gòu)造的回歸估計函數(shù),y為x對應(yīng)的目標(biāo)值,ε>0為與函數(shù)估計精度直接相關(guān)的設(shè)計參數(shù),該ε不敏感損失函數(shù)形象地比喻為ε通道。學(xué)習(xí)的目的是構(gòu)造f(x),使之與目標(biāo)之間的距離小于ε,同時函數(shù)的VC維最小,這樣對于未知樣本x,可最優(yōu)地估計出對應(yīng)的目標(biāo)值。
對于訓(xùn)練集為非線性情況,通過某一非線性函數(shù)Φ(·)將訓(xùn)練集數(shù)據(jù)x映射到一個高維線性特征空間,在這個維數(shù)可能為無窮大的線性空間中構(gòu)造回歸估計函數(shù),因此,在非線性情況,估計函數(shù)f(x)為如下形式:
其中:w的維數(shù)為特征空間維數(shù)(可能為無窮維)。最優(yōu)化問題為:
類似線性情況,得到對偶最優(yōu)化問題
其中:b按如下計算
由式(5)和式(6)可知,盡管通過非線性函數(shù)將樣本數(shù)據(jù)映射到具有高維甚至為無窮維的特征空間,但在計算回歸估計函數(shù)時并不需要顯式計算非線性函數(shù),而只需要計算核函數(shù),從而避免高維特征空間引起的維數(shù)災(zāi)問題。
設(shè)非線性系統(tǒng)由下面非線性離散時間模型表示:
其中:n 和 m 分別是輸出 y(t)和輸入 u(t)的階次,d是非線性系統(tǒng)的時滯,F(xiàn)(·)是一個未知的連續(xù)非線性函數(shù)。
支持向量機預(yù)測控制的實質(zhì)就是利用作為對象辨識模型的支持向量機產(chǎn)生預(yù)測信號,然后利用優(yōu)化算法求出控制矢量,從而實現(xiàn)對非線性系統(tǒng)的預(yù)測控制。如圖1所示為SVM預(yù)測控制流程圖。
圖1 SVM預(yù)測控制流程圖
廣義預(yù)測控制具有實時預(yù)測、實時優(yōu)化及實時反饋校正的特點而獲得廣泛應(yīng)用。取優(yōu)化指標(biāo)為二次加權(quán)指標(biāo),廣義預(yù)測控制器是通過在k時刻對下面的性能指標(biāo)進行優(yōu)化以獲得控制作用。
則在每一采樣時刻,使用梯度下降法得△u控制律如下:
其中:μ是優(yōu)化步長,并且
其 δyu=
將式(11)代入到式(10)可得:
根據(jù)廣義預(yù)測控制的滾動優(yōu)化,廣義預(yù)測控制律可取為:
采用基于SVM的廣義預(yù)測控制,對船舶模型進行仿真,船舶模型如下:
其中:τ1=1、τ2=0.5、α=3、Kδ=0.1、τ3=0.5,ψ 為艏向角、δ為舵角。分別設(shè)定仿真時間為50s,研究船舶在25s時航向從10°變化到5°的實際航向歷時變化曲線、控制舵角變化曲線和航向誤差變化曲線。當(dāng)系統(tǒng)無風(fēng)、流、浪干擾時,仿真如圖2、圖3和圖 4 所示(N2=10,Nu=5,λ=0.01);當(dāng)系統(tǒng)有風(fēng)、流、浪干擾時(采用有色噪聲來模仿海浪干擾),仿真如圖 5、圖 6 和圖7 所示(N2=10,Nu=5,λ=0.01)。
圖2 航向變化曲線
圖3 控制舵角變化曲線
圖4 航向誤差變化曲線
圖5 航向變化曲線
圖6 控制舵角變化曲線
圖7 航向誤差變化曲線
船舶航向控制是一個極為復(fù)雜的控制過程,船舶航向控制系統(tǒng)模型存在嚴重的非線性,且船舶在航行中,存在著模型參數(shù)與外界干擾的不確定性。本文將SVM運用到該領(lǐng)域的研究中,主要是利用SVM對非線性系統(tǒng)具有良好的函數(shù)逼近能力,善于聯(lián)想、概括、類比和推理,并且具有很強的自學(xué)習(xí)能力、善于從大量統(tǒng)計資料中分析提取宏觀統(tǒng)計規(guī)律的特點,仿真結(jié)果表明,基于SVM的廣義預(yù)測控制算法對船舶航向的控制具有更好的穩(wěn)定性和魯棒性。
[1]陳建華.基于神經(jīng)網(wǎng)絡(luò)的非線性預(yù)測控制研究及其應(yīng)用[D].北京:華北電力大學(xué)碩士論文,2007.
[2]張浩然.基于支持向量機的非線性系統(tǒng)辨識[J].系統(tǒng)仿真學(xué)報,2003,15(1):119-121.
[3]龐中華.廣義預(yù)測控制算法及其仿真研究[D].青島:青島科技大學(xué)碩士論文,2005.
[4]秦永祥.基于自適應(yīng)神經(jīng)模糊系統(tǒng)的船舶航向控制[D].大連:大連海事大學(xué)碩士學(xué)位論文,2007.
[5]林永屹.基于Backstepping的船舶航向非線性控制方法的研究[D].大連:大連海事大學(xué)碩士學(xué)位論文,2007.