Home / 机器人学习 / Day 0 · 入门导读

Day 0|机器人学习阅读入门:从一次示范到真实动作

系列首页 · 下一站:发展时间线 · 中英概念与符号速查

建议用时:15–20 分钟,包含文末自测。 机器人学习论文常把视觉、策略、轨迹、控制与硬件放在同一个系统中。理解它们的接口,比先记住模型缩写更有用。这篇导读帮助你回答三个问题:机器人实际看见什么,模型输出的动作交给谁,学习信号从哪里来?

一、用“把红色方块放进托盘”贯穿全文

设想一台固定在桌边的机械臂。桌上有红色方块和托盘,我们希望它识别目标、靠近、抓取、搬运并放下。相机、夹爪、关节编码器和底层控制器已经存在。以下设置都是教学构造,不代表某篇论文的实验平台。

先把系统连成一条可读的概念地图:传感器产生观测,策略根据观测和任务产生动作,底层控制器把动作要求变成执行器命令,真实机械系统运动,再形成新的观测。 示范、奖励与环境模型可以在学习阶段帮助策略改进;它们并不都必须出现在每一种方法里。

例如,策略可能每次输出“夹爪在基座坐标系中向右移动两厘米,并保持张开”。控制器随后求解怎样驱动各个关节。另一篇论文可能直接输出关节力矩。虽然都写作 action,实际承担的工作相差很大。

因此,读任何“端到端”机器人系统,先问清楚它从哪里开始、在哪里结束。图像到期望末端位姿,与图像到电机力矩,是不同的接口;两者都可能被作者称为端到端学习。

二、观测、状态和动作是三件事

观测是机器人当下拿得到的信息

观测(observation)可能包括相机图像、关节角、关节速度、夹爪开合、力传感器读数和语言指令。状态(state)则是我们用来描述环境与机器人物理情形的变量,可能还包含不可直接测得的摩擦、方块速度和接触状态。观测速查

一张照片看不见方块底面的摩擦,也可能看不见被夹爪挡住的目标。机器人因此常面对部分可观测(partially observable)问题。加入历史图像、记忆或状态估计可以帮助判断,但不意味着所有隐藏量都能准确恢复。

训练时模拟器可能直接提供物体真实位姿,部署时却只有相机。这属于信息权限差异。若论文用了训练期的特权信息(privileged information),需要说明部署策略是否仍依赖它,不能把模拟器真值默认为真实机器人可用输入。

动作必须连同单位、坐标系和频率一起读

动作(action)是策略交给系统的指令。它可以是关节角、关节速度、力矩、末端位姿增量、夹爪命令,或一段未来动作序列。动作速查

“向右两厘米”至少需要四个补充:相对谁的右;是一次增量还是绝对目标;多久执行一次;允许的速度与范围是多少。每秒输出十次的两厘米增量,与每秒输出一百次,可能导致完全不同的运动。

有些论文使用动作块(action chunk),一次预测未来多个时刻的动作。实际系统可以只执行其中一部分,再根据新观测重新预测。一次输出较长序列能减少某些抖动或计算开销,但执行期间缺少反馈也可能增加受扰风险。ACT与 Diffusion Policy在这类接口上很值得比较。

三、策略、控制器与动力学分别做什么

策略(policy)依据任务和观测选择行动。为表示历史依赖,我们暂写:

at=πθ(o≤t,g).a_t=\pi_\theta(o_{\leq t},g).

o≤to_{\leq t} 表示到当前为止的观测历史,gg 表示目标或指令,θ\theta 是策略参数。这里用确定性写法介绍接口;随机策略可以写为从 πθ(⋅∣o≤t,g)\pi_\theta(\cdot\mid o_{\leq t},g) 中采样。

控制器(controller)把期望动作转为可执行命令,并常利用实际误差持续修正。例如策略给出期望夹爪位置,控制器结合关节测量计算电机命令。策略与控制器有时合在一个学习模块里,有时分成不同频率的层级;“学到策略”本身不说明底层控制是否被替换。反馈控制

动力学(dynamics)描述施加命令后真实系统如何演化。一个离散时间的抽象写法是:

st+1=fenv(st,ut,wt).s_{t+1}=f_{\mathrm{env}}(s_t,u_t,w_t).

utu_t 是实际控制输入,wtw_t 概括扰动等未建模因素。本例中的策略动作 ata_t 与执行器输入 utu_t 可以不同:前者是末端目标,后者可能是关节力矩。若论文直接输出力矩,它们也可能在接口上重合。

学习动力学模型(learned dynamics model)得到的 f^\hat f 则试图预测后果,供规划或训练使用。预测方块会滑到哪里,与决定该不该推动方块,是不同功能。世界模型(world model)还可能在隐空间中预测与决策有关的未来,并不一定重建每一个物理变量。动力学速查

四、示范与奖励提供不同的学习信号

示范告诉我们某个人或系统怎样做

示范(demonstration)记录专家行为,例如人用遥操作控制机械臂,得到图像、关节信息与对应动作序列。模仿学习(imitation learning)利用这种行为信息学习策略。示范 · 模仿学习

最直观的行为克隆(behavior cloning,BC)把观测作为输入、示范动作作为目标,做监督学习。对一种简单的连续动作回归设置,可以写:

LBC(θ)=E(o,a)∼D[∥πθ(o)−a∥2].\mathcal{L}_{\mathrm{BC}}(\theta) =\mathbb{E}_{(o,a)\sim\mathcal{D}}\left[\|\pi_\theta(o)-a\|^2\right].

这里的 D\mathcal{D} 是示范数据集。这只是教学用的平方误差形式,实际方法也可用似然、扩散目标或其他损失。学习的是“这种情况下专家怎样动”,不需要先给每一步设计奖励。行为克隆速查

问题在于机器人执行时会到达示范没有覆盖的情形。夹爪稍微偏了一点,下一张图就可能陌生,随后误差继续扩大。这叫分布偏移(distribution shift)。DAgger 让当前策略运行,并在它实际到达的状态上取得专家动作标签,再聚合数据;关键是补上会遇到的情形,并不只是多录几条顺利示范。读 DAgger

同一个方块可以从左侧或右侧绕过去。若把两种合理动作直接用单一平方误差模型平均,平均路径可能正好撞上障碍物。多模态动作分布由此成为重要问题。不过,采用生成式策略也不自动保证不会碰撞,仍需验证它在实际输入下产生了什么。

奖励告诉我们怎样评价结果

奖励(reward)是环境提供或系统设计的标量反馈。强化学习(reinforcement learning,RL)利用后果改进行为,以优化长期回报。方块任务可以给成功放入托盘奖励,也可以加入距离、碰撞或动作平滑项;奖励如何定义会改变学到的行为。

奖励并不等于“正确动作标签”。同一次成功抓取,可能有许多可行轨迹。奖励设计不当时,机器人还可能找到高分但不符合任务意图的行为,所以论文需要同时报告真实任务成功情况。

示范与奖励可以组合:先模仿得到能用的初始策略,再用交互回报改进;也可以从示范推断成本或奖励,即逆强化学习(inverse reinforcement learning,IRL)。行为往往不能唯一确定背后的奖励,恢复结果还依赖建模假设。Apprenticeship Learning · MaxEnt IRL · DAPG

“模仿/强化”主要区分学习信号,“离线/在线”主要区分训练时能否继续收集交互。用固定示范做 BC 是一种组合,用固定奖励数据做离线 RL 是另一种。不要把“有数据集”一律叫模仿学习,或把“机器人自己动过”一律叫在线训练。

五、DMP 为什么容易与动力学模型混淆

动态运动基元(dynamic movement primitives,DMP)把动作表示成具有结构的运动生成系统。它可以从示范中学习形状,并通过目标或时间尺度调整期望运动。DMP 速查

在方块任务中,先只考虑“从起点移动到抓取点”这一段。示范给出期望路径,DMP 学习这段运动的形状;执行时不断生成期望位置或速度,再交给跟踪控制器。它主要回答“希望怎样运动”。

物理动力学模型则回答“给这台机械臂某个力矩,它实际上怎样运动”。两者都可以写成动态变化的方程,但角色不同。DMP 的动态系统不等于完整的机器人动力学模型,也不等于一定在做强化学习。

这个区别关系到安全边界:期望轨迹趋向目标,不代表真实机器人必然无碰撞、不会超过力矩限制,或能在任意速度下跟踪。桌上增加障碍物时,还需要处理路径与接触约束。

本系列 DMP固定讨论 2002 年论文的具体方程;后来的常见教程形式与原始写法并不完全相同。导读不把它们混写。之后可以读 ProMP,理解如何用概率方式表示一族示范运动,再读 PILCO或 PETS,对照学习环境预测模型的路线。

六、从模拟器到真实机器人要跨过什么

仿真到现实迁移(simulation-to-real transfer,sim-to-real)利用模拟环境中的训练或验证帮助真实系统工作。模拟器可以便宜、并行地收集数据,但视觉、摩擦、质量、接触、传感器噪声与通信延迟都可能和现实不同。Sim-to-real 速查

域随机化(domain randomization)在训练中改变选定条件。例如随机背景、灯光和相机参数,帮助视觉策略减少对单一外观的依赖;随机质量、摩擦和延迟,则关注动力学差异。域随机化

在方块例子里,训练时只改变桌布颜色,不能据此声称策略已经适应所有接触动力学。随机范围太窄可能覆盖不到真实情形,太宽也可能增加学习难度或引入不合理环境。迁移效果需要在目标硬件与明确测试条件下观察。Domain Randomization · Dynamics Randomization

系统辨识(system identification)尝试从测量中估计实际系统参数;在线适应(online adaptation)在运行中利用新信息调整估计或行为。它们与随机化可以互补,但“适应”不一定意味着在部署时更新全部网络参数。

再往后,视觉语言动作模型(vision-language-action model,VLA)将视觉、语言与动作表示连接起来,使“把红色方块放进托盘”的语言指令成为策略输入。它扩大了条件表达和数据利用方式,仍然要面对观测缺失、动作单位、控制频率与真实接触这些老问题。RT-1 · RT-2 · OpenVLA

七、用一个失败结果练习读论文

假设模型在留出的图像上预测示范动作误差很低,却只成功搬运了一半方块。不要立刻把两项指标当成矛盾:

  • 离线动作误差只评价给定观测上的预测;闭环执行还会改变下一步观测。
  • 数据切分如果让同一条轨迹的相邻帧同时进入训练与测试,可能高估泛化能力。
  • 成功率要说明试验次数、初始位置、物体变化、失败重置和人工干预,不能只给一段最好看的视频。
  • 仿真成功、同一实体方块成功、换材质或换机器人成功,是不同范围的结论。

这些是阅读时应检查的问题,不是断言某篇论文存在这些缺陷。还要区分训练消耗了多少真实交互、多少人类示范,以及部署是否依赖专门标定或额外传感器。

把动作块的两条时钟算清楚

继续用搬方块的教学系统。控制器每秒接收20个动作,即每步0.05秒;模型预测16步,但只执行前8步再看图。因此预测时域是0.8秒,实际无新视觉反馈的执行段是0.4秒,不应把二者都叫“模型频率”。

若每次推理另耗0.08秒,同步执行的一轮约需0.48秒,只能每秒重新规划约2.08次。控制器仍可按20Hz保持或插值目标。异步计算可以把部分等待藏在旧动作执行中,但新块必须按时间戳跳过已过期动作;吞吐增加不意味着观察永远新鲜。动作块的基本接口见Diffusion Policy原文,等待与队列机制见SmolVLA §3.3。上述数值是自构手算,不是两篇论文的实测。

为同一个成功率写一张预算单

“用了20条示范”还不完整。至少另外记录:多少在线真机转移、多少次人工接管、多少复位时间、多少仿真或合成轨迹、多少训练与推理计算。一个由人类多次救回的训练回合,不能与无接管的独立测试回合共用成功分母。HIL-SERL原文§3.4—3.5把纠正视为实际转移,正适合练习追踪这笔数据账。

第一次阅读可以只抄四行:部署观测;动作单位/坐标/频率;真实、模拟与专家数据各多少;无接管测试怎样定义。先把接口写对,再推公式,通常比先背模型组件更容易发现不公平比较。

八、符号与接口速查

符号 本篇约定 使用前检查
st,ots_t,o_t 物理状态、可用观测 训练与部署的信息权限是否相同
gg 任务目标或指令 DMP 中常特指终点,别自动解释成语言
at,uta_t,u_t 策略动作、实际控制输入 是否同一层级,单位与频率是什么
q,q˙q,\dot q 关节位置、关节速度 转动关节与移动关节的单位不同
τ\tau 机器人动力学中常指力矩 DMP 文献也常用它表示时间尺度
πθ,f^\pi_\theta,\hat f 策略、学习得到的预测模型 决策规则与后果预测不能互换
D,L\mathcal{D},\mathcal{L} 数据集、训练损失 损失下降不等于真实任务一定成功

九、接下来的阅读路线

先读发展时间线,再根据兴趣进入一条主线:

  1. 想理解“怎样从示范得到动作”:从 DMP、DAgger、ProMP读到 robomimic、Diffusion Policy和 ACT。
  2. 想理解“怎样用交互或模型改进”:从 PILCO、SAC、PETS读到 TD-MPC。
  3. 想理解“怎样部署并扩展任务”:从 域随机化、动力学随机化进入 RT-1和 OpenVLA。

如果坐标系、运动学和控制接口仍让你卡住,可以先读机器人经典基础 Day 0,不必为了跟上学习模型而跳过物理含义。

十、三分钟自测

1. 一套方法从示范学习 DMP,再把期望轨迹交给控制器。它一定学到了机器人动力学吗?

没有。它学习的可能只是期望运动生成器;真实受力后的运动规律与底层控制仍由其他部分负责。

2. 策略输出“夹爪移动 0.02”,还有什么必须确认?

至少要确认单位、坐标系、绝对目标还是相对增量、控制周期和执行约束。单个数字无法确定真实动作。

3. 模拟训练随机了灯光与纹理,是否足以证明真实抓取可靠?

不能。接触、延迟、摩擦与观测误差仍可能不同;需要明确目标硬件上的测试与失败范围。

4. 50Hz动作输出是否表示每20毫秒都根据新图像作了决定?

不一定。它可能在执行旧图像产生的动作块,或者由低层插值填满命令。需要查看图像时间戳、推理触发时刻、每块实际执行长度与返回后的对齐方式。

资料与阅读边界

本篇的方块任务、接口与损失小例子是教学构造。示范运动生成可对照 DMP 原论文,访问状态上的专家标注可对照 DAgger 原论文。导读不代表重新运行过机器人实验;原有文章关于版本、原文可得性、未核实数据和未复现的说明继续有效。

继续阅读发展时间线 · 打开中英概念与符号速查