一种移动机器人在匹配网络在强化学习中的应用方法
未命名
10-18
阅读:156
评论:0
1.本发明一种移动机器人在匹配网络在强化学习中的应用方法,属于移动机器人导航技术领域。
背景技术:
2.移动机器人通过自主导航系统可以实现向目标点的移动,传统导航算法包括定位与建图、路径规划和运动控制。使用传统导航方法时必须提供高精度的地图。因此当机器人处于未知环境时传统导航方法会受到限制。
3.深度强化学习(drl)通过与环境的不断交互,实现从状态到动作的映射,在多个领域应用逐渐广泛。近年来,多种drl技术被用于导航任务中,在动态环境中使用双流q-network实现导航与避障,适应多个子任务辅助强化学习的训练,在无地图的环境中使用ddpg实现连续动作控制,目标驱动导航。上述工作实现了通过drl使机器人实现导航任务。但由于奖励函数设计的较为简单,使得drl的学习速度变慢,同时当机器人处于复杂环境中时,传统的奖励函数难以使机器人学习到合适的策略。
4.为了解决奖励函数难以设计的问题,逆强化学习的方法被提出。逆强化学习可以通过专家演示使drl学习解决复杂问题的策略,但专家演示往往需要大量时间获取。现阶段针对减少演示学习所需的样本也有了一定的研究[*],但仍存在所需样本量较多的问题。同时也指出,专家演示的方式会使drl失去自主试错的过程,破坏了强化学习的核心目的。另一种替代奖励函数的方法为选择一个合适的分类器,并提供一定量的数据对分类器进行训练。分类器得到的当前状态成功概率将作为强化学习的奖励函数。但为了保证分类器能够在任何情况下提供准确的成功率,需要收集大量的数据以确保分类器能够得到充分训练。同时在导航任务中使用分类器也会出现过拟合的情况,导致在分类器产生的奖励值与离散的奖励值效果类似,无法起到加速强化学习训练的效果。
[0005]
目前的研究中,元学习(meta-learning)通过少量的样本即可学习到样本的特征,通过当前样本与支持集之间的比较获得当前样本的分类。google于2017年提出匹配网络实现了少样本学习。为此本文将匹配网络应用于导航任务的奖励函数生成中,在drl训练开始前,通过事先准备好的导航数据集训练匹配网络,并向匹配网络提供少量当前地图下成功完成的样本。匹配网络通过比较当前路径和成功路径之间的相似度判断当前状态下机器人完成任务的成功率。
[0006]
移动机器人如何在未知的环境下实现导航始终是一个亟需解决问题与挑战。深度强化学习能够使机器人学习到在未知环境下的导航规则实现导航。奖励函数设计是强化学习训练中的一个重要环节,奖励函数的好坏直接影响强化学习模型的训练速度和泛化能力。在本文中,我们提供了一种通用奖励函数模型,在使用时仅需向模型提供少量的正负样本即可提供准确的奖励值。该奖励函数模型能够在全新的地图环境中仍能使用。我们将奖励函数模型与一种高效的强化学习模型相结合。我们在仿真环境下评估了我们模型的效果,实验结果现实我们的模型能够将训练速度提高50%以上,并能够实现复杂未知地图环
境下端到端的移动机器人导航。
技术实现要素:
[0007]
本发明的目的在于提供一种移动机器人在匹配网络在强化学习中的应用方法,以解决上述背景技术中提出的问题。
[0008]
为实现上述目的,本发明提供如下技术方案:一种移动机器人在匹配网络在强化学习中的应用方法,模型主要包括近端策略优化算法ppo和匹配网络,其中ppo用于实现机器人在未知环境下的导航,匹配网络则用于提供机器人每个动作的奖励值,机器人自主导航系统的方法步骤如下:
[0009]
步骤一:匹配网络在训练过程中通过引入少量的举例,使其能够快速找到不同类别之间的区别;
[0010]
步骤二:机器人在在每次训练过程中将会一组状态序列(s1,s2,...,s
t
),每个状态包含雷达观测数据和机器人(l1,l2,...,l
t
)与目标点之间的相对位置坐标(c1,c2,...,c
t
);
[0011]
步骤三:匹配网络将从已有的数据库中随机选择一组样本,样本中包含等量的成功样本和失败样本;
[0012]
步骤四:在机器人不断与环境交互的过程中,匹配网络将当前机器人获得的状态序列与提供的样本序列进行比较,两个序列状态之间的相似度即为当前机器人完成任务的成功率;
[0013]
步骤五:将当前状态的成功率作为奖励值反馈至强化学习近端策略优化算法中;
[0014]
步骤六:将匹配网络产生的奖励值与常见的基于欧式距离的奖励值相作为当前机器人执行动作后获得的奖励值,ppo则依据获得的奖励值与机器人当前的状态更新参数。
[0015]
作为本发明的一种优选方案,所述ppo通过提出新的目标函数以实现在多个训练步骤中小批量更新,ppo在训练过程中的参数更新为:
[0016][0017]
其中θ
t
表示当前t时刻ppo网络的参数的具体数值,α表示学习率;
[0018]
其中l(θ)为ppo更新的目标函数,l(θ)表示为:
[0019]
l(θ)=e[min(ri(θ)ai,clip(ri(θ),1-ε,1+ε)ai)]
[0020]
式中表示为更新前后两个策略之间的概率比,其中π
θ
(ai|si)表示在参数θ下,策略π在某一状态si中产生动作ai的概率,ai则表示优势函数,clip函数为截断函数,将r(θ)的值限制在1-ε和1+ε之间,从而避免策略出现突变的情况,确保训练效果稳定。
[0021]
作为本发明的一种优选方案,所述匹配网络能够学习到支持集中k个样本之间的分类关系即样本与标签之间的映射关系,当给出一组测试集样本匹配网络能够定义测试集在支持集中的概率分布其中映射由神经网络实现,匹配网络的最简化模型如下所示
[0022][0023]
其中xi,yi表示支持集中的样本和标签,则表示测试集中的样本和标签;β表示注意力机制;β的表达式如下所示:
[0024][0025]
c表示两个向量之间的遇险距离,f、g分别表示对支持集和测试集的编码。
[0026]
作为本发明的一种优选方案,所述匹配网络将一组状态序列作为输入,并预测当前状态的成功率,当前序列(s1,s2,...,s
t
)通过编码器g
θ
变为输入向量g;同时匹配网络选择提供的样本作为正样本,并从数据库中随机抽取负样本,将样本通过编码器f
θ
后得到向量f,通过余弦相似度计算向量g和f之间相似度。
[0027]
作为本发明的一种优选方案,雷达每次产生一维数组数据,为此我们使用一维卷积方法对数据进行压缩,机器人与目标点之间的相对位置关系也为一维数组,故同样使用一维卷积对数据进行压缩,将压缩后的数据合并使用全连接层得到编码后的向量。
[0028]
作为本发明的一种优选方案,所述ppo输入当前机器人的状态s
t
,并输出机器人的速度和角速度,在实验中我们设置机器人角速度范围和线速度范围,网络以全连接层构成。
[0029]
与现有技术相比,本发明的有益效果是:本发明一种移动机器人在匹配网络在强化学习中的应用方法,提高drl在导航任务的训练速度;在drl训练开始前仅需提供少量当前环境下成功的样本即可实现准确的奖励函数生成;通过drl实现机器人在复杂、未知环境下端到端的导航,该模型通过比较当前机器人的路径样本与提供的正负样本之间的区别得到奖励值。得到的奖励值将与环境奖励值一起指导机器人学习导航技能。在实验中我们展示了基于mnr+er的奖励函数模型能够有效提高drl的训练速度,同时能够准确的学习导航的技能。本模型仅需少量或没有专家样本的情况下即可提供准确的奖励值用以加速drl训练。
附图说明
[0030]
图1为本发明的模型流程图;
[0031]
图2为本发明的匹配网络奖励流程图;
[0032]
图3为本发明的编码器网络结构图;
[0033]
图4为本发明的ppo网格结构图;
[0034]
图5为本发明的误差及正确率曲线。
具体实施方式
[0035]
对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036]
请参阅图1-5,本发明提供了一种移动机器人在匹配网络在强化学习中的应用方法,模型主要包括近端策略优化算法ppo和匹配网络,其中ppo用于实现机器人在未知环境
下的导航,匹配网络则用于提供机器人每个动作的奖励值,机器人自主导航系统的方法步骤如下:
[0037]
步骤一:匹配网络在训练过程中通过引入少量的举例,使其能够快速找到不同类别之间的区别;
[0038]
步骤二:机器人在在每次训练过程中将会一组状态序列(s1,s2,...,s
t
),每个状态包含雷达观测数据和机器人(l1,l2,...,l
t
)与目标点之间的相对位置坐标(c1,c2,...,c
t
);
[0039]
步骤三:匹配网络将从已有的数据库中随机选择一组样本,样本中包含等量的成功样本和失败样本;
[0040]
步骤四:在机器人不断与环境交互的过程中,匹配网络将当前机器人获得的状态序列与提供的样本序列进行比较,两个序列状态之间的相似度即为当前机器人完成任务的成功率;
[0041]
步骤五:将当前状态的成功率作为奖励值反馈至强化学习近端策略优化算法中;
[0042]
步骤六:将匹配网络产生的奖励值与常见的基于欧式距离的奖励值相作为当前机器人执行动作后获得的奖励值,ppo则依据获得的奖励值与机器人当前的状态更新参数。
[0043]
所述ppo通过提出新的目标函数以实现在多个训练步骤中小批量更新,ppo在训练过程中的参数更新为:
[0044][0045]
其中θ
t
表示当前t时刻ppo网络的参数的具体数值,α表示学习率;
[0046]
其中l(θ)为ppo更新的目标函数,l(θ)表示为:
[0047]
l(θ)=e[min(ri(θ)ai,clip(ri(θ),1-ε,1+ε)ai)]
[0048]
式中表示为更新前后两个策略之间的概率比,其中π
θ
(ai|si)表示在参数θ下,策略π在某一状态si中产生动作ai的概率,ai则表示优势函数,clip函数为截断函数,将r(θ)的值限制在1-ε和1+ε之间,从而避免策略出现突变的情况,确保训练效果稳定。
[0049]
所述匹配网络能够学习到支持集中k个样本之间的分类关系即样本与标签之间的映射关系,当给出一组测试集样本匹配网络能够定义测试集在支持集中的概率分布其中映射由神经网络实现,匹配网络的最简化模型如下所示
[0050][0051]
其中xi,yi表示支持集中的样本和标签,则表示测试集中的样本和标签;β表示注意力机制;β的表达式如下所示:
[0052][0053]
c表示两个向量之间的遇险距离,f、g分别表示对支持集和测试集的编码。主要通过卷积神经网络(cnn)和长短时循环神经网络(lstm)实现,在实验中我们设定f=g,mn的训
练过程如下伪代码所述
[0054][0055]
更进一步地,所述匹配网络将一组状态序列作为输入,并预测当前状态的成功率,当前序列(s1,s2,...,s
t
)通过编码器g
θ
变为输入向量g;同时匹配网络选择提供的样本作为正样本,并从数据库中随机抽取负样本,将样本通过编码器f
θ
后得到向量f,通过余弦相似度计算向量g和f之间相似度。
[0056][0057][0058]
流程图如图2,所述编码器g
θ
和f
θ
的结构如图3所示,雷达每次产生一维数组数据,为此我们使用一维卷积方法对数据进行压缩,机器人与目标点之间的相对位置关系也为一维数组,故同样使用一维卷积对数据进行压缩,将压缩后的数据合并使用全连接层得到编码后的向量。
[0059]
根据图4所示,所述ppo输入当前机器人的状态s
t
,并输出机器人的速度和角速度,
在实验中我们设置机器人角速度范围和,线速度范围,网络以全连接层构成。
[0060]
为了收集合适的数据对匹配网络奖励进行训练,我们在多种不同的地图下采集状态序列,设计了5种地图用于数据采集。每种地图在采集数据的过程中均使用随机生成的起始点与目标点。为了保证采集到的数据正负样本分布均衡,我们使用了基于传统奖励函数的ppo算法进行agent的导航。各个地图下采集到的正负样本数量如表1所示,
[0061]
表格1各地图下数据集分布
[0062][0063][0064]
在强化学习训练开始前,我们需要对matching network进行预训练。matching network采用2-ways 20-shot的训练方式,即每次训练中的样本包好两种类别(成功和失败),每种类别中选择20的样本。匹配方法采用余弦相似度。训练模型学习率设置为1e-4,batch size为20。我们将样本中60%的路径作为训练集,其余作为验证集。matching network训练过程中的误差及正确率如图5所示。
[0065]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
技术特征:
1.一种移动机器人在匹配网络在强化学习中的应用方法,模型主要包括近端策略优化算法ppo和匹配网络,其中ppo用于实现机器人在未知环境下的导航,匹配网络则用于提供机器人每个动作的奖励值,其特征在于,机器人自主导航系统的方法步骤如下:步骤一:匹配网络在训练过程中通过引入少量的举例,使其能够快速找到不同类别之间的区别;步骤二:机器人在在每次训练过程中将会一组状态序列(s1,s2,...,s
t
),每个状态包含雷达观测数据和机器人(l1,l2,...,l
t
)与目标点之间的相对位置坐标(c1,c2,...,c
t
);步骤三:匹配网络将从已有的数据库中随机选择一组样本,样本中包含等量的成功样本和失败样本;步骤四:在机器人不断与环境交互的过程中,匹配网络将当前机器人获得的状态序列与提供的样本序列进行比较,两个序列状态之间的相似度即为当前机器人完成任务的成功率;步骤五:将当前状态的成功率作为奖励值反馈至强化学习近端策略优化算法中;步骤六:将匹配网络产生的奖励值与常见的基于欧式距离的奖励值相作为当前机器人执行动作后获得的奖励值,ppo则依据获得的奖励值与机器人当前的状态更新参数。2.根据权利要求1所述的一种移动机器人在匹配网络在强化学习中的应用方法,其特征在于:所述ppo通过提出新的目标函数以实现在多个训练步骤中小批量更新,ppo在训练过程中的参数更新为:其中θ
t
表示当前t时刻ppo网络的参数的具体数值,α表示学习率;其中l(θ)为ppo更新的目标函数,l(θ)表示为:l(θ)=e[min(r
i
(θ)a
i
,clip(r
i
(θ),1-ε,1+ε)a
i
)]式中表示为更新前后两个策略之间的概率比,其中π
θ
(a
i
|s
i
)表示在参数θ下,策略π在某一状态s
i
中产生动作a
i
的概率,a
i
则表示优势函数,clip函数为截断函数,将r(θ)的值限制在1-ε和1+ε之间,从而避免策略出现突变的情况,确保训练效果稳定。3.根据权利要求1所述的一种移动机器人在匹配网络在强化学习中的应用方法,其特征在于:所述匹配网络能够学习到支持集中k个样本之间的分类关系即样本与标签之间的映射关系,当给出一组测试集样本匹配网络能够定义测试集在支持集中的概率分布其中映射由神经网络实现,匹配网络的最简化模型如下所示其中x
i
,y
i
表示支持集中的样本和标签,则表示测试集中的样本和标签;β表示注意力机制;β的表达式如下所示:
c表示两个向量之间的遇险距离,f、g分别表示对支持集和测试集的编码。4.根据权利要求1所述的一种移动机器人在匹配网络在强化学习中的应用方法,其特征在于:所述匹配网络将一组状态序列作为输入,并预测当前状态的成功率,当前序列(s1,s2,...,s
t
)通过编码器g
θ
变为输入向量g;同时匹配网络选择提供的样本作为正样本,并从数据库中随机抽取负样本,将样本通过编码器f
θ
后得到向量f,通过余弦相似度计算向量g和f之间相似度。5.根据权利要求4所述的一种移动机器人在匹配网络在强化学习中的应用方法,其特征在于:雷达每次产生一维数组数据,为此我们使用一维卷积方法对数据进行压缩,机器人与目标点之间的相对位置关系也为一维数组,故同样使用一维卷积对数据进行压缩,将压缩后的数据合并使用全连接层得到编码后的向量。6.根据权利要求1所述的一种移动机器人在匹配网络在强化学习中的应用方法,其特征在于:所述ppo输入当前机器人的状态s
t
,并输出机器人的速度和角速度,在实验中我们设置机器人角速度范围和线速度范围,网络以全连接层构成。
技术总结
本发明公开了一种移动机器人在匹配网络在强化学习中的应用方法,模型主要包括近端策略优化算法(PPO)和匹配网络,其中PPO用于实现机器人在未知环境下的导航,匹配网络则用于提供机器人每个动作的奖励值,本发明一种移动机器人在匹配网络在强化学习中的应用方法,提高DRL在导航任务的训练速度;在DRL训练开始前仅需提供少量当前环境下成功的样本即可实现准确的奖励函数生成;通过DRL实现机器人在复杂、未知环境下端到端的导航,该模型通过比较当前机器人的路径样本与提供的正负样本之间的区别得到奖励值。别得到奖励值。别得到奖励值。
技术研发人员:张祺琛 倪彬 滕伟 潘志刚 彭志颖
受保护的技术使用者:中国人民解放军空军勤务学院
技术研发日:2023.07.01
技术公布日:2023/10/11
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种压气机前轴颈盲装结构及安装方法与流程 下一篇:一种控制爬架动态平衡的方法与流程
