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

ICLR 2025 机器人智能灵巧操作更进一步DexTrack

现实世界的机器人距离科幻小说里的机器人世界还有多远?通用灵巧操控何时才能实现?朝着这一伟大的目标,研究通用灵巧操控轨迹跟踪的 DexTrack 便应运而生。 论文地址:https://arxiv.org/abs/2502.09614代码地址:https://github.com/Meowuu7/DexTrack项目网站:https://meowuu7.github.io/DexTrack/ YouTube 视频:https://youtu.be/zru1Z-DaiWE

  1. 动机
    赋予机器人像人一样的灵巧操控技能是通往未来终极具身智能的重要一步。如何让一个具身智能体获得广泛的灵巧操控技能一直是具身智能领域的一个重要问题。灵巧操控任务复杂且多样,之前很多工作大多专注在特定技能的获取(如抓取或者在手里转动)。他们大多需要对单独的任务进行针对性的设计,例如专门对某一种特定的任务设计对应的奖励函数,之后根据这样的奖励函数训练策略网络来解决对应的问题。这些难以迁移到不一样的任务上的 reward 设计是通往通用操控技能的一个阻力。
    所以为了实现通用的灵巧操控技能,我们首先需要任务表示层面的统一。此外,灵巧操控技能涉及到复杂的和随时间变化的手 - 物接触,复杂的物体运动轨迹。再考虑到对使用一个操控策略解决不同类型的操控任务的需求,得到一个通用的灵巧操控智能体对算法本身的设计也提出了很大的挑战。
    为了实现这一目标,我们将运动规划以及控制的问题拆解开来,将不同种的灵巧操控技能重新统一到一个轨迹跟踪控制的框架下,进一步借助于大量的人类操控物体的数据作为跟踪的目标,通过学习一个通用的轨迹跟踪控制器,来一定程度上解决这个问题(图 1)。
    在这里插入图片描述

图 1:问题的拆解和对通用轨迹跟踪器的期待
2. DexTrack:通用轨迹跟踪器的学习
2.1 统一的轨迹跟踪任务表示
我们将不同类型的操控任务统一到一个轨迹跟踪任务来完成任务表示层面的统一。在每个时刻,给定机器手和物体当前的状态,以及下一步想要达到的状态,轨迹跟踪控制器的任务是给出机器手当前应该执行的动作,从而通过执行该动作,机器手可以运动且和物体进行交互,使得机器手以及物体实际达到的状态与下一步想要达到的状态相吻合。这样的表示方式对不同的操控任务是比较适配的。对一个任务,比如将物体转动一个角度,我们可以先规划出来物体的运动轨迹,之后将这个任务转化为跟踪物体运动轨迹的轨迹跟踪任务。
在这里插入图片描述

图 2:轨迹跟踪器的输入和输出
2.2 通用轨迹跟踪器的学习方法
一个通用的轨迹跟踪需要可以响应各种各样的轨迹跟踪命令。这一多样的轨迹空间对该轨迹跟踪器的学习提出了更高的挑战。我们提出了一个将 RL 和 IL 结合起来的方法,在 RL 训练的同时引入监督信号来降低 policy 学习的难度。通过交替地使用高质量的轨迹跟踪数据辅助通用轨迹跟踪控制器的学习,以及借助通用轨迹跟踪器来提高单一轨迹跟踪演示的质量,我们可以逐渐得到一个强大的可以跟踪各种各样轨迹的控制器(图 3)。
在这里插入图片描述

图 3:通用轨迹跟踪器的训练方法
2.2.1 轨迹跟踪任务奖励函数
奖励函数主要由三部分组成:1)物体轨迹跟踪奖励,2)手部轨迹跟踪奖励,3)手和物体的亲密度奖励。
2.2.2 通过 RL 和高质量跟踪演示数据来训练通用轨迹跟踪器
通过在 policy 的训练过程中引入额外的监督信息来降低这一通用轨迹跟踪器学习的难度。
2.2.3 借助通用轨迹跟踪器来提高单一轨迹跟踪演示的质量
我们设计了两个策略来提高单一轨迹跟踪演示的质量,1)借助通用轨迹跟踪器来初始化单一轨迹跟踪策略的学习,2) 借助 homotopy optimization 的方式,通过解决一系列的优化任务来降低特定轨迹跟踪任务优化的难度(图 4)。
在这里插入图片描述

图 4:Homotopy Optimization
3. 结果
我们的方法在极具挑战性的任务上达到了令人瞩目的效果。同时我们也进行了大量的真机实验来验证它在真实世界中的可行性。我们的机器手可以转动并尝试 “安装” 一个灯泡。在 functional tool using 方面,我们也可以在手中调整一个刀使得刀可以刀刃向下来切东西,可以在手中转动一个锤子,并使用正确的朝向来锤东西。因为获得这些动作的人手轨迹比较困难,我们通过只跟踪物体轨迹来实现这些效果。这也证明了我们的方法可以拓展到稀疏物体轨迹跟踪的应用上。
图 5:Real World 结果展示(Part 1)
以下是更多的真机实验展示。
图 6:Real World 结果展示(Part 2)
在 simulator 中,我们对这些包含复杂的物体的运动轨迹,精巧的微转,以及非常细的难以抓起来的物体仍然是有效的。
图 7:Isaac Gym 中的不同方法的比较
此外,homotopy optimization 可以有效地提高轨迹跟踪的效果。
图 8:Homotopy Optimization 的有效性
我们的研究对运动轨迹中的噪声比较鲁棒,也可以泛化到从来没有见过的物体的种类以及运动的类别上。
图 9:Robustness
更多的结果:
图 10:更多的结果
开源代码:https://github.com/Meowuu7/DexTrack
更多的动画演示和相关信息可见项目网站:https://meowuu7.github.io/DexTrack/

相关文章:

ICLR 2025 机器人智能灵巧操作更进一步DexTrack

现实世界的机器人距离科幻小说里的机器人世界还有多远?通用灵巧操控何时才能实现?朝着这一伟大的目标,研究通用灵巧操控轨迹跟踪的 DexTrack 便应运而生。 论文地址:https://arxiv.org/abs/2502.09614代码地址:https:/…...

Golang开发

Golang 文章目录 Golang预备技术一、算法与数据结构第1章:基础算法第2章:数据结构第3章:搜索与图论第4章:数论第5章:动态规划第6章:贪心第7章:算法竞赛入门 二、Linux操作系统与Shell编程三、计…...

AI入门7:python三种API方式调用本地Ollama+DeepSeek

回顾 书接上篇:各种方式搭建了本地知识库: AI入门:AI模型管家婆ollama的安装和使用-CSDN博客 AI入门2:本地AI部署,用ollama部署deepseek(私有化部署)-CSDN博客 AI入门3:给本地d…...

IIS+ASP程序500错误排查及解决方法

IISASP程序500错误排查及解决方法 一、基础配置检查 ‌检查IWAM账户密码一致性‌ IIS运行ASP程序依赖IWAM账户,若系统更新或域策略调整导致密码不一致会引发500错误。需同步IIS元数据库与应用池账户密码‌15。 ‌验证目录权限‌ 确保站点文件目录的‌Network Servi…...

Java 中 LinkedList 的底层数据结构及相关分析

Java 中 LinkedList 的底层数据结构及相关分析 1. 概述 LinkedList 是 Java 集合框架(Java Collections Framework,JCF)中的一个双向链表实现,它位于 java.util 包下,支持 列表(List) 和 队列…...

《线程池:Linux平台编译线程池动态库发生的死锁问题》

关于如何编译动态库可以移步《Linux:动态库动态链接与静态库静态链接》-CSDN博客 我们写的线程池代码是闭源的,未来想提供给别人使用,只需要提供so库和头文件即可。 系统默认库文件路径为: usr/lib usr/loacl/lib 系统默认头文件…...

Python Bug修复案例分析:Python 中常见的 IndentationError 错误 bug 的修复

在 Python 编程的世界里,代码的可读性和规范性至关重要。Python 通过强制使用缩进来表示代码块的层次结构,这一独特的设计理念使得代码更加清晰易读。然而,正是这种对缩进的严格要求,导致开发者在编写代码时,稍有不慎就…...

合React宝宝体质的自定义防抖hook

本文为开发开源项目的真实开发经历,感兴趣的可以来给我的项目点个star,谢谢啦~ 具体博文介绍: 开源|Documind协同文档(接入deepseek-r1、支持实时聊天)Documind 🚀 一个支持实时聊天和接入 - 掘…...

以太坊节点间通信机制 DEVp2p 协议

文章目录 概要1. 协议概述2. 协议栈与关键技术3. RLPx 协议核心机制3.1 数据包结构3.2 加密握手流程 4. 核心子协议与消息类型4.1 基础控制消息4.2 以太坊子协议示例4.3 网络 ID 列表 5. 安全与防攻击机制6. 节点标识与声誉管理7. 对比其他区块链通信协议8. 总结 概要 1. 协议…...

Pytorch使用手册—自定义 C++ 和 CUDA 扩展(专题五十二)

提示 从 PyTorch 2.4 开始,本教程已被废弃。请参考 PyTorch 自定义操作符,了解关于通过自定义 C++/CUDA 扩展扩展 PyTorch 的最新指南。 PyTorch 提供了大量与神经网络、任意张量代数、数据处理等相关的操作。然而,您可能仍然会发现自己需要一个更自定义的操作。例如,您可能…...

AI大模型在物联网行业的应用场景深度解析

AI大模型在物联网行业的应用场景 引言 AI大模型与物联网(IoT)的融合正在重塑产业智能化格局。通过海量数据的实时处理与智能决策能力,AI大模型为物联网设备赋予了更高效的感知、分析和响应机制,推动智慧城市、智能制造、医疗健康…...

OpenCV旋转估计(1)用于估计图像间仿射变换关系的类cv::detail::AffineBasedEstimator

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 基于仿射变换的估计器。 这种估计器使用匹配器估算的成对变换来为每个相机估算最终的变换。 cv::detail::AffineBasedEstimator 是 OpenCV 库中…...

PyCharm的终端(terminal)中进入指定conda虚拟环境

参考这篇博文: PyCharm的终端(terminal)中进入指定conda虚拟环境_pycharm配置conda终端-CSDN博客...

高级java每日一道面试题-2025年3月05日-微服务篇[Eureka篇]-Eureka在微服务架构中的角色?

如果有遗漏,评论区告诉我进行补充 面试官: Eureka在微服务架构中的角色? 我回答: 在微服务架构中,Eureka作为Netflix开源的服务发现组件,在解决服务间通信的寻址问题方面扮演着至关重要的角色。以下是结合提供的内容对Eureka在微服务架构中的角色进行…...

c++类和对象(下篇)下

下面就来补充一下c雷和对象最后一点内容. 首先先补充一下上一篇博客上c类和对象(下篇)上-CSDN博客最后学习的静态成员变量的小练习求123...n_牛客题霸_牛客网 (nowcoder.com)下面就是题解.灵活的运用了静态成员变量不销毁的特点,建立数组利用构造函数来完成n次相加. class A{ …...

HTTP 失败重试(重发)方案

在 Qt 网络开发中,使用 QNetworkAccessManager 进行 HTTP 请求时,可能会遇到网络超时、服务器错误等情况。为了提高请求的可靠性,可以实现 HTTP 失败重试(重发) 机制。下面介绍几种常见的 失败重发方案: 单…...

使用WebDAV将文件传输到实时(RT)目标 转发

如何配置Web分布式创作和版本控制(WebDAV)服务器并使用它来与我的实时(RT)目标之间传输文件? 在目标上安装 WebDAV 和 SSL 支持 NI Linux Real-Time 您无需完成任何安装 WebDAV 和 SSL 支持的步骤。默认情况下,这些组件在NI Linu…...

Web爬虫利器FireCrawl:全方位助力AI训练与高效数据抓取

Web爬虫利器FireCrawl:全方位助力AI训练与高效数据抓取 一、FireCrawl 项目简介二、主要功能三、FireCrawl应用场景1. 大语言模型训练2. 检索增强生成(RAG):3. 数据驱动的开发项目4. SEO 与内容优化5. 在线服务与工具集成 四、安装…...

如何避免PRD(需求文档)成为“沟通黑洞”

在撰写PRD(需求文档)时,要避免成为“沟通黑洞”,必须聚焦目标清晰、需求拆解、协同评审、持续迭代等关键点。其中,协同评审尤其重要——通过在文档完成初期就邀请相关部门共同审阅讨论,可以及早发现需求逻辑…...

c++基础知识--返回值优化

在 C 中,Named Return Value Optimization(NRVO,具名返回值优化) 是一种编译器优化技术,用于消除函数返回一个局部对象时的拷贝或移动操作。它是 返回值优化(RVO) 的一种更复杂的变体&#xff0…...

go面向对象编程三大特性,封装、继承和多态

1.简介 go具有面向对象编程的封装、继承和多态的特性,只是实现的方式和其它OOP语言不一样,下面看下go的三大特性是如何实现的。 2.封装 2.1基本介绍 封装就是把抽象出的字段和对字段的操作封装在一起,数据被保护在内部,程序的其它包只能通过被授权的操作(方法),才能…...

巧用符号链接搬移C盘中的软件数据目录到其他盘

#工作记录 我们知道,在Windows11系统,有些软件是不能指定安装目录的,有些软件即使指定了安装目录可是在更新版本之后还是会安装到默认的C盘目录中(比如剪映),而且每次安装某些软件之后,这些软件…...

使用 PIC 微控制器和 Adafruit IO 的基于 IoT 的 Web 控制家庭自动化

使用 PIC 微控制器和 Adafruit IO 的基于 IoT 的 Web 控制家庭自动化 家庭自动化一直是我们大多数人的灵感来源。从我们舒适的椅子或任何房间的床上切换交流负载,而无需伸手去触碰另一个房间的开关,听起来很酷,不是吗!.现在,在物联网时代,多亏了 ESP8266 模块,它使从世界…...

高性能Java并发编程:线程池与异步编程最佳实践

Future模式与CompletableFuture 处理异步任务时,Future与CompletableFuture是强有力的工具。 实战案例:多API并行调用 假设我们需要从多个微服务获取数据,然后合并结果: public UserProfileDto getUserProfile(Long userId) {…...

【Java篇】一气化三清:类的实例化与封装的智慧之道

文章目录 类和对象(中)五、对象的构造及初始化5.1 如何初始化对象5.2 构造方法5.2.1 构造方法的概念5.2.2 构造方法的特性 5.3 默认初始化5.4 就地初始化 六、封装6.1 封装的概念6.2 访问限定符6.3 封装扩展之包6.3.1 包的概念6.3.3导入包6.3.3全类名6.3…...

VMware上调整centos终端的背景颜色

目录 1. 正常打开一个终端,背景颜色默认为白色 2. 在打开的终端页面上右击,选择“配置文件首选项” 3. 取消默认勾选的 “使用系统主题中的颜色” 即可 1. 正常打开一个终端,背景颜色默认为白色 2. 在打开的终端页面上右击,选择…...

Netty源码—1.服务端启动流程二

大纲 1.服务端启动整体流程及关键方法 2.服务端启动的核心步骤 3.创建服务端Channel的源码 4.初始化服务端Channel的源码 5.注册服务端Channel的源码 6.绑定服务端端口的源码 7.服务端启动流程源码总结 5.注册服务端Channel的源码 (1)注册服务端Channel的入口 (2)注册…...

Latex2024安装教程(附安装包)Latex2024详细图文安装教程

文章目录 前言一、Latex2024下载二、Texlive 2024安装教程1.准备安装文件2.启动安装程序3.配置安装选项4.开始安装5.安装完成6.TeX Live 2024 安装后确认 三、Texstudio 安装教程1.准备 Texstudio 安装2.启动 Texstudio 安装向导3.选择安装位置4.等待安装完成5.启动 Texstudio6…...

用了Cline和华为云的大模型,再也回不去了

这两年AI火热,受影响最大的还是程序员群体,因为编程语言是高度形式化的,完全可以用BNF等形式精确地定义,不像自然语言那样,容易出现歧义。另外开源是软件界的潮流,GitHub上有海量的开源代码可供AI来训练&am…...

解码软件需求的三个维度:从满足基础到创造惊喜

在软件开发的世界里,用户需求就像一张复杂的地图,指引着产品前进的方向。但并非所有需求都能带来同样的价值——有些是产品生存的“氧气”,有些是吸引用户的“磁石”,还有一些则是让人眼前一亮的“魔法”。如何区分它们&#xff1…...