基于神经网络的移动机器人避障控制和决策--控制网



基于神经网络的移动机器人避障控制和决策
企业:控制网 日期:2006-07-23
领域:电气联接 点击数:1837

0引言

   
随着移动机器人的应用领域不断扩大,人们希望机器人能够在未知环境中自动实现路径规划,以大大提高其对环境的适应能力[13]. 避障是移动机器人运动规划中的基本问题之一. 在机器人路径规划中,由于计算的复杂性、控制的实时性、环境的不确定性因素,尤其是在包含多个障碍的复杂环境中,避障控制一直以来都是机器人路径规划中的难点. 根据机器人对环境信息知道的程度不同,可分为两种类型:环境信息完全知道的全局路径规划和环境信息完全未知或部分未知的局部路径规划.对于已知环境下的避碰问题,已经提出了许多有效的解决方法[412].其中,Khatib提出的人工势场法,结构简单,易于实现,得到了广泛应用.但人工势场法主要存在如下缺点[5]:陷阱区域,在相近障碍物之间不能发现路径,在障碍物前面振荡,一些参数需通过实验调整.栅格法[6]也是路径规划和避碰研究的常用方法,以方格作为环境构成的基元,算法简单,但空间分辨率、时间复杂度与内存容量、实时性要求之间的矛盾限制了它的使用.近年来,一些生物进化算法被用于机器人的避碰与路径规划研究,如人工神经网络[7]、遗传算法[8]、模拟退火算法[9]、蚂蚁算法[10].与在已知环境中相比,机器人在环境完全未知或部分未知情况下实现避障更加困难.目前,对它的研究已取得了一些成果:张纯刚

[11]采用滚动窗口的方法来解决全局环境未知的机器人路径规划与避碰问题,但该方法要求障碍物为凸型,边界为光滑曲线,且边界上各点曲率半径≤δ(其中δ是正常量),从而使该方法在应用中受到极大限制;文献[12]在研究月球探测器的路径规划中,采用了基于案例的学习方法,但该方法在复杂环境中需要存储的信息量很大,同时,随着新案例的增多,很容易产生案例库爆炸问题.  

   
针对环境信息不确定情况下的避障问题,本文提出一种机器人的动态避障方法, 该方法是以机器人与障碍物之间的相对运动作为决策依据,不用考虑障碍物的运动状态,简化了机器人避障的步骤;另外,机器人能够根据各种情况灵活的判断是否避障以及灵活的选择适当的避障方式,使机器人在躲避碰撞的前提下能快速地跟踪规划路径.


1  
避障行为的决策

   
机器人在运动过程中需要对碰撞的危险性进行判断并以此作为机器人避障行为选择的依据。图3-16a给出了机器人的扇形视野区域。机器人把所有的障碍物都看作运动体,通过检测障碍物的历史位置与当前位置的相对关系,来判断机器人是否会与障碍物相撞,判断步骤如下:

   
1) 连接历史点与当前点,并延长至与扇形区相交,当交点在扇形的弧线上,标志障碍物正远离物体,不需要避障。否则记录交点的位置,我们称该交点为出口点。

 

            图1 扇形区与屏幕坐标的映射

 

2)从物体当前点向机器人与出口点同侧的边缘点引直线(圆形机器人为切线),然后求图1a0位置到两条直线的距离,当前者大于或等于后者则不需要避障,否则选择避障。


    机器人选择如何避障必须借助图1b所提供的屏幕坐标信息,因此实现屏幕坐标向扇型区的映射是判断是否避障的前提。显而易见,这种映射是一种非线性映射,因此我们采用了神经网络对这种非线性关系进行拟合。


2  
从屏幕坐标到扇形区的映射


    人工神经网络由于具有分布式存储和并行处理结构,自组织和自学习功能以及很强的容错性和鲁棒性等优点,能够用来进行非线性逼近。因此我们采用人工神经网络对相对坐标和相对误差半径进行标定。我们采用了如图2a所示的前馈型神经网络模型和误差反传算法(我们称之为三层BP网络),其结构分为输入层、隐层和输出层,单元数分别设为MLN。从输入层到隐层的连接权为w1ij,隐层到输出层的连接权为w2jk;隐层和输出层的阈值分别为b1jb2k。神经网络如式(1)~式(4)所示。

 

          图2 神经网络及拟合结果




由于拟合的过程是一种连续空间与离散空间相互映射的过程,因此误差从理论上都无法消除,而拟合误差则会对实际避障过程产生不可忽视的影响,因此我们同时把拟合误差也作为输出。通过选取样本和对网络的训练,求出一系列权值,最后进行检验,得出屏幕坐标与拟合误差的关系如图1b所示。

   
通过实验数据我们可以知道:拟合误差在屏幕中心点(0Ymax/2)处取得最小值;拟合点越偏离屏幕中心点,拟和误差越大;这说明当障碍物位于远距离或者侧前方时,判断是否避障难度较大,而当障碍物靠近时或者位于中心区域时判断比较容易

3  机器人在避障过程中的运动控制

   
机器人在检测到碰撞的可能性后,需要立即进行避障运动控制,原因是障碍物在机器人视野中的采样次数很少,一般为69次,主要原因是机器人把大量的时间用于目标识别和定位上面,所以,如果不能马上避障很容易导致规划失败,这种避障时机的选择一方面提高了避障的成功率,另一方面却可能导致规划的路径不是最优,但是目前还没有找到很好的解决办法。

   
为了保证机器人在避障过程中的快速性,一般不采用减速的方法,而是通过调节ω;而在一些必要的情况下必须减速,甚至停止。当然在一些情况下可以采用直线加速的方法。因此,在图1中分为加速区、减速区,终止区和自由规划区四大部分。这几部分并不是严格分开的,有的区域相互重叠。其中A区(13bd点组成的闭合区域)为终止区,如果障碍物的当前点在终止区内,机器人的线速度应减为零,终止区的径向宽度由公式(5)确定:

                  5

在式中VrmaxVomax为机器人和障碍物的最大速度,ts为采样时间(信息数据更新时间),a为安全系数,一般随实际情况而定。

B区(斜线区)为加速区,并不是说障碍物在该区内就可以加速,机器人以加速的方式避障必须满足下面两个条件:

1)障碍物的当前点在加速区。

2)出口点在当前点所在加速区的边线(如图1中的线段9d或者线段51)上。

如果满足条件1)而不能满足条件2),则按自由规划处理。

C区为减速区,减速区的功能是使机器人以最大的加速度使速度从Vrmax减到某一速度Vr,利用式6和式7可以求得减速区的宽度。

6                        7



    F
区为自由规划区,在自由规划区内可以自由的选择减速避障或者线速度不变避障。

下面分别求解机器人避障时的线速度变化量ΔV和角速度变化量Δω

                 8

                  9

在上面两式中(x0y0),(x1y1)分别为障碍物的历史点和当前点坐标;k为从物体当前点向机器人与出口点同侧的边缘点引直线(圆形机器人为切线)的斜率。其中Δω的方向由下面方法确定:出口点在扇形区的左半区,则Δω的方向为顺时针,否则为逆时针。ΔV在加速时取正,减速时取负。

   
当机器人的视野中有多个障碍物时,按照就近原则进行规划。由于这种避障方法是以机器人与障碍物之间的相对运动作为决策依据,所以在避障过程中无需考虑机器人和障碍物的运动轨迹,这就使机器人的运动规划更加快捷,并且机器人的线速度和角速度随环境的变化而改变,使机器人的控制更加灵活。


4 
动态环境下基于任务的仿真结果

   
3中给出了全自主足球机器人基于任务的动态避障仿真结果,仿真环境是对未知环境的部分模拟,其中静态障碍物ABC在有可行路径的前提下随意放置;机器人的任务是获得球后把其带向球门,如果在运动过程中与静态障碍物相撞或者与前方的机器人相撞,任务失败。在仿真过程中,右侧球门为对方球门,中心点位置固定。机器人视野为60度,视野内的障碍物的威胁点信息在绝对误差半径的范围内随机提供,运动障碍物的最大速度为40

  • 在线反馈
1.我有以下需求:



2.详细的需求:
姓名:
单位:
电话:
邮件: