ICRA-2025 | 具身导航如何跨越地形障碍?SARO:通过视觉语言模型实现地形穿越

-

作者:Shaoting Zhu, Derun Li, Linzhan Mou, Yong Liu, Ningyi Xu, Hang Zhao
-
单位:清华大学交叉信息研究院,上海交通大学电子信息与电气工程学院,浙江大学计算机科学与技术学院,宾夕法尼亚大学GRASP实验室,上海期智研究院
-
标题:SARO: Space-Aware Robot System for Terrain Crossing via Vision-Language Model
-
原文链接:https://saro-vlm.github.io/resources/saro_paper.pdf
-
项目主页:https://saro-vlm.github.io/
主要贡献

-
高阶推理模块与闭环子任务执行:SARO系统引入了一个由高层次推理模块和闭环子任务执行模块,利用视觉语言模型(VLM)的推理能力,通过任务分解和闭环子任务执行机制来增强机器人的三维场景理解和运动规划能力。
-
基于强化学习的低阶控制策略:提出了基于强化学习的低阶控制策略,称为概率退火选择(PAS),通过强化学习有效地训练控制策略,以应对各种三维地形挑战,解决了传统模仿学习在真实世界部署中的性能下降问题。
-
零样本推理与通用性:SARO系统利用VLM的零样本推理能力进行常识推理,使得系统能够在没有特定训练数据的情况下,通过视觉常识进行导航和决策,增强了系统的通用性和适应性。
-
实验验证与鲁棒性:通过在多种室内和室外环境中的实验验证,展示了SARO系统在完成特定目标跟踪任务时的准确性和鲁棒性。实验结果表明,系统能够在不同的三维地形上实现导航,并且具有较好的泛化能力,适用于多样化的环境和场景。
研究背景
研究问题
论文主要解决的问题是如何设计一个系统来充分利用视觉语言模型(VLM)在机器人导航中的潜力,使机器人能够在3D环境中观察、理解和行动。
研究难点
该问题的研究难点包括:
-
VLM在训练数据视角和缺乏记忆信息库方面的局限性,
-
传统导航方法在复杂真实世界情况下的鲁棒性不足,
-
以及从模拟到真实世界的迁移问题。
相关工作
-
基础模型在机器人中的应用
-
基础模型的应用:一些研究者将基础模型应用于机器人任务中,使用开放词汇预训练模型进行机器人任务。例如,一些工作利用GPT-4V等强大的VLMs进行机器人任务。
-
四足机器人应用:一些研究尝试将基础模型应用于四足机器人。例如,Saytap使用大型语言模型将自然语言命令转换为四足机器人的足部接触模式。ViNT从大规模视觉导航数据集中训练一个通用策略。CognitiveDog将大型多模态模型与四足机器人集成。GeRM训练了一个用于四足机器人的通用模型。QuadrupedGPT和Commonsense利用大型模型进行简单场景中的移动。
-
然而,这些方法大多仅适用于平面表面上的任务,未能充分利用四足机器人在三维地形上的能力。
-
四足机器人行走控制
-
传统控制方法:传统的行走控制方法(如SLIP、VMC、MPC)在处理特定地形任务时表现不佳,通常在真实世界部署中存在不稳定性问题。
-
强化学习的应用:强化学习在近年来显示出显著的能力,能够利用特权训练范式训练四足机器人,而不需要额外的传感器。一些工作结合本体感知和外感知状态来实现敏捷行走。
-
模仿学习和迁移学习:模仿学习在之前的工作中被频繁使用。适应学习和教师-学生框架学习被用来解决模拟到现实的迁移问题,但这些方法在真实部署中容易出现性能下降。
-
创新方法:一些工作提出了创新的方法来提高行走效率。例如,DayDreamer学习一个“世界模型”来合成无限交互,而DreamWaQ通过学习VAE模型隐式推断地形属性并相应地调整步态。
-
结合传统控制与深度强化学习:一些工作将传统控制方法与深度强化学习结合,以加速训练速度,但未能充分利用模拟中的特权信息。
-
论文方法
任务定义
-
前提描述:
-
四足机器人在三维环境中自主导航的目标跟踪任务。
-
任务要求机器人在包含不同地形的3D环境中导航,从一个平台到达另一个平台。
-
地形由两个平台和连接这两个平台的中间区域组成。中间区域包括“楼梯”、“坡道”、“间隙”和“门”。
-
机器人的初始位置在一个平台上,目标是到达另一个平台上指定的目标位置。
-
任务还包括一个语言描述,指导机器人如何穿越地形。
-
机器人只能访问机载传感器,包括本体感知、自视角RGB图像和深度图像。
-
-
形式化描述:
-
地形 包含两个平台 和 ,以及连接这两个平台的中间区域 I。
-
机器人的起始位置在 上,目标是到达 上的指定目标 G,目标位置由相对机器人的起始位置的坐标 (x, y, z, yaw) 定义,并结合语言描述 L。
-

高层次推理与任务执行
-
任务分解:
-
系统作为一个状态机工作,将多步导航分解为一个由移动动作和结束点组成的子任务序列。
-
通过提示VLM,系统能够识别与任务指令相关的中间区域,并生成分解后的子任务序列。
-
每个子任务定义为 (Action, Ending) 对,其中 Action 是 ["move", "climb"] 中的一个,Ending 是 ["facing intermediation", "across intermediation", "to the goal"] 中的一个。
-

-
子任务执行:
-
系统利用VLM的感知能力来辅助精细的轨迹引导和子任务状态的判断。
-
对于每个子任务,VLM鉴别器首先根据 Ending 判断子任务是否完成。
-
如果未完成,则根据 Action 和 VLM的语言指令发送速度命令到低层次策略。
-
预定义的执行工作流决定了如何完成这个 Action 直到到达 Ending 点。
-
系统采用闭环模块和双重检查机制,确保子任务的准确执行。
-
低层次行走控制策略

-
Oracle策略训练:在第一阶段,系统训练一个Oracle策略,使用本体感知、特权状态和地形信息作为输入。通过强化学习,机器人可以在各种地形上快速有效地学习行走技能。
-
部分观察策略训练:在第二阶段,系统使用概率退火选择(PAS)方法训练最终的动作网络,该方法仅使用本体感知作为输入。PAS方法通过逐渐增加预测值的使用比例,确保训练过程的稳定性和最终策略的性能。
实验
实验设置

-
硬件配置:
-
机器人平台:实验在Unitree A1四足机器人上进行,搭载NVIDIA Jetson Xavier NX作为车载计算机。
-
传感器:机器人在前部安装了两台RealSense D435i相机,一台用于视觉惯性测距(VIO)获取机器人位姿,另一台用于高层次推理。
-
计算平台:使用一台笔记本电脑和一台GPU服务器进行计算,笔记本电脑运行SLAM程序和系统主程序,GPU服务器运行LLaVA程序并与笔记本电脑通信。
-

-
软件配置:
-
操作系统:基于ROS(机器人操作系统)进行通信。
-
VLM模型:使用LLaVA-34B作为视觉语言模型和VLM鉴别器。
-
VIO算法:使用VINS-Fusion进行视觉惯性测距。
-
高层次推理结果

-
室内实验:
-
实验目标:评估SARO系统在多样化路线上的鲁棒性,测试其在不同地形(如楼梯、坡道、间隙和门)上的表现。
-
实验设计:每种地形进行20次试验,记录整个过程的成功率、仅穿越地形的成功率和稳定的定位成功率。
-
对比基线:与三种基线方法(朴素LSTM网络、ViNT和NoMaD)进行比较。
-
结果分析:SARO系统在楼梯等复杂地形上表现出色,显示出其有效性和鲁棒性。与其他基线相比,SARO系统在三维推理和规划能力上具有优势。
-
-
室外实验:
-
实验目标:展示SARO系统在野外环境中的泛化能力。
-
实验设计:在多样化地形条件下进行实验,验证系统的泛化能力。
-
结果分析:SARO系统能够轻松扩展到野外环境,并在多样化地形条件下表现出色。
-
低层次行走控制结果


-
模拟实验:
-
实验目标:评估PAS方法在低层次行走控制中的效果。
-
实验设计:在多种地形上进行实验,测试成功率(SR)和速度跟踪比率。
-
对比基线:与几种基线方法(如RMA、IL、Blind、Concurrent)进行比较。
-
结果分析:PAS方法在模拟实验中显著优于其他基线方法,显示出更高的成功率和更好的速度跟踪性能。
-


-
真实世界实验:
-
实验目标:在一系列地形上进行实验,验证PAS方法在实际环境中的效果。
-
实验设计:每种地形连续进行20次试验,记录成功率。
-
结果分析:PAS方法在真实世界实验中表现出色,成功率高于其他方法,显示出较强的竞争力。
-

总结
-
论文提出了一个用于3D环境视觉导航的空间感知机器人系统(SARO)。
-
高层模块通过任务分解和闭环子任务执行模块提高了3D场景理解和运动规划能力。
-
低层控制策略PAS是一种新颖的强化学习方法,能够有效地从oracle策略中学习部分策略,促进四足机器人跨越多样化的3D地形。
-
广泛的仿真和真实世界实验展示了整个系统的有效性和鲁棒性以及运动控制策略的性能。

相关文章:
ICRA-2025 | 具身导航如何跨越地形障碍?SARO:通过视觉语言模型实现地形穿越
作者:Shaoting Zhu, Derun Li, Linzhan Mou, Yong Liu, Ningyi Xu, Hang Zhao 单位:清华大学交叉信息研究院,上海交通大学电子信息与电气工程学院,浙江大学计算机科学与技术学院,宾夕法尼亚大学GRASP实验室࿰…...
当 LSTM 遇上 ARIMA!!
大家好,我是小青 ARIMA 和 LSTM 是两种常用于时间序列预测的模型,各有优劣。 ARIMA 擅长捕捉线性关系,而 LSTM 擅长处理非线性和长时间依赖的关系。将ARIMA 和 LSTM 融合,可以充分发挥它们各自的优势,构建更强大的时…...
终结磁盘空间紧张局面,针对性处理重复、无用文件
软件介绍 在如今这个数字化浪潮汹涌的时代,咱们的电脑存储空间就像一个杂乱无章的储物间,被各种各样的重复文件塞得满满当当。这些重复文件,犹如隐藏在暗处的 “空间小偷”,悄无声息地吞噬着宝贵的硬盘空间,使得原本井…...
DeepSeek全生态接入指南:官方通道+三大云平台
DeepSeek全生态接入指南:官方通道三大云平台 一、官方资源入口 1.1 核心交互平台 🖥️ DeepSeek官网: https://chat.deepseek.com/ (体验最新对话模型能力) 二、客户端工具 OllamaChatboxCherry StudioAnythingLLM …...
高校LabVIEW开发调试中的常见问题
在高校进行LabVIEW开发调试时,常常面临硬件选型不当、方案设计不合理、布线不专业以及人员流动性强等问题。这些问题可能影响项目的进展和质量。本文将总结这些问题,并给出具体的解决方案,帮助学生和团队更高效地开展开发工作。 1. 硬件选…...
【故障处理】- RMAN-06593: platform name ‘Linux x86 64-bitElapsed: 00:00:00.00‘
【故障处理】- RMAN-06593: platform name Linux x86 64-bitElapsed: 00:00:00.00 一、概述二、报错原因三、解决方法 一、概述 使用xtts迁移,在目标端进行恢复时,遇到RMAN-06593: platform name Linux x86 64-bitElapsed: 00:00:00.00’报错。 二、报错…...
K8S下载离线安装包所需文件
下载相关文件 官网下载地址集合https://kubernetes.io/zh-cn/releases/download/ 下载相关镜像 官网镜像描述 所有 Kubernetes 容器镜像都被部署到 registry.k8s.io 容器镜像仓库。 容器镜像支持架构registry.k8s.io/kube-apiserver:v1.32.0amd64, arm, arm64, ppc64le, …...
如何使用Java语言在Idea和Android中分别建立服务端和客户端实现局域网聊天
手把手教你用Java语言在Idea和Android中分别建立服务端和客户端实现局域网聊天 目录 文章目录 手把手教你用**Java**语言在**Idea**和**Android**中分别建立**服务端**和**客户端**实现局域网聊天**目录**[toc]**基本实现****问题分析****服务端**Idea:结构预览Server类代码解…...
泰勒公式推导以及常用展开式与近似计算
泰勒公式的基本思想是通过函数在某点的导数来逐渐构建一个多项式,该多项式能够近似函数在该点附近的值。我们通过一次次引入导数来改进近似,从而得到一个无限级数的展开。 准备工作:函数的定义和导数 假设我们有一个函数 f ( x ) f(x) f(x)…...
ArcGIS注册开发账号及API KEY
注册与激活 Sign up | ArcGIS Location Platform 填写信息,然后邮箱收到激活邮件,激活,再补充信息。 参考 Tutorial: Create an API key | Documentation | Esri Developer 产生API KEY Tutorial: Create an API key | Documentation |…...
Idea 插件 Quickly-Code-Toolkit
使用说明 (一)全局设置 Paging Wrapper Setting(分页设置) 功能:主要用于在方法写入时,为返回参数提供分页包装类。设置方式:需准确填写分页包装类的全限定名,例如:com…...
HTTP与Websocket
HTTP协议 概述 HTTP (Hypertext Transfer Protocol),即超文本传输协议,是一种用于在客户端和服务器之间传输超文本(例如网页、图片、音频、视频等)的通信协议。它是万维网(WWW)的基础,负责在浏…...
java八股---java面向对象
面向对象 面向对象概述 面向对象和面向过程的区别 面向过程: 优点:性能比面向对象高,因为类调用时需要实例化,开销比较大,比较消耗资源;比如单片机、嵌入式开发、 Linux/Unix等一般采用面向过程开发,性能…...
《Deepseek入门到精通》2.0版本《Deepseek赋能职场应用》清华大学
🚀 《Deepseek入门到精通》2.0版本重磅发布! 📚 全新升级,赋能职场应用! 经过多次改版与优化,《Deepseek入门到精通》2.0版本已经正式上线!这不仅是一份技术指南,更是你提升职场竞争…...
关于防火墙运维面试题2
三、防火墙配置与管理类 21. 如何根据企业的网络安全策略,制定一套全面的防火墙规则集?需要考虑哪些关键因素? 以下是根据企业网络安全策略制定全面防火墙规则集的指导,以及需要考虑的关键因素: 一、关键因素 &…...
使用c++实现红黑树的构建和插入
1.红黑树简介: 红黑树实际上和AVL都属于一棵用于存储数据的平衡二叉搜索树,但是这棵树并不是使用平衡因子去维持平衡的,而是结合限制条件对结点标红标黑去让树达到类似平衡的效果。 2.红黑树的限制条件和效率分析: 2.1限制条件…...
在大型语言模型(LLM)框架内Transformer架构与混合专家(MoE)策略的概念整合
文章目录 传统的神经网络框架存在的问题一. Transformer架构综述1.1 transformer的输入1.1.1 词向量1.1.2 位置编码(Positional Encoding)1.1.3 编码器与解码器结构1.1.4 多头自注意力机制 二.Transformer分步详解2.1 传统词向量存在的问题2.2 详解编解码…...
Jenkins项目CICD流程
Jenkins项目流程:1.配置git环境 git config --...2.把前后端的目录初始化位本地工作目录 #git init3.提交到本地git #git add ./ git commit -m "" git tag v14.然后提交到远程git(通过,用户,群组,项目,管理项目)git remote add origin http://...git push -…...
【IDEA】2017版本的使用
目录 一、常识 二、安装 1. 下载IDEA2017.exe 2. 安装教程 三、基本配置 1. 自动更新关掉 2. 整合JDK环境 3. 隐藏.idea文件夹和.iml等文件 四、创建Java工程 1. 新建项目 2. 创建包结构,创建类,编写main主函数,在控制台输出内容。…...
Git指南-从入门到精通
代码提交和同步命令 流程图如下: 第零步: 工作区与仓库保持一致第一步: 文件增删改,变为已修改状态第二步: git add ,变为已暂存状态 bash $ git status $ git add --all # 当前项目下的所有更改 $ git add . # 当前目录下的所有更改 $ g…...
Spring boot(maven) - Mybatis 超级入门版
前言: 通过实践而发现真理,又通过实践而证实真理和发展真理。从感性认识而能动地发展到理性认识,又从理性认识而能动地指导革命实践,改造主观世界和客观世界。实践、认识、再实践、再认识,这种形式,循环往…...
Spark 性能优化 (三):RBO 与 CBO
1. RBO 的核心概念 在 Apache Spark 的查询优化过程中,规则优化(Rule-Based Optimization, RBO) 是 Catalyst 优化器的一个关键组成部分。它主要依赖于一组固定的规则进行优化,而不是基于统计信息(如 CBO - Cost-Base…...
读 DeepSeek-R1 论文笔记
DeepSeek-R1:通过强化学习激发大语言模型的推理能力 DeepSeek-AI 摘要 我们推出第一代推理模型DeepSeek-R1-Zero和DeepSeek-R1。DeepSeek-R1-Zero作为无需监督微调(SFT)预训练阶段、直接通过大规模强化学习(RL)训练的基础模型,展现出卓越的推理能力。…...
【Android开发AI实战】选择目标跟踪基于opencv实现——运动跟踪
文章目录 【Android 开发 AI 实战】选择目标跟踪基于 opencv 实现 —— 运动跟踪一、引言二、Android 开发与 AI 的融合趋势三、OpenCV 简介四、运动跟踪原理(一)光流法(二)卡尔曼滤波(三)粒子滤波 五、基于…...
Eclipse JSP/Servlet 深入解析
Eclipse JSP/Servlet 深入解析 引言 随着互联网的快速发展,Java Web开发技术逐渐成为企业级应用开发的主流。在Java Web开发中,JSP(JavaServer Pages)和Servlet是两个核心组件,它们共同构成了Java Web应用程序的基础。本文将深入解析Eclipse平台下的JSP/Servlet技术,帮…...
申论概括类【2021副省第二题“局区合一”】
材料: “李总监,您好,我是芯谷产业功能区项目投资科的小罗,从今天开始,我就是你们公司的项目专员,以后有什么问题您都可以找我。”W光学有限公司总务部总监李晓枫接到小罗的电话时,既意外又暖心…...
如何保持长久无痛苦的学英语?
“无痛苦”学英语? 听起来像天方夜谭,但并非不可能! 关键在于,把英语学习变成你生活的一部分,融入你的兴趣和目标, 这样才能摆脱痛苦,享受学习的过程。 1. 兴趣是最好的老师: 找到自…...
SQL-leetcode—1661. 每台机器的进程平均运行时间
1661. 每台机器的进程平均运行时间 表: Activity ----------------------- | Column Name | Type | ----------------------- | machine_id | int | | process_id | int | | activity_type | enum | | timestamp | float | ----------------------- 该表展示了一家工厂网站的…...
Linux例行任务:at 、cron、 /etc/contain 辨析
文章目录 一、at:一次性任务调度1. **基本用法**2. **管理任务**3. **权限控制** 二、cron:周期性任务调度1. **用户级任务**2. **系统级任务**3. **特殊字符串**4. **权限控制**5. **环境问题** 三、容器环境中的例行任务1. **在容器内运行 cron**2. **…...
Vue2中常用指令
文章目录 Vue2中常用指令1. v-text 动态渲染纯文本内容1. 作用2. 基本用法3. 示例4. 注意事项 2. v-html 动态渲染 HTML 内容1. 作用2. 基本用法3. 示例4. 注意事项 3. v-bind 动态绑定 HTML 属性1. 作用2. 基本用法3. 示例4. 注意事项5. 绑定class属性的用法6. 绑定style属性的…...
