【技术实现步骤摘要】
基于外部记忆的机器人导航方法及系统
[0001]本专利技术涉及机器人自主导航算法的
,具体地,涉及一种基于外部记忆的机器人导航方法及系统。
技术介绍
[0002]在一个未知环境中进行有效导航是许多机器人执行任务的基础。随着机器人任务复杂性越来越高,对导航的准确性和高效性也有了更强的需求。导航算法一方面需要足够的鲁棒性以适应复杂多变的环境;另一方面需要对计算资源进行较好的利用,这就要求策略网络在不同的时间尺度上使用内存,通过外部记忆机制使策略网络具有长短期记忆以适应实际的环境中的静态和动态元素。
[0003]一些传统的方法(如SLAM)将定位与建图任务分为几个模块,在使用时再进行多模块整合,这样易造成模块兼容性差、运行效率低等问题;此外,一些传统的内部记忆神经网络(如RNN、LSTM)在本质上只能提供短期记忆,这对于导航和探索任务无法提供足够信息。
[0004]端到端的方法根据输入的信息直接输出最后的结果,相比于传统的非端到端方法具有更高的计算效率和鲁棒性;其次,在学习任务中添加辅助任务(如深度图预测、光流图预测、检测循环闭包等)可以进一步改善学习效果。
[0005]而神经图灵机(NTM)利用神经网络结构改造传统的图灵机,使得图灵机变得可微分,也就意味着可以利用训练数据进行学习。相比于RNN和LSTM,NTM引入了外部记忆池,增大记忆容量,并且网络参数数量和记忆池大小无关,这使得NTM可以利用有限的计算资源提供长期记忆。
[0006]专利文献CN112975969A(申请号:CN2 ...
【技术保护点】
【技术特征摘要】
1.一种基于外部记忆的机器人导航方法,其特征在于,包括:步骤S1:输入相邻两帧RGB图像,处理后得到多尺寸特征图,进行互卷积操作,并经过更深网络层处理获得机器人位姿估计;步骤S2:将位姿作为输入并写入外部记忆池,同时从记忆池中读取包含机器人运动轨迹信息的特征向量;步骤S3:利用特征向量输出运动策略,控制机器人运动;步骤S4:对里程计位姿估计网络进行预训练,构建一体化网络优化策略,对各模块进行联合优化。2.根据权利要求1所述的基于外部记忆的机器人导航方法,其特征在于,在所述步骤S1中:搭建里程计位姿估计网络,网络输入为相邻两帧RGB图像,输出为机器人位姿估计,具体而言包括如下步骤:步骤S1.1:相邻两帧RGB图像输入里程计位姿估计网络,网络包含收缩部分和扩大部分;收缩部分由卷积层组成,用于特征提取;扩大部分由反卷积层组成,用于还原深度图;步骤S1.2:相邻两帧RGB图像分别经多卷积层卷积处理后得到两个特征图,特征图进行互卷积操作并经过更深网络层处理获得机器人位姿估计;步骤S1.3:当前时刻RGB图像经卷积后,再通过反卷积逐步恢复原尺寸;反卷积得到的各尺寸特征图,与收缩部分对应大小的特征图以及经上采样得到的深度图,拼接起来作为更深层反卷积层的输入,得到不同分辨率的深度图估计。3.根据权利要求1所述的基于外部记忆的机器人导航方法,其特征在于,在所述步骤S2中:依照神经图灵机结构,搭建基于外部记忆池的记忆模块;具体而言包括如下步骤:步骤S2.1:读取:即通过位置权重向量ω
t
对内存矩阵M
t
中的N个内存单元进行加权求和;其中,是t时刻的内存矩阵,大小为N
×
M,N为内存单元个数,M为每个内存单元M
t
(i)的长度;位置权重向量ω
t
的每一元素ω
t
(i)是t时刻每个内存单元M
t
(i)对应的权重大小,且ω
t
的长度为N;i=1,2,...,N
‑
1,N,为内存矩阵与位置权重向量元素索引;因此,t时刻从内存中读取出的向量r
t
为步骤S2.2:写入:每次写入内存矩阵可分为两步:擦除和新增,先从t
‑
1时刻的内存矩阵M
t
‑1中擦除信息,再新增信息生成t时刻的内存矩阵M
t
:擦除:
新增:即完成了对内存矩阵的一次写入;其中,为由擦除操作获得的内存矩阵元素,擦除向量e
t
、新增向量a
t
长度均为M,位置权重向量ω
t
、擦除向量e
t
、新增向量a
t
都由控制器给出,可通过梯度下降法进行参数训练;步骤S2.3:更新位置权重向量ω
t
;即由t
‑
1时刻的位置权重向量ω
t
‑1、t时刻的内存矩阵M
t
以及可训练的控制器参数,生成t时刻的位置权重向量ω
t
;其中,控制器参数包括:k
t
、β
t
、g
t
、s
t
、γ
t
;更新位置权重向量的具体步骤如下:步骤S2.3.1:基于内容的寻址,即生成基于内容的位置权重向量步骤S2.3.1:基于内容的寻址,即生成基于内容的位置权重向量其中,k
t
是大小为1
×
M的关键向量,通过相似性度量K计算与内存单元M
t
(i)的相似度;β
t
用于放大或衰减精度;j=1,2,...,N
‑
1,N,为内存矩阵元素索引;计算向量u、v的余弦相似度K的公式如下:步骤S2.3.2:基于位置的寻址:插值操作:由控制器生成一个阈值g
t
对当前的内容位置权重向量与t
‑
1时刻的位置权重向量ω
t
‑1进行插值操作,计算结果即为插值操作的输出值偏移操作:对中的每个元素均认为和与它相邻的某些元素是相关的,通过循环卷积生成的新元素包含了和周围元素,其中s
t
是卷积核;锐化操作:把权值大小的区别进行强化,通过控制器生成的参数γ
t
,对各个权值进行指数运算,然后归一化,完成对位置权重向量ω
t
的更新。4.根据权利要求1所述的基于外部记忆的机器人导航方法,其特征在于,在所述步骤S3中:搭建策略输出模块,基于当前传感器信息与记忆信息输出合适的运动策略,控制机器
人移动;具体而言包括如下步骤:步骤S3.1:搭建观测网络;通过里程计位姿估计网络的编码网络重用,由当前时刻RGB图像获取特征图,作为观测网络的输入;经观测网络处理,输出一个包含当前时刻传感器信息的特征向量;步骤S3.2:搭建策略输出网络;将从外部记忆池中读取的包含机器人运动轨迹信息的特征向量与观测网络输出的特征向量进行融合,作为策略网络的输入,由策略网络输出运动策略控制机器人运动;步骤S3.3:搭建值输出网络;网络输入为融合特征向量,输出为用于强化学习网络训练的值。5.根据权利要求1所述的基于外部记忆的机器人导航方法,其特征在于,在所述步骤S4中:整合里程计位姿估计模块、基于外部记忆池的记忆模块、策略输出模块,将各功能模块耦合成端到端强化学习网络;具体而言包括如下步骤:步骤D1.1:相邻两帧RGB图像分别输入里程计位姿估计网络,经多层卷积得到不同尺寸特征图m
(t,1)
,m
(t,2)
,...,m
(t,k)
,m
(t
‑
1,1)
,m
(t
‑
1,2)
,...,m
(t
‑
1,k)
,k为卷积层数;特征图m
(t,k)
,m
(t
‑
1,k)
互卷积,并经更深层网络得到机器人位姿估计步骤D1.2:重用里程计位姿估计模块的编码网络,选取当前时刻RGB图像经编码网络生成的特征图m
(t,i)
作为观测网络的输入;该网络输出一个特征向量a1,其包含当前时刻的传感器信息;步骤D1.3:将机器人位姿估计写入外部记忆池,并根据特征向量a1从外部记忆池读取出特征向量a2,其包含机器人运动轨迹历史信息;步骤D1.4:特征向量a1、a2进行注意力特征融合,获得融合特征向量a;步骤D1.5:将融合特征向量a作为策略输出网络的输入,网络输出策略控制机器人运动;融合特征向量a作为值输出网络的输入,网络输出值用于强化学习网络训练;网络分布优化;先对里程计位姿估计网络进行预训练,直至能由相邻两帧RGB图像准确估计出机器人位姿变化;具体包括如下步骤:步骤D2.1:搭建仿真环境并采集数据集,数据集包含RGB图像、深度图及相应的机器人位姿变化;步骤D2.2:在数据集上对里程计位姿估计网络进行训练;以深度图还原为辅助任务,将RGB图像对应的深度图、机器人位姿作为监督信号,计算多尺寸深度图的损失及位姿估计损失,通过反向传播梯度下降法对网络进行训练;构建一体化网络优化策略,各模块联合优化;具体包括如下步骤:步骤D3.1:构建强化学习奖励信号对机器人的端到端环境探索能力进行迭代,环境对机器人的每一步动作做出奖励或惩罚,具体步骤为:步骤D3.1.1:碰撞惩罚为r
collision
=
‑
P
c
,当机器人接触到环境中的物体时会立即收到此惩罚,并结束该回合探索任务;其中P
c
为设定的碰撞惩罚值绝对大小;步骤D3.1.2:探索率增大奖励为r
search
=P
s
,当机器人对环境的探索率增大时会接收到此奖励,其中P
s
为设定的探索率增大奖励值大小;步骤D3.1.3:重复探索惩罚为r
re
‑
search
=
‑
P
r
,当机器人对环境的重复探索率增大时会接
收到此惩罚,其中P
r
为设定的重复探索惩罚值大小;步骤D3.1.4:接近障碍物惩罚为r
danger
=
‑
η*d
obs
,其中η为惩罚信号强度参数,d
obs
为当前距离机器人最近的障碍物的直线距离,此惩罚项在d
obs
大于某一阈值时关闭;步骤D3.1.5:直行奖励为r
straight
=P
st
,其中P
st
为直行奖励值大小;步骤D3.1.6:原地旋转惩罚为r
rotate
=
‑
P
ro
,机器人在同一位置附近停留过长时间,会接收到此惩罚,以避免机器人在某一位置附近长时间旋转,其中P
ro
为旋转惩罚值绝对大小;步骤D3.2:在仿真环境中对强化学习网络进行训练;网络训练包括数据收集、训练两部分;具体步骤如下:步骤D3.2.1:机器人依照强化学习网络输出的策略在环境中自由探索,并记录每一步的传感器信息、动作、策略、NTM的内存矩阵及内部状态,同时将步骤D3.1.1至步骤D3.1.6所得奖励惩罚值相加作为每一步的奖励并进行记录;采集上述数据,直至机器人运动达到预设的步数或与环境发生碰撞;步骤D3.2.2:每一轮的数据采集结束后,依照强化学习算法和采集到的数据计算得到网络损失;将损失在网络中进行反向传播,以迭代步骤D1构建的一体化网络参数;步骤D3.2.3:在强化学习网络训练过程中,机器人不断重复步骤D3.2.1数据采集与步骤D3.2.2网络训练,直至采集训练达到预设的轮数,形成优化后的基于...
【专利技术属性】
技术研发人员:王贺升,王光展,张金鹏,王辰浩,
申请(专利权)人:中国长峰机电技术研究设计院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。