【技术实现步骤摘要】
一种基于改进蚁群算法的移动机器人路径规划方法
[0001]本专利技术涉及一种基于改进蚁群算法的移动机器人路径规划方法,属于移动机器人路径规划领域。
技术介绍
[0002]随着信息技术的快速发展,移动机器人也越来越被各个行业重视,无论是在日常生活,还是在工业生产中,都可以看到移动机器人的身影。在生产过程中,移动机器人的使用,降低了人工成本,极大的提升了生产效率,而在生产生活中,要使移动机器人能够准确、快速和高质量的实现自主导航完成不同的任务,路径规划的研究就显得尤为重要,而路径规划算法又是路径规划中需要解决的核心问题,国内外学者针对路径规划提出多种算法,如传统的路径规划算法:A*算法、D*算法、人工势场算法等,智能仿生算法如蚁群算法、遗传算法、粒子群算法等。
[0003]蚁群算法最早是由Marco Dorigo提出,通过研究蚁群从蚁窝到食物源的路径寻找过程,可以发现,蚂蚁会在其经过的路径上释放一种可以称之为“信息素”的物质,蚁群内的蚂蚁对“信息素”具有感知能力,它们会沿着“信息素”浓度较高路径行走,而每只路过的蚂蚁都会在路上留下“信息素”,这就形成一种类似正反馈的机制,这样经过一段时间后,整个蚁群就会沿着最短路径到达食物源了。蚁群算法具有结构简单、适应性强、较强的鲁棒性等优势,适合用于机器人路径规划研究,但也存在收敛速度较慢,易陷入局部最优的情况。
技术实现思路
[0004]本专利技术提供了一种基于改进蚁群算法的移动机器人路径规划方法,以用于获得移动机器人的的最优路径,并进一步,依据最优路径获得 ...
【技术保护点】
【技术特征摘要】
1.一种基于改进蚁群算法的移动机器人路径规划方法,其特征在于,包括:步骤1:依据栅格图法对移动机器人的运动环境进行建模,每一个栅格点设置其对应的编码,并以每一个栅格的中心点为当前栅格的坐标点;步骤2:设置移动机器人路径规划的起始点和目标点,并初始化改进蚁群算法的参数;步骤3:将M只蚂蚁置于起始点,开始本次迭代;步骤4:找到当前蚂蚁的下一可行节点,计算下一节点的状态转移概率,并将选择的下一节点进行记录,同时对禁忌表进行更新;步骤5:判断M只蚂蚁是否全部完成迭代,如果是,那么对当前迭代的所有到达目标点的蚂蚁路径利用多目标评价函数进行评价;计算多目标评价函数的权重;最后计算每条路径的多目标评价函数值;否则,跳转步骤4;步骤6:依据改进信息素更新方式和路径的多目标评价函数值对路径信息素进行更新,并结束本次迭代;步骤7:判断当前迭代次数是否达到最大迭代次数,如果是,那么终止,输出当前初始最优路径;否则,迭代次数加1,跳转步骤3。2.根据权利要求1所述的基于改进蚁群算法的移动机器人路径规划方法,其特征在于,还包括:步骤8:对当前初始最优路径利用节点优化规则进行优化,获得二次优化路径。3.根据权利要求2所述的基于改进蚁群算法的移动机器人路径规划方法,其特征在于,还包括:步骤9:对二次优化路径的转弯节点处利用贝塞尔曲线进行平滑优化,优化后,输出平滑后的最优路径。4.根据权利要求1所述的基于改进蚁群算法的移动机器人路径规划方法,其特征在于,栅格点的编码以及其对应坐标,具体为:对栅格图中的栅格以从左至右、从上至下编码依次增大的方式进行编码;栅格编码与栅格坐标之间的转换公式为:其中,a为每个栅格的边长,l为栅格编码,MM代表地图中栅格的总行数,mod()为求余函数,ceil()为向上取整函数,(x,y)为栅格坐标。5.根据权利要求1所述的基于改进蚁群算法的移动机器人路径规划方法,其特征在于,所述状态转移概率,具体为:
其中,为第k只蚂蚁改进后的状态转移概率,turn
ij
(t)为平滑函数,α表示信息素重要程度的参数,β表示启发式信息重要性程度的参数,γ表示平滑性信息重要程度的参数,i表示当前栅格点编码,S表示起始栅格点编码,j为蚂蚁下一待选栅格点编码,allowed
k
表示第k只蚂蚁待选栅格集合,θ
b
表示当前栅格点到下一栅格点的转弯角度,(x
b
,y
b
)表示当前栅格点坐标,(x
b
‑1,y
b
‑1)表示当前栅格点的前一栅格点的坐标,(x
b+1
,y
b+1
)表示当前栅格点的下一可选栅格点的坐标。6.根据权利要求1所述的基于改进蚁群算法的移动机器人路径规划方法,其特征在于,所述多目标评价函数,具体为:F
k
=w1L
k
+W2θ
k总
式中,L
k
表示第k只蚂蚁规划路径长度,θ
k总
表示第k只蚂蚁规划路径转弯角度总和,n表示规划路径经过的栅格点总数,(x
g
,y
g
)、(x
g+1
,y
g+1
)、(x
g+2
,y
g+2
)表示当前规划路径上三个连续点的坐标,w1、w2表示各自的权重系数,F
k
表示第k只蚂蚁规划路径的多目标函数评价值。7.根据权利要求1所述的基于改进蚁群算法的移动机器人路径规划方法,其特征在于,所述改进信息素更新方式,具体为:τ
rf
(t+1)=(1
‑
ρ)τ
rf
(t)+Δτ
rf
(t)(t)(t)ρ=max{[ρ
max
‑
ε*(N
c
/N)],0.6}式中,τ
rf
(t+1)表示路径(r,f)上更新后的信息素量,ρ表示信息素挥发系数,τ
rf
(t)表示更新前路径(r,f)上的信息素量,Δτ
rf
(t)为路径(r,f)上新增的信息素总量,为第k只蚂蚁在路径(r,f)上新增的信息...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。