VoxPoser:使用语言模型进行机器人操作的可组合 3D 值图

语言是一种压缩媒介,人们通过它来提炼和传达他们对世界的知识和经验。大型语言模型(LLMs)已成为一种有前景的方法,通过将世界投影到语言空间中来捕捉这种抽象。虽然这些模型被认为在文本形式中内化了可概括的知识,但如何利用这种可概括的知识使具身代理能够在现实世界中进行物理行动仍然是一个问题。
该工作研究了将抽象语言指令(例如“摆放桌子”)与机器人行动相结合的问题。之前的研究利用词汇分析来解析指令,而最近的研究利用语言模型将指令分解为文本序列的步骤。然而,为了能够与环境进行物理交互,现有方法通常依赖于手动设计或预训练的运动基元(即技能),这些基元可以由LLM或规划器调用。由于缺乏大规模的机器人数据,这种依赖于单个技能的获取常常被认为是系统的一个主要瓶颈。因此,问题就出现了:如何在细粒度的行动层面上利用LLMs内部化的丰富知识,而不需要费力的数据收集或为每个单独的基元手动设计?
为了解决这个挑战,该工作首先注意到LLMs直接输出文本形式的控制动作是不可行的,因为这些动作通常由高维空间中的高频控制信号驱动。然而,该工作发现LLMs擅长推断受语言条件约束的可行性和限制,并通过利用它们的编码能力,可以通过编排感知调用(例如通过CLIP 或开放词汇检测器和数组操作(例如通过NumPy )来组合密集的3D体素图,将它们在视觉空间中进行关联。例如,给定指令“打开顶层抽屉,注意花瓶”,LLMs可以被提示推断出:1)应该抓住顶层抽屉的把手,2)把手需要向外移动,3)机器人应该远离花瓶。虽然这些信息是以文本形式表达的,但LLMs可以生成Python代码来调用感知API以获取相关对象或部件(例如“把手”)的空间几何信息,然后操纵3D体素图,在观察空间中的相关位置处为目标位置指定高值,同时为花瓶周围指定低值。最后,组合的值图可以作为运动规划器的目标函数,直接合成实现给定指令的机器人轨迹,而无需为每个任务或LLM进行额外的训练数据。

相关成果以“VoxPoser: Composable 3D Value Maps for Robotic Manipulation with Language Models ”为题发表。
主要贡献
该工作的贡献总结如下:
• 该工作提出了VoxPoser,一种从预训练的语言模型中提取机器人操作的可行性和约束的方法,无需额外的训练,并且可以推广到开放指令。
• 利用VoxPoser来表示任务目标,该工作展示了合成轨迹可以在模拟和真实环境中以闭环方式通过MPC进行鲁棒执行的能力,适用于各种操作任务。
• 该工作展示了VoxPoser适用于仅有有限数量的在线交互,通过高效学习动力学模型的应用性,例如,在不到3分钟内学习使用杠杆把手打开门。
方法简介
考虑一个给定的操作问题,以自由形式语言指令L来描述(例如,“打开顶层抽屉”)。然而,根据L生成机器人轨迹可能很困难,因为L可能具有任意长的时间跨度或不完全规定(即需要上下文理解)。相反,该工作将重点放在问题的各个阶段(子任务)ℓi上,这些阶段明确指定了一个操作任务(例如,“抓住抽屉把手”,“拉开抽屉”),其中分解由高级规划器(例如LLM或基于搜索的规划器)给出。本工作中研究的核心问题是为机器人生成运动轨迹。
在这里插入图片描述

VoxPoser通过合成3D地图进行运动规划
该工作将运动轨迹表示为一系列由操作空间控制器执行的密集末端执行器路径点,其中每个路径点包括期望的6自由度末端执行器姿态、末端执行器速度和夹爪动作。然而,值得注意的是,也可以使用其他表示轨迹的方式,例如关节空间轨迹。
计算相对于自由形式语言指令的Ftask是极具挑战性的,不仅因为语言可以传达的丰富语义空间,还因为缺乏带有T和ℓ标签的机器人数据。然而,该工作提供了一个关键观察,即大量的任务可以通过机器人的观察空间中的体素值图来表征,它指导场景中的“感兴趣实体”(如机器人末端执行器、物体或物体的部分)的运动。例如,在下图中考虑任务“打开顶层抽屉”及其第一个子任务“抓住顶层抽屉把手”(由LLMs推断)。这里的“感兴趣实体”是机器人末端执行器,体素值图应该反映对抽屉把手的吸引力。通过进一步指示“注意花瓶”,该图还可以更新以反映对花瓶的排斥。该工作将“感兴趣实体”表示为e,其轨迹表示为τe。
在这里插入图片描述

VoxPoser主要方法示意图
值得注意的是,该工作观察到,通过在互联网规模的数据上进行预训练,大型语言模型不仅能够识别“感兴趣实体”,而且可以通过编写Python程序来组合准确反映任务指令的值图。具体而言,当指令作为代码中的注释给出时,LLMs可以被提示:1)调用感知API(调用视觉语言模型(VLM),如开放词汇检测器)以获取相关对象的空间几何信息,2)生成NumPy操作以操作3D数组,3)在相关位置上指定精确的值。该工作将这种方法称为VOXPOSER。具体而言,该工作的目标是通过提示LLM并通过Python解释器执行代码来获得一个体素值图Vti = VoxPoser(ot, ℓi),其中ot是时间t时的RGB-D观察结果,ℓi是当前的指令。此外,由于V通常是稀疏的,该工作通过平滑操作使体素值图变得密集,因为它们可以鼓励由运动规划器优化的更平滑的轨迹。
在获得任务代价之后,使用简单的零阶优化方法,通过随机采样轨迹并使用提出的目标对其进行评分。进一步地,优化是在模型预测控制框架中实现的,该框架在每一步迭代地使用当前观察来重新规划轨迹,以在动态干扰下稳健地执行轨迹,可以使用学习的模型或基于物理的模型。然而,由于VoxPoser在观察空间中提供了“密集的奖励”,而且该工作能够在每一步重新规划,令人惊讶的是该工作发现,即使使用基于简单启发式模型,整个系统已经能够完成本工作中考虑的大量操作任务。由于一些值图是针对“感兴趣实体”定义的,而这个实体不一定是机器人,该工作还使用动力学模型找到所需的机器人轨迹来最小化任务代价(即机器人与环境之间的相互作用实现所需的物体运动)。
实验结果
1)操作任务结果
该工作研究VoxPoser 是否可以零样本合成机器人轨迹来执行现实世界中的日常操作任务。环境设置的详细信息可以在附录A.4 中找到。虽然所提出的方法可以推广到开放的指令集和开放的对象集,但该工作选择了 5 个代表性任务来提供表 1 中的定量评估。包括环境推出和价值图可视化在内的定性结果是 如图3所示。该工作发现VoxPoser可以有效地合成用于日常操作任务的机器人轨迹,并且平均成功率很高。由于具有快速重新规划功能,它对外部干扰也具有鲁棒性,例如移动目标/障碍物以及机器人关闭抽屉后将其拉开。
在这里插入图片描述

实验结果

在这里插入图片描述

生成3D价值图可视化结果
该工作进一步与 Code as Policies的变体进行比较,该变体使用 LLM 来参数化简单基元的预定义列表(例如,移动到姿势、打开夹具)。该工作发现,与链接顺序策略逻辑相比,在联合优化方案下考虑其他约束的同时进行空间组合的能力是一种更灵活的表述,释放了更多操作任务的可能性并导致更稳健的执行。
2)泛化到新指令或属性

新任务泛化性能结果
表 2 显示了每项任务 20 个回合的平均成功率。该工作发现 VoxPoser 在所有场景中都表现出卓越的泛化能力。通过价值图组合而不是直接指定原始参数,将 LLM 知识扎根于机器人感知中,可以提供更大的灵活性和更好的泛化能力。
总结与展望
这项工作中,该工作提出了VOXPOSER,一个用于提取可供性和约束的通用框架,基于3D感知空间,从LLM和VLM中提取现实世界中的日常操作任务,为开放集指令和对象提供显着的泛化优势。尽管取得了引人注目的结果,VoxPoser仍存在一些局限性。首先,它依赖于外部感知模块,这限制了需要整体视觉推理或理解细粒度物体几何形状的任务。其次,虽然适用于高效的动力学学习,但仍然需要通用的动力学模型来实现具有相同泛化水平的接触丰富的任务。第三,该工作的运动规划器仅考虑末端执行器轨迹,而全臂规划也是可行的,并且可能是更好的设计选择。最后,LLM需要手动提示工程。还看到了未来工作的几个令人兴奋的场所。例如,最近成功的多模态LLM可以直接转化为VoxPoser以实现直接视觉基础。为对齐和提示开发的方法可用于减轻临时工程工作。最后,可以开发更先进的轨迹优化方法,与VoxPoser合成的值图进行最佳接口。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/232498.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C++STL详解+代码分析+典例讲解

vector 的介绍: 1、vector是表示可变大小数组的序列容器。 2、vector就像数组一样,也采用的连续空间来存储元素,这也意味着可以采用下标对vector的元素进行访问。 3、vector与普通数组不同的是,vector的大小是可以动态改变的。 4、…

基于K-means与CNN的遥感影像分类方法

基于K-means与CNN的遥感影像分类 一、引言 1.研究背景 航天遥感技术是一种通过卫星对地观测获取遥感图像信息数据的技术,这些图像数据在各领域都发挥着不可或缺的作用。遥感图像分类主要是根据地面物体电磁波辐射在遥感图像上的特征,判断识别地面物体的属…

10 大 Mac 数据恢复软件深度评测

对于任何依赖计算机获取重要文件(无论是个人照片还是重要商业文档)的人来说,数据丢失可能是一场噩梦。值得庆幸的是,有多种专门为 Mac 用户提供的数据恢复工具,可以帮助检索丢失或意外删除的文件。在本文中&#xff0c…

基于Python+Selenium+Unittest+PO设计模式

一、什么是PO设计模式(Page Object Model) 1、Page Object是一种设计模式,它主要体现在对界面交互细节的封装上,使测试用例更专注于业务的操作,从而提高测试用例的可维护性。 2、一般PO设计模式有三层 第一层&#x…

【基于NLP的微博情感分析:从数据爬取到情感洞察】

基于NLP的微博情感分析:从数据爬取到情感洞察 背景数据集技术选型功能实现创新点 今天我将分享一个基于NLP的微博情感分析项目,通过Python技术、NLP模型和Flask框架,对微博数据进行清洗、分词、可视化,并利用NLP和贝叶斯进行情感分…

基于Lucene的全文检索系统的实现与应用

文章目录 一、概念二、引入案例1、数据库搜索2、数据分类3、非结构化数据查询方法1) 顺序扫描法(Serial Scanning)2)全文检索(Full-text Search) 4、如何实现全文检索 三、Lucene实现全文检索的流程1、索引和搜索流程图2、创建索引1)获取原始…

Moco框架的搭建使用

一、前言   之前一直听mock,也大致了解mock的作用,但没有具体去了解过如何用工具或框架实现mock,以及也没有考虑过落实mock,因为在实际的工作中,很少会考虑用mock。最近在学java,刚好了解到moco框架是用于…

语言模型GPT与HuggingFace应用

受到计算机视觉领域采用ImageNet对模型进行一次预训练,使得模型可以通过海量图像充分学习如何提取特征,然后再根据任务目标进行模型微调的范式影响,自然语言处理领域基于预训练语言模型的方法也逐渐成为主流。以ELMo为代表的动态词向量模型开…

创建dockerSwarm nfs挂载

创建dockerSwarm nfs挂载 nfs高可用部署(lsyncd两主机双向同步) nfs高可用部署(lsyncd三主机三向同步) 1. 通过 Volume 1.1 创建 Docker Volume 每个 swarm 节点均创建相同名称的 Docker Volume(名称为 nfs120) docker volume create --driver local …

Jupyter notebook修改背景主题

打开Anaconda Prompt,输入以下内容 1. pip install --upgrade jupyterthemes 下载对应背景主题包 出现Successfully installed jupyterthemes-0.20.0 lesscpy-0.15.1时,说明已经下载安装完成 2. jt -l 查看背景主题列表 3. jt -t 主题名称(…

【docker 】centOS 安装docker

官网 docker官网 github源码 卸载旧版本 sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-latest \docker-latest-logrotate \docker-logrotate \docker-engine 安装软件包 yum install -y yum-utils \device-mapper-persistent-data…

Spring IOC—基于XML配置Bean的更多内容和细节(通俗易懂)

目录 一、前言 二、Bean配置信息重用 1.简介 : 2.实例 : 三、关于Bean的创建顺序 1.简介 : 2.实例 : 四、关于Bean的单例和多例 1.简介 : 2.实例 : 五、关于Bean的生命周期 1.简介 : 2.实例 : 六、Bean配置后置处理器 1.简介 : 2.实例 : 七、通过.properties文…

AcWing 93. 递归实现组合型枚举

Every day a AcWing 题目来源:93. 递归实现组合型枚举 解法1:回溯算法 标准的回溯算法模板题。 如果把 n、m 和数组 nums 都设置成全局变量的话,backtracking 回溯函数可以只用一个参数 level。 注意传参时 nums 不能用引用,…

Hive SQL间隔连续问题

问题引入 下面是某游戏公司记录的用户每日登录数据, 计算每个用户最大的连续登录天数,定义连续登录时可以间隔一天。举例:如果一个用户在 1,3,5,6,9 登录了游戏,则视为连续 6 天登录。 id dt1001 2021-12-121002 2021-12-12…

SQL语句---删除索引

介绍 使用sql语句删除索引。由于索引会占用一定的磁盘空间,因此,为了避免影响数据库性能,应该及时删除不再使用的索引。 命令 drop index 索引名 on 表名;例子 删除a表中的singleidx索引: drop index singleidx on a;下面是执…

GoldWave注册机 最新中文汉化破解版-安装使用教程

GoldWave是一个功能强大的数字音乐编辑器,是一个集声音编辑、播放、录制和转换的音频工具。它还可以对音频内容进行转换格式等处理。它体积小巧,功能却无比强大,支持许多格式的音频文件,包括WAV、OGG、VOC、 IFF、AIFF、 AIFC、AU…

FPGA 低延时 TCP UDP IP协议栈兼容1G 10G 25G MAC

在计算和数据中心、军事和航天、政府、仪器与测量、金融服务和广播和视频等行业,需要高可靠性的硬件和软件产品,帮助客户更快地开发部署新一代产品,减少技术和市场风险,我司研发的低延迟TCP/IP的IP核的传输速率高于传统网口&#…

汽车4S店中的“S”指的什么?柯桥生活英语学习

很多人买车都会去4S店选购 因为比较有保障 服务又很到位 可你有没有想过 这里的“4S”是什么意思 其实,这几个单词大家都认识 今天我们就来聊一下 与“4S店”相关的英文表达 01 “4S店”的英语表达 其实,4S店的全称是:汽车销售服务4S店…

基于Java的汽车客运站管理系统的设计与实现论文

摘 要 互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对汽车客运站售票信息管理混乱,出错率高,信息安…

Redis对象类型检测与命令多态

一. 命令类型 Redis中操作键的命令可以分为两类。 一种命令可以对任意类型的键执行,比如说DEL,EXPIRE,RENAME,TYPE,OBJECT命令等。 举个例子: #字符串键 127.0.0.1:6379> set msg "hello world&…