国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

參數(shù)辨識在船舶運動控制中的研究與應(yīng)用

2011-03-20 02:23李光磊臧濤范鄒韓冰
船電技術(shù) 2011年4期
關(guān)鍵詞:適應(yīng)度乘法遺傳算法

李光磊 臧濤 范鄒 韓冰

(1. 海軍駐九江地區(qū)軍事代表室,江西九江 332007; 2. 海軍蚌埠士官學(xué)校,安徽蚌埠 233012)

1 引言

船舵無疑是艦船各個部件中最主要部件之一,隨著艦船控制舵的發(fā)展,船舵已經(jīng)由手動操舵向自動舵方向發(fā)展,自動舵以其方便和實用越來越受到部隊的重視和應(yīng)用。理論上,只有預(yù)先掌握船舶運動規(guī)律的先驗知識,如船舶參數(shù)、噪聲參數(shù)等,才能設(shè)計出較理想的控制算法。

本文分別采用最小二乘法和遺傳算法對船舶運動參數(shù)進(jìn)行辨識,針對對比仿真存在的問題,根據(jù)最小二乘法和間接模型參考自適應(yīng)法的特點提出一種基于兩種方法的混合算法[1]。實驗表明混合算法克服了原有單一算法針對非線性系統(tǒng)參數(shù)辨識的固有缺陷,辨識效果大大改進(jìn),因此對船舶參數(shù)辨識具有重要意義。

2 船舶運動方程的建立

要進(jìn)行船舶的辨識和控制算法的研究,首先都必須建立船舶操縱運動的數(shù)學(xué)模型??紤]到船舶運動控制參數(shù)應(yīng)盡可能少,同時兼顧船舶航行狀態(tài)的可觀測性,我們采用經(jīng)典的非線性KT方程作為出船舶數(shù)學(xué)模型。

船舶運動KT方程是連續(xù)的微分方程。為辨識該連續(xù)方程,要求提供角速度乃至航向角加速度的輸出值。但在工程實踐中,很難正確測定上述運動參數(shù),而且即使測定了航向角速度,它與航向測定值往往也不太匹配,同時航向的測定精度一般要求較高,故可用對航向角輸出值進(jìn)行數(shù)值微分的方法以提供上述運動參數(shù)[2]。

考慮一階非線性船舶運動方程:

將其離散化為:

考慮二階非線性船舶運動方程:

將其離散化為:

3 最小二乘法在船舶運動方程參數(shù)辨識中的應(yīng)用

應(yīng)用最小二乘法辨識原理對非線性模型的參數(shù)辨識需要對非線性模型進(jìn)行一定的處理?,F(xiàn)以二階非線性方程為例來說明其應(yīng)用原理[3]。

式(4)是經(jīng)過處理過的非線性離散方程。

取Y=Φθ

以上是基本最小二乘法在船舶運動方程中的應(yīng)用,因為基本最小二乘法具有估計的有偏性,故可利用廣義最小二乘法對參數(shù)進(jìn)行估計。

4 遺傳算法在船舶運動方程參數(shù)辨識中的應(yīng)用

遺傳算法來源于生物進(jìn)化中“適者生存”的思想。通過模擬自然界進(jìn)化中的自然選擇,基因重組以及基因突變來進(jìn)行自學(xué)習(xí)和尋優(yōu)?;具z傳算法有選擇、交叉和變異三個基本算子組成。具體過程如下:

(1)編碼并生成初始種群。遺傳算法不能直接處理解域中的數(shù)據(jù),因此需通過編碼將它們表示成遺傳空間的基因型數(shù)據(jù)串,本文采用串聯(lián)二進(jìn)制編碼。對于初始種群的個體,則是通過隨機方法產(chǎn)生。

(2)計算適應(yīng)度。適應(yīng)度是遺傳算法中的核心部分,它決定了種群中個體對所求解的問題的適合程度,在船舶運動方程中就是判定種群中變量即K、T是否符合方程。因此對適應(yīng)度的設(shè)計就至關(guān)重要。

在這里我們根據(jù)船舶運動方程的特點,運用殘差平方和對個體的適應(yīng)度進(jìn)行判定。下面以二階方程進(jìn)行說明。

對(4)進(jìn)行變形得:

(3)選擇、交叉和變異。采用基于線性排序的適應(yīng)度分配的方法來進(jìn)行選擇操作。

交叉是提高遺傳算法搜索能力的一個重要操作,在此我們采用離散重組的方法。由于自適應(yīng)遺傳算法在保持群體多樣性的同時,也保證了算法的收斂性。

對交叉進(jìn)行自適應(yīng)的調(diào)整公式如下[4]:

其中:Pc1,Pc2分別為交叉概率的上限、下限;f1為要交叉的兩個個體中較大的適應(yīng)度;favg為每代群體的平均適應(yīng)度;fmax為群體中最大適應(yīng)度值。在此,我們選取Pc1=0.9,Pc2=0.6。

相應(yīng)地,我們對變異操作也進(jìn)行自適應(yīng)操作。

對變異進(jìn)行自適應(yīng)的調(diào)整公式如下[4]:

其中:Pm1,Pm2分別為變異概率的上限、下限;f2為要變異的兩個個體中較大的適應(yīng)度;favg為每代群體的平均適應(yīng)度;fmax為群體中最大適應(yīng)度值。在此,我們選取Pm1=0.1,Pm2=0.001。

(4)噪聲處理

眾所周知,在實際的船舶航行時采集的數(shù)據(jù)中噪聲是不能不考慮的一個重要因素,因此在實際數(shù)據(jù)運算中就必須考慮對噪聲進(jìn)行處理。

在遺傳算法的適應(yīng)度函數(shù)中,我們選取(4)式的殘差平方和作為適應(yīng)度函數(shù),其矩陣表達(dá)形式為Y=Φθ。

其中:

殘差e(k)=Y-Φθ,但這一判定標(biāo)準(zhǔn)沒有考慮噪聲。然而實際中噪聲是不可避免的。為此我們需要對噪聲進(jìn)行處理。

5 仿真試驗

遺傳算法是一種隨機搜索法。它無需求導(dǎo)、理論上能全局收斂的解非線性模型參數(shù)估計的方法。遺傳算法因其自身獨有的優(yōu)點,因而在解決非線性模型參數(shù)估計方面有著很大的優(yōu)勢。最小二乘法在辨識的參數(shù)比較多時,可能存在“參數(shù)相消”效應(yīng),即辨識所得的各參數(shù)同時偏離各自的真值,但只要它們和參數(shù)真值保持相同比值,同樣可以是誤差函數(shù)為最小。下面對非線性方程在數(shù)據(jù)無干擾情況下,應(yīng)用遺傳算法和最小二乘法進(jìn)行仿真對比,其中遺傳算法采用自適應(yīng)遺傳算法,即在基本遺傳算法基礎(chǔ)上加入交叉概率和變異概率自適應(yīng)機制。

5.1 一階非線性仿真比較

本實驗使用的數(shù)據(jù)是根據(jù)大連海事大學(xué)的試驗船“育龍”號的仿真結(jié)果進(jìn)行的數(shù)據(jù)模擬[5]。K=0.478,T=216,α=30;除此之外,還對參數(shù)進(jìn)行另外設(shè)定以檢驗辨識方法的優(yōu)劣。對比實驗數(shù)據(jù)見表1、2。

表1 最小二乘法實驗數(shù)據(jù)記錄表

表2 遺傳算法實驗數(shù)據(jù)記錄表

5.2 二階非線性仿真比較

對比試驗數(shù)據(jù)見表3、4。

表3 最小二乘法實驗數(shù)據(jù)記錄表

表4 遺傳算法實驗數(shù)據(jù)記錄表

在K=0.07,T=25,α=3這一組數(shù)據(jù)中出現(xiàn)可參數(shù)相消現(xiàn)象。以上說明最小二乘法與遺傳算法在辨識非線性系統(tǒng)且參數(shù)較多時,均存在著參數(shù)相消現(xiàn)象。最小二乘法仿真圖見圖 1,遺傳算法K值進(jìn)化過程見圖 2。因此用這兩種方法不能可靠辨識出二階非線性方程的參數(shù)值。

圖1 廣義最小二乘法仿真圖

圖2 遺傳算法K值進(jìn)化過程

二階非線性方程的Simlink仿真圖如3所示。

6 算法改進(jìn)與仿真

我們知道間接模型參考自適應(yīng)法具有很強的局部搜索能力,但它易于陷入局部最優(yōu)解,且對初值的設(shè)定要求比較高,因此本文將介紹一種混合算法。由上面結(jié)果表明,最小二乘法與遺傳算法在辨識低階非線性模型能夠大體辨識出參數(shù)的值,我們將根據(jù)其中一種算法辨識的參數(shù)作為初值,然后根據(jù)間接模型參考自適應(yīng)法進(jìn)行局部搜索。最小二乘法與遺傳算法辨識的參數(shù)區(qū)別不大,但考慮到運算速度,我們將采用最小二乘法辨識參數(shù)的初值。

6.1 算法的實現(xiàn)

考慮野本一階方程:

圖3 二階非線性方程的Simlink仿真

其中:r為航向變化率,δ為舵角,a=-1/T'<0,b=K'/T'>0,由間接模型參考自適應(yīng)法的數(shù)學(xué)原理,設(shè)定P=1,自適應(yīng)參數(shù)為:

其中:e=rm-r,r為采集的實際數(shù)據(jù);rm是推算的航向變化率,其表達(dá)式為:

其中h為采樣時間。由于所要求取的參數(shù)a,b都很重要,因此權(quán)重系數(shù)設(shè)定為γ1=γ2=100。

用以上方法不斷修改am,bm使其接近于真實值a,b。

下面編程實現(xiàn)船舶在無干擾下的數(shù)據(jù)生成,其中船長L=150 m,船速U=8 m/s,a=-0.6,b=0.2,K=0.01778,T=31.25,舵角信號為 3×sin(0.05×t)。試驗是在采樣時間為0.5 s、1 s、2 s三種情況下對參數(shù)進(jìn)行辨識。實驗數(shù)據(jù)記錄見表 5。其中最小二乘法采用廣義最小二乘法。

表5 實驗數(shù)據(jù)記錄表

圖4是混合算法仿真示意圖。

6.2 算法的仿真

圖4 混合算法仿真示意圖

由于在無干擾情況下混合算法辨識結(jié)果較好,故表6將考慮有噪聲干擾情況下混合算法的辨識結(jié)果。其余數(shù)據(jù)與無干擾情況下的相同,當(dāng)在圖3的干擾模型中的白噪聲能量設(shè)為0.01時。

表6 實驗數(shù)據(jù)記錄表

當(dāng)在圖3的干擾模型中的白噪聲能量設(shè)為1時的實驗數(shù)據(jù)記錄見表7。

表7 實驗數(shù)據(jù)記錄表

由以上實驗結(jié)果表明改進(jìn)后的混合算法在船舶運行良好狀態(tài)下對采樣時間的要求不是很高,而對一般辨識參數(shù)要求對不同船型進(jìn)行合適的采樣時間的設(shè)定。由于我們常常無法準(zhǔn)確地合理劃分船型大小,因此,本方法對實際參數(shù)辨識意義重大。

7 結(jié)束語

本文首先根據(jù)最小二乘法和遺傳算法的基本原理對船舶運動方程的參數(shù)辨識進(jìn)行了仿真實驗,通過對比試驗結(jié)果可知,遺傳算法能夠較準(zhǔn)確地辨識參數(shù)較少的低階非線性方程,而在辨識參數(shù)較多的二階非線性方程時出現(xiàn)了辨識參數(shù)相消的現(xiàn)象,不能夠準(zhǔn)確辨識出參數(shù)的真實值。結(jié)合上述現(xiàn)象,設(shè)計出一種基于最小二乘法和間接模型參考自適應(yīng)法的混合算法,該算法對原有的單一算法進(jìn)行了優(yōu)化,仿真結(jié)果令人滿意,為較好地解決非線性系統(tǒng)的辨識問題提供了一條有效途徑。

[1] 韓冰. 艦船航行參數(shù)辨識的方法研究與實現(xiàn)[D]. 武漢:海軍工程大學(xué), 2008.

[2] 辛元歐, 俞勝芬. 關(guān)于K—T方程類的辨識方法研究——自回歸模型的辨識[J]. 中國航海,1983,13(2):28-43.

[3] 李言俊, 張科. 系統(tǒng)辨識理論及應(yīng)用[M]. 北京: 國防工業(yè)出版社, 2003,50-76.

[4] 王小平, 曹立明. 遺傳算法-理論、應(yīng)用與軟件實現(xiàn)[M]. 西安: 西安交通大學(xué)出版社, 2002: 73-74.

[5] 李鐵三, 楊鹽生, 鄭云峰. 不完全驅(qū)動船舶非線性控制[J]. 交通運輸工程學(xué)報, 2003, 3(4):39-43.

猜你喜歡
適應(yīng)度乘法遺傳算法
算乘法
改進(jìn)的自適應(yīng)復(fù)制、交叉和突變遺傳算法
我們一起來學(xué)習(xí)“乘法的初步認(rèn)識”
《整式的乘法與因式分解》鞏固練習(xí)
把加法變成乘法
一種基于改進(jìn)適應(yīng)度的多機器人協(xié)作策略
一種基于遺傳算法的聚類分析方法在DNA序列比較中的應(yīng)用
基于遺傳算法和LS-SVM的財務(wù)危機預(yù)測
基于空調(diào)導(dǎo)風(fēng)板成型工藝的Kriging模型適應(yīng)度研究
軟件發(fā)布規(guī)劃的遺傳算法實現(xiàn)與解釋