Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

5.4.1 样本效率与真实机器人数据的昂贵性

5.4.1.1 样本效率

在纯模拟的强化学习论文里,经常可以看到“训练 5e7 step 后收敛”之类的描述。对于 Atari 或 MuJoCo 虚拟环境,这只是几小时到几天的 GPU 时间;但如果每一步都是一个真实机器人动作,这个数量级就完全不可接受了。大量调研都指出,深度强化学习在机器人上的一个核心瓶颈就是样本效率过低 。(年评审)

导致样本效率低的典型原因包括:

  • 高维连续状态与动作空间 机械臂、移动平台往往有十几个自由度,每一步决策都在高维连续空间中“摸索”,需要大量试错才能找到高回报区域。
  • 稀疏奖励与长时间尺度 把物体从桌上抓起再放入盒子,可能需要几十上百步,只有最后一步才有“成功/失败”奖励,前面的动作很难精确归因(credit assignment),导致学习过程需要更多数据来估计价值函数。
  • 策略分布随训练不断变化 策略更新会改变数据分布,旧数据迅速“过时”,大量交互样本很快失效,只能不断采集新数据,这进一步放大了对真实交互的需求。

在真实机器人实验中,为了避免损坏设备和占用实验平台,研究者通常只能使用 几十到几百小时 的机器人交互数据,这和许多仿真 RL 工作动辄数千万步的规模相比差了几个数量级。(年评审)

【图 5-4-1 占位】对比示意图:左边是游戏/仿真 RL 常用的“1e7–1e8 step”训练曲线,右边是真实机器人实验可承受的“1e4–1e6 step”范围,用条形图或对数坐标展示数量级差异。

5.4.1.2 数据收集成本

真实机器人数据的“贵”,不仅仅是时间长,还体现在多维度的实际成本上:(年评审)

  1. 硬件磨损与维护成本
    • 关节减速器、丝杠、力传感器都有寿命,频繁的高频动作会加速老化。
    • 一次碰撞可能带来昂贵的维修费用,尤其是高端协作机械臂或移动平台。
  2. 人力与场地成本
    • 真实机器人 RL 通常需要人值守:重置场景、拾起摔落的物体、处理急停。
    • 实验室场地有限,一套机器人往往同时服务多个课题,长时间“刷数据”会挤占其他实验。
  3. 任务物料与布景成本
    • 抓取易碎物体(玻璃、电子元件)可能导致物品损耗。
    • 复杂场景(例如厨房、仓储)搭建与维护本身就需要资源。
  4. 数据工程成本
    • 多模态数据(图像、深度、关节状态、力矩、语言指令)需要同步、存储与管理。
    • 为 RL/模仿学习准备“可复现、可回放”的轨迹格式,并进行清洗、标注,也是大量工程工作(第 7 章会展开)。

因此,真实机器人上的“再多收一点数据试试”并不是一个轻松的选项,算法层面的样本效率提升几乎是刚需

5.4.1.3 提高效率

为了在现实硬件约束下仍然能训练出足够好的策略,近年的研究主要从以下几个方向提升样本效率:(年评审)

  1. 更高效的强化学习算法设计
    • 离线 / 离策略(off-policy)RL:充分复用已有轨迹(包括旧策略数据、人类示教数据),减少必须在线收集的步数。
    • 模型式 RL / 世界模型(world model):先学习环境动力学,再在“心智仿真”中大量滚动策略,真实机器人上只需少量校正数据。
    • 改进探索策略:如熵正则、乐观初始化、基于不确定性的探索,使每一步交互更“有价值”。
  2. 利用模仿学习和离线演示数据
    • 先用人类示教数据进行行为克隆(BC),得到一个尚可的初始策略,再用 RL 进行小步微调,这类“先模仿后强化”的范式显著减少了探索期的“瞎摸索”。(jenskober.de)
    • 利用开放数据集(如 Open X-Embodiment)上汇集的多机器人演示,为策略预训练提供大规模数据基础。(arXiv)
  3. 视觉 / 表示的预训练与迁移
    • 使用大规模图文数据预训练视觉–语言模型,再迁移到机器人任务,使机器人在视觉理解和语言理解上“开箱即用”。(维基百科)
    • 预训练好的视觉 backbone(如自监督 ViT)能在少量机器人数据上快速适应,从而减少为“看清世界”而付出的额外交互样本。
  4. 任务与课程设计
    • 采用从易到难的课程学习(curriculum learning),先在简单任务或低难度配置上训练,再逐步提升难度,可以减少在“几乎不可能完成”的早期阶段浪费的尝试。
    • 利用规划器生成高质量轨迹,作为“教师”,把 RL 策略学习限制在较优的状态–动作子空间中。

【图 5-4-2 占位】流程图:展示“预训练表示 → 行为克隆获得初始策略 → 在仿真中 RL 微调 → 少量真实机器人 fine-tune”的多阶段样本高效 pipeline。


5.4.2 仿真–现实(Sim2Real)差距

5.4.2.1 仿真逼真度限制

仿真器的角色是“便宜的现实世界”,但它永远不是现实本身。大量工作系统性地总结了仿真与现实之间的差异来源:(arXiv)

  1. 动力学建模误差
    • 摩擦系数、刚度、阻尼、关节间背隙等参数很难精确标定,只能近似。
    • 接触与碰撞建模往往简化为“刚体 + 接触模型”,而真实世界中存在弹性、微滑、粘滞等复杂现象。
    • 控制延迟、电机饱和、传感器滤波等在仿真中通常被弱化或忽略。
  2. 视觉渲染差异
    • 材质、纹理、光照、阴影、反射等真实世界非常复杂,仿真很难完全还原。
    • 真实相机有噪声、曝光变化、失焦、污渍遮挡,而仿真相机通常“干净又高清”。
  3. 环境与任务建模不完备
    • 仿真往往只建模任务相关物体,忽略线缆、地面摩擦不均、桌面杂物等“细节”。
    • 人类的干预和意外情况(误碰、临时移动物体)也难以在仿真中全面覆盖。

这些差异综合起来,就形成了所谓的 Sim2Real gap(仿真–现实差距):模型在仿真中表现优秀,一旦上到真实机器人就“水土不服”。

【图 5-4-3 占位】示意图:左侧为理想化仿真场景(光照均匀、物体简化),右侧为真实实验室照片(杂物、光照不均、线缆等),中间用箭头标记“Sim2Real gap”。

5.4.2.2 差距带来的问题

仿真–现实差距主要在几个层面上影响机器人学习与部署:(arXiv)

  1. 策略性能大幅下降
    • 在仿真中成功率 90% 的抓取策略,上机器人可能只有 20–30% 成功率。
    • 常见现象包括:抓取抓不牢、轨迹在真实世界会发生轻微碰撞、移动底盘在不同地面材质上打滑等。
  2. 策略学到“仿真特有技巧”
    • 策略可能利用仿真的物理漏洞(例如物体间穿透、不合理的反弹)完成任务,一旦换成真实物理,行为就完全不可行。
    • 这本质上是策略对仿真模型过拟合。
  3. 价值估计与不确定性偏差
    • RL 策略在仿真中学到的价值函数(Q 值)是针对“仿真 MDP”的,转移到真实 MDP 后,若状态–转移的统计特性变化,价值估计就会系统性偏差。
    • 在安全敏感任务中,这种偏差可能导致策略 高估 某些危险动作的安全性。
  4. 调试成本转移到现实
    • 若在仿真中只关注“任务是否完成”,而不关注姿态 margin、接触力等安全指标,那么把策略上到机器人后,故障诊断大部分还是得在现实世界进行,抵消了部分仿真收益。

5.4.2.3 弥合差距方法

为缩小 Sim2Real gap,研究者提出了多种互补策略,大致可以分为“改仿真”“** 改策略**”和“** 用真实数据矫正**”三条线:(arXiv)

  1. 域随机化(Domain Randomization)
    • 核心思想:不要企图做一个完全准确的仿真器,而是 在仿真参数空间中广泛随机,让策略在大量“略有不同”的环境中都能成功。
    • 在视觉上随机光照、纹理、噪声;在动力学上随机质量、摩擦、关节阻尼等。
    • 理论与实证结果表明,在一定条件下,基于域随机化训练的策略可以在现实环境中获得良好表现,且无需大量真实微调。(arXiv)
  2. 仿真参数标定与离线域优化
    • 利用少量真实数据进行系统辨识,估计更接近现实的物理参数,使仿真器更加“贴脸”。
    • 进一步的工作(如 Offline Domain Randomization)通过优化随机化分布本身,让样本集中在更现实、同时又能促进策略泛化的参数区域。(ScienceDirect)
  3. 视觉域自适应与风格迁移
    • 利用风格迁移网络或对抗学习,将仿真图像映射到“更像真实相机”的风格,或反过来把真实图像映射到仿真风格,减少视觉分布差异。
    • 再配合多域训练,使视觉编码器对纹理/光照变化不敏感,只关注几何与语义结构。
  4. 在真实环境中进行微调(Real-world fine-tuning)
    • 通常的做法是在仿真中预训练策略,然后用 极少量 真实交互数据进行 RL 或行为克隆微调,对残余差异进行修正。
    • 由于初始策略已经“八九不离十”,微调阶段可以采用更保守的、安全约束更强的 RL 算法,减少安全风险。
  5. 残差学习(Residual Learning)与混合控制
    • 把传统基于模型或规划的控制当作“基线”,RL 策略只学习一个 残差控制项,在基线轨迹附近做小幅调整。
    • 这样,仿真–现实差距主要通过残差来矫正,整个系统既继承模型控制的可解释性,也具备学习的灵活性。

【图 5-4-4 占位】结构示意图:展示 Sim2Real pipeline:左侧“仿真训练 + 域随机化”,中间“参数辨识 / 视觉域适配”,右侧“少量真实微调 + 残差控制”。


5.4.3 稳定训练与安全探索的需求

5.4.3.1 训练稳定性

在仿真中,训练不稳定最多是 loss 爆炸、策略崩掉,重启即可;在真实机器人上,训练不稳定可能直接演化为“机械臂乱甩”“底盘冲出安全区”。最新的机器人 RL 调研一直强调:稳定性是现实部署的前提,而不是锦上添花的优化项 。(年评审)

影响训练稳定性的典型因素包括:

  1. 价值估计和梯度估计的高方差
    • 稀疏奖励、多步回报导致价值估计噪声大,策略更新往往“忽左忽右”;
    • 在机器人连续控制任务中,这种震荡会反映为策略不断输出风格截然不同的动作模式,给硬件带来冲击。
  2. 策略更新步长过大
    • 若每次参数更新导致策略分布大幅变化,可能出现“上一轮学会抓,下一轮又忘了”的现象。
    • 像 PPO 这类限制策略变化幅度的算法,就是在稳定性与学习速度之间寻求折中。(arXiv)
  3. 多组件系统的耦合与非平稳性
    • 机器人系统往往包含低层 PID、阻抗控制、传感器滤波等模块,这些模块本身就是一个动态系统。
    • RL 策略在这个“黑箱控制栈”上再加一层决策,会形成高度耦合的闭环,训练中小小的参数变化都可能放大为真实运动的大幅改变。

工程上常见的稳健策略包括:

  • 使用 固定的回放缓冲区容量和采样策略,避免数据分布剧烈震荡。
  • 保守的学习率和梯度裁剪,配合周期性评估与“最优 checkpoint 回滚”。
  • 将 RL 策略限定为输出相对增量(Delta Pose / 小速度),把绝对稳定性交给底层控制器。

5.4.3.2 安全探索

安全强化学习(Safe RL)明确提出:在许多现实场景中,目标不是“在长期回报意义上平均安全”,而是 在整个训练和部署过程中尽量避免违反安全约束 。(机器学习研究杂志)

典型安全约束包括:关节角/力矩限制、最大速度、禁止进入的空间区域、与人保持安全距离等。围绕这些约束,已有大量 Safe RL 工作总结出几类主流方法:(cmp.felk.cvut.cz)

  1. 约束优化 / CMDP 方法
    • 将问题建模为有约束的 MDP(Constrained MDP),目标是在满足约束期望值不超过阈值的前提下最大化回报。
    • 典型算法如拉格朗日法、CPO(Constrained Policy Optimization)等,通过在优化目标中加入约束代价或拉格朗日乘子,实现“奖励–安全”的双目标平衡。
  2. 安全屏蔽(Shielding)与监督控制
    • 在 RL 策略外面再包一层“安全过滤器”:
      • 策略提出候选动作;
      • 安全模块检查该动作是否可能导致违反约束;
      • 若不安全,则投影到最近的安全动作或直接替换为安全备份策略。
    • 这类方法往往借鉴控制理论(如控制 barrier 函数)或形式化验证结果,为安全性提供一定的理论保证。
  3. 基于模型的安全探索
    • 先学习环境的不确定模型,再在“乐观但带约束”的未来预测中选择探索动作,尽量避免进入模型不确定但高风险的区域。
    • 一些新工作试图统一各类安全探索问题,提出“广义安全探索”的统一框架和元算法。(NeurIPS 会议论文集)

在机器人实践中,除了算法层面,还会配合大量“工程安全措施”,例如:

  • 设置物理限位、软限位和软件安全边界;
  • 初期训练时限制运动速度与操作区域;
  • 对明显危险的动作(例如大幅挥臂、靠近人脸)在动作空间中直接屏蔽。

5.4.3.3 监控与恢复

即使采用了安全 RL 算法,真实世界仍然不可避免地会出现异常行为。因此,一个可行的机器人学习系统通常需要设计 监控–诊断–恢复 的完整闭环:

  1. 多层次监控
    • 低层:驱动器电流、关节力矩、速度、温度等硬件状态;
    • 中层:机器人姿态、与障碍物的距离、接触力;
    • 高层:任务进展(是否卡在某步)、策略输出是否异常(例如突然跳到极端动作)。
  2. 异常检测与应急策略
    • 通过阈值检测、统计异常检测或学习到的异常识别模型,识别“违背常规”的状态和动作模式;
    • 一旦触发异常,立即执行预定义应急策略:比如急停、关节回缩到安全姿态、底盘减速并保持静止等。
  3. 安全恢复与环境重置
    • 在不损害安全的前提下,尽可能自动恢复到可继续训练的初始或中间状态,减少人力干预。
    • 对于长期学习系统,可以加入“自我诊断日志”:出错时详细记录传感器、动作、指令等信息,方便后续分析与算法改进。
  4. 人类在环(Human-in-the-Loop)监督
    • 对于高风险操作场景,通常要求有人类在场监督,并为系统提供“最终仲裁权”;
    • 在训练早期,可以通过人类“批准/否决”某些策略行为的方式,给策略附加一层基于人类偏好的安全约束(与第 9 章的 RLHF 有天然联系)。(arXiv)

【图 5-4-5 占位】系统结构图:从 RL 策略输出到机器人执行之间,插入“安全过滤器”“监控模块”“紧急停止/E-stop”几个方框,箭头表示信息流和控制流。


5.4.4 IL、RL 与 VLA 预训练的组合方式概览

这一小节从更宏观的角度总结:在现代机器人系统中,模仿学习(IL)、强化学习(RL)和大规模 VLA 预训练 往往不是互斥的,而是通过合理编排形成一个分阶段的训练流水线。

5.4.4.1 先模仿后强化

“先模仿再强化”是机器人学习中最常见、也最符合直觉的一种范式:先让机器人“看人怎么做”,再让它在安全范围内自己试着“做得更好”。大量综述与具体工作都验证了这种组合的有效性。(jenskober.de)

典型流程可以概括为:

  1. 收集专家示范
    • 通过遥操作、示教等方式采集高质量轨迹(第 7 章已详细讨论)。
    • 每条轨迹包含:视觉、机器人状态、动作序列、任务成功标记等。
  2. 行为克隆(BC)预训练策略
    • 将模仿学习视为监督学习:给定状态(视觉 + 机器人状态 + 语言指令),预测专家动作。
    • 得到一个 初始策略,已经能在大部分示范场景中较好完成任务,避免 RL 初期完全随机探索。
  3. 在仿真/现实中进行 RL 微调
    • 以 BC 策略为初始化,用 RL 在仿真或真实环境中进一步优化,以任务成功率或长期回报为目标。
    • RL 阶段可以纠正示范中的系统性偏差(人类操作未必最优),并适应新的环境变化。
    • 为了稳定性和安全性,常会加入 KL 正则或行为克隆辅助损失,防止策略偏离示范分布过远。
  4. 分层组合与技能复用
    • 在一些工作中,模仿学习先学出若干“技能原语”(例如抓取、推、开门),RL 在更高层面利用这些技能进行任务规划和组合,从而降低 RL 的搜索空间。

【图 5-4-6 占位】两阶段训练示意图:左侧块为“IL / BC 预训练策略”,右侧块为“RL 微调”,中间箭头表示以 BC 策略作为 RL 初始点。

5.4.4.2 自监督预训练

在 VLA 模型兴起之前,机器人学习中的预训练主要发生在视觉 backbone 上;而现在,更大尺度的自监督和多模态预训练已经延伸到“视觉–语言–动作统一表征”层面 。(arXiv)

几种典型的自监督 / 预训练方式包括:

  1. 视觉与语言的跨模态预训练
    • 先在互联网图文数据上进行 CLIP 风格的对比学习,或者在图文上训练视觉–语言模型,获得强大的语义理解能力(第 4 章已展开)。
    • 代表性工作如 DINOv2、CLIP 等,被直接用作 VLA 的视觉与语言 backbone。(维基百科)
  2. 基于机器人数据的“掩码建模 / 未来预测”
    • 利用大量无标签机器人视频和传感器数据,通过掩码帧重建、未来帧/未来状态预测等自监督任务,学习机器人特定的世界模型和时序表征。
    • 这类预训练使得模型对接触、物体运动等物理规律有更好的内在理解。
  3. 大规模 VLA 预训练
    • 例如 OpenVLA 在 Open X-Embodiment 汇集的约百万条跨机器人演示上进行预训练,使用预训练视觉和语言 backbone,将动作离散化为 token,在“视觉–语言–动作”统一 Transformer 中学习通用策略表示。(arXiv)
    • 预训练后,只需在新机器人或新任务上进行少量参数高效微调(如 LoRA),就能快速适应。
  4. 结合 RL 的自监督表示学习
    • 在仿真中一边用 RL 学策略,一边用自监督目标(如对比学习、动态预测)训练中间表示,使得策略在样本有限时仍能获益于更好的特征。

在这样的大背景下,IL 和 RL 不再孤立地直接操作原始图像和原始动作,而是建立在一个规模更大的预训练 VLA 表征之上,从而显著提升样本效率与泛化能力。

5.4.4.3 多范式结合

在前两小节的基础上,可以把现代机器人学习系统理解为一个“多层、多范式协同”的结构:

  1. 表征层:VLA / 世界模型预训练
    • 目标:学习一个对视觉、语言、机器人状态和动作都具有良好表达能力的“基础模型”。
    • 数据:互联网图文 + 多机器人示教轨迹 + 未标注视频。
    • 方法:自监督、对比学习、多任务预训练。
  2. 行为层:模仿学习整合人类经验
    • 目标:在给定基础表征的前提下,通过行为克隆让机器人直接“复制”人类或其他机器人在特定任务上的表现。
    • 数据:高质量示教轨迹。
    • 作用:迅速获得可用策略,覆盖常见工作模式,减少 RL 早期的危险探索。
  3. 优化层:强化学习与人类反馈微调
    • 目标:在安全约束下进一步提升策略性能、提高鲁棒性与泛化能力。
    • 方法:在仿真或现实环境中使用 PPO 等算法进行 RL 微调;结合人类偏好数据进行 RLHF,使策略在“好用”与“安全”之间达成平衡。(年评审)
  4. 系统层:与控制、规划模块协同
    • VLA 模型可以作为高层决策“脑”,与传统的运动规划、低层控制协同工作。
    • 多范式学习的结果最终要通过这一层与真实硬件对接,以满足实时性与可靠性要求(第 10 章会展开)。

整理成一句话:

预训练负责“看懂世界、听懂人话”,模仿学习负责“先做到及格”,强化学习负责“在安全边界内追求更优”。

【图 5-4-7 占位】三层结构示意图:底层为“表征预训练(VLA / 世界模型)”,中层为“模仿学习(BC/IL)”,顶层为“RL & 人类反馈微调”,箭头注明数据与梯度流向,并在顶端连到“真实机器人系统”。

这一节到这里为止,基本勾勒出了真实机器人学习面对的三大现实约束:数据成本、Sim2Real 差距和安全稳定性,同时给出了一套兼顾 IL、RL 与 VLA 预训练的综合解法,为后续关于具体 VLA 架构和训练细节的章节打下工程与方法论层面的基调。