一种基于改进蚁群算法的水下机器人路径规划方法
文献发布时间:2023-06-19 10:38:35
技术领域
本发明涉及智能机械路径规划技术领域,具体涉及一种基于改进蚁群算法的水下机器人路径规划方法。
背景技术
水下机器人在民用和军事领域都有着非常重要的价值,而路径规划是水下机器人的关键技术之一。这是在水下机器人的作业环境中遇到的障碍物相对固定的情况下,按照要求在无碰撞的情况下满足起点到终点路径较短、平滑的原则来寻找其中较好路径的移动规则。
目前,全局路径规划的研究主要采用的是栅格法、神经网络法和自由空间法等,当环境相对复杂时,栅格的分辨率和规划时间很难达到一个平衡,神经网络法也很难利用相应的公式去描述,自由空间法计算相对复杂。目前研究较多的是智能决策算法,包括蚁群算法、模拟退火算法、遗传算法等用于水下机器人的路径规划研究上。其中蚁群算法(ACA)由于在路径规划中的良好的鲁棒性和并行性作为一种经典的智能决策算法。然而传统的蚁群算法在路径规划中特别是在复杂环境中存在着收敛速度慢、易陷入局部最优情况。有些学者在水下机器人路径规划研究方面在蚁群算法的基础上提出改进解决相应的问题。例如提出了加入再励机制通过对蚁群信息素更新实行奖惩制度改善传统蚁群算法的性能;例如提出改进蚁群算法找到能耗最低路径。以上方式主要是从蚁群算法的各项参数优化改进。也有的提出利用聚类算法自动改变寻优半径结合蚁群算法的并行、全局收敛能力提高收敛速度;还有的提出一种蚁群算法和粒子群算法的融合改善了搜索效率和迭代次数。以上方式主要是混合算法,结合各自的优缺点达到较好的效果。上述改进的蚁群算法在水下机器人路径规划上应用上不同程度的提高了性能。但是很少有蚁群算法本身参数优化和算法融合双方面改进的结合以及路径平滑处理。
本发明为了更好的解决当前水下机器人路径规划存在的收敛速度慢、易陷入局部最优情况、累计转折角大和易与障碍物碰撞等问题,提出改进蚁群算法本身参数及融合遗传算法以及加入平滑机制,提高路径水下机器人路径规划的整体性能。
发明内容
本发明的目的在于克服现有技术存在的问题,提供一种基于改进蚁群算法的水下机器人路径规划方法,在基本蚁群算法基础上,改进初始信息素和信息素更新方式的方法加快蚁群算法的收敛速度;将蚁群算法ACA和遗传算法GA融合提出ACAGA算法加快收敛速度同时解决陷入局部最优问题;最后采用平滑机制进行平滑优化处理解决转折角过大和易与障碍物碰撞问题。
为实现上述技术目的,达到上述技术效果,本发明通过以下技术方案实现:
一种基于改进蚁群算法的水下机器人路径规划方法,该方法包括:
步骤1)首先采用优化后的栅格法对水下机器人运行环境地图建模;
步骤2)遗传算法及蚁群算法参数初始化;
步骤3)开始进行遗传算法的选择操作、交叉操作、变异操作和循环迭代操作;
步骤4)根据遗传算法的较优解与蚁群算法的初始信息素浓度共同作用作为蚁群算法的初始信息素浓度的分配;
步骤5)蚁群算法得到初始信息素浓度后通过基于排序的信息素更新方式进行每条路径的信息素更新,然后进行蚁群算法的循环迭代操作;
步骤6)统计蚁群算法的循环迭代次数,若为得到相应的较优解,则返回至步骤3),直至算出最优解;
步骤7)得到结果后通过平滑机制进行平滑处理得到最终输出结果。
进一步的,所述步骤1)中,对栅格法的优化包括:
步骤1.1)将三维环境进行某一横切面的二维建模;
步骤1.2)将未占满栅格不规则障碍物充满最小精度栅格;
步骤1.3)将障碍物的凹下空缺填充满,使得凹下障碍物作为一个整体,减少局部循环的死区。
进一步的,在所述步骤1)中采用优化后的栅格法地图建模上,在全局路径规划下,其栅格地图采用序号法分布,在已知起点为左上角1号栅格,终点为右下角最大栅格的前提下,所述步骤4)中的蚁群算法的初始信息素浓度为下式:
进一步的,在所述步骤4中,遗传算法的较优解与蚁群算法的初始信息素浓度的共同作用包括:
步骤4.1)当蚁群算法每次循环完成后,将得到的最优解加入到遗传算法中去,使得遗传算法的迭代速度加快;
步骤4.2)将遗传算法得出的较优解与蚁群算法的初始信息素浓度公式融合调整相应参数从而更新下一次蚁群算法循环中初始信息素浓度的分配。
进一步的,在所述步骤5)中,基于排序的信息素更新方式是以每个蚂蚁按照不同的等级进行信息素的释放,蚂蚁按照它们寻找路径的长短来排名,且越短排名越靠前,蚂蚁释放信息素的量与排名相乘,每次循环只取排名为前w-1的蚂蚁和精英蚂蚁才能在途径过的路径上释放信息素,排名第r的蚂蚁与系数“w-r”相乘,已知当前最优路径的蚂蚁与系数w相乘,基于排序的信息素更新方式可表示为下式:
进一步的,在所述步骤7)中,平滑机制为:
当水下机器人经过障碍物时,在接近障碍物时采用圆弧转弯来代替原来的折线,其中采用的圆弧的圆心角为30°,对应的圆半径为
本发明的有益效果是:
本发明首先改进初始信息素和信息素更新方式,而后将蚁群算法ACA和遗传算法GA相融合形成ACAGA算法,加快了收敛速度以及解决了局部最优问题,综合性能良好,通过对算法规划出的路径进行平滑机制优化处理,解决了累计转角过大过多以及易与障碍物碰撞的问题。
附图说明
图1为本发明的算法流程图;
图2a为本发明对环境地图优化处理前的示意图;
图2b为本发明对环境地图优化处理后的示意图;
图3为本发明的信息素初始化浓度分布示意图。
图4为本发明的平滑机制原理图;
图5为基本蚁群算法运动路径轨迹;
图6为本发明信息素改进后蚁群算法运动路径轨迹;
图7为本发明蚁群算法(ACA)与遗传算法(GA)融合后形成的ACAGA算法运动路径轨迹;
图8为三种算法迭代次数对比和收敛后最小路径长度对比仿真图;
图9为三种算法指标比较图;
图10为本发明的ACAGA算法经平滑机制处理后运动路径轨迹仿真图。
具体实施方式
下面将参考附图并结合实施例,来详细说明本发明。
如图1所示,一种基于改进蚁群算法的水下机器人路径规划方法,该方法包括:
步骤1)首先采用优化后的栅格法对水下机器人运行环境地图建模;
步骤2)遗传算法及蚁群算法参数初始化;
步骤3)开始进行遗传算法的选择操作、交叉操作、变异操作和循环迭代操作;
步骤4)根据遗传算法的较优解与蚁群算法的初始信息素浓度共同作用作为蚁群算法的初始信息素浓度的分配;
步骤5)蚁群算法得到初始信息素浓度后通过基于排序的信息素更新方式进行每条路径的信息素更新,然后进行蚁群算法的循环迭代操作;
步骤6)统计蚁群算法的循环迭代次数,若为得到相应的较优解,则返回至步骤3),直至算出最优解;
步骤7)得到结果后通过平滑机制进行平滑处理得到最终输出结果。
所述步骤1)中,栅格地图具有简单有效易于操作等特点,本发明采用栅格法进行水下机器人在水中运行环境的建模,环境建模涉及到以下三个优化点:
步骤1.1)由于所研究的水下机器人基本在同一水平面进行航行和作业,将三维环境进行某一横切面的二维建模;
步骤1.2)由于水下障碍物不一定充满整个栅格,将栅格分辨率提高会增加计算复杂度,所以将未占满栅格不规则障碍物充满最小精度栅格;
步骤1.3)将障碍物的凹下空缺填充满,使得凹下障碍物作为一个整体,减少局部循环的死区,另外实际情况水下机器人是无法通过相邻对角栅格的,所以通过虚拟障碍的生成和补位避免错误的路径规划。
把水下机器人看作是能够通过障碍物边缘的质点,障碍物的区域用“1”表示,颜色为黑色,可通过区域用“0”表示,颜色为白色,其环境模型精度由单个最小障碍物形成的正方形栅格,例如环境地图实际情况如图2a所示,经优化处理后得到的环境地图如图2b所示。优化处理后的衍生障碍物用灰色表示,在后续作为仿真的环境模型视为黑色不可通过障碍物,这样环境地图就得到了很好的优化。
在所述步骤1)中采用优化后的栅格法地图建模上,信息素是在蚁群算法中蚁群在寻找路径时的重要参考,它的分布情况是蚁群算法路径全局规划的一个重要因素,基本蚁群算法的初始信息素一般被设定为一个定量,这样蚁群的寻找路径就变得随机性比较强,花费的时间自然会比较长,并且可能出现死锁的现象,因此在全局路径规划下,其栅格地图采用序号法分布,在已知起点为左上角1号栅格,终点为右下角最大栅格的前提下,所述步骤4)中的蚁群算法的初始信息素浓度为下式:
在所述步骤4中,遗传算法的较优解与蚁群算法的初始信息素浓度的共同作用包括:
步骤4.1)当蚁群算法每次循环完成后,将得到的最优解加入到遗传算法中去,使得遗传算法的迭代速度加快;
步骤4.2)将遗传算法得出的较优解与蚁群算法的初始信息素浓度公式融合调整相应参数从而更新下一次蚁群算法循环中初始信息素浓度的分配。
通过多次的蚁群算法和遗传算法的相互指导,两者优势互补,最终达到较优的收敛速度和不易陷入局部最优问题。
在所述步骤5)中,基于排序的信息素更新方式是以每个蚂蚁按照不同的等级进行信息素的释放,蚂蚁按照它们寻找路径的长短来排名,且越短排名越靠前,蚂蚁释放信息素的量与排名相乘,每次循环只取排名为前w-1的蚂蚁和精英蚂蚁才能在途径过的路径上释放信息素,排名第r的蚂蚁与系数“w-r”相乘,已知当前最优路径的蚂蚁与系数w相乘,基于排序的信息素更新方式可表示为下式:
在所述步骤7)中,平滑机制为:
如图3所示,当水下机器人经过障碍物时,在接近障碍物时采用圆弧转弯来代替原来的折线,其中采用的圆弧的圆心角为30°,对应的圆半径为
采用本发明实施例方法的仿真结果与分析如下:
为验证改进蚁群算法在水下机器人路径规划中的有效性和综合性能,采用MATLAB-R2016a软件进行仿真,仿真的环境地图采用三点优化后的20*20大小的栅格地图。为计算方便和可行性并重,仿真采用的参数如下:遗传算法的交叉概率为0.6;变异概率为0.1;种群规模NP为30;蚁群算法的蚂蚁数目为80;最大迭代次数设为100;信息系启发因子α为1;期望启发因子β为8;信息素挥发系数ρ为0.4;信息素增加强度系数Q为1。按照相同仿真环境,分别使用传统蚁群算法、信息素改进后蚁群算法、蚁群-遗传融合算法ACAGA三种算法对水下机器人全局路径规划进行仿真。为了验证发明算法的良好的综合性能,图5-图7为分别为三种算法的运动路径规划轨迹的仿真图。
如图8所示,其为三种算法迭代次数对比和收敛后最小路径长度对比仿真图,从算法比较图中可以看出ACAGA算法具有很好的收敛性并且具有最短的运动路径。
进一步如图9中的表格所示,由表中通过算法指标比较可以得知,基本蚁群算法的和信息素改进后蚁群算法最小路径长度为31.213,迭代次数分别为42次和34次,表现出信息素改进后蚁群算法在收敛速度上有一定的优越性;而ACAGA算法的最小路径长度为30.382,迭代次数为22次,拐点数目为8个,并且运行时间为70.86秒,说明ACAGA算法在解决收敛速度、局部最优、能量消耗等综合性能上有着明显的优势。
如图10所示,为加入平滑机制优化后的运动路径仿真图,明显可以看出其在遇到障碍物时的拐点以平滑的曲线代替了原来的折线,有效的减少转角累计角并能减少转弯能耗。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
- 一种基于改进蚁群算法的水下机器人路径规划方法
- 一种基于改进蚁群算法的移动机器人路径规划方法