掌桥专利:专业的专利平台
掌桥专利
首页

基于深度强化学习的机器人自主探索方法

文献发布时间:2023-06-19 19:28:50


基于深度强化学习的机器人自主探索方法

技术领域

本发明属于人工智能技术领域,具体涉及一种基于深度强化学习的机器人自主探索方法。

背景技术

随着经济技术的发展和生活水平的提高,人工智能技术已经广泛应用于人们的生产和生活当中,给人们的生产和生活带来了无尽的便利。

近年来,机器人自主探测技术在学术研究领域得到了广泛关注,并在许多领域得到了应用,如搜索和救援任务、情报、监视和侦察任务以及行星探索任务等。当机器人在复杂、未知的环境中导航和工作时,往往需要具备自主环境探索的能力。具有自主探索能力的机器人可以灵活部署,因为它们可以利用以前观察到的环境知识,在新环境中快速收集有用信息,而不必依赖人类。这种能力使这类机器人能够为新环境中待执行的下游任务(例如重建、导航和交互)做好准备。随着经济技术的发展,自主探索能力已经成为智能机器人的必备技能。

智能机器人在复杂环境中的应用,取决于稳健和高效的探索策略。在过去几十年中,研究者提出了不同的自主探索方法,如著名的基于边界的探索方法和人工势场方法。然而在复杂的现实环境中,人工定义适当的、弹性的探索策略是困难的;原因在于,人为设计的探索方法通常对环境和任务做出过于理想化假设,而这可能会限制机器人对复杂环境的适应性,从而限制机器人在现实世界中的应用。为了解决上述问题,研究人员提出了深度强化学习(Deep Reinforcement Learning,DRL)方法,该方法的核心思想是让智能体(比如机器人)在与环境交互的试错过程中学习技能,而不是接受明确的指令。深度强化学习方法避免了巨大的数据集标记需求,从而大大降低了学习成本。

经典的机器人自主探索方法主要有基于边界的探索方法和基于采样的探索方法:基于边界的探索方法首先检测地图中的边界,并提取边界点(Frontier Points,FPs)作为候选探索目标;基于采样的探索方法则不需要遍历地图的所有部分,而是通过在空间中随机采样,然后构成一个抽象的图或者树结构,将采样点连接起来构成探索路径。但是,这两种探索方法都具有高昂的探索时间和探索路径代价,并且需要大量的先验数据,算法的效率较低。

发明内容

本发明的目的在于提供一种可靠性高、准确性好且效率较高的基于深度强化学习的机器人自主探索方法。

本发明提供的这种基于深度强化学习的机器人自主探索方法,包括如下步骤:

S1.机器人实时获取周围环境的数据信息;

S2.根据步骤S1获取的数据信息,基于Voronoi图思想,构建机器人的工作空间的初始环境图;

S3.根据步骤S1获取的数据信息,增量构建地图,并检测地图的边界和信息增益;

S4.根据步骤S2和步骤S3得到的数据信息,得到最终的环境拓扑地图;

S5.基于卷积神经网络,构建机器人自主探测学习模型;

S6.机器人采用步骤S5构建的自主探索学习模型对周围环境进行探索,并计算得到下一步的执行策略;

S7.重复以上步骤,完成基于深度强化学习的机器人自主探索。

步骤S2所述的根据步骤S1获取的数据信息,基于Voronoi图思想,构建机器人的工作空间的初始环境图,具体包括如下步骤:

设定机器人在工作空间W中工作;工作空间W为m维空间R

采用如下算式表示点x到障碍物C

式中c

在障碍物中存在一个等距点x

一组共线的等距点之间的集合定义为广义Voronoi边,并以下式进行表示:

式中F

广义Voronoi边的交点定义为广义Voronoi顶点,并以下式进行表示:

式中F

由一组广义Voronoi边和顶点,构成广义Voronoi图作为机器人的工作空间的初始环境图。

步骤S3所述的根据步骤S1获取的数据信息,增量构建地图,并检测地图的边界和信息增益,具体包括如下步骤:

对增量构造的地图

边界处的信息增益测量了边界以外的剩余自由空间量,该剩余自由空间量也为当前部分地图中未探索的可导航单元;

采用OpenCV中的CCL方法将未探测的自由空间单元分组为连接的分量Ω={ω

对于每一个边界,计算得到对应的信息增益作为与边界相关联的连通分量的面积的和,并由完整映射上的总自由空间进行归一化。

步骤S4所述的根据步骤S2和步骤S3得到的数据信息,得到最终的环境拓扑地图,具体包括如下步骤:

根据最短距离原理,将边界、机器人的位置和广义Voronoi图连接,从而得到最终的环境拓扑地图;所有节点之间的连接为无冲突的,完成语义地图的域转换

步骤S5所述的基于卷积神经网络,构建机器人自主探测学习模型,具体包括如下步骤:

基于图卷积神经网络和残差连接,构建空间特征编码器;

基于时序信息和时间卷积神经网络,构建时间特征编码器;

将空间特征编码器的输出和时间特征编码器的输出,采用注意力机制进行融合,并将融合结果通过Actor-Critic结构进行学习;

采用无效动作屏蔽机制,对机器人的动作进行限制。

所述的基于图卷积神经网络和残差连接,构建空间特征编码器,具体包括如下步骤:

空间特征编码器用于编码拓扑图的空间结构信息;

将前l层的节点特征表示为

式中σ

所述的基于时序信息和时间卷积神经网络,构建时间特征编码器,具体包括如下步骤:

采用建立缓冲区的方式实现历史情境存储;

机器人在每个时间段τ内,向缓存中读取和取出空间特征编码器获取的地图空间信息;

存储器中的缓冲区M存储先前τ时间步长的且成对的高维空间特征

在τ时刻,时间卷积神经网络的输入由存储在缓冲区M中的历史空间特征组成,表示为M={M

采用如下算式更新时间卷积神经网络中第l层的中的第t个缓冲区存储器片段M

式中K为一维卷积核的大小;η

所述的将空间特征编码器的输出和时间特征编码器的输出,采用注意力机制进行融合,并将融合结果通过Actor-Critic结构进行学习,具体包括如下步骤:

采用注意力机制融合空间特征编码器的输出r

注意力机制的输出

式中α

采用聚合器集成当前空间特征和探索性内存上的相应查询结果z

式中FFL()为前馈层处理函数;cat()为矩阵拼接操作;

将机器人探索策略建模为对角高斯分布,其中探索策略和状态值函数由Actor-Critic结构学习:分布的均值μ和对数标准偏差logσ由Actor-head结构学习;Critic-head结构用于估计当前策略的状态值函数

Actor-head结构和Critic-head结构均由多层感知机实现。

所述的采用无效动作屏蔽机制,对机器人的动作进行限制,具体包括如下步骤:

采用梯度算法对目标J提出以下策略梯度估计:

式中g

将远离边界的结点视为无效操作,没有信息增益;然后利用无效动作掩蔽来处理对应于无效动作的非标准化分数,从而避免对无效动作进行采样;

将无效动作掩蔽过程视为一个可微函数inv

π

式中l

步骤S6所述的机器人采用步骤S5构建的自主探索学习模型对周围环境进行探索,并计算得到下一步的执行策略,具体包括如下步骤:

基于move_base和Gmapping实现路径规划和地图构建;

为了提高探索效率和均衡地图质量,对机器人设置以下奖励函数R,用于鼓励机器人以更少的路径和时间消耗换取更大的探索覆盖率:

式中β

本发明提供的这种基于深度强化学习的机器人自主探索方法,提出了基于广义Voronoi图的工作空间细粒度拓扑表示方法来实现域转换,打破动作空间和观察空间的维数诅咒,同时又不丢失工作空间的结构属性;提出了具有空间感知和情景记忆的神经网络框架并作为自主探索学习模型,采用无模型强化学习技术,在与物理或仿真系统试错交互的过程中学习探索策略,而无需人为干预;提出了采用无效动作掩蔽重塑自主探索动作空间和状态空间的方法,保证高效完整的探索;因此本发明方法不仅能够实现机器人的自主探索,而且可靠性高、准确性好且效率较高。

附图说明

图1为本发明方法的方法流程示意图。

具体实施方式

如图1所示为本发明方法的方法流程示意图:本发明提供的这种基于深度强化学习的机器人自主探索方法,包括如下步骤:

S1.机器人实时获取周围环境的数据信息;

S2.根据步骤S1获取的数据信息,基于Voronoi图思想,构建机器人的工作空间的初始环境图;具体包括如下步骤:

设定机器人在工作空间W中工作;工作空间W为m维空间R

采用如下算式表示点x到障碍物C

式中c

在障碍物中存在一个等距点x

一组共线的等距点之间的集合定义为广义Voronoi边,并以下式进行表示:

式中F

广义Voronoi边的交点定义为广义Voronoi顶点,并以下式进行表示:

式中F

由一组广义Voronoi边和顶点,构成广义Voronoi图作为机器人的工作空间的初始环境图;

S3.根据步骤S1获取的数据信息,增量构建地图,并检测地图的边界和信息增益;具体包括如下步骤:

对增量构造的地图

边界处的信息增益测量了边界以外的剩余自由空间量,该剩余自由空间量也为当前部分地图中未探索的可导航单元;

采用OpenCV中的CCL方法将未探测的自由空间单元分组为连接的分量Ω={ω

对于每一个边界,计算得到对应的信息增益作为与边界相关联的连通分量的面积的和,并由完整映射上的总自由空间进行归一化;

S4.根据步骤S2和步骤S3得到的数据信息,得到最终的环境拓扑地图;具体包括如下步骤:

根据最短距离原理,将边界、机器人的位置和广义Voronoi图连接,从而得到最终的环境拓扑地图;所有节点之间的连接为无冲突的,完成语义地图的域转换

S5.基于卷积神经网络,构建机器人自主探测学习模型;具体包括如下步骤:

基于图卷积神经网络和残差连接,构建空间特征编码器;具体包括如下步骤:

空间特征编码器用于编码拓扑图的空间结构信息;

将前l层的节点特征表示为

式中σ

基于时序信息和时间卷积神经网络,构建时间特征编码器;具体包括如下步骤:

采用建立缓冲区的方式实现历史情境存储;

机器人在每个时间段τ内,向缓存中读取和取出空间特征编码器获取的地图空间信息;

存储器中的缓冲区M存储先前τ时间步长的且成对的高维空间特征

在τ时刻,时间卷积神经网络的输入由存储在缓冲区M中的历史空间特征组成,表示为M={M

采用如下算式更新时间卷积神经网络中第l层的中的第t个缓冲区存储器片段M

式中K为一维卷积核的大小;η

将空间特征编码器的输出和时间特征编码器的输出,采用注意力机制进行融合,并将融合结果通过Actor-Critic结构进行学习;具体包括如下步骤:

采用注意力机制融合空间特征编码器的输出r

注意力机制的输出

式中α

采用聚合器集成当前空间特征和探索性内存上的相应查询结果z

式中FFL()为前馈层处理函数;cat()为矩阵拼接操作;

将机器人探索策略建模为对角高斯分布,其中探索策略和状态值函数由Actor-Critic结构学习:分布的均值μ和对数标准偏差logσ由Actor-head结构学习;Critic-head结构用于估计当前策略的状态值函数

Actor-head结构和Critic-head结构均由多层感知机实现;

采用无效动作屏蔽机制,对机器人的动作进行限制;具体包括如下步骤:

采用梯度算法对目标J提出以下策略梯度估计:

式中g

将远离边界的结点视为无效操作,没有信息增益;然后利用无效动作掩蔽来处理对应于无效动作的非标准化分数,从而避免对无效动作进行采样;

将无效动作掩蔽过程视为一个可微函数inv

π

式中l

S6.机器人采用步骤S5构建的自主探索学习模型对周围环境进行探索,并计算得到下一步的执行策略;具体包括如下步骤:

基于move_base和Gmapping实现路径规划和地图构建;

为了提高探索效率和均衡地图质量,对机器人设置以下奖励函数R,用于鼓励机器人以更少的路径和时间消耗换取更大的探索覆盖率:

式中β

S7.重复以上步骤,完成基于深度强化学习的机器人自主探索。

本发明提供的这种基于深度强化学习的机器人自主探索方法,可以用于特殊环境的环境探索和重建,如火灾、地震后的危房环境探索及救援;在日常生活中可以将这种基于深度学习的机器人自主探索算法部署在家居机器人(例如扫地机器人)上,帮助机器人高效的清洁房间。

作为一种应用于扫地机器人的快速清洁方法,包括如下步骤:

将扫地机器人放到目标房间中;

采用所述的基于深度强化学习的机器人自主探索方法,机器人在目标房间内进行探索,获取环境空间特征地图;

机器人利用获取的环境地图,规划路径,躲避障碍物,并快速清扫房间中的垃圾。

相关技术
  • 基于深度学习的机器人自主探索方法及系统
  • 基于深度强化学习的四足机器人适应性步态自主生成方法
技术分类

06120115923611