一句话定位

ABS(Agile But Safe)用双策略架构打破四足机器人「敏捷 vs 安全」的固有权衡:一个用强化学习训练到极限速度的敏捷策略负责跑,一个基于 Hamilton-Jacobi 可达-规避(reach-avoid, RA)理论、以模型无关方式学出的策略条件化 RA 价值网络实时判危并接管到恢复策略——三者在 Unitree Go1 上全部离线仿真训练、onboard 部署,实机峰值速度达到 3.1 m/s 且保持避障安全。

背景与定位

四足机器人在杂乱环境中导航长期存在「敏捷」与「安全」的两难:早期工作要么用模型预测控制(MPC)等模型式方法显式施加避障约束换取安全保证,但计算负担和模型失配把速度限制在 <1 m/s(如 anymal-parkour-agile-navigation 之前的经典规划式方法);要么专注解耦式「高层导航规划 + 底层速度跟踪」,规划器为了保安全不得不保守,使敏捷性无法完全释放(extreme-parkour-legged-robotsrobot-parkour-learning 等敏捷穿越工作则反过来只顾敏捷、不考虑与人/动态障碍物的碰撞)。ABS 的路线是端到端目标到达式(goal-reaching)敏捷策略 + 事后模型无关安全屏蔽:不做导航/控制解耦,而是让 RL 策略直接学会带避障能力的敏捷运动技能,再用一个从策略 rollout 数据里学出的、条件于该敏捷策略的 RA 价值函数做实时风险判定和兜底恢复,将安全强化学习的「分层屏蔽」范式(safety critic + backup policy)和控制理论的 HJ 可达性分析结合起来,且全程模型无关、纯数据驱动。论文发表于 RSS 2024,入围 Outstanding Student Paper Award(前三)。

模型架构

ABS 包含四个独立训练、部署时协同工作的神经网络模块,均为 MLP/CNN,不涉及 transformer:

  • 敏捷策略 π_Agile:全连接 MLP(隐藏层 [512, 256, 128]),输入观测 o_Agile = [足端接触 c_f(4维)、机体角速度 ω、投影重力 g、目标指令 G_c(相对位置+朝向)、剩余时间 T-t、关节位置 q、关节速度 q̇、上一帧动作、11 维外感知(射线距离的对数值)],输出 12 维关节目标位置,由 PD 控制器(K_p=30, K_d=0.65)转换为关节力矩。
  • Reach-Avoid 价值网络 V̂:输入精简为 o_RA = [机体线/角速度 v,ω;目标 (x,y) 相对位置;11 维射线外感知](不含关节级信息,为降维防止过拟合),拟合策略条件化的时间折扣 RA 值,用于线上判定安全阈值 V_threshold=-0.05 并给恢复策略提供梯度。
  • 恢复策略 π_Recovery:与敏捷策略同架构 MLP [512,256,128],动作空间同为 12 维关节目标,但不需要外感知输入,观测为 o_Rec = [c_f, ω, g, 目标 twist 指令 tw^c(仅非零分量), q, q̇, 上一帧动作],目标是快速跟踪一个由 RA 价值函数在线搜索出的、能降低 V̂ 且尽量靠近目标的 twist 指令(线速度 v_x^c, v_y^c + 角速度 ω_z^c)。
  • 射线预测网络(Ray-Prediction Network):微调预训练 ResNet-18,输入深度图(下采样到 160×90,取对数),输出 11 维射线距离对数值(MSE 回归),把高维带噪深度图像转成低维、可解释、便于策略学习的外感知表征。

关键设计:11 条射线水平地从机体前方 [-π/4, π/4] 范围内均匀发出(类似稀疏 LiDAR),策略与 RA 网络训练时用仿真真值射线距离,部署时由射线预测网络从深度图预测。动作空间对敏捷/恢复策略完全一致(12 维关节目标),使二者可以无缝切换。

数据

ABS 的”数据”全部来自仿真 rollout,无真实世界采集的训练数据:

  • 地形与障碍物:训练地形随课程程度(难度 0→9)在平地、粗糙地形、低矮绊脚块之间随机采样,粗糙/绊脚块高度差随难度从 0cm 增到 7cm;障碍物为半径 40cm 的圆柱,每个 episode 在覆盖起点和目标的 11m×5m 矩形内随机放置 0~8 个,难度越高障碍越多。
  • 域随机化(Table II):关节位置噪声 U(-0.01,0.01)rad、关节速度噪声 U(-1.5,1.5)rad/s、角速度噪声 U(-0.2,0.2)rad/s、投影重力噪声 U(-0.05,0.05)、log 射线距离噪声 U(-0.2,0.2);动力学侧 ERFI-50(Campanaro et al. 提出的电机力矩扰动,随难度线性增强至 0.78N·m×难度级)、摩擦系数 U(0.4,1.1)、附加机体质量 U(-1.5,1.5)kg、关节位置零偏 U(-0.08,0.08)rad;episode 长度 U(7,9)s,初始朝向 U(-π,π),初始 twist U(-0.5,0.5)m/s(或rad/s),目标位置 x_goalU(1.5,7.5)m、y_goalU(-2,2)m,目标朝向为机体到目标连线角 + U(-0.3,0.3)rad 噪声。其中 illusion(射线距离超过 dgoal+0.3 时随机覆写为 U(dgoal+0.3, 射线距离),模拟未见过的墙面几何)和 ERFI-50 是两项被证明对 sim-to-real 至关重要的随机化(消融实验:无 illusion 会导致贴墙颤抖,无 ERFI-50 会导致跑动中磕头触地)。
  • RA 价值网络训练数据:用训练好的敏捷策略在(最高难度级的障碍分布下)rollout 20 万(200k)episodes 采集轨迹,离线两阶段训练(先采集轨迹,再拟合价值网络),区别于 Hsu et al. 的在线训练方式。
  • 射线预测网络训练数据:用敏捷策略在仿真中 rollout,收集深度图-射线距离配对数据,共采集 25 万(250k)张标注图像;为提升泛化,采集时把训练障碍物(圆柱)替换为花瓶、人、锥桶、圆柱、橡树、办公椅、折叠椅、餐椅等多种真实形状物体(Fig. 5),但受限于仿真侧解析射线追踪只支持简单几何(圆柱近似),无法在策略/RA 训练阶段使用多样物体几何。
  • 数据增强(仅用于射线预测网络,弥补真实深度相机噪声远高于仿真渲染图像):水平翻转、随机擦除、高斯模糊、高斯噪声;部署时额外做深度图孔洞填充(hole filling)。

训练方法

  • 仿真器与并行度:GPU 版 Isaac Gym,1280 个环境并行,PPO 优化(legged_gym + rsl_rl 框架)。
  • 敏捷策略奖励:r = r_penalty + r_task + r_regularization。惩罚项为碰撞硬惩罚 -100×1(非期望碰撞,指机体/大腿/小腿碰撞及足端水平碰撞);任务项含软/紧位置跟踪(σ_soft=2m, T_r=2s;σ_tight=0.5m, T_r=1s)、朝向跟踪(σ_heading=1rad, T_r=2s,且距目标 >σ_soft 时关闭)、站立项(到达目标后鼓励站姿)、敏捷项 r_agile = max(ReLU(v_x/v_max)·1(正确方向), 1(d_goal<σ_tight))(v_max=4.5m/s 为硬件手册给出的不可达上界,用于鼓励尽量高速)、停滞惩罚 r_stall;正则项覆盖竖直速度、翻滚/俯仰角速度、倾斜、力矩平方及超限惩罚、关节速度平方及超限惩罚、关节位置超限惩罚、关节加速度平方、动作变化率平方、“飞行”(无地面接触)惩罚。用目标到达式(goal-reaching)而非速度跟踪式(velocity-tracking)公式训练敏捷策略是本文相对 Rapid Locomotion(Margolis et al. [48],SOTA 敏捷速度跟踪基线)等工作的关键选择,理由是它不解耦导航与控制、能完全释放学到的敏捷性,且经验上带来更好的 sim-to-real 步态(步态从 near-trot 变为 gallop)。
  • RA 价值网络训练:基于时间折扣 RA Bellman 方程(离散化 γ_RA=0.999999 以逼近真值 V*_RA),失败指示函数 ζ(s)=2·1(碰撞)-1 为非 Lipschitz 连续,论文用 hindsight 方式软化:碰撞发生前 10 个时间步的 ζ 被重新标注为 -0.8, -0.6, …, 0.8, 1.0(消融证明该软化显著提升安全性,见评测部分);目标函数 l(s)=tanh(log(d_goal/σ_tight))。
  • 恢复策略训练:域随机化在敏捷策略基础上调整——episode 长度改为 2s,增加初始横滚/俯仰角 U(-π/6,π/6)rad,初始 v_xU(-0.5,5.5)m/s、初始角速度U(-1.0,1.0)rad/s(覆盖更贴近触发恢复的高危状态分布),采样 twist 指令范围 v_x^cU(-1.5,1.5)m/s、v_y^cU(-0.3,0.3)m/s、ω_z^c~U(-3.0,3.0)rad/s;奖励含线速度/角速度跟踪、存活项、姿态项(引导切回敏捷策略时姿态平滑衔接);允许膝盖触地以实现最大减速。
  • 策略切换与在线优化:部署时若 V̂ ≥ V_threshold=-0.05,在线求解 twist 优化问题 argmin d_goal^future s.t. V̂([tw; G_xy; R]) < V_threshold(式21),用带拉格朗日乘子的梯度下降求解,实践中 5 步内收敛,满足实时部署;否则敏捷策略接管。
  • LAG 基线:用 PPO-Lagrangian 在敏捷策略同一套公式(奖励/观测/动作空间)上训练端到端安全 RL 策略,作为对照组衡量”不引入外部安全模块、仅靠约束优化”能达到的敏捷-安全边界。

Infra(训练 / 推理工程)

  • 训练硬件:单张 NVIDIA RTX 4090。敏捷策略每次迭代耗时约 1.5s,约 800 次迭代(约 20 分钟)收敛,但为公平对比统一训练到 10000 次迭代(约 4 小时);LAG 策略需约 2500 次迭代(约 1 小时)收敛;恢复策略收敛远快,500 次迭代内(约 10 分钟)即接近最优;RA 价值网络与敏捷策略 rollout 并行训练,耗时约 40 分钟;训练期间 GPU 显存占用低于 5GB。射线预测网络训练耗时因配置而异,未给出统一数字。
  • 推理硬件:Unitree Go1 EDU 四足机器人,机载 Jetson Orin NX (16GB) 计算 + ZED Mini 双目相机(深度与里程计),Unitree 自带 PD 控制器(K_p=30, K_d=0.65)。
  • 控制频率(据论文 Fig. 2 架构图标注):关节级 PD 控制约 200Hz;敏捷/恢复策略推理、RA 价值网络、状态估计器约 50Hz;射线预测网络约 40Hz(实际部署中多任务共享算力时更新频率可能更低)。
  • 感知网络推理延迟(Table VIII,Jetson Orin NX 单独测射线预测推理,ResNet-18,160×90 输入):EfficientNet-B0 19ms(MSE 3.627e-2)、MobileNet-V2 15ms(MSE 3.387e-2)、ResNet-34 14ms(MSE 3.081e-2)、ResNet-18(部署所用)9ms(MSE 3.238e-2)、ResNet-18 无预训练 9ms(MSE 3.526e-2)、ResNet-18 无数据增强 9ms(MSE 3.393e-2)——预训练权重和数据增强对精度贡献显著,最终选 ResNet-18 平衡精度与实时性。

评测 benchmark

仿真基准(Table III,8 障碍物分布在 5.5m×4m 矩形内,比训练时 11m×5m 更密集,每设置 3 个随机种子 × 1 万条随机 episode),对比 ABS / 纯敏捷策略 π_Agile / LAG 各自的激进(-a)、常规(-n)、保守(-c)三档:

  • ABS-n:成功率 79.1±4.4%,碰撞率 5.7±2.9%,超时率 15.2±2.1%,成功案例峰值速度 3.48±0.06 m/s,成功案例平均速度 2.08±0.01 m/s。
  • π_Agile-n(无安全屏蔽):成功率 77.3±4.2%,碰撞率 21.7±3.9%(显著高于 ABS),峰值速度 3.55±0.04 m/s,平均速度 2.39±0.04 m/s。
  • LAG-n(PPO-Lagrangian 安全 RL):成功率 77.4±11.5%,碰撞率 9.1±1.8%,但峰值速度仅 2.45±0.07 m/s、平均速度仅 1.41±0.03 m/s,明显慢于 ABS。 结论:无论怎么调奖励权重或用安全约束 RL,敏捷性与安全性都在一条边界上此消彼长;引入 RA 价值+恢复策略后 ABS 能突破该边界——安全性接近甚至优于 LAG,敏捷性接近纯敏捷策略。

真实世界测试(3 个场地各 10 次试验,Fig. 9)

场地方法成功碰撞平均耗时
室内窄暗走廊 Indoor(a)ABS9/101/105.91s
π_Agile only7/103/105.06s
LAG8/102/106.80s
室内家具大厅 Indoor(b)ABS10/100/104.75s
π_Agile only7/103/103.74s
LAG9/101/106.13s
户外操场 OutdoorABS10/100/104.46s
π_Agile only9/101/104.15s
LAG9/101/106.05s

峰值速度实测:ABS 3.1 m/s vs LAG 2.1 m/s(重复测速)。Indoor(a) 中 ABS 唯一一次碰撞是由于走廊过暗导致射线预测网络”漏检”障碍物(论文承认的视觉系统局限)。

与 SOTA 敏捷速度跟踪策略对比(Table IV,目标到达式 π_Agile vs Rapid Locomotion [Margolis et al. 2022] 速度跟踪式,公平对比:相同正则奖励+动作空间,去掉 Rapid 的时序信息与系统辨识):步态模式 gallop vs near-trot;最大不可控自由度数 1 vs 3;仿真峰值速度 4.0 vs 4.1 m/s(接近);仿真峰值力矩 23.5 vs 35.5 N·m(本文更省力);仿真峰值关节速度 22.0 vs 30.0 rad/s;真实世界峰值速度 3.1 vs 2.5 m/s(本文更快);且本文策略无需高层速度指令即可原生带避障能力、支持分布内目标转向。

消融实验

  • V_threshold 从 -0.001 扫到 -0.1(Table V),成功率/碰撞率/速度均无显著变化(-0.05 时成功率 79.1±4.4%、碰撞率 5.7±2.9% 为选定值),验证框架对阈值选择鲁棒。
  • 软化失败指示函数 ζ 的效果(Table VI):ABS 加软化后碰撞率 5.7±2.9% vs 不加软化 14.7±1.5%(碰撞率翻倍以上),验证 Lipschitz 连续化对安全性至关重要。
  • RA 屏蔽是否能迁移到 LAG(Table VII):LAG 原始碰撞率 9.1±1.8% → 加 RA 屏蔽后降至 2.8±1.2%,但平均速度从 1.41±0.03 降到 1.22±0.08 m/s,证明 RA+恢复策略框架具有通用性,可迁移屏蔽任意目标到达式策略。

创新点与影响

  • 首次(据作者声明)验证四足机器人在动态/静态混合障碍环境下实现峰值 3.1 m/s 的无碰撞导航,且在密集对抗性动态障碍(人腿摇摆、婴儿车、扔球)下仍保持约 1.5~2.5 m/s 的安全高速运动。
  • 提出策略条件化(而非策略无关的全局)reach-avoid 价值网络:相比 Hsu et al. 的在线全局 RA 值学习,避免了对整个动作空间求最小值的计算负担,可离线两阶段训练(先 rollout 后拟合),并且价值网络的梯度可直接指导恢复策略的 twist 优化,形成闭环。
  • 用低维、可解释的射线距离表征(而非直接把深度图像喂给策略/价值网络)解耦感知去噪与策略学习:射线预测网络单独用数据增强应对真实深度图像噪声,策略与 RA 网络可用低维输入更快训练、更好泛化。
  • 量化证明”敏捷-安全的权衡边界”客观存在(调奖励权重或用 Lagrangian 安全 RL 都在同一条边界上移动),而 ABS 的外部屏蔽模块是目前少有的能够整体突破该边界(同时提升安全与保持敏捷)的方案。
  • 论文自陈的局限:1)障碍物过密形成局部极小值时容易失败(体现为较高的超时率),需要记忆模块或全局提示等后续改进;2)RA 价值只在静态障碍物上训练,只能泛化到准静态环境,若动态物体速度超过恢复策略的速度上限仍可能碰撞;3)目前只支持无腾空相的 2D 平面运动,未处理楼梯/台阶等 3D 地形(运动技能与避障能力在此耦合,问题更难);4)未能融入 RMA 类隐式系统辨识/时序 embedding 技术,因为策略切换会使 embedding 分布外、且难以融入 RA 模块;5)视觉系统仍需改进,暗走廊场景下的漏检是实机唯一一次碰撞的原因,未来可加装更多机身相机或使用事件相机应对高速动态场景(如躲避来球)。

原始链接

一手源存档(sources/)