Microduck双足机器人强化学习训练与Sim2Real部署深度解析
在微型双足机器人的强化学习赛道上,Microduck以其精巧的架构设计与完备的sim2real链路,为小型足式机器人的策略训练与真实部署提供了一个可复现的参考范式。本文深入剖析其技术栈设计、关键工程决策及其背后的物理直觉。
机器人本体规格与训练框架
Microduck是一款自重约800克、高度25厘米的双足机器人,由微型Dynamixel XL330伺服电机驱动。其训练基础设施基于MuJoCo Warp引擎(通过mjlab库),以50Hz的仿真频率进行强化学习策略训练,训练完成后策略网络导出为ONNX格式,直接部署到真实机器人的运行时环境中。
机器人本体模型(MJCF)从Onshape CAD平台导出,并根据不同训练任务配置差异化的碰撞体参数,以支持从平坦地形到粗糙地形的多样化学术场景。
完整Sim2Real技术栈:从BAM到域随机化
该项目编码了一套完整的仿真到现实迁移方案。核心思路是:在微型执行器驱动的小质量双足机器人尺度下,执行器保真度构成了sim2real差距的主要来源[1]。因此,项目并未采用理想PD控制器作为简化假设,而是将执行器建模深入到了电压控制律(voltage control law)层级,即BAM(Brushed Actuator Model)执行器模型。
BAM模型相比传统PD控制在sim2real迁移中的具体性能收益值得量化评估。传统PD控制在仿真中表现优异,但在真实机器人上因未建模的电机电感、反电动势、电流饱和及电压-转速非线性关系,导致力矩输出偏差显著。BAM模型通过求解电机电压方程:
u(t) = L·di/dt + R·i(t) + K_e·ω(t)
τ(t) = K_t·i(t) - B·ω(t)
其中L为电枢电感、R为电阻、K_e为反电动势常数、K_t为转矩常数、B为粘性摩擦系数。这一建模粒度使得策略能够在训练中充分感知执行器动态,从而在部署时减少因执行器响应延迟和饱和导致的失稳。
域随机化(Domain Randomization)在该项目中通过一组布尔开关在环境配置顶部启用,随机化的参数范围包括电池电压波动、压降(voltage sag)、命令延迟(command latency)以及摩擦系数变化。关于这些参数的具体取值范围及其自动化调优流程,项目中暂未公开详细描述。工程实践中,此类参数的设定通常依赖于对硬件数据的统计分析(如通过电池放电曲线确定电压分布),或通过网格搜索与贝叶斯优化在仿真中迭代寻找最优随机化区间。
齿轮间隙(Backlash)的工程化建模
齿轮间隙是微型伺服系统中不可忽视的非线性因素。该项目在每个任务的Backlash版本中,对所有14个伺服关节模拟了±1°的齿轮间隙,其实现方式是通过引入无驱动的被动关节(passive joint)并在输出侧接入编码器反馈来实现。
这一设计的关键巧妙之处在于:观测维度和动作维度在引入backlash后保持不变。被动关节作为仿真内部的中间变量,不参与策略的直接控制,仅通过运动学耦合影响输出侧的角度与速度反馈。这种设计使得策略可以在同一观测空间内学习到对齿轮间隙的补偿能力。
然而,被动关节的物理真实性需要验证。真实微型伺服(如XL330)内部的齿轮间隙通常在制造公差范围内变化,标称±1°是一个工程近似值。建议通过实际测量机器人各关节的零死区范围(deadband)来校准该参数,或使用频率响应测试识别等效间隙模型。若真实机器人的间隙分布与仿真假设偏差较大,策略在部署时可能出现局部性能下降,尤其是在低速精密操作任务中。
61维统一观测合同与策略热切换
Microduck项目的另一个核心设计是61维统一观测合同(observation contract)。所有策略——无论是行走、跌倒恢复还是技巧动作——共享相同的61维观测布局:其中48维为本体感知信息(包括关节角度、角速度、IMU姿态等),剩余维度用于嵌入命令信号。
这种设计使得运行时环境能够在不同策略之间实现无缝热切换:"the runtime hot-swaps these policies (walk / recover / trick) behind a shared 61-dimensional observation contract, so any of them can take over the robot at any moment"[2]。
关于热切换的平滑性问题,项目通过观测合同的一致性避免了维度不匹配的跳转,但切换瞬间的控制量跳变仍需关注。当策略从
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐

所有评论(0)