陳 卓,金建海,張 波,包 濤,周則興
(1.中國船舶科學研究中心,江蘇 無錫 214082;2.深海技術科學太湖實驗室,江蘇 無錫 214082)
近年來,隨著計算機技術和人工智能的飛速發(fā)展,無人系統(tǒng)得到了廣泛的研究和應用。無人艇作為一種專用于水面任務的無人化平臺,可通過搭載航行控制單元,實現(xiàn)水域內(nèi)的智能航行和自主作業(yè)[1]。與有人船艇相比,無人艇具有體積小、快速靈活、自主可靠等優(yōu)勢,被越來越廣泛地應用于軍民用領域,如海域偵察、探雷、反潛、水質(zhì)監(jiān)測、資源勘探等。在各種復雜的任務場景下,航向控制是無人艇完成自主航行的關鍵和基礎技術。無人艇的控制問題有以下特點:(1)無人艇總是受船舶慣性、水動力等非線性項的影響,運動響應過程復雜,難以精確建模;(2)極易受到風浪流等因素的動態(tài)干擾,造成無人艇偏離期望位置,具有一定的不可預測性。這些特點給無人艇的運動控制提出了更高的要求,設計出快速穩(wěn)定且具有環(huán)境自適應性的航向控制器是當前無人艇領域的研究熱點之一。
在無人艇航向控制的研究方面,國內(nèi)外學者均進行了廣泛的探索。主流的控制方法包括滑模控制、模糊控制、反步法、神經(jīng)網(wǎng)絡方法、Lyapunov 直接法等[2~5]。但是在工程領域內(nèi),使用最多的還是經(jīng)典的PID控制方法。與其他方法相比,PID方法具有結(jié)構簡單、參數(shù)含義明確等優(yōu)點,不需要系統(tǒng)的精確模型,更易于工程實現(xiàn)[6]。在應用PID 方法時,參數(shù)的調(diào)節(jié)是一個關鍵問題,常規(guī)的經(jīng)驗調(diào)參方式效率低下,已無法滿足無人艇高精度、自適應的航向控制要求。為解決此問題,李光宇等[7]設計了一種基于分數(shù)階PIλDμ控制器,積分階次λ 和微分階次μ的引入使得分數(shù)階比例積分微分控制器具有更好的魯棒性和抗擾動能力,但同時也加大了算法設計的難度。龔波等[8]提出了一種基于P系統(tǒng)的非線性航向跟蹤控制方法,并引入粒子群優(yōu)化細胞型膜算法對P 系統(tǒng)進行參數(shù)尋優(yōu);范云生等[9]設計并實現(xiàn)了一種基于模糊自適應PID 的無人水面艇航向跟蹤控制器,并通過實船試驗證明了該跟蹤控制器良好的動靜態(tài)控制性能和抗干擾能力;胡志強等[10]提出了在線自優(yōu)化PID 控制算法,以狀態(tài)誤差與系統(tǒng)縱向速度為自變量,構建各控制參數(shù)的在線調(diào)整函數(shù);包濤等[11]設計了一種基于廣義動態(tài)模糊神經(jīng)網(wǎng)絡和參考模型的魯棒自適應控制器,利用廣義動態(tài)模糊神經(jīng)網(wǎng)絡建立了環(huán)境干擾的逆動態(tài)模型,并結(jié)合無人艇運動控制的參考模型設計了魯棒自適應控制器;葛貝貝[12]將免疫遺傳算法(IGA)應用到了船舶航向PID控制器的離線優(yōu)化中,控制效果良好,但收斂較慢,魯棒性差,無法適應于在線優(yōu)化過程。
針對以上問題,本文提出一種基于多策略融合改進的免疫遺傳算法(Multi-Strategy Fusion Immune Genetic Algorithm,MSFIGA),引入混沌初始化、向量角相似度及自適應差分接種等策略,以改善基本免疫遺傳算法收斂緩慢、易陷入局部最優(yōu)的缺點。在此基礎上,設計基于MSFIGA 的無人艇航向自適應控制器及性能評價函數(shù),實現(xiàn)對PID 控制參數(shù)的自適應優(yōu)化。最后進行對比仿真試驗以驗證方法的有效性。
在無人艇航向控制器的設計中,響應型船舶運動模型是最常用的一種數(shù)學模型。該模型由野本謙作(Nomoto)提出,從控制工程的角度描述了船舶操縱的動態(tài)響應過程。無人艇的二階Nomoto 模型可以表示為
式中,ψ為船舶航向角,δ為舵角,K、T分別為表征船舶操縱特性的特征參量。
野本方程較好地描述了船舶運動的線性化模型,但是在無人艇的實際航行中,還應考慮由船舶慣性和水動力造成的非線性物理力影響,因此在上式中引入非線性項,得到USV的非線性響應模型[13]:
式中,α、β分別為非線性項系數(shù);K、T、α、β均與船舶航速有關,可通過試驗數(shù)據(jù)辨識獲得。
在無人艇實際航行過程中,風浪流等環(huán)境力會對船舶運動及真實航向造成干擾,因此在設計航向控制器時應加以考慮。按照作用形式,作用于船舶上的環(huán)境擾動力可分為風流擾動和波浪擾動兩種。在應用船舶非線性數(shù)學響應模型時,可以將風流力和波浪力干擾表述為一種額外的干擾舵角。
風流力的干擾形式較為簡單,可用白噪聲的形式進行表示:
式中,cw為一定常值,wgn為零均值高斯噪聲。
波浪對船舶造成的擾動較為復雜,本文參考文獻[14]的方法模擬波浪力對船舶的擾動?;诓ɡ俗V分析理論,將海浪干擾用有色噪聲經(jīng)濾波器輸出的波高加以代替:
再根據(jù)波高及波高變化率計算出擾動力矩:
最后利用擾動力矩計算得到海浪擾動造成的等效舵角值:
以上式子中,k1為比例環(huán)節(jié),G( )s為有色噪聲到波高的傳遞函數(shù),C1、C2、ρ1為波浪模型增益系數(shù),Cv為比例系數(shù),v為船舶航速。
免疫遺傳算法(Immune Genetic Algorithm,IGA)[15]是基本遺傳算法的改進版本,通過融合生物免疫系統(tǒng)的動態(tài)調(diào)節(jié)機制,優(yōu)化了遺傳算法的隨機搜索過程。免疫遺傳算法與傳統(tǒng)遺傳算法的最大不同之處在于其引入了種群相似度的概念,通過抗體之間的相似性和濃度來促進和抑制種群個體的生成,進而維持種群進化過程中的多樣性。
假設種群規(guī)模為N,抗體的基因數(shù)為M,編碼數(shù)為S,則種群在第i個基因位上的信息熵可以表示為
式中,pi,j表示種群中N個抗體在第i個基因位的值為j的概率。N個抗體的平均信息熵可以定義為
種群中任意兩個抗體a1和a2之間的相似度可以用平均信息熵加以表示,即
設定一相似度閾值為γ,若Sa1,a2>γ,則認為抗體a1和a2相似,否則認為不相似。根據(jù)抗體a1與種群中所有抗體的相似度判斷,可得到該抗體在群體中的濃度值為
式中,Qa1,ai為標記值。當抗體a1和a2相似時,Qa1,ai=1;當抗體a1和ai不相似時,Qa1,ai=0。
IGA根據(jù)抗體濃度和適應度對種群的進化過程進行促進和抑制,抗體的選擇概率可以表示為
式中:Pf、Pd分別為抗體的適應度概率和濃度概率,可用輪盤賭方法計算;α為抗原-抗體親和系數(shù),用于調(diào)節(jié)適應度和濃度對抗體選擇的影響,且有0<α<1。
2.2.1 混沌初始化策略
研究表明,初始群體的分布性質(zhì)嚴重影響整個算法的收斂性能[16]。IGA 采用簡單的隨機初始化方式,種群進化效果受到初始種群質(zhì)量的限制,容易出現(xiàn)種群過分集中、多樣性不足等問題,難以有效利用整個解空間。借鑒于混沌系統(tǒng)對數(shù)據(jù)空間的遍歷特性,本文采用一種基于Tent 混沌映射的方法對種群進行初始化,以克服隨機化方法的缺陷。
Tent混沌映射系統(tǒng)的動力學模型可定義為
當參數(shù)k∈( 0,1 ),x∈[0,1 ]時,該系統(tǒng)處于渾沌狀態(tài);當k=0.5 時,該系統(tǒng)為標準Tent混沌映射,可完成對[0,1 ]空間的滿映射,
種群初始化過程可描述如下:隨機生成初始值x0∈[]0,1 ;根據(jù)式(13)迭代計算得到一個數(shù)值序列{x0,x1,…,xN} ,其中N為種群規(guī)模;將混沌序列映射到待求解問題的解值域,即可得到具有遍歷特性的初始化種群。
2.2.2 向量角相似度評價策略
免疫操作主要靠計算不同抗體之間的相似度及濃度來實現(xiàn),然而IGA 中單純基于抗體結(jié)構的相似度計算方式?jīng)]有真正體現(xiàn)生物學中免疫操作對選擇多樣性的影響,限制了算法的優(yōu)化性能。為改善此缺陷,本文提出了一種基于向量角的相似度評價策略。
在種群中,給定抗體a和b,記其值分別為va和vb,適應度值分別為fa和fb。將每個抗體用二維特征向量[v,f]表示,抗體a和b之間的相似度以特征向量之間的余弦角進行表征:
對于特定的求解問題,可給定一相似度閾值ε,0<ε≤1。若S′a,b>ε,則認為抗體a和b相似;否則認為不相似?;谙蛄拷堑南嗨贫扔嬎惴绞?,綜合考慮了抗體在結(jié)構特征和品質(zhì)特征上的相似度,更貼近自然免疫系統(tǒng)中對抗體相似度的定義。
2.2.3 自適應差分接種策略
在進化經(jīng)過一定代數(shù)后,抗體種群的多樣性下降,導致算法陷入局部最小、收斂變慢。為解決IGA 算法前后期搜索不均衡的問題,同時充分利用進化過程中的優(yōu)勢抗體信息,引入一種自適應差分接種策略。
疫苗提取:定義V為種群N的疫苗庫,由進化過程中每一代的最優(yōu)個體vi組成。將疫苗庫V中的抗體按適應度值進行排序,選擇最優(yōu)的N個抗體作為待接種疫苗(若不足N個,則復制最優(yōu)個體以補充)。
疫苗接種:定義疫苗接種周期TAC,進化代數(shù)記為g。如果mod(k/TAC)=0,則執(zhí)行差分疫苗接種操作,其中mod(·)為取余函數(shù)。選擇疫苗對當前種群進行差分接種:
式中a'(g)為接種后抗體,a(g)為接種前抗體,bac為疫苗,F(xiàn)為差分縮放因子。再將抗體種群a'(g)和a(g)進行等位基因?qū)Ρ?,產(chǎn)生優(yōu)勢進化種群:
MSFIGA的具體流程如圖1所示。
本文采用基于參數(shù)自適應整定的PID 算法作為無人艇航向跟蹤的控制器。在每個采樣周期內(nèi),以航向偏差量作為控制器輸入,并利用MSFIGA 對控制器參數(shù)進行實時優(yōu)化調(diào)整,再由控制器執(zhí)行輸出舵角到USV的運動模型,如圖2所示。
圖2 基于MSFIGA的USV航向在線自適應控制器結(jié)構Fig.2 Structure for USV’s online heading contoller based on MSFIGA
定義初始時刻為t0,當前時刻為t,航向誤差量為e(t),則PID控制器的基本結(jié)構可以表示為
式中,kp、ki、kd分別為比例、積分、微分系數(shù),為待優(yōu)化目標。
性能評價函數(shù)通過評估控制器的綜合性能指引參數(shù)優(yōu)化的方向??刂葡到y(tǒng)主要的性能指標有三類,即穩(wěn)定性、準確性和快速性。對航向控制而言,以上三個要求往往是相互制約的,如上升時間短,則系統(tǒng)震蕩,航向穩(wěn)定性變差;改善穩(wěn)定性,則調(diào)節(jié)速度可能過于緩慢,精度也有可能變差。
為獲得滿意的靜、動態(tài)特性,本文采用誤差e(t)、誤差變化率de(t)及超調(diào)量eM的加權函數(shù)作為抗體優(yōu)化的最小目標函數(shù):
式中,ω1、ω2、ω3為加權系數(shù)。公式右側(cè)第三項是為了避免超調(diào)而引入的懲罰函數(shù),超調(diào)量eM可按下式進行計算:
性能評價函數(shù)J綜合考慮了采樣周期內(nèi)的穩(wěn)態(tài)誤差、調(diào)節(jié)速率和超調(diào)量,其值越小,表明控制系統(tǒng)的性能越好,對應的控制參數(shù)越優(yōu)。
為驗證本文混合優(yōu)化免疫遺傳算法(MSFIGA)的優(yōu)化性能,首先針對下面5 組典型的測試函數(shù),即Camel 函數(shù)(f1)、Rastriqrin 函數(shù)(f2)、Schwefel 函數(shù)(f3)、Bohachevsky 函數(shù)(f4)、Griewangk 函數(shù)(f5),利用Matlab進行仿真測試,并與基本免疫遺傳算法(IGA)和基于單策略優(yōu)化的免疫遺傳算法進行比較。
考慮到算法的隨機性,每組函數(shù)均進行20次獨立的隨機試驗。MSFIGA 的參數(shù)設置如下:N=30,M=3,Ps=0.8,Pc=0.6,ε=0.85,α=0.7,Tac=20。IGA 和單策略優(yōu)化的IGA 算法的相關參數(shù)與MSFIGA中的相同。測試結(jié)果如表1 所示,表中SSIGA1、SSIGA2、SSIGA3 分別表示基于混沌初始化、向量角相似度評價和自適應差分接種的單策略改進免疫遺傳算法。
表1 免疫遺傳算法優(yōu)化性能測試對比Tab.1 Comparison of performance for immune genetic algorithms
由表1 可以看出,基于單策略優(yōu)化的IGA 通過引入不同的改進策略,不同程度地改善了IGA 的全局搜索能力,使得其在優(yōu)化性能上均優(yōu)于傳統(tǒng)的IGA。而在基于多策略混合優(yōu)化的算法中,將三種策略有機融合進了免疫進化的整個過程中,在保證種群多樣性的同時使得種群的整體性能得到了進一步提升,從而顯著提高了算法的搜索能力。從測試結(jié)果可以看出,MSFIGA 具有比單策略算法更強大的全局搜索能力,且收斂更加穩(wěn)定。
為驗證MSFIGA 算法在無人艇航向控制任務中的有效性,開展不同干擾條件下的航向控制仿真測試,并將測試結(jié)果與經(jīng)驗PID、IGA-PID 方法進行比較。以中國船舶科學研究中心小型水面無人艇“X-boat”作為仿真對象,無人艇模型參數(shù)及風浪流干擾參數(shù)設置如表2所示。
表2 無人艇運動模型及環(huán)境干擾參數(shù)設置Tab.2 Parameter setting of USV motion model and environment disturbance
圖3和圖4給出了無人艇階躍響應的航向控制結(jié)果,其中圖3為在無干擾情況下的仿真結(jié)果,圖4為在有風浪干擾情況下的仿真結(jié)果。從圖中可以看出:在無干擾情況下,三種方法均能實現(xiàn)對期望航向的精確跟蹤,但是本文方法在快速性上明顯優(yōu)于其他兩種方法;在有干擾情況下,傳統(tǒng)的PID 控制對航向干擾的調(diào)整能力較差,存在一定的穩(wěn)態(tài)誤差;基于MSFIGA 的方法在穩(wěn)態(tài)誤差、調(diào)節(jié)時間和最大超調(diào)量上均優(yōu)于其他兩種方法。
圖3 無干擾情況下的無人艇階躍響應航向控制結(jié)果Fig.3 Results of USV heading control under good sea conditions for step response
圖4 風浪干擾情況下的無人艇階躍響應航向控制結(jié)果Fig.4 Results of USV heading control under worse sea conditions for step response
圖5給出了無人艇在有風浪干擾情況下方波響應的航向控制結(jié)果。在跟蹤方波航向的過程中,采用單步優(yōu)化的方式實現(xiàn)對控制參數(shù)的在線更新。為了保證算法的實時性,對單步優(yōu)化過程中的種群數(shù)量和最大進化代數(shù)進行了限制(種群規(guī)模N=30,最大進化代數(shù)G=10),在犧牲一定優(yōu)化性能的基礎上有效減低了計算量,以實現(xiàn)算法的在線運行。從試驗結(jié)果可以看出,基于MSFIGA 在線優(yōu)化的航向控制器能夠?qū)崿F(xiàn)對航向軌跡的快速響應和跟蹤,與經(jīng)驗PID 和IGA-PID 方法相比,具有更少的調(diào)整時間和響應速度。
圖5 風浪干擾情況下的無人艇方波響應航向控制結(jié)果Fig.5 Results of online adaptive heading control of USV under worse sea conditions for squared wave response
從以上仿真測試結(jié)果可以看出,基于多策略融合改進免疫遺傳算法(MSFIGA)的PID控制器,在離線情況和在線情況下均能實現(xiàn)對無人艇航向的準確跟蹤,且在有風浪干擾情況下具有比傳統(tǒng)PID 和IGA-PID 方法更快的響應速度和更好的魯棒性能。仿真試驗說明本文方法具有良好的自適應跟蹤能力,能滿足無人艇的航向自適應控制要求。
針對無人艇的航行過程具有強非線性、易受環(huán)境動態(tài)干擾等特點,本文設計了一種基于多策略融合改進免疫遺傳算法(MSFIGA)的無人艇航向自適應控制器。在基本免疫遺傳算法的基礎上引入了混沌初始化、向量角相似度及差分接種等調(diào)節(jié)策略,實現(xiàn)了對PID 航向控制器的控制參數(shù)的自適應優(yōu)化,有效提升了無人艇航向控制的準確性和魯棒性。在離線、在線情況下進行了無人艇在風浪流干擾條件下的航向控制仿真試驗。試驗結(jié)果表明:在多種風浪流干擾條件下,本文方法均能快速準確地跟蹤期望航向,且控制性能明顯優(yōu)于其他兩種方法,具有較強的穩(wěn)定性和自適應調(diào)整能力。雖然計算量大于傳統(tǒng)PID 算法,但是在具有常規(guī)運算能力的計算機上能夠完成單次采樣時間內(nèi)的優(yōu)化計算,滿足實時性要求,具有一定的工程實用價值。