CN104794526A - 一种狼群搜索算法优化的船舶自动避碰方法 - Google Patents
一种狼群搜索算法优化的船舶自动避碰方法 Download PDFInfo
- Publication number
- CN104794526A CN104794526A CN201510242591.8A CN201510242591A CN104794526A CN 104794526 A CN104794526 A CN 104794526A CN 201510242591 A CN201510242591 A CN 201510242591A CN 104794526 A CN104794526 A CN 104794526A
- Authority
- CN
- China
- Prior art keywords
- wolf
- ship
- collision
- search
- collision prevention
- 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
Links
Landscapes
- Traffic Control Systems (AREA)
Abstract
本发明属于船舶自动避碰路径规划技术领域,主要涉及一种狼群搜索算法优化的船舶自动避碰方法。本发明包括:建立船舶仿真试验所需的仿真界面,并确定用于避碰的船舶参数;确定船舶会遇态势以及碰撞危险度分析:采用两船交叉的会遇态势,做出我船和目标船的碰撞危险度分析其中UtT为基于时间碰撞危险度、UdT为空间碰撞危险度且只有当UtT和UdT全不为零的情况下才存在船舶碰撞危险。本发明避免狼群算法在游走、移动、包围过程由于超出搜索空间而产生越界,从而导致收敛速度的降低的缺点,并将改进后算法应用于船舶自动避碰路径规划中,通过对船舶运动模型的建立、目标函数的生成,产生一种狼群搜索算法优化的船舶自动避碰方法。
Description
技术领域
本发明属于船舶自动避碰路径规划技术领域,主要涉及一种狼群搜索算法优化的船舶自动避碰方法。
背景技术
船舶自动避碰是指船舶在海上航行过程中与其他船形成会遇态势,通过碰撞危险度分析确定需要采取避碰行动,则船员基于已有的《国际海上避碰规则》,以及船间信息采集和船内信息自主的交换的情况下,通过优化策略得到船舶避碰最佳方式,从而生成“经济”且“安全”的避碰航行路径。辅助船员快速做出避碰决策,有利于减少海上事故的发生。
因此,船舶避碰智能化是当前国际航海学术界研究的前沿热点课题之一。其中,单船避碰***的实现过程中涉及到避碰信息的接收与融合、目标跟踪、碰撞危险度分析、会遇态势的判断、优化路径的生成以及避碰路径的动态显示,是一个多目标非线性的规划问题,所以,涉及到各种人工智能技术在船舶避碰领域的研究应用,包括细菌觅食算法(AutomaticCollision Avoiding Support System for Ships in Cogested Waters and at Open Sea.M.D.Nguyen,V.T.Nguyen,H.Tamaru.2012International conference on Control,Automation and Information Scineces(2012):96-101.),人工鱼群算法(马文耀,吴兆麟,杨家轩.人工鱼群算法的避碰路径规划决策支持[J].中国航海.2014,37(3):15-20.DOI:10.3969/j.issn.1000_4653.2014.03.015.),支持模糊逻辑、危险模式算法(白一鸣,韩新杰,孟宪尧。危险模式免疫控制算法优化船舶避碰策略[J].中国航海,2012,35(2):29-32.)等。但是这些算法本身存在算法实现复杂,后期收敛速度慢或是易陷入局部最优等问题。2007年yang提出了仿生狼群算法,2013年吴虎胜具体描述了狼群搜索算法的实现过程(吴虎胜,张凤鸣,吴庐山.一种新的群体智能算法—狼群算法.***工程与电子技术.20131153(11):2430-2438)。该算法在机器人路径规划(Chenguang Yang,Xuyan Tu and Jie Chen,“Algorithm of Marriage in Honey Bees Optimization Based onthe Wolf Pack Search,”International Conference on Intelligent Pervasive ComputingIPC2007,pp.462-467,2007.)、电池充电增强管理***(Te-Chun Hung,Shyh-Jier Huang,Fu-Sheng Pai,Chen-Wei KuDesign of Lithium-Ion Battery Charging System Enhanced withWolf Pack Algorithm.2012Third International Conference on Innovations inBio-Inspired Computing and Applications.DOI 10.1109/IBICA.2012.63.195-200.)、PID参数优化(Wu Husheng,Zhang Fengming.A Uncultivated Wolf Pack Algorithm for Highdimensional Functions and Its Application in Parameters Optimization of PIDController.2014IEEE Congress on Evolutionary Computation(CEC)July 6-11,2014,Beijing,China.1477-1482.)等方面中得到了应用研究。体现了狼群搜索算法实现简单、全局收敛性好、求解精度高的特性。但是算法存在由于搜索越界降低了收敛速度的缺陷。
发明内容
本发明的目的在于提供一种狼群搜索算法优化的船舶自动避碰方法。
本发明的目的是这样实现的:
(1)建立船舶仿真试验所需的仿真界面,并确定用于避碰的船舶参数;
(2)确定船舶会遇态势以及碰撞危险度分析:采用两船交叉的会遇态势,做出我船和目标船的碰撞危险度分析其中UtT为基于时间碰撞危险度、UdT为空间碰撞危险度且只有当UtT和UdT全不为零的情况下才存在船舶碰撞危险;
(3)设计船舶避碰目标函数:通过船舶避碰运动过程建模,得到我船经济避碰的目标函数S:加权系数α1+α2=1,且α1>0,α2>0,ΔS为避碰而多航行的路程,是在避碰过程中转过的角度;
(4)改进狼群搜索算法通过狼群的竞选行为、召唤行为、围攻行为以及更新机制,搜索满足目标函数的船舶避碰最优路径:
(4.1)初始化狼群:避碰路径狼群规模N,搜索空间的维数K,第i匹狼的位置为Xi=(Xi1,Xi2,Xik...XiK),i∈(1,N)k∈(1,K),且Xik=Xik min+rand*(Xik max-Xik min),rand是[0,1]之间的随机数,Xik max和Xik min分别表示第k维的搜索空间的最大值和最小数值;
(4.2)竞选头狼:选取最优的q匹探狼竞选头狼,第i匹竞选狼分别在K维空间中,在自己周围的H个搜索方向上进行搜索,第i个竞选狼在k维时的当前位置为Xik,第j个方向第k维的单位矢量为unitVectorsjk,第k维更新后的位置为Yjk:Yjk=Xik+rand*unitVectorsjk*stepa*basicStepk j∈(1,H),搜索过程中根据不同的搜索空间以及第i匹狼在第k维空间中的最大值和最小值为Xik max,Xik min,整个搜索空间线性长度计算基本步长basicStepk=(Xik max-Xik min)/D,已知搜索步长stepa后,基于stepa*basicStepk自适应调整搜索步长,避免由于搜索越界降低算法的收敛速度,当竞选狼的搜索次数大于最大搜索次数max dh或者搜索到的位置不如当前位置时,则竞选狼的搜索行为结束;
(4.3)头狼召唤:选取最优的竞选探狼作为头狼,头狼通过召唤行为,使得猛狼向头狼位置移动,第i狼在k维的当前的位置为Xik,头狼的位置为Xlk,头狼与猛狼的距离为按照Zik=Xik+rand*stepb*basicStepk*(lXk-Xik)/DI S对狼群位置进行更新,第i个匹狼更新后的位置为Zi(Zi1,Zi2,Zik.....ZiK),:根据搜索空间的不同,基于移动步长stepb自适应调节移动步长,如果Zi优于当前狼所在的位置,那么将Zi作为当前的位置,否则不进行搜索移动;
(4.4)围攻行为:在已知包围步长的最大值与最小值ramax和ramin,以及maxt为最大迭代次数后,自适应包围步长可得围攻后狼群的更新位置Lik=Xik+(rand+1)/2*(Xlk-Xik)*ra(t)t∈(1,maxt);
(4.5)对头狼位置进行更新:去除狼群中最差的m匹狼,同时通过步骤(4.1)竞选头狼中游走行为随机产生m匹狼;
(4.6)一次迭代结束,判断是否达到优化精度要求以及最大迭代次数,是否满足限制条件,若达到则输出头狼的位置,即为最优船舶避碰路径;否则,跳转到步骤(4.1)直到满足终止条件,输出最优解;
(5)我船完成此次避碰航行过程,复航到原有航向,继续航行。
步骤(1)中船舶避碰仿真试验界面的建立,在基于VS2010的VC++9.0环境下的开发避碰仿真试验界面,界面中显示以下的信息:
(1.1)初始信息输入:船舶初始状态信息的设置,主要完成我船和目标船航向(B)、航速(v)、精度(x)、纬度(y)的设置;
(1.2)船舶碰撞分析:基于我船和目标船的初始信息,计算并显示DCPA、TCPA、D值,判断当前CRI,以及实时CRI,并记录直航的时间;
(1.3)船舶自动避碰动态演示:通过Void CShipCrashDlg::OnBnClickedRoutedraw()类函数在设计界面上显示船舶避碰优化路径;
(1.4)船舶自动避碰退出:通过void CShipCrashDlg::OnBnClickedExit()类函数退出避碰仿真***平台。
所述步骤(1)中,我船初始运动参数为:v=8,B=0°,(x,y)坐标为(0,0);目标船的初始运动参数为v=12,B=300°,坐标为(x,y)坐标为(6,0)。
所述步骤(3)中,船舶避碰运动过程建模,模型中的参数的设置表示含义为:
(3.1)p代表节点,po,pa,pb,pc分别代表初始节点,避碰转向节点,复航节点,回到原航线时的点;
(3.2)t代表时间,ts,ta,tb分别代表航行经过p0pa,papb,pbpc行程所用的时间,分别成为直行时间,避碰时间,复航时间;
(3.3)Ang,ΔC0,ΔCb都是角度,用与Y轴的夹角表示,逆时针为正方向,三个角度分别代表本船初始航行方向,避碰时的角度,复航时的角度;
(3.4)S代表的是行程,Sa,Sb,Sorigin分别代表避碰过程走过的路程,复航过程走过的路程,在绕行时间内若不避碰本应走过的路程,分别是线段papb,pbpc,papc,各个参量之间存在如下关系:
复航结束时,将要回到原来航线上时转过角度的大小为ε;复航时刻转过角度的大小为θ;避碰时转过角度的大小为ψ;且存在的关系为:θ=ε+ψ,根据三角形正弦定理,以及Sa=υ0×ta,υ0为初始航速,则有:
所以可以计算出Sb,Sorigin:
得到复航的航行时间:
所述步骤(3)中目标函数的建立,具体的目标函数的建立过程以及约束条件为:
加权系数α1+α2=1,且α1>0,α2>0,ΔS=Sa+Sb-Sc为避碰而多航行的路程,是在避碰过程中转过的角度,转向角度为复航末端回到原始航线的转向角度为复航角为且要满足
目标函数要满足如下的4个约束条件:
(3.1)在路段p0pa,papb,pbpc和回到原始航线继续往前时,与目标船的最近距离分别定义为rs,ra,rb,rc,要保证安全则每段行程与目标船的最近距离都要大于安全距离Dsafe,即:rx≥Dsafe x=s,a,b,c;
(3.2)大于0代表在原来的基础上逆时针转动,小于0则反之,避碰过程中,满足
(3.3)设tcollision是本船在沿着初始路线航行时,本船与目标船达到最小距离的时刻,即有:0<ts<tcollision;
(3.4)对于避碰阶段航行的时间ta,ts+ta≥3*tcollision。
所述步骤(4.1)中初始化改进狼群搜索算法参数:狼群数量为30,搜索的维数为4,每一维的避碰参数被限定了取值范围:
ts∈(0,TCPA),Δc0∈(ang-MAX_ANG,ang+MAX_ANG),ta∈(0,3*TCPA),Δcb∈(ang-2*MAX_ANG,ang+2*MAX_ANG);
其中,MAX_ANG最大的偏转角度,搜索方向为8,可得搜索的单位方向矢量为{{1,0,0,0},{-1,0,0,0},{0,-1,0,0},{0,1,0,0},{0,0,1,0},{0,0,-1,0},{0,0,0,1},{0,0,0,-1}},最大迭代次数1000,竞争狼的数量为((int)0.4*wolfnum),其中,int为取整操作,最大的搜索次数是20,包围步长的最大和最小值为0.9和0.4,最大的包围次数20,淘汰的最差狼的个数为((int)0.3*wolfNum),设置最小的改近量为0.000001,设置最大的没有改进的次数为20,且安全距离为1.0,基本basicStepLen的设定过程为:初始设置为basicStepLen=1,先通过解空间在各个维度上下限求出解空间的大小V搜索=24*(TCPA)2*(MAX_ANG)2,除以狼数目求出每只狼占有的空间大小为V每个狼=V搜索/n,在求每只狼解空间的线性长度,可得移动步长0.5*basicStepLen,搜索的步长为0.25*basicStepLen。
本发明的有益效果在于:
针对现有技术中存在的问题,本发明对狼群搜索算法进行改进,在原有狼群搜索算法的基础上引入自适应搜索以及移动,包围策略,避免狼群算法在游走、移动、包围过程由于超出搜索空间而产生越界,从而导致收敛速度的降低的缺点。并将改进后算法应用于船舶自动避碰路径规划中,通过对船舶运动模型的建立、目标函数的生成,产生一种狼群搜索算法优化的船舶自动避碰方法。
附图说明
图1为本发明的船舶自动避碰路径规划方法的整体流程图;
图2为本发明的船舶避碰运动过程示意图;
图3为本发明的船舶自动避碰方法所采用的改进狼群搜索算法流程图;
图4为基于改进的狼群搜索算法实现船舶避碰路径规划的仿真试验界面。
图5为细菌觅食和改进搜索狼群算法用于船舶避碰路径规划的收敛对比曲线图;
具体实施的方式
下面结合附图对本发明做更详细地描述。
一种狼群搜索算法优化的船舶自动避碰方法,具体包括以下几个步骤:
步骤1、建立船舶仿真试验所需的仿真界面,并确定用于避碰的船舶参数。
步骤2、确定船舶会遇态势以及碰撞危险度分析。本发明中采用两船交叉的会遇态势,做出我船和目标船的碰撞危险度分析(CRI Collision Risk Index),与船舶碰撞危险度相关的参数为最近会遇距离(DCPA)、最短会遇时间(TCPA)、船舶间距离(D)、来船方位(B)、船速比(K)等。为了能够考虑到上述因素,本发明中通过基于时间碰撞危险度(UtT)和空间碰撞危险度(UdT)来确定最后单船舶间的碰撞危险度且只有当UtT和UdT全不为零的情况下才存在船舶碰撞危险,根据碰撞危险度评判等级,本发明中选择在CRI=0.6时调用改进狼群搜索算法生成自动避碰方案。
步骤3、设计船舶避碰目标函数。通过船舶避碰运动过程建模,得到我船“经济”避碰的目标函数S:加权系数α1+α2=1,且α1>0,α2>0,ΔS为避碰而多航行的路程,是在避碰过程中转过的角度。同时船舶避碰要满足“安全避让”的需求,因此在搜索目标函数的过程中要满足一定的约束条件。
步骤4、改进狼群搜索算法通过狼群的竞选行为、召唤行为、围攻行为以及更新机制,搜索满足目标函数的船舶避碰最优路径,具体步骤3包括:
步骤4.1:初始化狼群。避碰路径狼群规模N,搜索空间的维数K,第i匹狼的位置为Xi=(Xi1,Xi2,Xik...XiK),i∈(1,N)k∈(1,K),且Xik=Xik min+rand*(Xik max-Xik min),rand是[0,1]之间的随机数,Xik max和Xik min分别表示第k维的搜索空间的最大值和最小数值。
步骤4.2:竞选头狼。选取最优的q匹探狼竞选头狼。第i匹竞选狼分别在K维空间中,在自己周围的H个搜索方向上进行搜索,第i个竞选狼在k维时的当前位置为Xik,第j个方向第k维的单位矢量为unitVectorsjk,第k维更新后的位置为Yjk:Yjk=Xik+rand*unitVectorsjk*stepa*basicStepk j∈(1,H),
搜索过程中根据不同的搜索空间以及第i匹狼在第k维空间中的最大值和最小值为Xik max,Xik min,整个搜索空间线性长度计算基本步长basicStepk=(Xik max-Xik min)/D,已知搜索步长stepa后,基于stepa*basicStepk自适应调整搜索步长,避免由于搜索越界降低算法的收敛速度,当竞选狼的搜索次数大于最大搜索次数max dh或者搜索到的位置不如当前位置时,则竞选狼的搜索行为结束。
步骤4.3:头狼召唤。选取最优的竞选探狼作为头狼,头狼通过召唤行为,使得猛狼向头狼位置移动,第i狼在k维的当前的位置为Xik,头狼的位置为Xlk,头狼与猛狼的距离为按照Zik=Xik+rand*stepb*basicStepk*(lXk-Xik)/DI S对狼群位置进行更新,第i个匹狼更新后的位置为Zi(Zi1,Zi2,Zik.....ZiK),与上述相同,根据搜索空间的不同,基于移动步长stepb自适应调节移动步长。如果Zi优于当前狼所在的位置,那么将Zi作为当前的位置,否则不进行搜索移动。
步骤4.4:围攻行为。经过奔袭的猛狼已离猎物较近,这时猛狼要联合探狼对猎物进行紧密地围攻以期将其捕获。这里将离猎物最近的狼,即头狼的位置视为猎物的移动位置。为了避免越界降低算法的收敛速度,进行包围操作时只有与头狼的距离小于移动步长的狼才进行包围即在包围策略中,超过移动步长的狼不参与包围以便保证不陷入局部最优,并继续在其周围搜索,直到满足终止的条件,由于其在优化问题求解过程中越来越接近理论数值,因此在已知包围步长的最大值与最小值ramax和ramin,以及maxt为最大迭代次数后。自适应包围步长会随着包围次数的增加而减少,从而可得围攻后狼群的更新位置Lik=Xik+(rand+1)/2*(Xlk-Xik)*ra(t)t∈(1,maxt)。
步骤4.5:按照“胜者为王”的头狼产生规则对头狼位置进行更新;再按照“强者生存”的狼群更新机制去除狼群中最差的m匹狼,同时通过步骤4.1竞选头狼中游走行为随机产生m匹狼,最大程度上保证狼群的多样性,避免算法陷入局部最优。
步骤4.6:一次迭代结束,判断是否达到优化精度要求以及最大迭代次数,是否满足限制条件,若达到则输出头狼的位置,即为最优船舶避碰路径;否则,跳转到步骤4.1,直到满足终止条件,输出最优解。
步骤5、我船完成此次避碰航行过程,复航到原有航向,继续航行。
本发明提出了一种狼群搜索算法优化的船舶自动避碰方法,如图1所示具体包括以下几个步骤:
步骤1、建立船舶仿真试验所需的动态仿真界面如图4所示,界面有输入初始信息模块、分析结果显示模块、动态路径生成网格模块组成。同时初始化我船初始运动参数为:v=8,B=0°,(x,y)坐标为(0,0);目标船的初始运动参数为v=12,B=300°,坐标为(x,y)坐标为(6,0)。
步骤2、确定船舶会遇态势和碰撞危险度分析。本发明中基于上述船舶初始参数可判定两船为交叉会遇,从而做出我船和目标船的碰撞危险度分析(CRI Collision Risk Index),与船舶碰撞危险度相关的参数有两船间的最近会遇距离(DCPA)、最近会遇点的时间(TCPA)、船舶间距离(D)、来船方位(B)、船速比(K)等。为了能够考虑到上述因素,本发明中通过基于时间碰撞危险度(UtT)和空间碰撞危险度(UdT)来确定最后单船舶间的碰撞危险度只有当时间碰撞危险度(UtT)和空间碰撞危险度(UdT)全不为零的情况下才存在船舶碰撞危险。根据危险度的评判等级,本发明中选择在CRI=0.6时调用改进狼群搜索算法生成自动避碰方案。
步骤3、设计船舶避碰最优路径的目标函数。基于船舶避碰运动过程建模如图2所示,图中红色虚线表示目标船的航行轨迹,蓝色实线代表我船初始的航行方向,绿色线表示为了避免碰撞我船真实避碰运动轨迹,其包括避碰和复航两个部分。模型中的参数的设置表示含义为:
①p代表节点。po,pa,pb,pc分别代表初始节点,避碰转向节点,复航节点,回到原航线时的点;
②t代表时间。ts,ta,tb分别代表航行经过p0pa,papb,pbpc行程所用的时间,分别成为直行时间,避碰时间,复航时间;
③Ang,ΔC0,ΔCb都是角度,用与Y轴的夹角表示,逆时针为正方向。三个角度分别代表本船初始航行方向,避碰时的角度(即方向),复航时的角度(即方向);
④S代表的是行程(即路程),Sa,Sb,Sorigin分别代表避碰过程走过的路程,复航过程走过的路程,在绕行时间内若不避碰本应走过的路程,分别是线段papb,pbpc,papc。在上述航行过程中,各个参量之间存在如下关系:
复航结束时,将要回到原来航线上时转过角度的大小为ε;复航时刻转过角度的大小为θ;避碰时转过角度的大小为ψ;且存在的关系为:θ=ε+ψ。根据三角形正弦定理,以及Sa=υ0×ta(υ0为初始航速),则有:
所以可以计算出Sb,Sorigin:
从而可以得到复航的航行时间:基于上述运动模型的描述建立我船“经济”避碰的目标函数S:加权系数α1+α2=1,且α1>0,α2>0,ΔS为避碰而多航行的路程,是在避碰过程中转过的角度。同时目标函数要满足船舶“安全”避碰要求,因此在搜索目标函数的过程中要满足如下的约束条件:
①在路段p0pa,papb,pbpc和回到原始航线继续往前时,与目标船的最近距离分别定义为rs,ra,rb,rc,要保证安全则每段行程与目标船的最近距离都要大于安全距离Dsafe,即:rx≥Dsafex=s,a,b,c。
②大于0代表在原来的基础上逆时针转动,小于0则反之。避碰过程中,本船先是转过一定角度,再是反向转回到初始航行角度,因此必须满足
③假设tcollision是本船在沿着初始路线航行时,本船与目标船达到最小距离的时刻,要保证船安全,则必须保证这这个时间之前开始转向避碰,即有:0<ts<tcollision;④对于避碰阶段航行的时间ta,为了提高搜索效率,因此要缩小ta的取值范围,即为ts+ta≥3*tcollision。
步骤4、改进狼群搜索算法用于船舶自动避碰路径规划。基于上述船舶初始化参数,可得我船在直航6.2min后,避碰危险阈值CRI达到了0.6,开始调用改进狼群搜索算法生成避碰行动方案。其中,改进狼群搜索算法实现过程如图3所示,通过狼群的竞选行为、召唤行为、围攻行为以及更新机制,搜索满足目标函数的船舶避碰最优参数从而形成最优避碰路径,具体步骤包括:
步骤4.1:初始化狼群。避碰路径狼群规模N,搜索空间的维数K,第i匹狼的位置为Xi=(Xi1,Xi2,Xik...XiK),i∈(1,N)k∈(1,K),
Xik=Xik min+rand*(Xik max-Xik min)
rand是[0,1]之间的随机数,Xik max和Xik min分别表示第k维的搜索空间的最大值和最小数值。
步骤4.2:竞选头狼。选取最优的q匹探狼竞选头狼。第i匹竞选狼分别在K维空间中,在自己周围的H个搜索方向上进行搜索,第i个竞选狼在k维时的当前位置为Xik,第j个方向第k维的单位矢量为unitVectorsjk,第k维更新后的位置为Yjk:Yjk=Xik+rand*unitVectorsjk*stepa*basicStepk j∈(1,H),
搜索过程中根据不同的搜索空间以及第i匹狼在第k维空间中的最大值和最小值为Xik max,Xik min,整个搜索空间线性长度计算基本步长basicStepk=(Xik max-Xik min)/D,已知搜索步长stepa后,基于stepa*basicStepk自适应调整搜索步长,避免由于搜索越界降低算法的收敛速度,当竞选狼的搜索次数大于最大搜索次数maxdh或者搜索到的位置不如当前位置,则竞选狼的搜索行为结束。
步骤4.3:头狼召唤。选取最优的竞选探狼作为头狼,头狼通过召唤行为,使得猛狼向头狼位置移动,第i狼在k维的当前的位置为Xik,头狼的位置为Xlk,头狼与猛狼的距离为按照Zik=Xik+rand*stepb*basicStepk*(lXk-Xik)/DI S对狼群位置进行更新,第i个匹狼更新后的位置为Zi(Zi1,Zi2,Zik.....ZiK),同时与上述相同根据搜索空间的不同,基于移动步长stepb自适应调节移动步长。如果Zi优于当前狼所在的位置,那么将Zi作为当前的位置,否则不进行搜索移动。
步骤4.4:围攻行为。经过奔袭的猛狼已离猎物较近,这时猛狼要联合探狼对猎物进行紧密地围攻以期将其捕获。这里将离猎物最近的狼,即头狼的位置视为猎物的移动位置。为了避免越界降低算法的收敛速度,进行包围操作时只有与头狼的距离小于移动步长的狼才进行包围即在包围策略中,超过移动步长的狼不参与包围以便保证不陷入局部最优,并继续在其周围搜索,直到满足终止的条件,由于其在优化问题求解过程中越来越接近理论数值,因此在已知包围步长的最大值与最小值ramax和ramin,以及maxt为最大迭代次数后。包围步长会随着包围次数的增加而减少,从而可得围攻后狼群的更新位置Lik=Xik+(rand+1)/2*(Xlk-Xik)*ra(t)t∈(1,maxt)。
步骤4.5:按照“胜者为王”的头狼产生规则对头狼位置进行更新;再按照“强者生存”的狼群更新机制去除狼群中最差的m匹狼,同时通过步骤4.1竞选头狼中游走行为随机产生m匹狼,最大程度上保证狼群的多样性,避免算法陷入局部最优。
步骤4.6:一次迭代结束,判断是否达到算法最大迭代次数,是否满足限制条件、是否达到优化精度要求,若达到则输出头狼的位置,即为最优船舶避碰路径;并动态显示我船避让目标船的过程,如图4所示,否则,跳转到步骤4.1,继续搜索直到满足终止条件,输出最优解。通过该试验证明了改进狼群搜索算法用于船舶自动避碰决策的可行性。为了能够证明改进狼群搜索算法的优越性,本发明将该算法和细菌觅食算法分别用于船舶自动避碰路径规划中。(细菌觅食算法策略可具体见参考文献Optimazation of Ship Collision AvoidanceRoute based on Bacterial Foraging Algotithm[J].Journal of Dalian Martime University,2013,39(2):21-24.)。得到如图5所示的船舶自动避碰过程中求解目标函数的收敛速度对比曲线,其中横轴表示迭代次数,纵轴表示目标函数值,从图中可得,改进狼群搜索算法求解的船舶避碰目标函数的收敛速度明显优于细菌觅食算法。从而验证了该算法的在船舶自动避碰路径规划中的优越性。
步骤5、我船完成此次避碰航行过程,复航到原有航向,继续航行。
Claims (6)
1.一种狼群搜索算法优化的船舶自动避碰方法,其特征在于:具体包括以下几个步骤:
(1)建立船舶仿真试验所需的仿真界面,并确定用于避碰的船舶参数;
(2)确定船舶会遇态势以及碰撞危险度分析:采用两船交叉的会遇态势,做出我船和目标船的碰撞危险度分析其中UtT为基于时间碰撞危险度、UdT为空间碰撞危险度且只有当UtT和UdT全不为零的情况下才存在船舶碰撞危险;
(3)设计船舶避碰目标函数:通过船舶避碰运动过程建模,得到我船经济避碰的目标函数S:加权系数α1+α2=1,且α1>0,α2>0,ΔS为避碰而多航行的路程,是在避碰过程中转过的角度;
(4)改进狼群搜索算法通过狼群的竞选行为、召唤行为、围攻行为以及更新机制,搜索满足目标函数的船舶避碰最优路径:
(4.1)初始化狼群:避碰路径狼群规模N,搜索空间的维数K,第i匹狼的位置为Xi=(Xi1,Xi2,Xik...XiK),i∈(1,N)k∈(1,K),且Xik=Xik min+rand*(Xik max-Xik min),rand是[0,1]之间的随机数,Xik max和Xik min分别表示第k维的搜索空间的最大值和最小数值;
(4.2)竞选头狼:选取最优的q匹探狼竞选头狼,第i匹竞选狼分别在K维空间中,在自己周围的H个搜索方向上进行搜索,第i个竞选狼在k维时的当前位置为Xik,第j个方向第k维的单位矢量为unitVectorsjk,第k维更新后的位置为Yjk:Yjk=Xik+rand*unitVectorsjk*stepa*basicStepk j∈(1,H),搜索过程中根据不同的搜索空间以及第i匹狼在第k维空间中的最大值和最小值为Xik max,Xik min,整个搜索空间线性长度计算基本步长basicStepk=(Xik max-Xik min)/D,已知搜索步长stepa后,基于stepa*basicStepk自适应调整搜索步长,避免由于搜索越界降低算法的收敛速度,当竞选狼的搜索次数大于最大搜索次数maxdh或者搜索到的位置不如当前位置时,则竞选狼的搜索行为结束;
(4.3)头狼召唤:选取最优的竞选探狼作为头狼,头狼通过召唤行为,使得猛狼向头狼位置移动,第i狼在k维的当前的位置为Xik,头狼的位置为Xlk,头狼与猛狼的距离为按照Zik=Xik+rand*stepb*basicStepk*(Xik-Xik)/DL对狼群位置进行更新,第i个匹狼更新后的位置为Zi(Zi1,Zi2,Zik.....ZiK),:根据搜索空间的不同,基于移动步长stepb自适应调节移动步长,如果Zi优于当前狼所在的位置,那么将Zi作为当前的位置,否则不进行搜索移动;
(4.4)围攻行为:在已知包围步长的最大值与最小值ramax和ramin,以及maxt为最大迭代次数后,自适应包围步长可得围攻后狼群的更新位置Lik=Xik+(rand+1)/2*(Xlk-Xik)*ra(t)t∈(1,maxt);
(4.5)对头狼位置进行更新:去除狼群中最差的m匹狼,同时通过步骤(4.1)竞选头狼中游走行为随机产生m匹狼;
(4.6)一次迭代结束,判断是否达到优化精度要求以及最大迭代次数,是否满足限制条件,若达到则输出头狼的位置,即为最优船舶避碰路径;否则,跳转到步骤(4.1)直到满足终止条件,输出最优解;
(5)我船完成此次避碰航行过程,复航到原有航向,继续航行。
2.根据权利要求1所述的一种狼群搜索算法优化的船舶自动避碰方法,其特征在于:所述步骤(1)中船舶避碰仿真试验界面的建立,在基于VS2010的VC++9.0环境下的开发避碰仿真试验界面,界面中显示以下的信息:
(1.1)初始信息输入:船舶初始状态信息的设置,主要完成我船和目标船航向(B)、航速(v)、精度(x)、纬度(y)的设置;
(1.2)船舶碰撞分析:基于我船和目标船的初始信息,计算并显示DCPA、TCPA、D值,判断当前CRI,以及实时CRI,并记录直航的时间;
(1.3)船舶自动避碰动态演示:通过Void CShipCrashDlg::OnBnClickedRoutedraw()类函数在设计界面上显示船舶避碰优化路径;
(1.4)船舶自动避碰退出:通过void CShipCrashDlg::OnBnClickedExit()类函数退出避碰仿真***平台。
3.根据权利要求1所述的一种狼群搜索算法优化的船舶自动避碰方法,其特征在于:所述步骤(1)中,我船初始运动参数为:v=8,B=0°,(x,y)坐标为(0,0);目标船的初始运动参数为v=12,B=300°,坐标为(x,y)坐标为(6,0)。
4.根据权利要求1所示的一种狼群搜索算法优化的船舶自动避碰方法,其特征在于:所述步骤(3)中,船舶避碰运动过程建模,模型中的参数的设置表示含义为:
(3.1)p代表节点,po,pa,pb,pc分别代表初始节点,避碰转向节点,复航节点,回到原航线时的点;
(3.2)t代表时间,ts,ta,tb分别代表航行经过p0pa,papb,pbpc行程所用的时间,分别成为直行时间,避碰时间,复航时间;
(3.3)Ang,ΔC0,ΔCb都是角度,用与Y轴的夹角表示,逆时针为正方向,三个角度分别代表本船初始航行方向,避碰时的角度,复航时的角度;
(3.4)S代表的是行程,Sa,Sb,Sorigin分别代表避碰过程走过的路程,复航过程走过的路程,在绕行时间内若不避碰本应走过的路程,分别是线段papb,pbpc,papc,各个参量之间存在如下关系:
复航结束时,将要回到原来航线上时转过角度的大小为ε;复航时刻转过角度的大小为θ;避碰时转过角度的大小为ψ;且存在的关系为:θ=ε+ψ,根据三角形正弦定理,以及Sa=υ0×ta,υ0为初始航速,则有:
所以可以计算出Sb,Sorigin:
得到复航的航行时间:
5.根据权利要求1所示的一种狼群搜索算法优化的船舶自动避碰方法,其特征在于:所述步骤(3)中目标函数的建立,具体的目标函数的建立过程以及约束条件为:
加权系数α1+α2=1,且α1>0,α2>0,ΔS=Sa+Sb-Sc为避碰而多航行的路程,是在避碰过程中转过的角度,转向角度为复航末端回到原始航线的转向角度为复航角为且要满足
目标函数要满足如下的4个约束条件:
(3.1)在路段p0pa,papb,pbpc和回到原始航线继续往前时,与目标船的最近距离分别定义为rs,ra,rb,rc,要保证安全则每段行程与目标船的最近距离都要大于安全距离Dsafe,即:rx≥Dsafe x=s,a,b,c;
(3.2)大于0代表在原来的基础上逆时针转动,小于0则反之,避碰过程中,满足
(3.3)设tcollision是本船在沿着初始路线航行时,本船与目标船达到最小距离的时刻,即有:0<ts<tcollision;
(3.4)对于避碰阶段航行的时间ta,ts+ta≥3*tcollision。
6.根据权利要求1所示的一种狼群搜索算法优化的船舶自动避碰方法,其特征在于:所述步骤(4.1)中初始化改进狼群搜索算法参数:狼群数量为30,搜索的维数为4,每一维的避碰参数被限定了取值范围:
ts∈(0,TCPA),Δc0∈(ang-MAX_ANG,ang+MAX_ANG),ta∈(0,3*TCPA),Δcb∈(ang-2*MAX_ANG,ang+2*MAX_ANG);
其中,MAX_ANG最大的偏转角度,搜索方向为8,可得搜索的单位方向矢量为{{1,0,0,0},{-1,0,0,0},{0,-1,0,0},{0,1,0,0},{0,0,1,0},{0,0,-1,0},{0,0,0,1},{0,0,0,-1}},最大迭代次数1000,竞争狼的数量为((int)0.4*wolfnum),其中,int为取整操作,最大的搜索次数是20,包围步长的最大和最小值为0.9和0.4,最大的包围次数20,淘汰的最差狼的个数为((int)0.3*wolfNum),设置最小的改近量为0.000001,设置最大的没有改进的次数为20,且安全距离为1.0,基本basicStepLen的设定过程为:初始设置为basicStepLen=1,先通过解空间在各个维度上下限求出解空间的大小V搜索=24*(TCPA)2*(MAX_ANG)2,除以狼数目求出每只狼占有的空间大小为V每个狼=V搜索/n,在求每只狼解空间的线性长度,可得移动步长0.5*basicStepLen,搜索的步长为0.25*basicStepLen。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510242591.8A CN104794526A (zh) | 2015-05-13 | 2015-05-13 | 一种狼群搜索算法优化的船舶自动避碰方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510242591.8A CN104794526A (zh) | 2015-05-13 | 2015-05-13 | 一种狼群搜索算法优化的船舶自动避碰方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104794526A true CN104794526A (zh) | 2015-07-22 |
Family
ID=53559312
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510242591.8A Pending CN104794526A (zh) | 2015-05-13 | 2015-05-13 | 一种狼群搜索算法优化的船舶自动避碰方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104794526A (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105117769A (zh) * | 2015-09-14 | 2015-12-02 | 杭州电子科技大学 | 基于差分进化狼群算法的欺骗干扰识别方法 |
CN106896716A (zh) * | 2017-04-17 | 2017-06-27 | 华北电力大学(保定) | 基于灰狼算法的微电网交直流断面换流器pid参数优化方法 |
CN108491923A (zh) * | 2018-04-10 | 2018-09-04 | 吉林大学 | 基于改进狼群算法优化贝叶斯网络的害虫图像识别方法 |
CN109190170A (zh) * | 2018-08-02 | 2019-01-11 | 哈尔滨工程大学 | 一种基于云模型理论的船舶碰撞危险度建模方法 |
CN109344953A (zh) * | 2018-08-23 | 2019-02-15 | 东华理工大学 | 云服务组合方法 |
CN109347900A (zh) * | 2018-08-23 | 2019-02-15 | 东华理工大学 | 基于改进狼群算法的云服务***自适应演化方法 |
CN109556609A (zh) * | 2018-11-15 | 2019-04-02 | 武汉南华工业设备工程股份有限公司 | 一种基于人工智能的避碰方法及装置 |
CN109902796A (zh) * | 2019-03-14 | 2019-06-18 | 重庆邮电大学 | 一种基于烟花***行为的改进的狼群算法 |
WO2019140725A1 (zh) * | 2018-01-18 | 2019-07-25 | 东莞理工学院 | 一种模拟狼群行为的计算智能优化方法 |
CN110069076A (zh) * | 2019-04-23 | 2019-07-30 | 北京航空航天大学 | 一种基于猛狼围捕行为的无人机集群空战方法 |
CN110083156A (zh) * | 2019-04-25 | 2019-08-02 | 北京航空航天大学 | 基于狼群算法的穿刺机器人柔性针运动路径规划装置及方法 |
CN110411448A (zh) * | 2019-06-14 | 2019-11-05 | 青岛科技大学 | 一种船舶感知区域动态网格内代表船的选取方法 |
CN110471426A (zh) * | 2019-09-02 | 2019-11-19 | 哈尔滨工程大学 | 基于量子狼群算法的无人驾驶智能车自动避碰方法 |
CN111061165A (zh) * | 2019-12-16 | 2020-04-24 | 青岛科技大学 | 一种船舶相对碰撞危险度模型的验证方法 |
CN111063218A (zh) * | 2019-06-24 | 2020-04-24 | 武汉理工大学 | 一种船舶避碰决策方法 |
CN111474916A (zh) * | 2020-03-30 | 2020-07-31 | 智慧航海(青岛)科技有限公司 | 船舶航行自主避碰算法测试方法和装置 |
CN111709571A (zh) * | 2020-06-09 | 2020-09-25 | 吉林大学 | 一种船舶避碰路线确定方法、装置、设备及可存储介质 |
CN113296509A (zh) * | 2021-05-21 | 2021-08-24 | 上海海事大学 | 一种用于无人表面船的自主轨迹追踪融合控制方法 |
CN114839968A (zh) * | 2022-04-01 | 2022-08-02 | 哈尔滨工程大学 | 一种水面无人艇路径规划方法 |
CN116678409A (zh) * | 2023-04-24 | 2023-09-01 | 大连海事大学 | 一种基于改进灰狼算法的北极冰区船舶路径规划方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002222500A (ja) * | 2001-01-25 | 2002-08-09 | Univ Nihon | 遺伝的アルゴリズムによる船舶の衝突回避システム |
CN103186815A (zh) * | 2013-04-03 | 2013-07-03 | 大连海事大学 | 一种基于在线快速自组织模糊神经网络的船舶领域模型的辨识方法 |
-
2015
- 2015-05-13 CN CN201510242591.8A patent/CN104794526A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002222500A (ja) * | 2001-01-25 | 2002-08-09 | Univ Nihon | 遺伝的アルゴリズムによる船舶の衝突回避システム |
CN103186815A (zh) * | 2013-04-03 | 2013-07-03 | 大连海事大学 | 一种基于在线快速自组织模糊神经网络的船舶领域模型的辨识方法 |
Non-Patent Citations (2)
Title |
---|
LIU HONGDAN ETAL.: "Application of adaptive wolf colony search algorithm in ship collision avoidance", 《INTERNATIONAL JOURNAL OF SIMULATION SYSTEMS, SCIENCE& TECHNOLOGY》 * |
马文耀等: "人工鱼群算法的避碰路径规划决策支持", 《中国航海》 * |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105117769B (zh) * | 2015-09-14 | 2017-08-08 | 杭州电子科技大学 | 基于差分进化狼群算法的欺骗干扰识别方法 |
CN105117769A (zh) * | 2015-09-14 | 2015-12-02 | 杭州电子科技大学 | 基于差分进化狼群算法的欺骗干扰识别方法 |
CN106896716B (zh) * | 2017-04-17 | 2019-12-27 | 华北电力大学(保定) | 基于灰狼算法的微电网交直流断面换流器pid参数优化方法 |
CN106896716A (zh) * | 2017-04-17 | 2017-06-27 | 华北电力大学(保定) | 基于灰狼算法的微电网交直流断面换流器pid参数优化方法 |
WO2019140725A1 (zh) * | 2018-01-18 | 2019-07-25 | 东莞理工学院 | 一种模拟狼群行为的计算智能优化方法 |
CN108491923A (zh) * | 2018-04-10 | 2018-09-04 | 吉林大学 | 基于改进狼群算法优化贝叶斯网络的害虫图像识别方法 |
CN109190170A (zh) * | 2018-08-02 | 2019-01-11 | 哈尔滨工程大学 | 一种基于云模型理论的船舶碰撞危险度建模方法 |
CN109344953A (zh) * | 2018-08-23 | 2019-02-15 | 东华理工大学 | 云服务组合方法 |
CN109347900A (zh) * | 2018-08-23 | 2019-02-15 | 东华理工大学 | 基于改进狼群算法的云服务***自适应演化方法 |
CN109347900B (zh) * | 2018-08-23 | 2020-12-11 | 东华理工大学 | 基于改进狼群算法的云服务***自适应演化方法 |
CN109556609A (zh) * | 2018-11-15 | 2019-04-02 | 武汉南华工业设备工程股份有限公司 | 一种基于人工智能的避碰方法及装置 |
CN109902796A (zh) * | 2019-03-14 | 2019-06-18 | 重庆邮电大学 | 一种基于烟花***行为的改进的狼群算法 |
CN110069076A (zh) * | 2019-04-23 | 2019-07-30 | 北京航空航天大学 | 一种基于猛狼围捕行为的无人机集群空战方法 |
CN110069076B (zh) * | 2019-04-23 | 2020-06-09 | 北京航空航天大学 | 一种基于猛狼围捕行为的无人机集群空战方法 |
CN110083156A (zh) * | 2019-04-25 | 2019-08-02 | 北京航空航天大学 | 基于狼群算法的穿刺机器人柔性针运动路径规划装置及方法 |
CN110411448A (zh) * | 2019-06-14 | 2019-11-05 | 青岛科技大学 | 一种船舶感知区域动态网格内代表船的选取方法 |
CN111063218A (zh) * | 2019-06-24 | 2020-04-24 | 武汉理工大学 | 一种船舶避碰决策方法 |
CN110471426A (zh) * | 2019-09-02 | 2019-11-19 | 哈尔滨工程大学 | 基于量子狼群算法的无人驾驶智能车自动避碰方法 |
CN111061165A (zh) * | 2019-12-16 | 2020-04-24 | 青岛科技大学 | 一种船舶相对碰撞危险度模型的验证方法 |
CN111474916B (zh) * | 2020-03-30 | 2023-08-29 | 智慧航海(青岛)科技有限公司 | 船舶航行自主避碰算法测试方法和装置 |
CN111474916A (zh) * | 2020-03-30 | 2020-07-31 | 智慧航海(青岛)科技有限公司 | 船舶航行自主避碰算法测试方法和装置 |
CN111709571A (zh) * | 2020-06-09 | 2020-09-25 | 吉林大学 | 一种船舶避碰路线确定方法、装置、设备及可存储介质 |
CN111709571B (zh) * | 2020-06-09 | 2022-05-13 | 吉林大学 | 一种船舶避碰路线确定方法、装置、设备及可存储介质 |
CN113296509B (zh) * | 2021-05-21 | 2022-11-08 | 上海海事大学 | 一种用于无人表面船的自主轨迹追踪融合控制方法 |
CN113296509A (zh) * | 2021-05-21 | 2021-08-24 | 上海海事大学 | 一种用于无人表面船的自主轨迹追踪融合控制方法 |
CN114839968A (zh) * | 2022-04-01 | 2022-08-02 | 哈尔滨工程大学 | 一种水面无人艇路径规划方法 |
CN116678409A (zh) * | 2023-04-24 | 2023-09-01 | 大连海事大学 | 一种基于改进灰狼算法的北极冰区船舶路径规划方法 |
CN116678409B (zh) * | 2023-04-24 | 2024-03-12 | 大连海事大学 | 一种基于改进灰狼算法的北极冰区船舶路径规划方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104794526A (zh) | 一种狼群搜索算法优化的船舶自动避碰方法 | |
Sang et al. | The hybrid path planning algorithm based on improved A* and artificial potential field for unmanned surface vehicle formations | |
CN107504972B (zh) | 一种基于鸽群算法的飞行器航迹规划方法及装置 | |
CN109241552A (zh) | 一种基于多约束目标的水下机器人运动规划方法 | |
Cao et al. | Target search control of AUV in underwater environment with deep reinforcement learning | |
Chen et al. | Optimal time-consuming path planning for autonomous underwater vehicles based on a dynamic neural network model in ocean current environments | |
CN111780777A (zh) | 一种基于改进a*算法和深度强化学习的无人车路径规划方法 | |
CN109540151A (zh) | 一种基于强化学习的auv三维路径规划方法 | |
CN108803321A (zh) | 基于深度强化学习的自主水下航行器轨迹跟踪控制方法 | |
CN114625151B (zh) | 一种基于强化学习的水下机器人避障路径规划方法 | |
CN112034711B (zh) | 一种基于深度强化学习的无人艇抗海浪干扰控制方法 | |
Guo et al. | Research progress of path planning methods for autonomous underwater vehicle | |
CN109765929A (zh) | 一种基于改进rnn的uuv实时避障规划方法 | |
Wang et al. | Cooperative collision avoidance for unmanned surface vehicles based on improved genetic algorithm | |
Cao et al. | Multi-AUV cooperative target search algorithm in 3-D underwater workspace | |
Li et al. | Three-dimensional path planning for AUVs in ocean currents environment based on an improved compression factor particle swarm optimization algorithm | |
Sun et al. | A novel fuzzy control algorithm for three-dimensional AUV path planning based on sonar model | |
Lan et al. | Path planning for underwater gliders in time-varying ocean current using deep reinforcement learning | |
Xia et al. | Research on collision avoidance algorithm of unmanned surface vehicle based on deep reinforcement learning | |
Yan et al. | Real-world learning control for autonomous exploration of a biomimetic robotic shark | |
Li et al. | Sim-real joint experimental verification for an unmanned surface vehicle formation strategy based on multi-agent deterministic policy gradient and line of sight guidance | |
Zhang et al. | Intelligent vector field histogram based collision avoidance method for auv | |
CN117590867B (zh) | 基于深度强化学习的水下自主航行器接驳控制方法和*** | |
Fu et al. | Multi-behavior fusion based potential field method for path planning of unmanned surface vessel | |
Lou et al. | Path planning in an unknown environment based on deep reinforcement learning with prior knowledge |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20150722 |
|
WD01 | Invention patent application deemed withdrawn after publication |