APP下载

基于改进人工势场法的移动机器人路径规划

2014-03-20邓学强

关键词:势场移动机器人引力

邓学强

(山东理工大学 计算机科学与技术学院, 山东 淄博 255091)

路径规划是移动机器人研究领域中的一个重要方向.所谓路径规划是指在满足某种性能指标最优或者准优的前提下,寻找一条在设定区域内从起始点到目标点且避开障碍物的连续路径[1].目前,路径规划主要分为两大类:环境信息已知的全局路径规划和环境信息未知或部分可知的局部路径规划[2].常用的路径规划方法主要有人工势场法、栅格法[3]、遗传算法[4]、模糊逻辑[5-6]、人工神经网络[7]等,其中人工势场法相对于神经网络、遗传算法等算法具有规划效果安全可靠、计算量小的优点,是局部路径规划中比较成熟且高效的一种规划方法[8].但由于该算法依据的是局部的环境信息,缺乏宏观自我调控能力,从而可能会使机器在运动过程中陷入局部极小值点而不能到达目标点,这就是目标不可达问题[9].目前,学者们已经研究出多种逃出局部极小值点的方法,如沿墙走[10]、模拟退火算法[11]、随机逃走法[12]和动态步长折半法[13]等.本文采用改进斥力函数的方法来解决目标不可达问题,在构造新的斥力势场函数时,考虑机器人与目标点的相对距离,并对障碍物的作用范围进行分段,在不同的分段采用不同的斥力.最后,利用Matlab软件验证该方法能够有效解决传统人工势场法中的目标不可达问题.

1 传统人工势场算法模型

Khatib首先提出了人工势场的概念[14].人工势场法的基本思想就是将机器人的运动环境虚拟成一种抽象的人造势场,在目标位置构造引力势场,在障碍物周围构造斥力势场,引力场的引力吸引机器人朝目标点方向移动,斥力场的斥力阻止机器人朝障碍物方向移动,在这两个势场力的共同作用下,机器人朝目标点移动[15].机器人受力分析如图1所示.

图1 机器人在多障碍物下受力分析图

假设机器人简化为一个质点并且工作空间为二维空间,机器人坐标向量为X=(x,y),目标点的坐标向量为Xg=(xg,yg),总的势场可表示为引力场和斥力场之和,即

Usum(X)=Uatt(X)+Urep(X)

(1)

其中:Uatt(X)为引力场,Urep(X)为斥力场,Usum(X)为合力场.

势场中机器人的合力表示为

Ftotal=Fatt+Frep

(2)

其中:引力Fatt=-grad[Uatt(X)],斥力Frep=-grad[Urep(X)],Ftotal为引力与斥力之和.

机器人在二维空间中所受到的合力即为

(3)

1.1 引力的计算

目标点的引力能够引导机器人向目标点运动,具有导航作用.引力场的方向指向目标点,引力的大小与机器人离目标点距离的平方成反比.

X处的引力函数Uatt(X)与目标位置Xg=(xg,yg)有关,目标对机器人的引力势函数为

(4)

相应的引力Fatt(X)为目标势场的负梯度,其公式为

Fatt=-grad[Uatt(X)]=-k(X-Xg)=kpa

(5)

式中:k为引力增益系数,是正数;X为当前机器人在二维空间中的坐标;Xg为目标点位置;pa=‖X-Xg‖为机器人与目标点之间的相对距离,机器人在引力作用下可以线性收敛到目标点.

1.2 斥力的计算

障碍物的斥力能够使移动机器人避开障碍物,斥力大小的计算应从障碍物的边界算起.当机器人遇到多个障碍物时,采用迭加的方式来求得多个障碍物对机器人的斥力.

障碍物附近的斥力场一般采用Khatib提出的FIRAS函数[16],斥力势函数为

(6)

式中:m为斥力增益系数,是正数;p表示机器人与障碍物的最短距离;p0是一个大于零的常数,表示障碍物的影响距离,在p0之外的机器人不受此障碍物的影响.相应的引力为目标势场的负梯度,其公式为

Frep=-grad[Urep(X)]=

(7)

由公式(2)可求出作用于机器人的合力Ftotal.

1.3 传统人工势场法存在的问题分析

机器人的合力Ftotal决定了机器人的运动方向,当目标点在障碍物的影响范围之内时,随着机器人接近目标点,吸引力越来越小,而斥力越来越大,由于斥力过大而引力过小,最终两者达到平衡,形成局部极小值点,因而总的势场力在目标点达不到全局最小,此时,机器人停滞,不能到达目标点,产生了目标不可达问题.

2 改进的人工势场法

为了解决传统人工势法中的目标不可达问题,本文对传统人工势场中的斥力函数进行改进,在改进的斥力势场函数中通过引入机器人与目标点的相对距离,将原来的斥力函数乘以一个调节因子(X-Xg)n,并对障碍物的作用范围进行分段,在不同的分段采用不同的斥力,使得目标点位置的斥力为零,机器人在目标点位置总的势场力为全局最小.

用m来表示斥力增益系数,m为正数;用p来表示机器人与障碍物的最短距离;用p0来表示障碍物的影响距离,在p0之外的机器人不受此障碍物的影响,p0是一个大于零的常数;用p1来对p0进行分段:p1≤p≤p0的区域为可控区,机器人在可控区受到的障碍物的斥力大小为p的线性收敛;p

(8)

斥力为斥力势场的负梯度,由式(8)进而得到斥力,其公式为

Frep=-grad[Urep(X)]=

(9)

1)当p1≤p≤p0时,

(10)

2)当p

(11)

式中:pa=‖X-Xg‖,表示机器人与目标点之间的相对距离,n为大于零的任意实数,其中Frep1和Frep2是Frep的两个分力.改进的人工势场法中,当机器人接近目标点时,引力势场增加时,斥力势场随着减小,在目标点处斥力达到0,当且仅当X=Xg时,总的势场力可达到全局最小值0.通过适当选取k、m、n的值,可以有效解决目标不可达问题.

3 仿真实验步骤与结果

3.1 仿真实验步骤

根据上述算法设计,利用Matlab软件开发平台进行算法仿真实验,具体步骤如下:

1)设置机器人的工作环境为一个50×50的二维空间,引力增益系数k为15,斥力增益系数m为25,机器人步长l为0.5,障碍物的影响距离p0为1(注:k、m、p0的值与机器人的规划路径有直接关系,可进行适当调整).

2)随机设置机器人起始位置、目标点位置、障碍物的位置及个数.

3)根据机器人当前位置信息计算引力和斥力.

4)由合力决定机器人下一步的动作,更新机器人与目标、与障碍物的角度,更新机器人的坐标位置,记录机器人所经过的点.

5)判断机器人是否到过目标点,到达则终止,否则转入步骤3).

3.2 实验结果

仿真实验利用Matlab软件,在二维环境下应用本文提出的算法进行模拟仿真.在仿真实验中,设置起始点为五星,目标点为十字,机器人为圆点,障碍物为圆圈,仿真结果如图2所示.

仿真实验中,随机生成起始点位置、目标点位置,随机分布障碍物的位置、生成障碍物的个数.机器人从起点出发,利用本文的算法,避开了障碍物,到达了目标点,实验成功.

4 结束语

针对传统人工势场法中的目标不可达问题,本文提出了新的斥力改进函数,在改进的斥力函数中考虑了机器人与目标点的相对距离,并对障碍物的作用范围进行分段,在不同的分段采用不同的斥力来解决目标不可达问题.将此算法应用于移动机器人的局部路径规划,通过对人造势场中引力与斥力合力的计算,机器人能够从起始点无碰撞地绕开所有障碍物到达目标点.利用Matlab对机器人运动仿真的结果表明该算法有效,画出了机器人运动的轨迹,找出了一种比较好的路径规划方案.但是机器人所处现实的环境是复杂多变的,假如机器人所处的环境是动态时,还要合理地引入机器人和障碍的移动速度等信息,只有通过不断地修改完善势场函数,路径规划才能更为合理,这是下一步研究的重点问题.

(a)起始点与目标点距离较远,障碍物密集

(b)起始点与目标点距离较近,障碍物密集图2 仿真实验结果

[1] 谢斌,刘士荣,俞金寿.基于在线图搜索的移动机器人遍历运动规划[J].华东理工大学学报:自然科学版,2007,33(4):551-552.

[2] 王帅,连翠玲,赵旭.基于势场的运动路径规划研究[J].河北省科学院学报,2011,28(4):64-66.

[3] 杨杰,贺利乐,李荣丽,等.基于改进势场栅格法的移动机器人路径规划[J].煤矿机械, 2012,33(8):74-76.

[4] 刘彩虹,胡吉全,齐晓宁.基于混合遗传算法的连续空间下机器人的路径规划[J].武汉理工大学学报:交通科学与工程版,2003,27(6):819-821.

[5] Yang S X,Meng M.Neural network approaches to dynamic collision-free trajectory generation[J].IEEE Transactions on Systems,Man and Cybernetics:Part B,2001,31(3):302-317.

[6] Yang S X,Luo C.A neural network approach to complete coveragepath planning[J].IEEE Transactions on Systems,Man and Cybernetics:Part B,2004,34(1):718-724.

[7] 顾永超.一种基于蓝牙技术的室内定位子系统的设计与实现[D].北京:北京大学,2009.

[8]张建英,刘暾.基于人工势场法的移动机器人最优路径规划[J].航空学报,2007,28(8):183-188.

[9]吴乔乔,曾虹,张翔.一种人工势场路径规划改进算法的研究[J].杭州电子科技大学学报,2008,28(3):43-46.

[10] Ge S S,Lai X C,Mamun A A.Boundary following and globally convergent path planning using instant goals[J].IEEE Transactions on Systems,Man and Cybernetics:Part B,2005,35(2):240-254.

[11]张培艳,吕恬生.基于模拟退火—人工势场法的足球机器人路径规划研究[J].杭州科学与技术,2003,22(4):547-548.

[12]于振中,闫继宏,赵杰,等.改进人工势场法的移动机器人路径规划[J].哈尔滨工业大学学报,2011,43(1):50-55.

[13]李晓丽,谢敬,傅卫平.一种改进势场法在多机器人避碰规划中的应用[J].计算机工程与应用,2005,41(17):56-58.

[14] Khatib O. Real- time obstacle avoidance for maipulators and mobile robots[J].The International Journal of Robotics Research,1986,5(1):90-98.

[15] 申魁华,谭跃刚.关于人工势场法局部最小问题的一种解决方法[J].武汉理工大学学报,2005,27(8):77-79.

[16] Park M G,Jeon J H,Lee M C.Obstacle avoidance for mobile robots using artificial potential field approach with simulated annealing [J].IEEE International Symposium on Industrial Electronics,2001(3):1 530-1 535.

猜你喜欢

势场移动机器人引力
移动机器人自主动态避障方法
基于Frenet和改进人工势场的在轨规避路径自主规划
人工势场法与A*算法结合的机械臂避障路径规划研究
基于激光雷达的机器人改进人工势场路径规划研究
基于Twincat的移动机器人制孔系统
引力
基于偶极势场的自主水下航行器回坞导引算法
感受引力
A dew drop
极坐标系下移动机器人的点镇定