• 沒有找到結果。

基于神经元网络的移动机器人路径规划

在文檔中 章  机器人控制概论 (頁 190-200)

自动路径规划的目标是找到一条从起点到终点的不与障碍物相碰撞的连续路 径。通常解决这个问题的方法由两个步骤组成:第一,建立表示空间集合约束条件 的数据结构;第二,对该数据结构进行搜索以找到一条无碰撞的路径。据此不少人 对此进行了大量的研究,并提出了许多路径规划的算法。一般说来,根据上述两个 步骤所研究的各种算法均存在计算工作量太大的缺点,以至于很难实时应用。

这里介绍一种并行连接网络结构,它可以实时地进行无碰撞的路径规划。该网 络对一系列的路径点进行规划,其目标是使得整个路径的长度尽量短,同时又要尽 可能远离障碍物。从数学的观点来看,它等效于优化一个代价函数,该代价函数由 路径长度和碰撞罚函数两部分组成。之所以适合于并行计算,主要因为:首先障碍 物是用连接模型来表示的;其次,单个路径点运动的计算只需用到局部的信息。该 网络不仅可以处理将物体视为一个质点的情况,同时也可将其处理为能平移和旋 转的三维实体。最后,该网络结合模拟退火算法可以解决局部极值的问题。

碰撞路径的表示

如 图 所示,无碰撞路径可以用一系列中间点来表示,相邻点之间用线段 相连。这样的表示有几点好处:一是可以通过指定足够多的点来达到任意的精度;

二是可将原始问题分解为一组统一的规模较小的任务。在这些小任务中,问题仅仅 变为主要关心一个点与障碍物的关系;三是由于将路径规划问题局限为一系列路 径点,从而便于实现大量的并行和分布计算。

为了对路径与障碍物之间的碰撞性质加以量化,一条路径的碰撞罚函数定义 为各路径点的碰撞罚函数之和,而一个点的碰撞罚函数是通过它对各个障碍物的 连结网络表示得到的。其基本想法是,障碍物无假设为多面体,它可用一组线性不 等式来表示,于是在障碍物中的点必定满足所有不等式的限制。

所示为一个障碍物的罚函数的连结网络。底层的三个结点分别表示给

碰撞路径 一个障碍 物的罚函数的 连结网络

定路径点的坐标 ,中间层的每个结点对应于障碍物的一个不等式限制条

矩形障碍物 的连结网络

免物体与障碍物相碰撞,另一个是要求规划的路径尽量短。基于上述关于障碍物的 网络表示,这两个约束条件可以加以量化。这样,路径规划问题便可变为一个极值 问题或优化问题,其优化的能量函数由路径的长度及障碍物的罚函数两部分组成。

如果物体用一个点来表示,则路径的碰撞罚函数定义为所有路径点的碰撞罚 函数之和。每个点的碰撞罚函数可通过相应的连结网络来计算。相应于碰撞罚函 数的这部分能量可表示为

式 中 , 是障碍物系数; 是路径点的个数; 表 示第 个路径点 对第 个 障碍 物的碰撞罚函数。

所 示为 计算 的连结网络结构。可以看出,该网络的计算对于每个路 径点和每个障碍物都是并行的,即对于每个 可以同时计算。

相应于路径长度的能量定义为所有线段长度的平方和。即对于所有路径点

定 义

式 中 , 表示第 个线段的长度; 反映了整个路径的长度。

整条路径的总的能量 定义为

式 中 , 分别表示对每一部分的加权。

使整个能量 极 小 便 意 味 着 该 路 径 的 长 度 较 短 , 并 较 少 可 能 与 障 碍 物 相 碰 撞,这正是我们所期望的目标。由于整个能量是各个路径点函数,因此通过移动每 个路径点,使其朝着能量减小的方向运动,最终便能获得总能量最小的路径。求

其中

可见

碰撞罚函数连结网络结构

对时间的导数得

若取

取为正数,则

将逐渐减小,直至 时才有 这 时 取得最小值。

所得结果即为要求的路径。

根 据 式( 有

根 据 式( ) 到 式 )有

以上推证过程非常类似于 算法。其差别在于,该算法优化的变量是网络的 输入,而在标准的 算法中优化的变量是连接权系数。

物体表示为多面体时的路径规划

上述算法可以很容易地推广到物体表示为多面体的情况。这时有两个不同的 特点需要考虑:一是当物体沿路径运动时,不仅要考虑物体的移动,同时也要考虑 物体的转动;二是在计算物体关于障碍物的碰撞罚函数时,应该考虑物体上的许多 点,而不只是一个点。

)即可表示物体的位置,现 当只用一个点来表示物体时,只需一个

在需要用固绕在物体上的一个坐标系来描述该物体的位置和姿态。定义

、俯

)为该坐标的原点在基坐标中的位置,采用滚动角 仰 角 和偏转角 来 表示 该坐标系的姿态或方位。以后所说路径点均指的是该坐标系的位置和姿态,它共有

个分量。图 所示为物体沿路径的位姿表示。

为了确定物体与障碍物的碰撞程度,可在物体上选择试点,是该物体的碰撞罚 函数即为所有这些测试点的碰撞罚函数之和。这些测试点相对于物体坐标系是固 定的,而相对基坐标的位姿可由下式确定

从 而 得 关 于 点 )的动态运动方程为

其中(参考式(

物体沿路径的位姿表示

。这 样 ,根 据 式( )

式中采用了简化符号 便可计算出物体上

各测试点在基坐标中的位置,将它作为连结网络的输入便可计算出它所对应的碰 撞罚函数。

基于上面的分析,可求得该物体沿路径的总的能量函数为

个路径点物体坐标系 个路径点物体坐标系原

式 中: 表示第 点到第 原点间

个障碍物的碰撞罚函数。

的 距 离; 表示第 个路径点上第 个测 试点 对第

类似前面将物体作为质点时的分析,通过对 求导,我们可以建立起使总能量 趋向极小的各变量的动态运动方程如下。

表 示 物体 上

其中 第 个测试点相对于物体坐标系的位置向量;

个路径点时相对于基坐标的位置向 表示物体上第 个测试点在第

) 个路径点时的位置向量; 是物体坐标系 量 ; 是物体坐标系原点在第

在第 个路径点时的姿态矩阵

式 中

避 免 局 部 极 值 的 模 拟 退 火 方 法

在前面所介绍的寻优算法中很可能存在局部极值问题。也就是说,由路径长度 及碰撞罚函数所组成的总能量函数可能有多个极值点,因而有可能停留在某个局 部极小点,而不能确保总能量一定能达到全局的极小点。局部极小点所对应的路径 可能比最优的路径要长得多,或者不能完全躲避障碍物。为此需要设法找到一种能 够跳出局部极值的方法。

模拟退火方法是一种可以跳出局部极值的有效方法,它能够解决诸如旅行商 等多种优化问题。所谓模拟退火就是模拟金属退火的过程,即首先用高温将金属熔 化,然后逐渐缓慢冷却,直至形成良好的晶体结构,也就是进入一种具有最小能量 的状态。

模拟退火方法也可用这里的路径规划算 法以避免局部极值。具体实现时是通过改变 式( 所 示 的 形函数 (见图 )中 的参 数 ,它相当于金属退火中的温度。

如 图 所示,当 很 大 时 , 形曲线比 较平坦, 较小时, 形曲线比较陡峭,当

时 , 形曲线趋向阶跃函数。 形函数影响 总的碰撞罚函数,当 较大时,罚函数能量曲

形 激发 函 数

面在障碍物的边界处变化较平缓,这时它只

)随 的 变化

是粗略地反映障碍物的形状。这里在障碍物

内部,罚函数能量曲面有一定的斜度。因此,当路径点位于障碍物内部时,由于能量 函数曲面有一定斜度,它将驱使该路径点向低洼的方向运动。而当 非 常 小 时 ,罚 函数网络像一个开关:路径点在障碍物内部时它输出 ,路径点在障碍物外部时它 输 出 。罚函数能量曲面除了在障碍物的边界处很陡峭外,其余地方均很平坦,这 就使得路径点很难沿着表面运动。正是利用了参数 与罚函数能量曲面的这种关

,然 后 逐 渐 减

系,通过开始用较高的“温度 小 ,从而达到了模拟退火的效果。

可 以 证 明 ,当“ 温 度 按 以 下 规 律

变化时,退火一定能达到全局的极小值。其中 是起始的高“温度” 是随时 间变化的人为设置的“温度”。由于按上式变化收敛速度较慢,所以可采用如下的模 拟退火规律

采用该规律大大加快了收敛速度,缩短了路径规划的计算时间,但不一定能确保获 得全局的最优。

仿真 举例

所示为一个物体点与两个障碍物的路径规划,是一种较简单的情况:

平面中有两个障碍物,物体表示为质点,初始路径可以任意选择,这里选为从起点 到终点的直线,如图( )所 示 。图 )所示为碰撞罚函数的形状。由于罚函数在障碍 物边界处变化很陡,因此靠近边界的点的运动远远快于其他地方的点。图( 所 示 为路径点的收敛过程。图( 所示为最终的无碰撞路径。

一个物体 点与两个障碍物的 路径规划

所示为路径规划收敛到局部极值一个仿真的例子,说明了若不采取模 拟退火方法,它将收敛到局部极值。这里共有五个障碍物,并且靠得比较近,物体也

时的碰撞

看作为质点。图( 所示 为当 罚函数,图 )所示为最后寻优得到 的结果,显然它停留在一个局部极值上。这是因为初始的路径点有一部分是在障碍

看作为质点。图( 所示 为当 罚函数,图 )所示为最后寻优得到 的结果,显然它停留在一个局部极值上。这是因为初始的路径点有一部分是在障碍

在文檔中 章  机器人控制概论 (頁 190-200)