一种蚂蚁粒子群融合的机器人路径规划新算法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2007,43(31)◎学术探讨◎
1引言
移动机器人路径规划是指在有障碍物的工作环境中,寻找一条从给定起始点到终止点的较优运动路径,使机器人在运动过程中能安全、无碰撞地绕过所有的障碍物,且所走路径较短。

根据机器人对环境信息掌握程度的不同,路径规划可以分为两种类型:环境信息完全已知的全局路径规划和环境信息完全未知或部分未知的局部路径规划。

对于环境信息完全已知的情况的研究已有广泛的报道,例如势场法[1]、遗传算法[2]等。

势场法结构简单,易于实现,得到了广泛的应用,但也有较大缺陷:存在GNRON(目标不可到达)问题、在障碍物面前振荡等。

遗传算法在求解最短路径时,由于编码长度变化范围很大,尤其在问题规模较大、地形复杂时,产生的无效路径较多,求解效率很低,故能有效求解的问题的规模也比较小。

基于对已有成果的研究并针对已有算法的不足,本文提出了一种新的机器人路径规划方法,用自由空间法[2,3]建立机器人运动的环境模型,在此基础上先用蚂蚁算法[4]规划一条无碰较优路径;再用粒子群算法[5]优化该路径,从而得到全局近似最优的路径。

计算机仿真实验表明,本方法能满足机器人快速路径规划的要求,并且在复杂的环境下也可以快速地规划出一条从起始点到目标点的优化路径,效果十分令人满意。

2环境描述
对机器人运动环境常用的建模方法有栅格法、可视图法等。

这些方法在进行路径规划时可得到较精确解,但建立模型与更新模型时的计算量较大,且对传感器精度的要求较高。

而自由空间法比较灵活,机器人起始点和目标点的改变不会造成连通图的重构,且大大减少建模的存储量。

因此,本文采用该方法进行环境建模。

为了描述方便且不失一般性和应用性,特作如下假设:
假设1将机器人简化为一个质点。

假设2机器人只在一个二维平面上运动。

假设3将机器人运动环境中的所有障碍物都用凸多边形表示。

由自由空间法构造的机器人可自由运动的网络图如图1
一种蚂蚁粒子群融合的机器人路径规划新算法
国海涛,朱庆保,司应涛
GUOHai-tao,ZHUQing-bao,SIYing-tao
南京师范大学数学与计算机科学学院,南京210097
SchoolofMathematicsandComputerScience,NanjingNormalUniversity,Nanjing210097,China
E-mail:guohaitao2005@163.com
GUOHai-tao,ZHUQing-bao,SIYing-tao.Novelpathplanningforrobotssyncretizingantalgorithmandparticleswarmalgorithm.ComputerEngineeringandApplications,2007,43(31):39-41.
Abstract:AnalgorithmbasedonAntAlgorithm(AA)andParticleSwarmOptimization(PSO)algorithmforpathplanningoftherobotisproposed.FirsttheMAKLINKgraphisbuilttodescribetheworkingspaceofthemobilerobot,thentheantalgorithmisusedtoobtaintheglobalnavigationpath,andtheparticleswarmoptimizationalgorithmisadoptedtogetthebetterpath.Computerexperimentresultsdemonstratethatthisnovelalgorithmcanplananoptimalpathrapidlyinaclutteredenvironment.Thesuccessfulobstacleavoidanceisachieved,andthemodelisrobustandperformsreliably.
Keywords:robot;pathplanning;antalgorithm;particleswarmalgorithm
摘要:研究了一种全新的蚂蚁粒子群融合的机器人路径规划算法。

该方法首先用链接图建立机器人运动空间模型,在此基础上利用蚂蚁算法进行全局搜索得到全局导航路径,然后用粒子群算法局部调节全局导航路径上的路径点,得到更优路径。

计算机仿真实验表明,即使在复杂的环境下,利用该算法也可以规划出一条全局优化路径,且能安全避障。

关键词:机器人;路径规划;蚂蚁算法;粒子群算法
文章编号:1002-8331(2007)31-0039-03文献标识码:A中图分类号:TP242.6
基金项目:国家自然科学基金(theNationalNaturalScienceFoundationofChinaunderGrantNo.60673102);江苏省自然科学基金(theNaturalScienceFoundationofJiangsuProvinceofChinaunderGrantNo.BK2006218)。

作者简介:国海涛(1981-),男,硕士研究生,主要研究领域为人工智能与智能控制;朱庆保(1955-),男,教授,硕士生导师,主要研究领域为人工智能与智能控制;司应涛(1983-),男,硕士研究生,主要研究领域为人工智能与智能控制。

ComputerEngineeringandApplications计算机工程与应用39
2007,43(31)ComputerEngineeringandApplications计算机工程与应用
20
21
2524
19
23
22181712
11
131415
16107







1图1链接图
Pi
Pi1
Pi2
Pi+1
图2路径调整示意图
所示,其中黑色表示障碍物,所标序号为路径点即机器人可行走的点。

3蚂蚁粒子群融合新算法3.1
算法总体思路及其相关定义
自由空间法构造的路径点是自由链接线的中点,如果机器
人仅仅沿着路径点行走,显然得到的路径不是最优的。

为了解决这一问题,首先用蚂蚁算法找到一条无碰较优导航路径,得到初始的路径点;再用粒子群算法调整各个初始路径点,从而得到全局近似最优路径。

调节过程如图2所示。

让Pi点在Pi1、Pi2两点所组成的线段上滑动,其具体位置可由式
(1)表示:Pi=Pi1+(Pi2-Pi1)×ti(ti∈[0,1],i=1,2,…,n)
(1)
式中,ti表示粒子位置的第i维变量,当ti的值变化时,Pi随之改变。

用粒子群算法来搜索最佳ti,使得粒子的适应度函数取值最小(机器人自由运动空间由凸多边形构成,保证了Pi在线段
Pi1Pi2上滑动时形成的新路径不会与障碍物相交)。

对每个路径
点都这样处理后,这些新的路径点就组成了一条新的机器人移动路径。

定义1链接线长度指两直接相邻路径点间的距离,记作d
(i,j),由式(2)计算:d
(i,j)=(xi-xj)2
+(yi-yj)2
"(2)
其中链接线也称为弧,若两路径点不直接相连,则两点间的距
离视为无穷大。

定义2ant={1,2,…,k,…,m}表示蚂蚁家族所有蚂蚁的集合,k∈ant表示某只蚂蚁,m为蚂蚁家族的蚂蚁总数,τij(t)表示蚂蚁在t时刻残留在直接相邻路径点i、j连线上的信息量。

定义3蚂蚁k已经选择并行走过的路径点组成的集合表示为tabuk,它随着蚂蚁的行走动态调整。

定义4"ij=D/d(j,goal)称蚂蚁从路径点i选择路径点j的启发函数,D为权重常系数,goal为目标点。

为了计算方便且不
影响效果,在计算启发式函数时,认为任意路径点都和目标点直接相连。

定义5所有路径点组成的集合称为可行域,记为FS。

定义6#i∈FS,j∈FS且j与i直接相邻,则称j在i的邻域内,记为j∈Ni。

其中,Ni为i的邻域。

定义7粒子c第h维和第h+1维之间的距离根据式(2)、式(3)计算:
pdc
(Ph,Ph+1)=d
(P(th),P(th+1))(3)
其中,P(th)和P(th+1)由式(1)计算。

3.2算法步骤
根据以上思想及相关定义,本文算法具体步骤如下:步骤1初始化:初始化出发点S和目标点G,如果S、G不
是网络图中的路径点,将S、G和离其最近的路径点相连。

将m
只蚂蚁放置在S,并将S设置到禁忌表tabuk中(k=1,2,…,m)。

令τij(0)=τ0(τ0
为常数)。

设置迭代次数n=0,最大迭代次数为MAX,设定#、$和%的值。

步骤2#k,以当前路径点i∈FS为中心,选择并行走到下一节点j,且有j∈Ni,j$tabuk。

蚂蚁按式(4)选择节点j:
j=
argmax{[τij(t)]$"#
ij}ifq≤q0
Sels&

(4)
其中:q和q0是为了防止出现停滞而设的随机搜索策略所需参数,以增加搜索的多样性。

0<q0≤1是初始设定的参数,q∈(0,1)是随机数。

β
为从i到j的弧上残留信息的重要程度;"ij为由定义4给出的启发信息;随机变量S根据式(5)决定:
pk
ij
(t)=[τij(t)]$"#
ij
l∈tabu’[τ
il
(t)]$
["il
]#
j$tabuk

j∈tabuk
(
*****)*
****+
(5)
pk
ij
(t)为在t时刻蚂蚁k由节点i转移到节点j的概率,i,j∈FS。

计算转移概率pk
ij,根据赌轮盘规则选择下一个路径点j,并将j加入禁忌表tabuk。

步骤3按式(6)信息素更新:
τij(t+1)=(1-%)τij(t)+%!τk
ij
!τkij
=QLk若蚂蚁k在本次循环中走过(i,j)0
否,
则(6)
1-%表示信息消逝程度;Q为一个常数,表示信息素强度;Lk表
示蚂蚁k在本次循环中已走的路径长度。

步骤4蚂蚁选择完下一个路径点j后,若j=G,则转步骤
5,否则转步骤2。

步骤5计算蚂蚁所走路径的总长度,将新的路径与已知最优路径相比较,若新路径更优,则用新路径替换更新已知最优路径总长度Lmin。

步骤6在已知最优的路径上按式(7)信息素更新:τnew
ij=(1-%)τold
ij+%!τij!τij
=QLmin若蚂蚁k在本次寻优中走过(i,j)0
否&
则(7)
40
2007,43(31)2021s

b19181712
11
13
1415
16107
98645


1gc图3简单环境
20
21
2524


b19
232218
17
12
11
13
1415
16107


64

32
1g

图4较复杂环境
步骤7迭代次数加1,若未达到最大迭代次数,则清空禁忌表,转步骤2重复上述过程,直到n=MAX为止。

选出最优路径P={P0P1…Pu}(其中路径点个数为u+1)转步骤8。

步骤8初始化粒子数Pn,在允许的范围内随机初始化粒子的位置和速度,把每个粒子的初始化位置视为其初始最优位置pc。

粒子的维数由最优路径中路径点的个数(不含出发点和目标点)决定,即粒子有u-1维。

设定!、c1、c2和最大迭代次数
Pmax。

步骤9依据定义7和式(8)计算每个粒子c的适应度Fc,适应度最小的粒子记为g。

Fc=u-1
h=1
!
pdc
(Ph,Ph+1)
(8)
步骤10依据式(9)更新粒子c的各维速度,依据式(10)更新粒子c的位置。

Vc,h=!Vc,h+c1×r1[pc,h-xc,h]+c2×r2[gh-xc,h]
(9)xc,h=xc,h+vc,h
(10)
其中r1、r2是[0,1]之间的随机数,若vch<-vmaxxh,则令vch=
vmaxxh;若vch>vmaxxh,则令vch=vmaxxh,即对粒子的速度进
行限制。

若xch<minxh,则令xch=minxh+rand×0.01;若xch>maxxh,则令xch=maxxh,即对粒子的位置进行限制。

步骤11依据式(8)计算每个粒子的适应度,若适应度小于原来的适应度则更新pc、g。

步骤12若迭代次数未到达最大次数或者未满足精度要求则转步骤10,否则转步骤13。

步骤13输出最优路径。

4仿真实验
为了体现该算法的有效性及其特点,作者做了大量的实
验,实验环境为:CPU赛扬2.66G,内存为256M,编译工具
VC++6.0。

在图3所示的实验中,运行参数设定如下:蚂蚁数为10,
"=2、#=1、$=0.1、
MAX=50、Pmax=100、Pn=30。

由基本蚂蚁算法求的路径序列为{s,8,9,11,17,16,15,4,g},由本文算法求得路径为{s,a,b,c,g},运行时间为0.305s,同一环境下,用文献[3]中的算法运行时间为1.432s。

为了进一步说明本文算法的有效性,又对较复杂的环境进行了实验,实验结果如图4所示。

运行参数设定如下:蚂蚁数为
20,"=2、#=1、$=0.1、MAX=100、Pmax=200、Pn=40。

文献[6]给出
实验结果路径序列为{s,24,23,18,8,6,3,g},由本文算法求得路径为{s,a,b,c,g}。

仿真实验结果表明,本文算法具有收敛快,得到的路径更优等优点。

5结语
本文采用链接图法对机器人运动环境进行建模,算法简单
容易实现。

在此基础上,给出的算法首先将出发点和目标点与离其最近的路径点相连,用蚂蚁算法快速搜索出一条全局路径,然后对该路径上的点进行调节,得到近似最优路径。

与其他算法相比,该算法简单可行,适于复杂环境下的机器人路径规划。

(收稿日期:2007年7月)
参考文献:
[1]AgirrebeitiaJ.AnewAPFstrategyforpathplanninginenviron-
mentswithobstacles[J].MechanismandMachineTheory,2005,40:645-658.
[2]孙树栋,林茂.基于遗传算法的多移动机器人协调路径规划[J].自动
化学报,2000,26(5):673-676.
[3]QinYuan-qing,SunDe-bao.Pathplanningformobilerobotusing
theparticleswarmoptimizationwithmutationoperator[C]//Proceed-ingsoftheThirdInternationalConferenceonMachineLearningandCybernetics,Shanghai,26-29August2004:2473-2478.[4]朱庆保.复杂环境下的机器人路径规划蚂蚁算法[J].自动化学报,
2006,32
(4):586-593.[5]孙波,陈卫东,席裕庚.基于粒子群优化算法的移动机器人全局路径
规划[J].控制与决策,2005,20(9):1052-1060.
[6]HabibMK,AsamaH.Efficientmethodtogeneratecollisionfree
pathsforautonomousmobilerobotbasedonnewfreespacestructuringapproach[C]//ProcIEEE/RSJIROS,1991:563-567.
国海涛,朱庆保,司应涛:一种蚂蚁粒子群融合的机器人路径规划新算法
41。

相关文档
最新文档