孟 非,徐紅洋,解志斌
(江蘇科技大學 電子信息學院,江蘇 鎮(zhèn)江 212003)
基于云粒子群算法的船舶縱搖運動參數(shù)辨識
孟 非,徐紅洋,解志斌
(江蘇科技大學 電子信息學院,江蘇 鎮(zhèn)江 212003)
提出一種基于云粒子群優(yōu)化算法的船舶縱搖運動參數(shù)辨識方法。該方法利用正態(tài)云發(fā)生器自適應調整粒子群算法的慣性權重,并在算法進化過程中對粒子位置進行基于云模型的變異操作,可以很好地解決算法早熟收斂的缺點,能夠提高算法的收斂精度和收斂速度。應用該算法對船舶縱搖有關運動參數(shù)進行辨識,辨識結果在可以接受的范圍之內。
粒子群優(yōu)化;云模型;參數(shù)辨識
船舶運動模型是對船舶進行操縱控制的前提條件,也是設計船舶自動舵和研究其操縱性能的基礎。一般情況下,水動力參數(shù)可以通過水動力實驗或理論分析方法獲得,但是與實航情況相比,用理論方法計算獲得的結果有較大差別。因此,通過辨識方法獲得相關參數(shù)有著重要的實際意義。船舶水動力參數(shù)的辨識方法很多,如神經(jīng)網(wǎng)絡方法、支持向量機方法、遺傳算法、智能方法及卡爾曼濾波方法等[1-5]。
粒子群優(yōu)化(Particle Swarm Optimization, PSO)算法是Kennedy和Eberhart受人工生命研究結果的啟發(fā)通過模擬鳥群覓食過程中的遷徙和群聚行為而提出的一種基于群體智能的全局隨機搜索算法[6]。作為一個有效的優(yōu)化算法,PSO算法被廣泛應用于函數(shù)優(yōu)化、模式分類、模糊系統(tǒng)控制、神經(jīng)網(wǎng)絡訓練以及其他工程領域中[7]。由于PSO算法程序實現(xiàn)簡單,需要調整的參數(shù)很少,因此近年來出現(xiàn)了研究熱潮,并提出了很多改進的算法[8-12]。
標準PSO算法在進化后期由于粒子多樣性的缺失而易于陷入局部最優(yōu),發(fā)生早熟收斂問題。本文在文獻[12]提出的云粒子群算法(Cloud PSO, CPSO)基礎上,考慮云模型的模糊性和隨機性[13-14],用PSO算法全局最優(yōu)值和粒子適應度的比值將種群劃分為3個區(qū)間,利用云模型理論動態(tài)調整相應的慣性權重,并對特定的粒子進行云變異,得到改進的CPSO(Improved CPSO, ICPSO),有效平衡CPSO算法的全局搜索能力和局部開發(fā)能力。最后將ICPSO算法用于船舶縱搖運動參數(shù)辨識問題上,辨識結果較為理想。
(1)
式中:FR為水平舵升力;F3為海浪升沉干擾力;XR為舵升力中心到船體重心的縱向距離;M5為海浪縱搖干擾力矩。
一般在參數(shù)辨識過程中需要將系統(tǒng)轉化為狀態(tài)空間的形式,并且進行離散化。
對于式(1),令x1=z,x3=θ,設狀態(tài)變量為
(2)
式中(·)T表示轉置運算,則船舶縱向運動的狀態(tài)方程式可以寫成為:
(3)
式中:A=E-1A*;B=E-1B*;C=E-1C*;u=FR;W=(F3M5)T;(·)-1為取逆運算。
待辨識的參數(shù)為para=[a33,a35,a53,a55,b33,b35,b53,b55,c33,c35,c53,c55]。
PSO算法是一種基于種群的智能優(yōu)化算法。假設在D維的搜索空間中,粒子群的規(guī)模是N,xi=(xi1,xi2,…,xiD)為第i個粒子的位置,vi=(vi1,vi2,…,viD)為其對應的飛行速度,則PSO算法的迭代公式如下:
v(t+1)=v(t)+c1r1(pbest-x(t))+
c2r2(gbest-x(t)),
(4)
x(t+1)=x(t)+v(t+1)。
(5)
式中:c1和c2為學習因子;pbest和gbest為粒子自身歷史最優(yōu)位置和粒子群最優(yōu)位置;r1和r2為介于(0, 1)之間的隨機數(shù)。
云模型是一種對確定性知識進行定性定量轉換的數(shù)學模型,主要反映客觀世界中事物或人知識概念的模糊性和隨機性,為定性定量結合的事物處理提供手段。云模型用期望Ex(Expected value)、 熵En(Entropy)和超熵He(Hyper entropy)這3個數(shù)字特征來整體表征一個概念,Ex(Expected value)為期望, 代表云的重心, En(Entropy)為熵, 它反映了云的分布范圍, He(Hyper entropy)為超熵,它代表了熵的離散程度。云模型的這幾個數(shù)字特征把模糊性和隨機性完全集成在一起,構成定性概念和定量概念之間轉換的映射。
(6)
式中:w1=0.9;w2=0.4;Ex=5w1-w2;En=5;He=0.5;A和B為2個調節(jié)參數(shù)。
為了進一步保持粒子種群的多樣性,對部分粒子通過正態(tài)云發(fā)生器進行變異操作。取隨機數(shù)rand和變異概率pm,當rand 云滴生成算法如下: INPUT:{ExEnHe},n//n為云滴數(shù) OUTPUT:{(x1,u1),…,(xn,un)} //n個云滴 fori=1ton En′=RANDN(En,He) xi=RANDN(Ex,En′) Drop(xi,ui) //生成第i個云滴 end 系統(tǒng)辨識是在輸入和輸出相關數(shù)據(jù)基礎上,從一類模型中確定1個與正在觀測系統(tǒng)相等價的模型。對于船舶縱搖問題,系統(tǒng)模型已知,但系統(tǒng)模型中各個參數(shù)未知,待辨識參數(shù)共有12個。對于c33,c35,c53,c55這4個參數(shù)而言,它們只與船型有關,與航速、海情、航向、遭遇頻率沒有關系。因此,這些參數(shù)可以用理論計算方法直接得到,不需要進行辨識,只需對a33,a35,a53,a55,b33,b35,b53,b55這8個參數(shù)進行辨識。 基于ICPSO算法的參數(shù)辨識步驟如下:1)對ICPSO算法進行初始化,根據(jù)船舶縱向運動方程以及文獻中所給的水動力參數(shù)計算出理論觀測值;2)根據(jù)船舶縱向運動方程以及每個粒子的位置(即水動力參數(shù))計算實際觀測值;3)由理論觀測值和實際觀測值按照式(7)計算每個粒子的適應度值;4)對群體中的每—個粒子按照式(6)調整慣性權重,按照圖1進行變異操作;5)更新ICPSO算法相關參數(shù);6)判斷是否滿足終止條件,若不是就返回步驟2,否則結束迭代,輸出結果。 船舶縱搖參數(shù)辨識算法流程如圖1所示。 (7) 式中:Yi實際觀測值為辨識得到的水動力參數(shù)計算到的實際觀測值;Yi理論觀察值為根據(jù)實船試驗得到的水動力參數(shù)計算到的理論觀測值;dataNum為觀測次數(shù)。 圖1 參數(shù)辨識算法流程圖Fig.1 Flowchart of parameters identification algorithm 圖2 升沉的辨識曲線Fig.2 Identification curves of heave 圖3 縱搖的辨識曲線Fig.3 Identification curves of longitudinal motions 在仿真實驗過程中,仿真工具為Matlab7.0,粒子群規(guī)模為60,加速常數(shù)c1和c2均取2.05,A=0.15,B=0.93,pm=0.2,輸入舵角設定為幅值是±10的偽隨機數(shù),二維測量噪聲取均值為0的高斯白噪聲,理論觀測值由海情3級航速18 kn航向分別是0°,45°,90°,135°,180°的水動力參數(shù)計算得出,1000次迭代后的水動力參數(shù)辨識數(shù)據(jù)如表1所示。從表1可以看出,辨識誤差大部分在5%以內,但也有個別達到了10%左右,總體上講在可以接受的范圍之內。當然,如果適當增加迭代的次數(shù),有可能進一步降低辨識誤差。圖2為船舶升沉曲線圖,橫坐標是觀測的實際次數(shù),縱坐標則是升沉值(單位為cm)。圖3為船舶縱搖曲線圖,橫坐標是觀測的實際次數(shù),縱坐標為縱搖值[單位為(°)]。從圖中可以看出理論觀測值與模型輸出值基本是吻合的,說明船舶的動力學特性能夠通過辨識結果較準確地描述出來。 船舶水動力參數(shù)辨識是通過對船舶觀測數(shù)據(jù)處理而獲取船舶水動力參數(shù)的一種重要手段。本文根據(jù)云模型的模糊性和隨機性的特點,對云粒子群算法進行了改進,有效增強種群的多樣性,避免陷入局部極小值,并將改進后的云粒子算法用于船舶縱向運動參數(shù)辨識問題,給出了參數(shù)辨識結果以及船舶升沉和縱搖的辨識曲線圖,結果基本可以接受,為船舶水動力參數(shù)辨識提供了一種新的研究方法。 表1 船舶縱向運動參數(shù)辨識結果 [1] MAHFOUZ A B,HADDARA M R.Effect of the damping and excitation on the identification of the hydrodynamic parameters for an underwater robotic vehicle[J].Ocean Engineering,2003,30(8):1005-1025. [2] LUO Wei-lin,ZOU Zao-jian.Identification of response models of ship maneuvering motion using support vector machines[J].Journal of Ship Mechanics,2007,11(6):832-838. [3] 徐孟,陳永冰,周永余.基于高級遺傳算法的船舶模型參數(shù)辨識[J].艦船電子工程,2006,26(1):101-106. XU Meng,CHEN Yong-bing,ZHOU Yong-yu.A ships parameter identification arithmetic based on RGA[J].Ship Electronic Engineering,2006,26(1):101-106. [4] 陳瑋琪,顏開,史淦君,等.智能算法和物體斜出水水動力參數(shù)辨識[J].船舶力學,2008,12(2):204-210. CHEN Wei-qi,YAN Kai,SHI Gan-jun,et al.A new swarm intelligence and parameter identification of hydrodynamic forces acting on axis-symmetric body exiting water obliquely[J].Journal of Ship Mechanics,2008,12(2):204-210. [5] 趙大明,施朝健,彭靜.應用擴展卡爾曼濾波算法的船舶運動模型參數(shù)辨識[J].上海海事大學學報,2008,29(3):5-9. ZHAO Da-ming,SHI Chao-jian,PENG Jing.Parameter identification tomotion model of ship by extended Kalman filter[J].Journal of Shanghai Maritime University,2008,29(3):5-9. [6] KENNEDY J,EBERHART R C.Particle swarm optimization[A].Proc.IEEE International Conference on Neural Networks[C].Piscataway,NJ,1995:1942-1948. [7] 曾建潮,介婧,崔志華.微粒群算法[M].北京:科學出版社,2004. ZENG Jian-chao,JIE Jing,CUI Zhi-hua.Particle swarm optimization algorithm[M].Beijing:Science Press,2004. [8] 孫湘,周大為,張希望.慣性權重粒子群算法模型收斂性分析及參數(shù)選擇[J].計算機工程與設計,2010,31(18):4068-4071. SUN Xiang,ZHOU Da-wei,ZHANG Xi-wang.Convergence analysis and parameter selection of PSO model with inertia weight[J].Computer Engineering and Design,2010,31(18):4068-4071. [9] 田雨波,彭濤,沙莎.基于微分進化算子和混沌擾動的量子粒子群算法[J].江蘇科技大學學報(自然科學版),2011,25(2):158-162. TIAN Yu-bo,PENG Tao,SHA Sha.Improved quantum-behaved particle swarm optimization algorithm based on differential evolution operator and chaos disturbance[J].Journal of Jiangsu University of Science and Technology (Natural Science Edition),2011,25(2):158-162. [10] 田雨波,朱人杰,薛權祥.粒子群優(yōu)化算法中慣性權重的研究進展[J].計算機工程與應用,2008,44(23):39-41. TIAN Yu-bo,ZHU Ren-jie,XUE Quan-xiang.Research adva-nces on inertia weight in particle swarm optimization[J].Com-puter Engineering and Applications,2008,44(23):39- 41. [11] 胡旺,李志蜀.一種更簡化而高效的粒子群優(yōu)化算法[J].軟件學報,2007,18(4):861-868. HU Wang,LI Zhi-shu.A simpler and more effective particle swarm optimization algorithm[J].Journal of Software,2007,18(4):861-868. [12] 韋杏瓊,周永權,黃華娟,等.云自適應粒子群算法[J].計算機工程與應用,2009,45(1):48-50. WEI Xing-qiong,ZHOU Yong-quan,HUANG Hua-juan,et al.Adaptive particle swarm optimization algorithm based on cloud theory[J].Computer Engineering and Applications,2009,45(1):48-50. [13] 李德毅,孟海軍,史雪梅.隸屬云和隸屬云發(fā)生器[J].計算機研究與發(fā)展,1995,32(6):15-20. LI De-yi,MENG Hai-jun,SHI Xue-mei.Membership clouds and membership cloud generators[J].Journal of Computer Research and Development,1995,32(6):15-20. [14] 劉常昱,李德毅,杜鶿,等.正態(tài)云模型的統(tǒng)計分析[J].信息與控制,2005,34(2):236-239. LIU Chang-yu,LI De-yi,DU Yi,et al.Some statistical analysis of the normal cloud model[J].Information and Control,2005,34(2):236-239. Parameter identification of ship longitudinal motions based on cloud particle swarm optimization algorithm MENG Fei,XU Hong-yang,XIE Zhi-bin (School of Electronics and Information, Jiangsu University of Science and Technology,Zhenjiang 212003,China) Parameter identification of ship longitudinal motion is presented based on a proposed cloud particle swarm optimization (CPSO). The CPSO applies normal cloud model generator to adjust its inertia value. Simultaneously, cloud variation is used to the particle position in the process of evolution of the CPSO. This may solve the premature convergence problem and improve the convergence speed and accuracy. Finally, the method is applied to the parameter identification of ship longitudinal motion, and the simulation result is acceptable. particle swarm optimization;cloud model;parameter identification 2013-06-20; 2013-09-04 船舶工業(yè)國防科技預研基金資助項目(10J3.5.2) 孟非(1977-),女,實驗師,研究方向為智能計算技術及其應用。 TP27 A 1672-7649(2014)07-0037-04 10.3404/j.issn.1672-7649.2014.07.0083 仿真實驗
4 結 語