跳转到内容

域随机化与扰动建模

仿真中的单组参数只能代表一类运行条件。域随机化(Domain Randomization)通过在训练中改变模型或环境条件,使策略接触一组有差异的任务。本篇关注四足运动中的动力学、观测和执行误差,并区分参数不确定性与外部扰动。

域随机化的早期研究包括对渲染条件的随机化,参见原始论文。四足动力学随机化需要围绕自身误差来源设计,不能直接沿用视觉随机化的参数选择。

将影响环境的参数记为 ξ\xi,训练时从分布 p(ξ)p(\xi) 中采样,可将目标写为:

J(θ)=Eξp(ξ)[Eπθ,ξ[tγtrt]]J(\theta)=\mathbb E_{\xi\sim p(\xi)}\left[\mathbb E_{\pi_\theta,\xi}\left[\sum_t\gamma^t r_t\right]\right]

这个目标强调给定分布下的平均表现,并不保证每个参数组合都成功,更不等于最坏情况性能保证。概率很低的困难条件可能对平均目标贡献很小,因此还需单独报告边界条件的失败率。

随机化应以合理的名义模型为中心。已知的单位错误、关节映射错误或固定偏差应先修正;扩大随机范围不能替代这些校验。

对象可能的误差来源设计注意事项
质量与质心负载变化、装配差异质量、惯量与质心应保持物理一致性
接触条件地面材质、足端磨损核对实际接触模型及参数组合方式
执行器响应增益偏差、阻尼、摩擦和带宽区分静态偏差与动态响应
关节零位与测量标定误差、噪声与漂移区分持续偏置和逐帧噪声
时序传感、通信、推理和执行延迟明确延迟位于数据流的哪个位置
外部扰动短时外力、冲量或负载变化记录作用位置、方向、持续时间与单位

质量和惯量不能任意独立改变到不一致的程度。修改质量分布后,应按建模方式更新相关量并确认引擎采用了新值;有些属性不能在任意时刻直接写入后立即生效。

可从测量、模型辨识、厂家资料或已有实验得到名义值与不确定范围;缺乏依据时,应把范围标为待验证假设,并通过敏感性实验逐步收敛。

例如质量可用比例形式 m=m0(1+η)m=m_0(1+\eta),其中 ηU(a,a)\eta\sim\mathcal U(-a,a)。参数 aa 应由负载与建模误差确定,且必须保证物理有效性。均匀分布只是一种选择,不能自动代表实际出现概率。

更新时机适合描述的变化示例
环境创建或实验开始长期稳定的差异某台机器人的装配参数
回合开始一段运行期间基本不变的条件负载、摩擦条件、传感器偏置
逐控制步或传感器采样快速测量波动测量噪声
按事件触发有起止时间的变化外部推力或通信丢包

每步重新采样质量会构造另一种时变系统,并不等同于模拟不同负载的机器人。参数之间可能相关,例如负载位置同时影响质量、质心和惯量;应保留必要的相关关系,避免产生不合理组合。

一种观测模型可以写为:

o~t=h(stdo)+b+ϵt\tilde o_t=h(s_{t-d_o})+b+\epsilon_t

dod_o 表示观测延迟,bb 为持续偏置,ϵt\epsilon_t 为随时间变化的噪声。这里用离散延迟作示意,实际还要考虑传感器采样周期、插值、滤波和时间戳。

动作延迟可以表示为 ut=g(atda)u_t=g(a_{t-d_a}),其中 gg 是动作处理与执行接口。若控制周期为 0.02 s,一个控制步延迟对应 20 ms;这并不等于一个物理步延迟。对于非整数周期或变化延迟,应采用与实际链路相符的缓存和调度方式。

延迟缓存需要初始化,回合重置后不能无意执行上一回合的动作。训练与部署的观测历史也应使用一致采样约定。若多个环节都模拟了同一段延迟,应避免重复叠加。

施加力、施加冲量和直接修改速度不是同一操作。对于作用于质心的理想短时扰动,有:

J=F(t)dt,Δv=Jm\mathbf J=\int\mathbf F(t)\,dt,\qquad \Delta\mathbf v=\frac{\mathbf J}{m}

同样的力作用时间不同,产生的冲量不同;偏离质心的作用还会影响角动量。因此扰动记录至少包含量的类型、单位、坐标系、作用位置、时长和触发频率。

直接修改基座速度可以用作合成测试,但应按“速度扰动”解释,不能把它当作完全等价的真实推力过程。实机扰动测试也不能仅凭仿真中的数值直接照搬执行。

系统辨识用于缩小已知模型误差,随机化用于覆盖剩余不确定性。可以先修正名义模型,再围绕测量分布训练策略,并用新采集的数据修订范围。

随机参数可以在特定算法中作为 Critic 的特权输入,但如果 Actor 部署时无法获得这些参数,就不能未经设计直接把真值作为其必要输入。历史或估计模块是否足以反映变化,需要实验证据。

先固定名义条件,再分别改变摩擦、负载、延迟等单项,绘制或记录性能随参数变化的关系。之后测试合理的多项组合,检查误差叠加是否导致失效。

对照实验可以比较无随机化、单类随机化和组合随机化,保持训练预算与评估协议一致。每次评估保存实际采样参数,而不只保存分布范围;否则失败后难以重现具体条件。

训练覆盖范围内表现提高与范围外泛化是两类结论。随机化过宽还可能损害名义条件下的精度或增加训练难度,应同时报告名义性能、边界性能与失败条件。

  1. 为质量偏差、IMU 偏置和测量噪声分别选择更新频率,并说明依据。
  2. 将一段延迟换算为控制步与物理步,检查它们是否代表相同时间。
  3. 为一个外力事件写出完整参数记录,区分力、冲量和速度跳变。
  4. 设计单项与组合随机化对照,明确训练覆盖范围和独立评估范围。