基于改进小龙虾优化算法的无人艇全局航迹规划算法
- 国知局
- 2024-07-31 23:42:19
本发明属于无人艇航迹规划,具体涉及一种基于改进小龙虾优化算法的无人艇全局航迹规划算法。
背景技术:
1、随着现代科技的不断进步,无人艇在海洋、湖泊和河流等水域中的应用越来越广泛。针对水面任务目标时,无人艇因具备可靠性强、成本造价低、作业半径大的突出优势。故为无人艇规划出一条安全可行的最优路径,从而使得无人艇顺利抵达目标地点尤为重要。
2、在无人艇的航迹规划中,一方面,针对水面目标所处环境的障碍物干扰,势必造成航迹规划问题复杂度上升,航迹规划效率降低问题。另一方面,针对航迹规划也涉及水流流速、风速、无人艇的速度、航程损耗等各种复杂约束,将航迹规划的问题进一步复杂化。
技术实现思路
1、本发明的目的在于提供一种基于改进小龙虾优化算法的无人艇全局航迹规划算法,以解决上述背景技术中提出的问题。
2、为实现上述目的,本发明提供如下技术方案:
3、一种基于改进小龙虾优化算法的无人艇全局航迹规划算法,包括:
4、步骤1:构建栅格水域环境地图、无人艇参数和环境参数;
5、步骤2:根据栅格水域环境地图、无人艇参数和环境参数,构建无人艇航迹规划的约束条件及目标函数;
6、步骤3:构建小龙虾优化算法关键属性成员;
7、步骤4:根据属性成员,构建小龙虾优化算法流程并对小龙虾优化算法进行改进,并结合约束条件及目标函数,从而得出一条适应度值最小的航迹。
8、优选的,所述步骤1具体包括首先将在无人艇进行任务时的水域环境视为矩形oabc,建立平面直角坐标系;
9、oa为无人艇的x轴移动方向,oc为无人艇的y轴移动方向;
10、并沿这两轴方向等分矩形oabc为m×n个栅格,再对这些栅格进行信息标注,水域用白色栅格表示,障碍物通过黑色栅格表示,从而将水域环境进行栅格化。
11、优选的,无人艇的工作水域经栅格化后,无人艇所在栅格点的周围邻点为可行节点,如下式所示:
12、nnode=(x,y,d) (1)
13、设定无人艇v=<pos,v,θ>,其中pos为无人艇的坐标,v表示无人艇的速度,θ表示无人艇速度与水平方向的夹角;
14、设定环境因素e=<wv,wθ,fv,fθ>,其中wv为水流流速,wθ为水流流速与水平方向的夹角,fv为风速,fθ为风速与水平方向的夹角。
15、优选的,所述步骤2具体包括:(1)最大航迹距离lmax:无人艇处于匀速航行状态,在栅格地图中,每条路径划分为n个航迹点,两个相邻航迹点的连线构成一段最小航迹,第i段航迹的长度为li,总航迹长度为l,满足l≤lmax;
16、(2)最小航迹长度lmin:无人艇行驶过程中若要改变方向前,保持一定距离的航行,且需对最小航迹长度进行设定,给无人艇改变方向预留转向空间,设定无人艇的最小航迹长度为lmin,每段航迹长度为li,且无人艇需满足lmin≤li;
17、(3)航向角约束αv∈(αmin,αmax):设定无人艇的航向角为,其航向角约束为αmin≤αv≤αmax;
18、(4)避碰距离约束:设定无人艇的安全避碰半径为r,无人艇与障碍物之间的距离为dob,应当满足dob≥r;
19、minfit=w1d+w2v (2)
20、其中,fit为航迹的适应度值,d为总航迹代价,v为能耗代价,w1、w2为权重因子,其中d的主要因素为无人艇从起点到终点的总航行距离,为各个航迹li之和,若总航迹为n段li组成,则该无人艇的航程代价d(f)表达式为:
21、
22、
23、v为无人艇在风流和水流双重干扰下的能耗代价,定义为:
24、v=((vvcosθv+vwcosθw+vfcosθf)2+(vvsinθv+vwsinθw+vfsinθf)2)ts
25、其中,vv为无人艇的行进速度,vf为风速,vw为水流速度,当vw,vf分别与vv的速度方向夹角大于180°时,该值为正值,反之为负值,ts为相邻航节点之间的耗时。
26、优选的,所述步骤3具体包括:(1)初始种群位置矩阵x:
27、初始种群位置矩阵x为n×m维矩阵,矩阵x中元素xi,i∈n表示第i只龙虾的初始位置,代表无人艇的第i组最优侯选位置,n表示种群大小,即n组最优侯选位置,通过对这n组最优侯选位置进行适应度求解,对n个适应度进行比较,求出适应度最小的位置,m表示种群维度,即每组最优侯选位置的总维度数,通过对优化点个数的设置为n,并每个点在水面的坐标维数为2,得出m=2n;
28、(2)适应度值矩阵fit:
29、fit是一个维数为1*n的矩阵,其中n为种群大小,fit矩阵的元素fit表示对矩阵x的每组最优侯选位置所形成的航迹进行求取的总适应度值,如果航迹经过障碍物或航迹点与障碍物的距离小于避碰距离,其值为无穷大,相反,其中对应fit值最小的xi为最优侯选位置;
30、(3)航迹矩阵path:
31、path矩阵的中的元素pi为最优航迹点坐标,pi通过对最优侯选位置点坐标xi、起点坐标xs以及终点坐标xe为插值值分别进行三次b样条插值,得到的结果为新坐标,也就是最优航迹点,path矩阵中的所有坐标点形成的曲线便是该无人艇的最优航迹。
32、优选的,所述步骤4具体包括:
33、改进小龙虾优化算法由三阶段组成:1)初始化阶段;2)最优侯选位置计算阶段;3)航迹选择阶段。
34、优选的,(1)初始化阶段:首先需定义总迭代次数t、种群大小n、无人艇的坐标维数dim、航行区域的上界ub以及下界lb和环境温度temp,由下式对小龙虾i的位置,即无人艇的候选位置进行初始化分布:
35、
36、其中rand为一个大于0小于1的随机值;
37、(2)最优侯选位置计算阶段:小龙虾算法根据随机值rand、温度值temp以及食物大小q可选择四种不同的阶段,其中temp表示为:
38、temp=rand×15+20 (6)
39、当rand<0.5,temp>30时,根据小龙虾算法原则,此时小龙会进入避暑阶段,开始寻找洞穴,此阶段需先定义避暑洞穴位置,可由下式表示:
40、xshade=(xg+xl)/2 (7)
41、其中xg表示到目前为止,已通过的迭代次数中最优侯选位置,xl表示当前种群中的最优侯选位置;
42、通过洞穴位置可由下式进一步得出新的最优侯选位置:
43、
44、其中为上一次迭代的最优侯选位置,为本次迭代更新后的最优侯选位置,t表示上一次迭代次数,t+1表示本次的迭代次数,c2为递减曲线,表示为:
45、c2=2-(t/t) (9)
46、此阶段,小龙虾的目标为接近洞穴;
47、当rand>0.5,temp>30时,小龙虾会争夺洞穴,此时进入竞争阶段,竞争阶段的最优侯选位置表示为:
48、
49、表示为小龙虾z的位置,其中z表示为随机的小龙虾个体,其表达式为:
50、z=round(rand×(n-1))+1 (11)
51、通过在竞争阶段,小龙虾i基于随机的小龙虾z来进行位置调整,通过调整位置;
52、当temp≤30时,此时温度适合小龙虾觅食,算法进入觅食阶段,食物大小表示为:
53、q=c3×rand×(fiti/fitfood) (12)
54、c3为食物因子,表示最大的食物,设为常数3,fiti为小龙虾i位置的适应度值,fitfood表示食物位置的适应度值,此时食物位置的表达式可由下式表示:
55、xfood=xg (13)
56、当q>(c3+1)/2时,此时食物过大,小龙虾用第一脚爪撕扯食物,食物位置进行更新,其更新表达式为:
57、
58、食物变小后,小龙虾用第二、第三只脚爪开始交替夹起食物进食,通过正弦函数和余弦函数的组合来模拟进食的交变过程,其表达式为:
59、
60、其中p为小龙虾的进食量,其表达式为:
61、
62、其中c1,δ为常数,用来控制小龙虾的进食量,μ为最适合小龙虾进食的温度,设为常数;
63、当q≤(c3+1)/2时,小龙虾直接移向食物并直接进食,此时小龙虾位置更新公式为:
64、
65、此时食物q的大小正好合适小龙虾进食,小龙虾则会靠近食物,接近最优位置解;
66、(3)航迹选择阶段:通过将最优侯选位置计算阶段迭代一定次数,从中选出适应度值fit最小的最优侯选位置作为基点进行三次b样条插值计算,通过基点与起始点作为原始数据,得出的插值解便为最优航迹点。
67、与现有技术相比,本发明的技术效果和优点:
68、本发明的一种基于改进小龙虾优化算法的全局无人艇航迹规划方法,属于无人艇航迹规划领域。该方法首先基于栅格法进行构建水域环境地图,然后基于障碍物和障碍物避碰距离、地图范围和能耗值等约束来构建航迹规划的适应度函数。根据改进的小龙虾算法来求取最小适应度值,从而获得最优航迹。本发明的技术方案提出的适应度函数能够保证在航迹规划过程中更加贴合无人艇的实际航行情况,改进的小龙虾算法可以将适应度函数稳定的收敛,保证了航迹规划的稳定性,提高了航迹规划的效率,保证航迹规划距离最短的同时有效避碰障碍物。
69、本发明可在无人艇航迹规划等领域广泛推广。
本文地址:https://www.jishuxx.com/zhuanli/20240730/198175.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。