文章编号:1671—848(2010)054)674-05 单建华(安徽工业大学机械工程学院,安徽马鞍山243002) 摘 要:针对室内复杂环境下移动机器人导航要求,基于三个反应式行为,设计了一种简单的实时路径规划方法、轨迹栅格地图记录了机器人已访问路径,避免机器人再次进入已访问区域。机器人受目标吸引和障碍物与已访问路径排斥的综合作用,找到最近出口,逃出死区一该方法在各种环境下工作艮好,机器人每次转角固定,并且很小,速度为三档,降低了动力学要求。算法简单速度快,只需对数据进行简单的算术处理。定位误差和传感器噪声对性能影响很小。 关键词:路径规划;行为控制;移动机器人;死循环
中图分类号:TP 27 文献标识码:A 1 引 言 基于目标的移动机器人路径规划是机器人在已知目标的情况下,自动地避开障碍物到达目标。局部路径规划典型方法有人工势场法{1}、行为控制法{2}、神经模糊控制法{3}等。行为控制法是一种重要的智能控制方法,机器人的行为可以分为两大类:反应型和慎思型。反应型行为是一种激励一响应行为,不需要规划过程,响应时间短。但是这些方法易于陷入死循环。 学术界针对死循环提出的研究方法,可分为三类{4}:沿墙方法{5}、虚拟目标方法{6}和行为融合方法{7]。复杂环境下死循环问题很难解决,困难如下:1.“长墙”导致错误的沿墙方向;2.动态环境使存储信息失真,导致难于满足逃匿条件;3.迷宫环境可能导致机器人再次进入以前死区;4定位误差可能导致不能满足逃匿条件;5.传感器噪声。 本研究提出了一种基于栅格的机器人轨迹地图,轨迹地图不同于环境地图,不是记录障碍物信息,而是记录机器人运行轨迹。基于此地图,提出了一种新的局部路径规划方法,称之为“固定转角法”。方法的关键是利用三个反应式行为:搜寻、避障和沿边行为,不需进行融合,尽量避免机器人再次进入曾经运动区域。特点是不依靠“沿墙” 或虚拟目标方法,不需要进行陷入条件和逃匿条件判定,对定位精度要求低、对传感器噪声不敏感,环境适应性强。 2轨迹地图 机器人运动空间为栅格空间,大小为M×Ⅳ。用轨迹地图记录机器人在栅格单元中运动次序,用数组TmxN保存,大小为M×N,每个单元数据记录该栅格单元的被机器人访问的次序,数组初始值均为0,表示开始时栅格均未被访问。每个控制周期数值更新一次,更新规则为:仅当前单元(机器人

传统栅格地图一般是记录障碍物环境信息的,选择单元大小是个难题,单元过大,不能精确描述环境信息,影响路径规划效果;过小则存储量激增,降低处理速度。本文的轨迹地图则不同,其作用是利用已访问路径对机器人产生“排斥”作用,单元可以较大,这可提高处理速度和减小存储空间: 3行为设计 根据机器人与障碍物位置关系,行为分为搜寻、避障和沿边行为3个。每个行为的触发条件不同,不需进行仲裁和融合,简化了控制系统,提高了鲁棒性、环境适应能力和运行速度。 行为设计总原则如下:

机器人每次转角固定,为一小角度a,本研究采用5。,降低了动力性能要求,也能抑制路径震荡。机器人速度为高速、中速和低速三档,由障碍物距离决定,简化速度控制。这是本方法的一大特点,大部分方法机器人转角和速度是不固定的,也是不可预知的。 对于基于行为的导航策略,机器人在相似的位置很容易导致相似的行为,这样当机器人再次进入某已访问单元,就很可能导致路径循环.进入死区。为了避免机器人再次进入已访问单元,使其尽可能朝已访问单元数少的区域前进,本文利用已访问区域对机器人产生“排斥”作用来使机器人尽量不重复访问同一区域。本文中轨迹地图,Tmxn记录了各个栅格被机器人访问的次序,能实现排斥效果。已访问区域对机器人排斥作用有范围的限制,本文称为分析扇形。这是因为机器人正后方已访问区域对机器人走出死区没有帮助,在某些环境下反而不利(不存在死区情况下),故本研究中分析扇形采用3。()。范围,前方为60。,左右各120。,如图l所示。

对分析扇形半径也有所限制:太大会使机器人过度被“排斥”;太小会使机器人频繁重复进入大型死区。 轨迹地图Tmxn实现排斥作用的具体方法如下: 统计分析扇形中3个区域(frn nT,right,len)中已访问单元总数,总数越大表示机器人到达此区域次数越多。为了判断左右区域是否可进入,需要一个临界值numsidekey,当左右区域单元总数小于此值,表示可进入;反之则不能进入,定义num—sidekey为左右已访问单元数的平均值加l。为了避免机器人向前进入已访问区域,需定义前方临界值numhontkey,当前方单元总数小于此值,表示可进入;反之则不能进入。这样机器人有更多机会进入“新地方”,较好地避免走重复路径,克服死循环: 1)搜寻行为 当障碍物最近距离大于较大值Dfast时,表示机器人在开阔地带运动,由于远离障碍物,机器人为高速: 此时不受障碍物限制,机器人朝向目标运动,但同时需避免机器人再次进入已访问区域,转角算法为

目标位于右边时,算法与目标位于左边一致。 上面N 2)避障行为本研究的避障算法有别于其他相似算法,借鉴了车辆驾驶经验,环境抽象为两种情况: 第一种情况:机器人前方的通道过于狭窄,机器人不能通过,此时机器人必须调头。 机器人行为:机器人停止,转角180。
 
4性能分析 本研究采用N!attab7作为开发语言,环境大小为500×500,四周边界看作障碍物,机器人高速为2个单位长度,中速为1个,低速为0.5个。机器人作为一个点。 1)试探返回现象克服死循环的路径规划方法中,N+t#NN~N,本文称之为“试探返回”现象,如图2所示。

s为出发点,T为目标点。机器人首先朝T运动,受障碍物阻碍后转向右边,沿墙运动到A处后;受障碍物与已访问路径“排斥”和目标“吸引”综合影响,机器人先远离已访问路径以大曲率半径运动,后又转回到B处;同样机器人到达c处;受到目标“吸引”,机器人再次陷入陷阱,沿墙行走一圈后,机器人最终从最近出口D处逃出陷阱,到达,一机器人经过3次“试探返回”逃出陷阱显然,如果没有障碍物阻碍最近出口,则“试探返回”行为能使机器人发现该出口并逃出陷阱: 尽管这种方法在某些环境下有些笨拙,但是对于任何环境它却是有效的.因为它总是一步一步地接近最近出口。 2)复杂性分析本研究只需固定内存保存轨迹地图,大小不随环境的复杂性和导航时间而改变。单元参数固定时内存大小是固定的:如单元大小为0. 2 m,1 000×500轨迹地图覆盖面积为(1 000×0.2)×(500×O.2)=2000m2 而l 000×500不是很大空间需求。如果内存确实不够或者目标太远,动态内存技术可以减小内存需要:每个控制周期只有机器人当前单元需要更新和分析圆内需要统计单元总数。因此只有这个分析圆内单元需在内存,其他区域可以保存在硬盘,控制=r内存需求: 运行时间是固定和高效的。只需对障碍物距离数据进行简单的算术处理(均值,最值)和统计分析圆内单元总数.智能决策只是简单的比较处理。 3)定位对性能的影响 导航有两个关键问题与定位有关:我在哪,我怎么到达目标。普遍使用的里程计自定位法由于受到打滑、齿隙等影响,定位精度差,特别是长距离导航。虽然很多研究者进行了深入研究,但还没有完全解决。而本研究使用里程计自定位方法却能较好工作: ①每个控制周期足更新当前单元值,而单元长度远远大于机器人一个周期运动最长路程(本研究在5倍以卜),这样机器人就有很多次机会更新单元值,而且当前单元不是决策信息。②本研究只需目标的方向信息进行决策,不需距离信息。更关键的是,不需方向精确信息,只需其相对于机器人是处于3个区域中的哪个.③进行决策的量都是均值、最值与总数,机器人位置的细小偏差对其影响很小:④机器人每次转角5。,方位变化很小,这样在‘个小区域内就能使机器人调整到合适的方位,降低了对机器人方位的敏感性。

避障行为一次都未触发,每次转角为5。,轨迹平滑无震荡。机器人从s到A受目标吸引,向前运动为主,A处由于右边更开阔,机器人不断右转,沿墙到达E。E点后受目标吸引和路径排斥作用,路径先折向右,然后左,又到达s处。由于受路径排斥作用,机器人先沿墙行走,后平行与先前路径到达B。机器人再次走入陷阱,最后到达最近出口c并逃匿。机器人访问的A,B,C三处,一次比一次接近出口:,j处又是个u型陷阱,受路径排斥作用,机器人顺利逃出,最后到达目标。 2)凹形环境下性能比较 比较了虚拟目标{5} 和Krishna{8}方法。机器人在大u形中表现出典型的试探返回现象,如图4所示。

机器人进入右下角小u形后,行为有点不可预测,但最终由于路径排斥作用,从出口逃出,到达目标。虚拟目标法陷入小u形,导致虚拟目标循环 更替,路径循环,不能逃出。Kishna方法高度依靠地标和精确定位信息,利用沿墙行为逃出死区,但选择正确的沿墙方向是困难的。对于这个环境,Krishna选择了正确方向。 比较了虚拟障碍物{9}法,机器人高效地走出了两个陷阱,如图5所示。

虚拟障碍物法判断死区方法是:机器人以相同方向再次进入同一地点。这一严格判据导致不必要的反复。一旦判据满足,所有走过路径区域作为虚拟障碍物,并在虚拟障碍物外设置子目标,到达子目标后原目标重新启用。缺点是需要存储所有路径,要大量内存,而且效率十分低下。 3)航迹漂移 航迹漂移影响定位精度,本方法对定位误差和传感器噪声具有很强的免疫力,结果如图6所示。

仿真时速度和角速度误差是平均值为1%的正态分布。轨迹十分复杂,但形状几乎一样,长度误差为0.6%。机器人在某些关键区域(如对中环境,狭小环境下连续转角),位置的微小差异会导致决策的重大差别,使轨迹不同:由于这些环境的特殊性,无法判断哪种决策更合理,但机器人最终都能到达目标。 6结语
本研究的固定转角法的优点如下: ①适应性 在各种环境下工作良好,如长墙、大型凹形、递归U形、类迷宫和复杂环境。②高效对数据只需进行简单的算术运算,实时性高,动态内存技术可减小内存需求。③鲁棒性定位误差和传感器噪声对性能影响很小。④可行性转角很小,加速度小,易于实现:⑤确定性转角固定,速度三档且不越档:⑥仿生性决策机制是基于人类经验的,使得这种方法能学习人类常识、推理、判断和其他认知行为:⑦扩展性规则具有模块化结构,可加入新的模块来处理新的情况。
|