当前位置: 首页 > news >正文

Attention-Based Map Encoding for Learning Generalized Legged Locomotion

Attention-Based Map Encoding for Learning Generalized Legged Locomotion

  • 研究动机
  • 提出方案
  • 技术路线
    • 基于多头注意力的地图编码
    • 两阶段训练流程
    • 状态空间
    • 奖励函数
  • 实验结果

Attention-Based Map Encoding for Learning Generalized Legged Locomotion

研究动机

  • 四足机器人在导航复杂自然景观方面具有巨大潜力,这些景观通常对其他轮式或履带式移动机器人来说是难以进入的。
  • 如何在多种多样的地形上实现既精确又鲁棒的腿足运动控制仍然是一个开放的问题。基于模型的控制器仍然容易受到建模过程中引入的各种假设的影响,如完美的状态估计、完美的完整地图信息、简化的动力学和运动学模型,这些假设可能导致在模型不匹配、状态估计漂移和不精确的电机驱动下性能下降等问题。

提出方案

提出了基于注意力的地图编码方法,用于通用的腿足运动学习,该方法包含两个层次:1) 一个卷积神经网络(CNN),它将点状局部地形特征嵌入到从高程映射采样的以机器人为中心的高程图中;2) 一个多头注意力(MHA)模块,该模块查询点状地图特征,并将其与本体感知结合。MHA 是Transformer中使用的神经表示机制,这是一种深度学习架构,能够高效地处理序列和多模态信息。最近关于腿足运动学习的研究也引入了Transformer架构来嵌入多模态观察结果或捕捉时间序列特征,从而在草地、斜坡和平坦地面等未结构化的地形上实现运动。本文没有使用完整的Transformer模型,而是研究了 MHA 如何通过关注最重要的区域来实现跨不同地形的通用腿足运动。 在本文框架中,底层CNN学习从各种地形中有效提取局部特征,而 MHA 模块则根据基于本体感知的注意力选择有用的地形点,从而得到高维观察的紧凑且可泛化的表示。从结果中观察到,选择的点指示了未来的着脚点,而无需任何监督学习。

为了有效地训练运动策略,设计了一个两阶段的训练管道。在第一阶段,在基础地形上训练控制器,并假设完美的感知。这一阶段对于初始化地图编码学习至关重要,并在理想条件下产生了基本的运动技能。在第二阶段,引入了更具挑战性的地形,并加入了感知噪声和漂移,以增强对真实世界条件的泛化能力。

在这里插入图片描述

技术路线

基于多头注意力的地图编码

多头注意力(MHA)是一种神经表示机制,MHA 使模型能够关注输入的重要部分,并通过生成多个并行的注意力输出来丰富表示。因此,MHA 通过识别重要输入增强了可解释性,并通过减轻不太重要输入变化的影响来提高泛化能力。这些特性在跨不同地形工作的运动控制器中对可解释性和泛化的要求相一致。

要求MHA模块更多地关注由当前本体感受数据和命令提供的最优可踏区域。为此,使用本体感知嵌入作为多头注意力中的查询,高程图的局部特征作为键值对,以本体感知为条件生成地图编码。这种结构比MLPs更适合建模本体感知和外部感知之间的复杂关系,因为MHA对地图扫描的关注权重是状态相关的。MHA的输出随后由后续的策略模块转换为关节级别的动作。

如图所示,假设获取的高程图维度为L×W×3,L/W分别表示高程图的长和宽,高程图中点的z值通过由两层卷积层组成的CNN模块,第一层为5×5的卷积核,16个隐藏单元,第二层有d-3个隐藏单元,d-3为MHA模块的维度,两层卷积层均采用零填充。然后,将CNN的输入与3维坐标连接起来,得到形状为L×W×d的点级局部特征。这些局部特征提取了每个地图点周围的邻域特征,使后续的多头注意力能够对每个点进行点级注意力。同时,本体感知通过一个线性层输出1×d的本体感知embedding。然后,使用本体感知embedding作为查询,并将局部特征作为键和值,多头注意力模块输出地图编码。

在这里插入图片描述

两阶段训练流程

为学习一个稳健且通用的地图编码器,设计一个两阶段的训练流程,逐步提升控制器的能力。在第一阶段,控制器在具有完美感知的基础地形上进行训练。在第二阶段,引入更复杂的地形,并加入干扰和不确定性,模拟更现实的环境。

状态空间

状态包括机器人本体线速度、角速度、重力矢量、关节位置、关节速度、上一帧动作以及高程图。actor和critic网络观测的信息相同但是critic网络不引入噪声,使用PPO算法。

奖励函数

奖励分为三列,分别是任务奖励、风格奖励和正则化奖励。任务奖励包括跟踪命令的线速度和角速度,同时避免失败。正则化奖励使得动作平滑、避免剧烈运动、过度扭矩和过度伸展。风格奖励惩罚不必要的速度、跺脚和脚部打滑、跳跃步态和身体倾斜。

在这里插入图片描述

实验结果

请阅读原文。


文章转载自:

http://dDkvHe3t.kqxwm.cn
http://SNOSfVnx.kqxwm.cn
http://AxFYrl5E.kqxwm.cn
http://tvlnUOKH.kqxwm.cn
http://AC3MxWfw.kqxwm.cn
http://KIv47Klu.kqxwm.cn
http://axV4XjtY.kqxwm.cn
http://hpcrPL3k.kqxwm.cn
http://rpGAN278.kqxwm.cn
http://T8WU8fb1.kqxwm.cn
http://8ODLUZAL.kqxwm.cn
http://zt0CoFbB.kqxwm.cn
http://BjAU6dY8.kqxwm.cn
http://FeZK8FfW.kqxwm.cn
http://x4bbwLIQ.kqxwm.cn
http://Ei4X7tu7.kqxwm.cn
http://q9icgx2E.kqxwm.cn
http://PLDT7TMl.kqxwm.cn
http://pEPesZzD.kqxwm.cn
http://Daid7Ro0.kqxwm.cn
http://o1dERCLG.kqxwm.cn
http://rV05kv9A.kqxwm.cn
http://szSKFVVw.kqxwm.cn
http://HiDZcVmI.kqxwm.cn
http://127A0pkX.kqxwm.cn
http://490E13Bg.kqxwm.cn
http://hGnALeuA.kqxwm.cn
http://MvCjO1UZ.kqxwm.cn
http://CQLTKvVo.kqxwm.cn
http://vhE9B9ka.kqxwm.cn
http://www.dtcms.com/a/366174.html

相关文章:

  • MMD动画(二)动作制作
  • Hoppscotch:开源轻量API测试工具,秒启动高效解决临时接口测试需求
  • 【机器学习】HanLP+Weka+Java算法模型
  • 算法随笔(一)
  • Electron 执行python脚本
  • Dubbo(分布式RPC调用和分布式文件储存)
  • 如何简单理解状态机、流程图和时序图
  • 成为一个年薪30W+的FPGA工程师是一种什么体验?
  • 进程与线程详解, IPC通信与RPC通信对比,Linux前台与后台作业
  • 在国企干了 5 年 Java,居然不知道 RPC?这正常吗?
  • VU9P板卡设计方案:基于VU9P的32@ SFP28+4@ QSFP28路光纤交换板卡
  • Zynq开发实践(FPGA之uart发送)
  • 如何在 IntelliJ IDEA 中进行全局替换某个字段(或文本)
  • 案例精述 | 防护即智能 Fortinet赋能英科全栈安全重构实践
  • React学习之路永无止境:下一步,去向何方?
  • C#上位机解决ComboBox下拉框加载卡顿问题探析
  • wpf中资源的使用
  • 【Ubuntu扩容】Ubuntu启动项丢失、增加硬盘相关操作记录贴
  • Dubbo分布式服务框架全解析
  • 十一、容器化 vs 虚拟化-K8s-Kustomize
  • 免费低代码谁更优?斑斑与氚云深度对比,中小企业数字化转型选对平台很关键
  • 热烈庆祝“中国抗战胜利80周年”,织信低代码助力国之重器砥砺前行!
  • vue+elementUI 进行表格行内新增及校验,同行其他输入框数据影响当前输入框校验结果
  • Web与Nginx网站服务
  • VUE中引入tailwindcss样式(用于GemDesgin的页面生成)
  • 英飞凌ASIL-D级无刷电机驱动芯片TLE9189守护汽车安全
  • 新手SEO高效入门实践指南
  • Linux 基础IO-从 “一切皆文件” 到自定义 libc 缓冲区
  • 字符串(1)
  • 关于多Agent协作框架的讨论:以产品经理工作流为例对比Sub Agent与AutoGen