基于势场法的移动机器人路径规划仿真研究

  • 格式:pdf
  • 大小:167.42 KB
  • 文档页数:4

1引言移动机器人路径规划问题是指在有障碍物的工作环境中寻找一条恰当的从给定起点到终点的运动路径,使机器人在运动过程中能安全、无碰撞地绕过所有的障碍物[1]。

机器人的路径规划主要可分为:基于环境先验信息的全局路径规划和基于传感器信息的局部路径规划。

全局路径规划包括环境建模和路径搜索策略两个子问题,按世界模型表达方法的不同存在3种比较典型的环境建模方法:构型空间法、自由空间法(freespaceapproach)和栅格法(grids)等。

局部路径规划的主要方法有:人工势场法(artificialpotentialfield)、遗传算法(geneticalgorithm)和模糊逻辑算法(fuzzylogicalgorithm)等[2]。

除了上面所介绍的算法外,A*算法是一种典型的启发式搜索算法;蚁群算法(AntColonyOptimization,ACO),又称蚂蚁算法,是一种用来在图中寻找优化路径的机率型技术;粒子群优化算法(PSO)是一种进化计算技术(evolutionarycomputa-tion)。

本文首先介绍传统人工势场法的原理和局限性,再针对其中的两个局限性作相应的改进:对GNRON问题采用改进斥力势场函数,把机器人和目标的相对距离考虑进去,从而确保目标点为整个势场的全局最小点,使得机器人能够顺利到达目标;对局部极小造成的陷阱区域,提出了增加引导点的方法,使机器人能快速走出陷阱区域,向目标点移动。

最后在MATLABGUI中进行仿真实验,通过对比,可以发现:改进后的算法能够在避开障碍物的同时,以更加快速、更加平滑的路径向目标移动。

通过仿真实验,还实现了机器人在限定范围内漫游。

2人工势场法原理及其局限性2.1人工势场法原理人工势场法是由Khatib等提出的一种虚拟方法,是迄今为止应用最广泛的移动机器人路径规划方法之一。

该方法的特点是计算简洁、实时性强,便于数学描述,主要用于解决局部路径的避障规划问题。

其基本思想是将机器人在环境中的运动视为一种在虚拟的人工受力场的运动。

障碍物对机器人产生斥力,目标点产生引力。

引力和斥力的合力控制机器人的运动方基于势场法的移动机器人路径规划仿真研究金雷泽1,2,杜振军1,2,贾凯1JINLei-ze1,2,DUZhen-jun1,2,JIAKai11.中国科学院沈阳自动化研究所,沈阳1100162.中国科学院研究生院,北京1000391.ShenyangInstituteofAutomation,ChineseAcademyofSciences,Shenyang,Liaoning110016,China2.GraduateSchool,ChineseAcademyofSciences,Beijing100039,ChinaE-mail:jinleize@sia.cnJINLei-ze,DUZhen-jun,JIAKai.Simulationstudyonmobilerobotpathplanningbasedonpotentialfield.ComputerEngineeringandApplications,2007,43(24):226-229.Abstract:ThispaperadoptsimprovedrepulsivepotentialfunctionforGoalsNonreachablewithObstaclesNearby(GNRON)ofpo-tentialfield,thenewrepulsivepotentialfunctionconsiderstherelativedistancebetweentherobotandthegoalwhichensuresthegoalistheglobalminimumofthewholepotentialfield,sotherobotcanreachthegoalfreely.Thispaperalsoproposesamethodofaddingguidingpointfortrapsituationsduetolocalminima,sotherobotcangetoutthetrapsituationsquicklyandmovetothegoal.Robotramblinginrestrictiveregionisalsorealizedinsimulation.Theimprovedalgorithmisadaptabletopathplanningofrobotsincomplexenvironment.Theeffectivenessofthismethodisverifiedbysimulationresults.Keywords:mobilerobots;pathplanning;artificialpotentialfield;GNRON;localminima摘要:针对势场法的障碍物附近目标不可达(GNRON)问题,采用改进斥力势场函数,把机器人和目标的相对距离考虑进去,从而确保目标点为整个势场的全局最小点,使得机器人能够顺利到达目标。

针对局部极小引起的陷阱区域问题,提出了增加引导点的方法,使得机器人能够快速走出陷阱区域,向目标点移动。

通过仿真实验,还实现了机器人在限定区域内漫游。

改进后的势场法适用于复杂环境下的移动机器人路径规划。

仿真结果证明了此方法的有效性。

关键词:移动机器人;路径规划;人工势场法;GNRON;局部极小文章编号:1002-8331(2007)24-0226-04文献标识码:A中图分类号:TP24基金项目:辽宁省经委重点项目。

作者简介:金雷泽(1982-),男,硕士研究生,研究方向为移动机器人导航;杜振军(1981-),男,博士研究生,研究方向为移动机器人;贾凯(1964-),男,硕士,副研究员,研究方向为电机驱动、智能控制、智能机械、机器人。

向,确定机器人的位置。

经常使用的人工势场函数如公式(1) ̄(4):机器人在整个区域内所受的引力场定义为U(q)att=12!ρm(q,qgoal)(1)其中!是正比例系数;ρ(q,qgoal)=||qgoal-q||是机器人q到目标qgoal的距离。

由该引力场所生成的对机器人的引力为引力势能的负梯度:Fatt(q)=-!Uatt(q)=!(qgoal-q)(2)该引力随机器人趋近于目标而成线性趋近于零。

斥力场公式如下:Urep(q)=12#(1ρ(q,qobs)-1ρo)2ρ(q,qobs)≤ρo0ρ(q,qobs)>ρo#%%%$%%%&(3)其中,#为正比例系数,(q,qobs)为机器人到障碍物的最小距离,qobs为机器人到障碍物的最近点,ρo表示障碍物影响范围的正常数。

所以该斥力场所对应的斥力为:Frep(q)=-!Urep(q)=12#(1ρ(q,qobs)-1ρo)-1ρ2(q,qobs)ρ(q,qobs)≤ρo0ρ(q,qobs)>ρo#%%%’%%%&(4)机器人所受的合力为引力和斥力的和:Ftotal=Fatt+Frep(5)2.2人工势场法的局限性人工势场法由于它的简单性和优美性被广泛用于机器人避障。

1989年J.Borenstein曾采用Grids表示环境,用人工势场法决策出VFF算法。

1991年Y.Koren和J.Borenstein在文献[3]中通过数学分析和VFF算法实验指出,人工势场法存在的4个固有缺陷:(1)存在局部极小导致的陷阱区域;(2)在邻近的障碍物之间不能发现路径;(3)在障碍物出现时会震荡,导致移动不稳定,这是最大的局限性;(4)在狭窄通道中摆动。

除此之外,S.S.Ge和Y.J.Cui在文献[4]中详细论述了障碍物附近目标不可达问题(GNRON)。

3人工势场法的改进3.1障碍物附近目标不可达问题(GNRON)当目标点附近有障碍物时:在机器人向目标靠近时,机器人同时也靠近了障碍物,这时,斥力将远大于引力,使得目标点不是全局最小点,因此机器人不能到达目标点[4]。

针对这个问题,采用在文献[4]中的提到的改进人工势场函数:Urep(q)=12#(1ρ(q,qobs)-1ρo)2ρn(q,qgoal)ρ(q,qobs)≤ρo0ρ(q,qobs)>ρo#%%%’%%%&(6)n是一个正常数,和式(3)比起来,式(6)引入了ρ(q,qobs),保证整个势场函数当且仅当q=qobs时达到全局最小值0。

当机器人不在目标点时,斥力为:Frep(q)=-!Urep(q)=Frep1nOR+Frep2nRGρ(q,qobs)≤ρo0ρ(q,qobs)>ρo((7)其中:Frep1=#(1ρ(q,qobs)-1ρo)ρn(q,qgoal)ρ2(q,qobs)Frep2=n2#(1ρ(q,qobs)-1ρo)2ρn-1(q,qgoal)nOR=!ρ(q,qobs)和nRG=-!ρ(q,qgoal)是两个单位矢量,分别从障碍物指向机器人和从机器人指向目标。

3.2局部极小点导致的陷阱区域人工势场法的缺陷是把所有信息压缩为单个合力,并以该合力方向控制机器人下一步的运动,所以抛弃掉了局部障碍物分布的其它有价值的信息,使得机器人在避障过程中会出以下两种情况:机器人陷入势场的局部极小点或在局部极小点周围某几个位置周期性徘徊,无法到达目标[5]。

对于因局部极小点造成的机器人停止问题,在仿真实验中是通过给定机器人一个随机方向的势场力来解决。

对于局部极小点的震荡问题,仍然是人工势场法的难点,相关的研究有:文献[6]提出的VFH方法;文献[5]中采用的“动态步长折半法”;文献[7]中采用的模拟退火算法。

在此,通过设置引导点来解决局部极小点的震荡问题:当机器人运行足够长的迭代次数(比如机器人沿直线运行到目标点所需步长的3倍)仍没有达到目标点时,此时认为机器人进入了陷阱区域,通过使机器人先移动到引导点(可以是事先设置多个点,也可以是随机产生的点),从而走出陷阱区域,再向目标点移动。

通过对人工势场法的GNRON和局部极小造成的陷阱区域问题作相应改进后,得到的移动机器人路径规划算法如图1所示。

4仿真通过对传统人工势场法作上述改进后,在MATLABGUI中进行仿真实验,仿真界面如图2所示。

(1)参数输入:在此界面中,可以设置机器人初始位置和目标位置坐标值;以及势场法中的各个参数:引力系数ξ,斥力系数η,障碍物影响距离ρo,机器人移动步长L,迭代次数J;同时可以输入障碍物个数n以及每个障碍物对应的坐标。

(2)按钮操作:有三个按钮Mapping、PathPlanning、Rambling。

Mapping用于生成机器人所在环境的地图,它根据输入的参数值把机器人的初始位置、目标位置以及各个障碍物的位置表示出来。