神经网络路径规划
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
神经网络在移动机器人路径规划中的应用研究
邢军王杰
(郑州大学电气工程学院河南郑州 450002)
摘 要: 移动机器人路径规划可分为两种类型:(1)全局路径规划;(2)局部路径规划。本文分析了Kohonen神经网络算法及其识别机理,提出了Kohonen神经网络和BP神经网络结合起来进行路径规划的方法,最后给出了具体的算法,探讨了在神经网络技术中引入学习机制的特点。
关键词:移动机器人;神经网络;路径规划
1 引言
随着智能控制理论与方法的迅速发展,智能方法在移动机器人路径规划中得到了广泛应用。目前主要存在的智能导航算法主要有模糊算法、神经网络算法、模糊神经网络、遗传算法和进化神经网络等。根据机器人对环境信息掌握的程度, 可分为两种类型: (1)全局路径规划: 指根据先验环境模型找出从起始点到目标点的可行或最优路径, 环境信息大多是静止障碍; (2) 局部路径规划:工作环境是未知和部分未知, 障碍物的尺寸、形状和位置等信息必须通过传感器获得, 再实时做出决策。本文借鉴人脑从粗分到细分的思想, 将无师学习的自组织神经网络和有师学习的多层前馈神经网络相结合, 在二维的环境中对机器人进行全局路径规划和局部路径规划。首先分析了Kohonen 神经网络算法及其识别机理,对机器人所处环境进行识别作出全局规划,再利用在线得到的局部环境信息, 在尽可能短的时间内,避开出现的未知障碍物。避碰规划也就是局部规划,它是感知空间到行动空间的一种映射。映射关系可以用不同的方法来实现,这里采用有师学习的BP算法。实验表明, 采用该方法进行路径规划后,在机器人路径的合理性、执行任务的准确性和工作效率等方面得到了大幅
度的改善, 同时也在很大程度上降低了能量损耗。
2 Kohonen神经网络在全局路径规划中的应用
Kohonen神经网络是一个自组织神经网络,其学习的结果能体现出输入样本的分布情况,从而对输入样本实现数据压缩。基于网络的这些特性, 可采用Kohonen神经元的权向量来表示自由空间,其方法是在自由空间中随机地选取坐标点(可由传感器获得)作为网络输入,神经网络通过对大量的输入样本的学习,其神经元就会体现出一定的分布形式。学习过程如下:开始时网络的权值随机地赋值,每个神经元能最大限度地表示一定的自由空间。神经元权向量的最小生成树可以表示出自由空间的基本框架。网络学习的邻域可以动态地定义成矩形、多边形。神经元数量的选取取决于环境的复杂度,如果神经元的数量太少,它们就不能覆盖整个空间,结果会导致节点穿过障碍物区域。如果节点的数量太大,节点就会表示更多的区域,也就得不到距障碍物的最大距离。在这种情况下,节点是对整个自由空间的学习,而不是学习最小框架空间。节点的数量可以动态地定义,在每个学习阶段的结束,机器人会检查所有的路径,如检测到路径上有障碍物,就意味着没有足够的节点来覆盖整个自由空间,需要增加网络节点来重新学习。所以为了收敛于最小框架表示,应该采用较少的网络节点开始学习,逐步增加其数量。这里采用二维结构表示。Kohonen 模型为两层网络(结构如图 1 所示) : 输入层接收输入信号模式, 神经元个数与输入模式的特征数对应; 输出层神经元又称为映射神经元。 Kohonen 网络的输入神经元和输出神经元之间为全连接, 其连接强度由权值控制, 网络的自组织过程就是根据输入信号模式动态地调整权值的过程。算法如下:
图1 Kohonen 网络模型
若Kohonen 网络有N 个输入节点和M 个输出节点,t 时刻网络中输入节点i 所接收到的输入信号模式为)(t X i ,此时输入节点i 到输入节点j 的连接权值为)(t W ji ,那么网络的自组织学习过程如下:(1)置t=0,并初始化网络有关参数,将权值)0(ji W 置为一个小的随机数,设置输出节点初始领域)0(j NE ,i=1,2,……,N;j=1,2,……,M;
(2)在t 时刻输入信号模式为)(t X i ,i=1,2,……,N;
(3)计算)(t X i 到每个输出节点的距离:
∑=−=N
i ji i j t W t X d 12)]()([,j=1,2,……M;
(4)选择最小距离的输出节点*j :}{min *
j j j d d =;
(5)调整节点*j 及其邻域)(*t NE j 内节点j 的权值: )]()()[()()1(t W t X t t W t W ji i ji ji −+=+α,N i t NE j j ≤≤∈1),(*
其中,1)(0< 权值学习率,它随时间t 的增加而减少,)(t NE j 为输出节点j 在t 时刻的邻域,其大小随时间增加而减小,直到邻域中只含有一个节点为止,此后便不再改变; (6)检查网络是否收敛,如果收敛,则转(8),否则转(7); (7)t=t+1,转(2); (8)存储)(t W ji ,学习结束。 学习结束后,所有样本自组织地映射到网络输出节点,权矢量T jN j j W W W W ],...,,[21= ),...2,1(M j =的点密度函数将趋于输入矢量T N X X X X ),...,,(21=的概率密度函数 )(X P 。从而可以得到未知环境的详细信息。 3 多层前馈神经网络在局部规划中的应用 Kohonen 神经网络对环境信息进行了分类,得出输入样本的分布情况,即障碍物的位置信息及机器人相对于障碍物的位置信息,但由于受到动态环境的影响(例如动态障碍物),机器人很可能偏离全局路径,这时就需要根据传感器获得的信息,利用上一节的算法结果结合BP 神经网络对机器人路径进行细化。才能通过这个样本集训练出一个好的神经网络来完成交给它的路径规划任务.这里选择已知类别的训练样本集T,用它们作为输入信号模式来训练BP 网络,算法收敛后,根据这些已知类别的环境样本可以得出一最优路径,步骤如下: (1) 初始化网络。随机给出连接权值jk v ,ij w 和阈值vj θ,wi θ。 (2)输入学习样本。 (3)计算各隐层,输出层节点输出。本文采用6,3 ,1的BP网络。 (4)当模式类别较少时,输出层节点数等于模式类别数,m类的输出用m个输出单元,每个输出节点对应一个模式类别,即当某输出节点值为1,其余输出节点值均为0时,对应输入为某一特定模式类的样本。当模式类别较多时,用输出节点的编码表示各模式类别,即m类的输出只要m 2log 个输出单元即可。本文的BP网络采用一个输出层,表示机器人运行过程中相对障碍物的转角,输出与输入向量的关系为∑∑==++=h N j n k wi vj k jk ij x y w y 11])([θθσ ; i=1,……,m。 式中: (.)σ为活性函数,h N 为隐层神经元个数,jk v 为输入层与中间隐层之间的权系数,ij w 为中间隐层到输出层之间的权系数,vj θ、wi θ为阀值系数。 BP 神经网络的学习样本确定如下:学习样本表示障碍物的位置信息及机器人相对于障碍物的位置信息,通过Kohonen网络对机器人的工作空间进行划分,才能通过这个样本集训练出一个好的神经网络来完成交给它的路径规划任务.