CN103336887A - 一种基于蜂群算法辨识水动力系数的方法 - Google Patents

一种基于蜂群算法辨识水动力系数的方法 Download PDF

Info

Publication number
CN103336887A
CN103336887A CN2013102209943A CN201310220994A CN103336887A CN 103336887 A CN103336887 A CN 103336887A CN 2013102209943 A CN2013102209943 A CN 2013102209943A CN 201310220994 A CN201310220994 A CN 201310220994A CN 103336887 A CN103336887 A CN 103336887A
Authority
CN
China
Prior art keywords
prime
centerdot
honeybee
rho
delta
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2013102209943A
Other languages
English (en)
Inventor
周卫东
李素明
高明松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Harbin Engineering University
Original Assignee
Harbin Engineering University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Harbin Engineering University filed Critical Harbin Engineering University
Priority to CN2013102209943A priority Critical patent/CN103336887A/zh
Publication of CN103336887A publication Critical patent/CN103336887A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明属于最优控制理论与仿生智能算法的交叉领域,涉及一种基于蜂群算法的辨识水下潜器水动力系数的方法。本发明包括:建立潜器运动模型;确定算法适应度函数;初始化蜂群算法参数以及雇佣蜂种群;对第n代采蜜蜂,搜索新的位置;选取适应度更高的向量保留给下一代的种群;选择一个采蜜蜂;记录种群最终更新过后达到的最优适应度值;重新初始化该采蜜蜂位置。本发明无需对潜器模型进行线性化,而且考虑了各个水平面之间耦合作用,以及结合蜂群算法全局搜索和局部搜索的特点,避免了传统船模试验繁冗单调的调试过程,提供了一种消除传统船模试验所获取水动力系数带来误差的有效途径,提高了航行训练潜器操纵的准确性。

Description

一种基于蜂群算法辨识水动力系数的方法
技术领域
本发明属于最优控制理论与仿生智能算法的交叉领域,涉及一种基于蜂群算法(ArtificialBee Colony,ABC)的辨识水下潜器水动力系数的方法。
背景技术
潜器在操纵时,要求操作人员对潜器的运动和姿态进行精确有效的控制,潜器运动操纵控制系统就是实现这一要求的核心系统,它具体包括操舵、均衡、潜浮、水下悬停、离靠码头和系船等分系统。一直以来,正确预报潜器操纵运动时的水动力系数是操纵性研究的基础,也是最为艰难的工程,确定6自由度方程的水动力系数对于模型的精确度、运动的逼真度至关重要。
潜器操纵运动的水动力系数,一般说可用理论计算、实验测定和近似计算等方法来确定。船模试验测定是当前确定水动力系数最有效的方法,通常分为拘束船模试验和自由自航船模两种试验方法,目前潜器动力学模型联邦成员中使用的水动力系数来源于拘束船模试验方法。但是由于船模与实艇存在较大差异,加上船模试验本身的局限性,现有操纵控制模型和实艇存在误差,导致航行训练仿真系统解算的参数与实航时有偏离,这种误差的影响使得训练中的操纵结果和实航不一致,直接关系到训练效果,不解决这一问题航行训练仿真系统就起不到训练的作用,甚至会使受训人员积累错误的经验。因此,潜器操纵模型和是实艇的拟合研究是航行训练仿真系统的关键技术之一。
蜂群算法是一种最新发展的模拟蜜蜂群体寻找优良蜜源的仿生优化算法。它是建立在蜜蜂自组织模型和群体智能基础上的一种计算方法,它主要从蜜蜂实现采蜜的群体智能行为中得到启发。蜜蜂个体之间通过跳摇摆舞,交流彼此掌握的蜜源的距离等信息,通过蜜蜂角色的转变来进行采蜜以及寻找更优的蜜源。
在蜂群算法中,优化问题的每一个解都被看作是搜索空间中的一个食物源,所有的蜜蜂都由一个被优化的目标函数决定其适应度,不同类型蜜蜂根据自身功能决定其运动规律,所有蜜蜂最终都为寻找最优质量花蜜而努力。
尽管蜂群算法研究与应用还处于初级阶段,但由于算法的控制参数少、易于实现、计算方便等优点,已被越来越多的学者所关注。Karaboga等已经成功地将蜂群算法应用于函数的无约束数值优化、限制性数值优化、神经网络训练、数字滤波器的设计等,Rao等用蜂群算法解决了分布式系统中的网络重构问题。因此,对于潜器这种非线性、高耦合的模型而言,用蜂群算法辨识其参数是合宜的。
发明内容
本发明的目的是提供一种更接近实艇运动的水动力参数,消除单纯的船模试验所得参数的误差,使仿真操作系统的训练结果与实艇操纵一致的辨识潜器水动力系数的方法。
本发明包括如下步骤:
(1)建立潜器运动模型:
轴向方程:
u = U 0 ( 1 - e - 0.52 u / | ψ · | L ) ,
横向方程:
m [ v · - wp + ur ] = 1 2 ρ L 4 [ Y r · ′ r · ] + 1 2 ρ L 3 [ Y v · ′ v · + Y r ′ ur ] + 1 2 ρ L 2 [ Y v ′ uv ] + 1 2 ρ L 2 [ Y δ r ′ u 2 δ r ] ,
垂向方程:
m [ w · - uq + vp ] = 1 2 ρ L 4 [ Z q · ′ q · + Z q | q | ′ q | q | ] + 1 2 ρ L 3 [ Z w · ′ w · + Z q ′ uq ]
+ 1 2 ρ L 2 [ Z 0 ′ u 2 + Z w ′ uw + Z w | w | ′ w | ( w 2 + v 2 ) 1 2 ] ,
+ 1 2 ρ L 2 [ Z δ s ′ u 2 δ s + Z δ b ′ u 2 δ b ]
横倾方程:
纵倾方程:
I y q · + ( I x - I z ) rp = 1 2 ρ L 5 [ M q · ′ q · ] + 1 2 ρ L 4 [ M w · ′ w · + M q ′ uq + M | w | q ′ | ( w 2 + v 2 ) 1 2 | q ]
+ 1 2 ρ L 3 [ M 0 ′ u 2 + M w ′ uw + M w | w | ′ w | ( w 2 + v 2 ) 1 2 | ] ,
+ 1 2 ρ L 3 [ M δ s ′ u 2 δ s + M δ b ′ u 2 δ b ] - mgh sin θ
偏航方程:
I z r · + ( I y - I x ) pq = 1 2 ρ L 5 [ N r · ′ r · ] + 1 2 ρ L 4 [ N v · ′ v · + N r ′ ur + N | v | r ′ | ( w 2 + v 2 ) 1 2 | r ] ,
+ 1 2 ρ L 3 [ N v ′ uv ] + 1 2 ρ L 3 [ N δ r ′ u 2 δ r ]
辅助方程:
Figure BDA00003307486100031
其中:u、v、w表示艇体纵向速度、横向速度和垂向速度,p、q、r是横摇角速度、纵摇角速度和艏摇角速度,θ、ψ为潜艇的横倾角、纵倾角和航向角,m、L、h分别是艇体的质量、长度和重心高度,g为重力加速度,ξ、η、ζ为艇体原点的地理坐标位置,Ix、Iy、Iz为潜艇绕X、Y、Z轴的转动惯量,δr、δb、δs为潜艇的方向舵角、艏舵舵角、艉舵舵角,U0为基准航行态的速度,
Figure BDA00003307486100033
分别为潜艇的无因次水动力系数;
(2)确定算法适应度函数:
Figure BDA00003307486100034
Figure BDA00003307486100035
则:
J = Σ j = 1 8 ( 1 - R j R j * ) 2 = Σ j = 1 8 ( ΔR j / R j * ) 2 ,
适应度函数为:
f = 1 J + 1 ,
其中,R代表操纵指标,分别为水平面Z形操舵机动的超越首向角
Figure BDA00003307486100038
和周期TZ,垂直面梯形操艏舵机动的执行时间tes、超越纵倾角θovs,垂直面梯形操艉舵机动的执行时间tew、超越纵倾角θovw,水平面操舵回转运动的定长回转直径Ds和回转周期TH,上标*表示基准数据;
(3)初始化蜂群算法参数以及雇佣蜂种群:
蜜蜂总数为Ns,其中,采蜜蜂种群规模为Ne,跟随蜂种群规模为Nu,个体向量维度为D,S=RD为个体搜索空间,
Figure BDA00003307486100041
为采蜜蜂种群空间;若Xi∈S(i≤Ne)是Ne个个体,则
Figure BDA00003307486100046
代表一个采蜜蜂种群,X(0)表示初始采蜜蜂种群,X(n)表示第n代采蜜蜂种群,用f:S→R+表示适应度函数,为步骤(2)中函数f,最大搜索次数为Limit,本次迭代次数为T,最大迭代次数为Tmax,初始化各蜜蜂搜索次数Bas=0;
(4)对第n代采蜜蜂Xi(n),在当前位置向量邻域进行搜索新的位置:
Figure BDA00003307486100042
其中j∈{1,2,…,D},k∈{1,2,…,Ne},且k≠i,k,j均随机生成,
Figure BDA00003307486100043
为[-1,1]之间随机数,同时应保证V∈S;
(5)采用贪婪选择算子在采蜜蜂搜索到的新位置向量Vi和原向量Xi中选取适应度更高的向量保留给下一代的种群,记作:Ts:S2→S,其概率分布为:
P { T s ( X i , V i ) = V i } = 1 , f ( V i ) &GreaterEqual; f ( X i ) 0 , f ( V i ) < f ( X i ) ,
其中,f即为步骤(2)和(3)中适应度函数;
(6)跟随蜂依照采蜜蜂种群适应度值大小按照一定概率选择一个采蜜蜂,概率计算公式为,
Figure BDA00003307486100045
并在采蜜蜂邻域内执行步骤(4)搜索新位置;
其中,f即为步骤(2)和(3)中适应度函数,f(Xi)表示第i只采蜜蜂的适应度值;
(7)记录种群最终更新过后达到的最优适应度值f_best,以及相应的参数(x1,x2,...,xD);
(8)当在采蜜蜂的位置搜索次数Bas达到阈值Limit而仍未找到更优位置时,重新初始化该采蜜蜂位置;
(9)如果满足停止准则,则停止计算并输出最优适应度值f_best和相应参数(x1,x2,...,xD),否则重新步骤4。
本发明的有益效果在于:
本发明提出了一种基于蜂群算法辨识潜器水动力系数的方法,该方法无需对潜器模型进行线性化,而且考虑了各个水平面之间耦合作用,以及结合蜂群算法全局搜索和局部搜索的特点,避免了传统船模试验繁冗单调的调试过程,提供了一种消除传统船模试验所获取水动力系数带来误差的有效途径,提高了航行训练潜器操纵的准确性。
附图说明
图1为蜂群算法原理示意图;
图2为辨识水动力系数的算法流程图;
图3为垂直面梯形操艏舵机动辨识前后比较示意图;
图4为垂直面梯形操艉舵机动辨识前后比较示意图;
图5为水平面Z形舵机动辨识前后比较示意图;
图6为水平面回转运动辨识前后比较示意图。
具体实施方式
下面结合附图对本发明做进一步描述:
对于像潜器6自由度动力学方程这样的复杂系统对象来说,由于建模的时候该模型包含了大量的简化假设,因此在很多情况下,模型某些部分的误差会增大到不可忽略的程度。影响模型精度的主要因素是系统结构的不确定性和系统参数的不确定性,本发明模型采用的是1967年美国发表的《用于潜艇模拟研究的标准运动方程》,该模型具有权威性和通用性,因此只需对模型参数进行辨识优化。本发明通过引入蜂群算法这一仿生智能算法,提供了一种消除船模试验所得参数与实艇参数有出入这一问题的途径,同时无需对模型进行线性化,而且避免了繁琐单调的船模试验过程。
为了系统阐述蜂群算法的基本原理,首先引入如下三个基本部分:
蜜源(food sources):代表解空间范围内各种可能的解,蜜源值取决于多种因素,在多峰函数求极值中,与函数有关,用数字量“收益率”衡量蜜源。
采蜜蜂(employed foragers,EF):采蜜蜂同具体的蜜源联系在一起,这些蜜源是它们当前正在采集的蜜源。采蜜蜂通过摇摆舞与其他蜜蜂分享这些信息,并按照收益率等因素,一部分成为引领蜂。
待工蜂(unemployed foragers,UF):正在寻找蜜源采集,可以分为两种,即侦查蜂和跟随蜂;侦查蜂搜索新蜜源,跟随蜂在巢内等待,通过分享采蜜蜂的信息来找到蜜源。
此外,引入三种基本的行为模式,即搜索蜜源(search)、为蜜源招募(recruit)、放弃蜜源(abandon)。
如图1,假设蜂群已找到两个蜜源A和B。采蜜蜂与当前正在采集的蜜源联系在一起,它们携带了具体的蜜源信息,并通过摇摆舞和蜂巢中的其他蜜蜂分享这些信息。待采蜜蜂是准备去采蜜的蜜蜂。刚开始时,待采蜜蜂没有任何关于蜂巢附近蜜源的信息,它有两种可能的选择:a)由于蜂巢内部或外部因素刺激,自发地随机搜索蜂巢附近的蜜源(如图1中的S线);b)在蜂巢内等待,通过观察采蜜蜂的摇摆舞后,被招募并根据获得的信息寻找蜜源如图1中的R线。当待采蜜蜂发现新蜜源后,它会记住蜜源的相关信息并开始采蜜,此时,待采蜜蜂变成了采蜜蜂。蜜蜂采蜜回到蜂巢并卸载花蜜后,它有以下三种基本的行为模式:a)放弃原先找到的蜜源,成为待采蜜蜂,如图1中的UF;b)返回同一蜜源前,跳摇摆舞招募其他蜜蜂,如图1中的EF1;c)不招募其他蜜蜂,继续返回同一蜜源采蜜,如图1中的EF2。
在初始阶段,所有蜜蜂均没有蜜源的经验值,都作为侦查蜂派出去随机搜索蜜源。当找到蜜源后,侦查蜂转为采蜜蜂,并且按各蜜源的收益率大小进行排序,根据收益不同,这些蜜蜂被重新分工:收益率排在末段的蜜蜂继续指派为侦查蜂;收益度排在中间段的蜜蜂被指派为采蜜蜂;收益率排在前列的蜜蜂为引领蜂。引领蜂在舞蹈区以舞蹈吸引待工蜂成为它们的雇员,收益率高的引领蜂可以招募到更多的待工蜂。收益率相对较低的引领蜂可能一只蜜蜂也招不到。引领蜂带领引导的蜂群(或独自)前往它前次搜索到的花蜜源邻域继续搜索蜜源;剩余的蜜蜂作为侦查蜂,继续随机搜索花蜜源。返回后,评估蜜源收益率,从各组中选出收益率做高的蜜蜂与侦查蜂一起排序,重新选出收益率最高的前N只作为引领蜂。如此循环往复,直至满足结束条件。
一种基于蜂群算法辨识潜器水动力系数方法的具体步骤如下:
步骤一:潜器运动模型的建立
本发明模型采用的是1967年泰勒海军舰船研究和发展中心发表的格特勒《用于潜艇模拟研究的标准运动方程》,该方程中含有108个水动力系数,要完全得到这108个水动力系数是很困难的,因此国内不少学者根据实艇操纵经验和通过对各水动力系数的分析,在潜器标准运动方程的基础上进行简化,建立了多种供仿真使用的潜器空间运动简化模型。这些简化的依据是:实验和仿真结果均表明,在所有的水动力系数中,只有部分系数对潜器的空间运动起主导作用。因此在不影响潜器空间运动的主要特性的前提下,可以只考虑起主导作用的各项影响,将其他项忽略,从而简化标准运动方程。
本发明引入敏感性指数的概念对标准方程进行简化,实质是通过某种方法度量不同水动力参数对观测量输出的影响程度,对输出观测量的影响不大的那些水动力系数可以置零,重新构造6自由度运动方程。
不同型号的潜器在出厂下水时都要对它的一些特定参量进行测量,通常会进行水平面定长回转、Z形舵和垂直面梯形舵等试验,得到诸如回转时间之类的操纵性评估指标,由于这些标准实验正是潜器正常航行时操控制舵的常见工作状态,能够满足航行模拟训练的需求,因此这些有固定数值的操纵性评估指标是检验简化后的方程是否符合要求的标准,它们与特定的水动力系数相联系。为此,先简单介绍作为观测量输出的操纵评估指标。
实验假设艇匀速定深直航并已均衡,艏、艉、方向舵匀速转舵速度均取2°/s。共操舵5次,将结果取平均,其他初始参数如下:
1)水平面Z形操舵机动:以10°/10°操舵机动,选取的评估指标为第一次超越首向角
Figure BDA00003307486100071
和周期TZ
2)垂直面梯形操艏舵机动:操艏舵20°、变纵倾6°,选取的评估指标为执行时间tes、超越纵倾角θovs
3)垂直面梯形操艉舵机动:操艉舵20°、变纵倾10°,选取的评估指标为执行时间tew、超越纵倾角θovw
4)水平面操舵回转运动:操方向舵30°,选取的评估指标定长回转直径Ds和回转周期TH
水动力系数敏感性指数S定义如下:
S = ( R - R * ) / R * ( H - H * ) / H * = &Delta;R / R * &Delta;H / H * - - - ( 1 )
其中,R代表所列出的操纵性评估指标,如定长回转直径、超越深度等,H代表水动力系数,上标*表示基准的水动力系数和对应的操纵性评估指标,无上标表示变化的水动力系数和对应的操纵性评估指标。
从式(1)可以看出,敏感性指数S代表了潜器操纵性评估指标对水动力系数变化的敏感程度。S值越大,表示潜器运动对水动力系数越敏感,即该水动力系数对操纵性的评估起着显著的作用。
通过测量各个水动力系数的敏感性指数,得到其对应的敏感性指数表,将敏感性指数值小于规定阈值的水动力系数项置零,得到简化后的模型。
步骤二:确定算法适应度函数
取上述8个操纵性评估指标的实际潜器试验值作为辨识依据,其标记为右上方*号,构建的代价函数为8个操纵性评估指标的方差,即:
Figure BDA00003307486100073
Figure BDA00003307486100074
则上式可以改写为:
J = &Sigma; j = 1 8 ( 1 - R j R j * ) 2 = &Sigma; j = 1 8 ( &Delta;R j / R j * ) 2 - - - ( 2.1 )
f = 1 J + 1 - - - ( 2.2 )
J值没有选择均方差的主要原因是它表征了8项水动力评估指标相对误差的最大值,即8项中的任何一项最大相对误差不可能超过J,这对寻优结果的评价非常直接。适应度函数选择误差函数的倒数,分母加1是为了防止误差为0的情况。辨识寻优方法采用迭代方法,直至达到规定迭代的次数或者代价函数小于给定的终止条件值。
步骤三:初始化蜂群算法参数以及雇佣蜂种群
蜜蜂总数为Ns,其中,采蜜蜂种群规模为Ne,跟随蜂种群规模为Nu,个体向量维度为D,S=RD为个体搜索空间,
Figure BDA00003307486100087
为采蜜蜂种群空间。若Xi∈S(i≤Ne)是Ne个个体,则
Figure BDA00003307486100083
代表一个采蜜蜂种群。用X(0)表示初始采蜜蜂种群,X(n)表示第n代采蜜蜂种群,用f:S→R+表示适应度函数。最大搜索次数为Limit,本次迭代次数为T,最大迭代次数为Tmax。初始化各蜜蜂搜索次数Bas=0。
步骤四:对于第n步的采蜜蜂Xi(n),在当前位置向量附近邻域进行搜索新的位置,搜索公式为
Figure BDA00003307486100084
式中j∈{1,2,…,D},k∈{1,2,…,Ne},且k≠i,k,j均随机生成,为[-1,1]之间随机数,同时应保证V∈S。
步骤五:采用贪婪选择算子在采蜜蜂搜索到的新位置向量Vi和原向量Xi中选取具有更优适应度的保留给下一代的种群。
步骤六:各跟随蜂依照采蜜蜂种群适应度值大小选择一个采蜜蜂,并在其邻域内同样进行新位置的搜索(类似步骤四)。
该选择算子是在一个采蜜蜂种群内选择一个个体,选择概率
P { T s 1 ( X ) = X i } = f ( X i ) &Sigma; m = 1 N e f ( X m ) - - - ( 4 )
即适应度值大的采蜜蜂能招募到更多的跟随蜂,而适应度值小的采蜜蜂招募到的跟随蜂较少,甚至可能一只都招募不到。
步骤七:同步骤四和步骤五,并记下种群最终更新过后达到的最优适应度值f_best,以及相应的参数(x1,x2,...,xD)。
步骤八:当在某只采蜜蜂的位置周围搜索次数Bas达到一定阈值Limit而仍未找到更优位置时,重新随机初始化该采蜜蜂位置。
步骤九:如果满足停止准则,则停止计算并输出最优适应度值f_best和相应参数(x1,x2,...,xD),否则转向步骤四。
下面通过具体实例来验证本发明所提出的基于蜂群算法辨识潜器参数的性能。采用的是某型号潜器,由于条件所限,本发明所采用的数据均为仿真数据。
见图2,本发明基于蜂群算法辨识潜器水动力系数的方法,其具体实现步骤如下:
步骤一:潜器运动模型的建立
本发明模型采用的是1967年泰勒海军舰船研究和发展中心发表的格特勒《用于潜艇模拟研究的标准运动方程》,因此本发明的主要工作是利用敏感性指数简化该通用的操作方程。
针对某一水动力系数,将水动力系数变化范围取-100%~+100%,,每次变化取20%,按照(三)中操纵试验仿真10次,并按照式(1)计算该水动力系数的敏感性指数,取10次试验中敏感性指数最大值为该水动力系数敏感性指数。依次进行其他水动力系数,得到所有水动力系数的敏感性指数表,将敏感性指数小于0.3的水动力系数值置零,最终本发明所采用模型保留的水动力系数有30个。其模型如下:
轴向方程(取经验公式):
u = U 0 ( 1 - e - 0.52 u / | &psi; &CenterDot; | L ) - - - ( 5 a )
横向方程:
m [ v &CenterDot; - wp + ur ] = 1 2 &rho; L 4 [ Y r &CenterDot; &prime; r &CenterDot; ] + 1 2 &rho; L 3 [ Y v &CenterDot; &prime; v &CenterDot; + Y r &prime; ur ] + 1 2 &rho; L 2 [ Y v &prime; uv ] + 1 2 &rho; L 2 [ Y &delta; r &prime; u 2 &delta; r ] - - - ( 5 b )
垂向方程:
m [ w &CenterDot; - uq + vp ] = 1 2 &rho; L 4 [ Z q &CenterDot; &prime; q &CenterDot; + Z q | q | &prime; q | q | ] + 1 2 &rho; L 3 [ Z w &CenterDot; &prime; w &CenterDot; + Z q &prime; uq ]
+ 1 2 &rho; L 2 [ Z 0 &prime; u 2 + Z w &prime; uw + Z w | w | &prime; w | ( w 2 + v 2 ) 1 2 ] - - - ( 5 c )
+ 1 2 &rho; L 2 [ Z &delta; s &prime; u 2 &delta; s + Z &delta; b &prime; u 2 &delta; b ]
横倾方程:
纵倾方程:
I y q &CenterDot; + ( I x - I z ) rp = 1 2 &rho; L 5 [ M q &CenterDot; &prime; q &CenterDot; ] + 1 2 &rho; L 4 [ M w &CenterDot; &prime; w &CenterDot; + M q &prime; uq + M | w | q &prime; | ( w 2 + v 2 ) 1 2 | q ]
+ 1 2 &rho; L 3 [ M 0 &prime; u 2 + M w &prime; uw + M w | w | &prime; w | ( w 2 + v 2 ) 1 2 | ] - - - ( 5 e )
+ 1 2 &rho; L 3 [ M &delta; s &prime; u 2 &delta; s + M &delta; b &prime; u 2 &delta; b ] - mgh sin &theta;
偏航方程:
I z r &CenterDot; + ( I y - I x ) pq = 1 2 &rho; L 5 [ N r &CenterDot; &prime; r &CenterDot; ] + 1 2 &rho; L 4 [ N v &CenterDot; &prime; v &CenterDot; + N r &prime; ur + N | v | r &prime; | ( w 2 + v 2 ) 1 2 | r ] - - - ( 5 f )
+ 1 2 &rho; L 3 [ N v &prime; uv ] + 1 2 &rho; L 3 [ N &delta; r &prime; u 2 &delta; r ]
辅助方程:
Figure BDA00003307486100107
将微分项放到等式左侧,其他项放到等式右侧,可得到仿真所需状态空间方程。
步骤二:确定算法适应度函数
选择式(2)作为算法的适应度函数
步骤三:初始化蜂群算法参数。蜜蜂总数为Ns=100,其中,采蜜蜂种群规模为Ne=50,待采蜜蜂种群规模为Nu=50,个体向量维度为D=30,最大搜索次数为Limit=20,,最大迭代次数为Tmax=100。初始化各蜜蜂搜索次数Bas=0。
步骤四:对于第n步的采蜜蜂Xi(n),在当前位置向量附近邻域按照式(3)进行搜索新的位置。
步骤五:采用贪婪选择算子在采蜜蜂搜索到的新位置向量和原向量中选取具有更优适应度的保留给下一代的种群。
步骤六:各跟随蜂依照采蜜蜂种群适应度值大小选择一个采蜜蜂,并在其邻域内同样进行新位置的搜索。采蜜蜂被选择概率按照式(4)计算。
步骤七:同步骤四和步骤五,并记下种群最终更新过后达到的最优适应度值,以及相应的参数。
步骤八:当在某只采蜜蜂的位置周围搜索次数Bas超过阈值Limit=20而仍未找到更优位置时,重新随机初始化该采蜜蜂位置。
步骤九:T=T+1,如果T>Tmax=100则停止计算并输出最优适应度值和相应参数,否则转向步骤四。
图3~图6即为常见操纵试验在水动力系数辨识前后仿真曲线。——为辨识前实验数据操舵机动曲线;------为辨识后实验数据操舵机动曲线。
结果显示,该算法辨识的水动力系数能够正确跟踪潜器操舵机动,而且避免了繁冗的船模试验调试,试验成功。
该方法为潜器水动力系数辨识提供了一种快速、准确的途径,也可广泛应用于航空、航海等各领域。

Claims (1)

1.一种基于蜂群算法辨识水动力系数的方法,其特征在于,包括如下步骤:
(1)建立潜器运动模型:
轴向方程:
u = U 0 ( 1 - e - 0.52 u / | &psi; &CenterDot; | L ) ,
横向方程:
m [ v &CenterDot; - wp + ur ] = 1 2 &rho; L 4 [ Y r &CenterDot; &prime; r &CenterDot; ] + 1 2 &rho; L 3 [ Y v &CenterDot; &prime; v &CenterDot; + Y r &prime; ur ] + 1 2 &rho; L 2 [ Y v &prime; uv ] + 1 2 &rho; L 2 [ Y &delta; r &prime; u 2 &delta; r ] , 垂向方程:
m [ w &CenterDot; - uq + vp ] = 1 2 &rho; L 4 [ Z q &CenterDot; &prime; q &CenterDot; + Z q | q | &prime; q | q | ] + 1 2 &rho; L 3 [ Z w &CenterDot; &prime; w &CenterDot; + Z q &prime; uq ]
+ 1 2 &rho; L 2 [ Z 0 &prime; u 2 + Z w &prime; uw + Z w | w | &prime; w | ( w 2 + v 2 ) 1 2 ] ,
+ 1 2 &rho; L 2 [ Z &delta; s &prime; u 2 &delta; s + Z &delta; b &prime; u 2 &delta; b ]
横倾方程:
Figure FDA00003307486000016
纵倾方程:
I y q &CenterDot; + ( I x - I z ) rp = 1 2 &rho; L 5 [ M q &CenterDot; &prime; q &CenterDot; ] + 1 2 &rho; L 4 [ M w &CenterDot; &prime; w &CenterDot; + M q &prime; uq + M | w | q &prime; | ( w 2 + v 2 ) 1 2 | q ]
+ 1 2 &rho; L 3 [ M 0 &prime; u 2 + M w &prime; uw + M w | w | &prime; w | ( w 2 + v 2 ) 1 2 | ] ,
+ 1 2 &rho; L 3 [ M &delta; s &prime; u 2 &delta; s + M &delta; b &prime; u 2 &delta; b ] - mgh sin &theta;
偏航方程:
I z r &CenterDot; + ( I y - I x ) pq = 1 2 &rho; L 5 [ N r &CenterDot; &prime; r &CenterDot; ] + 1 2 &rho; L 4 [ N v &CenterDot; &prime; v &CenterDot; + N r &prime; ur + N | v | r &prime; | ( w 2 + v 2 ) 1 2 | r ] ,
+ 1 2 &rho; L 3 [ N v &prime; uv ] + 1 2 &rho; L 3 [ N &delta; r &prime; u 2 &delta; r ]
辅助方程:
Figure FDA00003307486000021
其中:u、v、w表示艇体纵向速度、横向速度和垂向速度,p、q、r是横摇角速度、纵摇角速度和艏摇角速度,
Figure FDA00003307486000022
θ、ψ为潜艇的横倾角、纵倾角和航向角,m、L、h分别是艇体的质量、长度和重心高度,g为重力加速度,ξ、η、ζ为艇体原点的地理坐标位置,Ix、Iy、Iz为潜艇绕X、Y、Z轴的转动惯量,δr、δb、δs为潜艇的方向舵角、艏舵舵角、艉舵舵角,U0为基准航行态的速度,
Figure FDA00003307486000023
分别为潜艇的无因次水动力系数;
(2)确定算法适应度函数:
则:
J = &Sigma; j = 1 8 ( 1 - R j R j * ) 2 = &Sigma; j = 1 8 ( &Delta;R j / R j * ) 2 ,
适应度函数为:
f = 1 J + 1 ,
其中,R代表操纵指标,分别为水平面Z形操舵机动的超越首向角
Figure FDA00003307486000028
和周期TZ,垂直面梯形操艏舵机动的执行时间tes、超越纵倾角θovs,垂直面梯形操艉舵机动的执行时间tew、超越纵倾角θovw,水平面操舵回转运动的定长回转直径Ds和回转周期TH,上标*表示基准数据;
(3)初始化蜂群算法参数以及雇佣蜂种群:
蜜蜂总数为Ns,其中,采蜜蜂种群规模为Ne,跟随蜂种群规模为Nu,个体向量维度为D,S=RD为个体搜索空间,
Figure FDA00003307486000031
为采蜜蜂种群空间;若Xi∈S(i≤Ne)是Ne个个体,则代表一个采蜜蜂种群,X(0)表示初始采蜜蜂种群,X(n)表示第n代采蜜蜂种群,用f:S→R+表示适应度函数,为步骤(2)中函数f,最大搜索次数为Limit,本次迭代次数为T,最大迭代次数为Tmax,初始化各蜜蜂搜索次数Bas=0;
(4)对第n代采蜜蜂Xi(n),在当前位置向量邻域进行搜索新的位置:
Figure FDA00003307486000032
其中j∈{1,2,…,D},k∈{1,2,…,Ne},且k≠i,k,j均随机生成,为[-1,1]之间随机数,同时应保证V∈S;
(5)采用贪婪选择算子在采蜜蜂搜索到的新位置向量Vi和原向量Xi中选取适应度更高的向量保留给下一代的种群,记作:Ts:S2→S,其概率分布为:
P { T s ( X i , V i ) = V i } = 1 , f ( V i ) &GreaterEqual; f ( X i ) 0 , f ( V i ) < f ( X i ) ,
其中,f即为步骤(2)和(3)中适应度函数;
(6)跟随蜂依照采蜜蜂种群适应度值大小按照一定概率选择一个采蜜蜂,概率计算公式为,
Figure FDA00003307486000035
并在采蜜蜂邻域内执行步骤(4)搜索新位置;
其中,f即为步骤(2)和(3)中适应度函数,f(Xi)表示第i只采蜜蜂的适应度值;
(7)记录种群最终更新过后达到的最优适应度值f_best,以及相应的参数(x1,x2,...,xD);
(8)当在采蜜蜂的位置搜索次数Bas达到阈值Limit而仍未找到更优位置时,重新初始化该采蜜蜂位置;
(9)如果满足停止准则,则停止计算并输出最优适应度值f_best和相应参数(x1,x2,...,xD),否则重新步骤4。
CN2013102209943A 2013-06-05 2013-06-05 一种基于蜂群算法辨识水动力系数的方法 Pending CN103336887A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2013102209943A CN103336887A (zh) 2013-06-05 2013-06-05 一种基于蜂群算法辨识水动力系数的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2013102209943A CN103336887A (zh) 2013-06-05 2013-06-05 一种基于蜂群算法辨识水动力系数的方法

Publications (1)

Publication Number Publication Date
CN103336887A true CN103336887A (zh) 2013-10-02

Family

ID=49245050

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2013102209943A Pending CN103336887A (zh) 2013-06-05 2013-06-05 一种基于蜂群算法辨识水动力系数的方法

Country Status (1)

Country Link
CN (1) CN103336887A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105511480A (zh) * 2016-02-25 2016-04-20 哈尔滨工程大学 一种基于人工蜂群优化的模型预测的欠驱动uuv深度控制方法
CN109766569A (zh) * 2018-11-23 2019-05-17 中国船舶重工集团公司第七一九研究所 潜艇运动模型简化方法及装置
CN110827616A (zh) * 2019-11-21 2020-02-21 中国人民解放军海军工程大学 一种潜艇操舵和均衡控制仿真试验平台及方法
CN111399370A (zh) * 2020-03-12 2020-07-10 四川长虹电器股份有限公司 离网逆变器的人工蜂群pi控制方法
CN113673053A (zh) * 2021-08-18 2021-11-19 温州理工学院 回转时间约束驱动的最小转动惯量非圆齿轮节曲线设计方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101246515A (zh) * 2008-03-03 2008-08-20 哈尔滨工程大学 基于cfd软件的数字船模平面运动机构实验方法
CN101458729A (zh) * 2008-11-06 2009-06-17 哈尔滨工程大学 基于水动力系数敏感性的水下潜器空间运动仿真方法
CN102385316A (zh) * 2011-09-16 2012-03-21 哈尔滨工程大学 一种基于神经网络反步法的欠驱动自主水下航行器变深控制方法
CN102789538A (zh) * 2012-05-15 2012-11-21 哈尔滨工程大学 一种动力定位船水动力系数辨识方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101246515A (zh) * 2008-03-03 2008-08-20 哈尔滨工程大学 基于cfd软件的数字船模平面运动机构实验方法
CN101458729A (zh) * 2008-11-06 2009-06-17 哈尔滨工程大学 基于水动力系数敏感性的水下潜器空间运动仿真方法
CN102385316A (zh) * 2011-09-16 2012-03-21 哈尔滨工程大学 一种基于神经网络反步法的欠驱动自主水下航行器变深控制方法
CN102789538A (zh) * 2012-05-15 2012-11-21 哈尔滨工程大学 一种动力定位船水动力系数辨识方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
DEBABRATA SEN: "A Study on Sensitivity of Maneuverability Performance on the Hydrodynamic Coefficients for Submerged Bodies", 《JOURNAL OF SHIP RESEARCH》 *
段海滨 等: "《仿生智能计算》", 31 January 2011, 北京:科学出版社 *
申冬慧: "基于模糊控制与GA的潜艇自动舵的设计与实现", 《中国优秀硕士学位论文全文数据库 工程科技Ⅱ辑》 *
陈玮琪: "智能辨识技术及其在物体出水水动力参数辨识中的应用研究", 《中国博士学位论文全文数据库 工程科技Ⅱ辑》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105511480A (zh) * 2016-02-25 2016-04-20 哈尔滨工程大学 一种基于人工蜂群优化的模型预测的欠驱动uuv深度控制方法
CN109766569A (zh) * 2018-11-23 2019-05-17 中国船舶重工集团公司第七一九研究所 潜艇运动模型简化方法及装置
CN110827616A (zh) * 2019-11-21 2020-02-21 中国人民解放军海军工程大学 一种潜艇操舵和均衡控制仿真试验平台及方法
CN111399370A (zh) * 2020-03-12 2020-07-10 四川长虹电器股份有限公司 离网逆变器的人工蜂群pi控制方法
CN113673053A (zh) * 2021-08-18 2021-11-19 温州理工学院 回转时间约束驱动的最小转动惯量非圆齿轮节曲线设计方法
CN113673053B (zh) * 2021-08-18 2023-11-28 温州理工学院 回转时间约束驱动的最小转动惯量非圆齿轮节曲线设计方法

Similar Documents

Publication Publication Date Title
CN108319293B (zh) 一种基于lstm网络的uuv实时避碰规划方法
Geisbert Hydrodynamic modeling for autonomous underwater vehicles using computational and semi-empirical methods
CN108334677B (zh) 一种基于gru网络的uuv实时避碰规划方法
CN108284915B (zh) 波浪滑翔器双体艏摇响应预测方法
CN103336887A (zh) 一种基于蜂群算法辨识水动力系数的方法
CN103995540A (zh) 一种高超声速飞行器的有限时间轨迹快速生成方法
CN105929842A (zh) 一种基于动态速度调节的欠驱动uuv平面轨迹跟踪控制方法
Bhatta Nonlinear stability and control of gliding vehicles
CN104658368A (zh) 一种仿真的船舶操舵模拟器及模拟方法
CN106444806A (zh) 基于生物速度调节的欠驱动auv三维轨迹跟踪控制方法
Heins et al. Design and validation of an unmanned surface vehicle simulation model
Wu et al. Dynamics modeling and trajectory optimization for unmanned aerial-aquatic vehicle diving into the water
CN106338919A (zh) 基于增强学习型智能算法的无人艇航迹跟踪控制方法
CN115016496A (zh) 基于深度强化学习的水面无人艇路径跟踪方法
CN107065575A (zh) 基于人工蜂群算法的无人艇航向控制模型的参数辨识方法
Hinostroza et al. Experimental results of the cooperative operation of autonomous surface vehicles navigating in complex marine environment
CN114721409B (zh) 一种基于强化学习的水下航行器对接控制方法
Zhou et al. An improved beetle swarm optimization algorithm for the intelligent navigation control of autonomous sailing robots
Tomera Swarm intelligence applied to identification of nonlinear ship steering model
CN114840928B (zh) 一种基于深度学习的水下航行器集群运动仿真方法
CN115357019A (zh) 一种无人船多参数粒子群辨识系统及方法
Xu et al. An optimized path following algorithm for a surface ship model
Naidoo Modelling, design and analysis of a water jetpack powered by an autonomous underwater vehicle (AUV) system.
Ebada Intelligent techniques-based approach for ship manoeuvring simulations and analysis: artificial neural networks application
Saksvik Topics in guidance, navigation & control of underwater gliders

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20131002