引言: 白板问题
在自然界中,动物天生具备的学习能力远超我们当前的机器人系统。幼驹学会站立、行走乃至奔跑,并不是通过遵循硬编码的脚本,而是通过与环境互动、失败、调整并发现可行的方法。当动物受伤时,它会本能地调整步态以保护受伤的肢体。它不需要软件更新;它依赖的是随着时间积累起来的多样化运动技能储备。
机器人技术长期以来一直难以复制这种适应性。传统方法通常依赖于死板的、预定义的行为。即使是现代强化学习 (RL) ,虽然允许机器人通过试错来学习,但通常只专注于优化单一、特定的任务——比如尽可能快地向前走。如果机器人遇到了未经明确训练的情况,例如电机损坏或地面湿滑,那个单一的优化策略往往会彻底失效。
为了弥补这一差距,伦敦帝国理工学院的研究人员推出了无监督现实世界技能获取 (URSA) 。 这个新框架允许四足机器人从 tabula rasa——即一张白板——开始,在现实世界中自主发现各种各样的运动技能。

如上方的热图所示,URSA 使机器人能够建立一个不同行为的库 (由彩色圆点表示) 。通过学习不仅仅是一种移动方式,而是许多种方式,机器人获得了在没有人工干预的情况下适应物理损伤的韧性。在这篇文章中,我们将解构 URSA 的工作原理,它“好奇心”背后的数学原理,以及它如何使机器人能够在标准系统无法承受的损伤中幸存下来。
背景: 质量-多样性与现实差距
要理解 URSA,我们必须首先了解它所改进的范式: 质量-多样性 (Quality-Diversity, QD) 。
在标准优化中,目标是找到唯一的全局最大值——适应度景观上的最高峰。然而,QD 算法提出了一个不同的问题: “我们能找到多少种不同的高性能解决方案?”对于机器人来说,我们要的不仅仅是最快的步态;我们想要一个快速的步态、一个稳定的步态、一个低姿态匍匐的步态和一个高抬腿的步态。这种多样性是鲁棒性的关键。
现实世界的挑战
虽然 QD 算法很强大,但历史上它们一直被困在模拟环境中。运行 QD 算法需要数百万次试验来探索行为空间。在物理机器人上这样做是不切实际的,原因有二:
- 样本效率: 收集足够的数据需要连续运行数年,在此期间机器人早就磨损了。
- 安全性: 探索意味着失败。在模拟器中,机器人胡乱蹬腿没问题。在现实世界中,糟糕的行为会损坏昂贵的硬件。
URSA 通过将 QD 与 世界模型 (特别是 DayDreamer 架构) 和 受限强化学习 相结合来解决这些挑战。这使得机器人能够“想象”其行为的后果以加快学习速度,并应用严格的安全约束以防止自我毁灭。
URSA 框架
URSA 的核心理念是将技能的发现与技能的监督解耦。机器人并没有被告知“抬起左腿”;它只是获得了针对前进运动和稳定性的奖励,必须自己弄清楚具体的机械原理。

该架构如图 2 所示,作为一个连续的循环运行。让我们分解使该系统工作的三个关键支柱:
- 无监督技能发现 (“什么”)
- 安全感知优化 (“如何”)
- 基于想象的训练 (“哪里”)
1. 无监督技能发现
如果我们没有定义什么是技能,机器人怎么知道它发现了一项“新”技能?URSA 使用变分自编码器 (VAE) 解决了这个问题。
机器人不断观察自身的状态 (关节角度、身体方向) 。VAE 将这种高维数据压缩成紧凑的、低维的 潜在空间 (表示为 \(z\)) 。
- 编码: 机器人获取复杂的物理状态并将其映射到潜在空间中的一个点。
- 技能库: URSA 维护这些潜在点的“技能库” (\(\mathcal{R}\)) 。每当机器人尝试一种运动导致了与以往截然不同的状态时,它就会将这一新经验添加到其技能库中。
“技能”的定义本质上变成了: 机器人在潜在空间中试图重现的一个特定向量 \(z\)。
为了确保机器人不断学习新事物,而不是重复已知的舒适动作,URSA 采用了 核密度估计器 (KDE) 。 KDE 创建了机器人已掌握技能的概率分布。为了突破其能力的界限,系统从该分布中采样目标技能,实际上是要求机器人到达行为空间中代表性不足的区域。
在数学上,系统最大化技能分布的熵。通过试图使分布变平 (使其均匀) ,机器人被迫探索技能空间中未被充分代表的区域。研究人员推导出了该熵的下界,使其易于优化:

这个方程可能看起来很吓人,但它的功能很直观: 它推动机器人最大化其技能库中技能之间的距离 (多样性) ,同时确保它能够可靠地重现这些技能。
2. 安全感知优化
探索是危险的。为了防止机器人学习会导致摔倒或损坏齿轮的技能,URSA 将安全性视为硬约束,而不仅仅是负奖励。
这被框架化为 受限马尔可夫决策过程 (CMDP) 。 机器人必须最大化其奖励 (向前移动) ,但要受制于两个约束:
- 技能匹配: 机器人的行为必须匹配它试图执行的目标技能 \(z\)。
- 安全性: 机器人必须保持在一组“安全状态”内 (例如,保持直立) 。
优化问题使用拉格朗日方法求解。简单来说,系统拥有动态调整优先级的“预算”参数 (拉格朗日乘数) 。如果机器人有摔倒的危险,“安全性”乘数会飙升,迫使神经网络优先考虑保持直立,而不是快速移动或匹配技能。
目标函数如下所示:

这里,\(V(s, z)\) 是价值 (奖励) ,而减去的项是未能匹配技能 (后继特征 \(\psi\)) 和未通过安全检查 (\(C\)) 的惩罚。这确保了机器人只将安全的技能添加到其技能库中。
3. 基于想象的训练
为了高效学习,URSA 不仅依赖于物理运动。它使用了 DayDreamer 世界模型。
机器人构建了一个关于世界物理规律的神经网络模型。一旦这个模型足够准确,机器人就可以暂停其实体身体,并在 GPU 上瞬间运行数千条“想象”的轨迹。

如上图所示,系统采样一个技能 \(z\),然后世界模型 (\(\mathcal{W}\)) 预测一系列未来状态 (\(s_1, s_2, ...\)) 。策略 (\(\pi\)) 和批评者 (Critics) 根据这些梦境进行更新。这使得 URSA 仅用大约 5 小时的现实世界数据就能学会复杂的行为——这只是无模型方法所需数据的一小部分。
实验结果
研究人员在 Unitree A1 四足机器人上部署了 URSA。目标是观察机器人是否能在没有被明确告知如何协调腿部的情况下,学会以多种方式向前行走。
研究问题 1: 它学会了多样化的技能吗?
主要的对比基线是 DayDreamer (仅试图最大化奖励,通常导致单一的最佳步态) 和 DOMiNiC (另一种寻求多样性的算法) 。
结果令人震惊。虽然 DayDreamer 收敛到了单一的高性能步态,但 URSA 用各种各样的运动策略填满了行为空间。

图 3 展示了关节角度的覆盖范围。DayDreamer 智能体 (中) 只占据了空间的一小部分——它找到了一种走路方式并坚持使用它。URSA (左) 探索了巨大的关节配置范围。它自主学会了高抬腿步态、低姿态匍匐步态以及各种有节奏的模式。
研究问题 2: 终极测试——损伤适应
当事情出错时,多样性的真正价值才显现出来。研究人员模拟了机器人的严重损伤: 锁定关节、切断大腿电源,甚至禁用整条腿。
因为 DayDreamer 只知道一种走路方式,当这种特定的步态因损坏而在物理上无法实现时,它彻底失败了。然而,URSA 拥有成千上万种技能库。通过将 URSA 与一种称为 迭代试错 (ITE) 的快速适应算法相结合,机器人可以快速测试其技能库中的不同技能,看看哪些仍然有效。

在上方的模拟结果 (图 4) 中,请注意“无右后 (BR) 大腿”场景。基线 DayDreamer (粉色) 的性能暴跌至接近零。然而,URSA (蓝色条) 保持了高性能。它只是简单地切换到了一种较少依赖右后大腿的步态。
这种韧性在物理世界中同样得到了保持。

在现实世界测试中 (图 5,左) ,当腿部被禁用时,URSA 的表现始终优于 DayDreamer。中间的图表显示了适应过程: 最初,性能下降 (机器人试图正常行走并失败) ,但在仅仅几次试验 (迭代) 内,它找到了一种新的、有效的步态,性能得以恢复。
研究问题 3: 可控性
最后,人们可能会想,这些“多样化的技能”实际上是有用的,还是只是胡乱的挥舞。研究人员通过以向前速度和角速度为条件来测试这一点——本质上是问机器人: “你能在向左转的同时以精确的 0.5 米/秒的速度前进吗?”

图 6 显示了跟踪误差。深蓝色区域表示误差低,意味着机器人可以在广泛的指令范围内精确控制其速度。左图中的点分布证实了机器人学会了覆盖整个速度空间,从静止到快走,从直线到急转弯。
结论
URSA 框架代表了从僵化的、特定任务的机器人编程向 涌现式自主性 迈出的重要一步。通过结合受限 RL 的安全性、世界模型的效率以及质量-多样性算法的好奇心,作者创建了一个能够让机器人为意外情况做好准备的系统。
这项工作的主要启示是:
- 多样性即安全: 只知道一种移动方式的机器人是脆弱的。知道 1,000 种移动方式的机器人是鲁棒的。
- 无监督学习在硬件上行之有效: 我们不需要手写技能代码。有了正确的架构,机器人可以自己发现它们。
- 想象节省时间: 在世界模型中“做梦”可以实现深度学习所需的巨量数据吞吐量,而无需将物理齿轮磨成粉末。
随着我们迈向必须在非结构化环境中运行的机器人——从灾区到家庭——适应损伤和变化条件的能力将比单一指标上的原始性能更有价值。URSA 证明,通往这种适应性的道路在于让机器人以自己的方式去探索、学习和多样化。
](https://deep-paper.org/en/paper/2508.19172/images/cover.png)