强化学习在腿足机器人控制中的开发门槛极高,开发者过去往往要耗费大量精力去手写和调试底层算法。为了打破这一瓶颈,由 ZZS 开发、基于 Isaac Gym 构建的 Legged Gym 仿真框架应运而生。
Legged Gym 的核心设计理念可以概括为「化繁为简」。它在内部深度封装了 PPO 等主流强化学习算法,彻底接管了复杂的网络训练细节。开发者无需再为底层代码头疼,只需调用便捷的接口,即可将全部精力倾注于环境搭建与最核心的「奖励函数」设计上,让开发真正回归策略本身。
在实际应用层面,这种高度模块化的设计赋予了开发工作极大的灵活性。Legged Gym 并不是只为某单一设备服务,而是提供了一套通用的多任务解决方案。无论是简单的二阶倒立摆平衡控制,还是 A1、Anymal 系列四足机器狗在平地与粗糙地形下的步态生成,甚至是 Cassie、PF2 等双腿机器人的高难度行走任务,都能在这个框架下顺畅运行。多达七种代表性的机器人控制任务,被无缝整合在同一个工作流中,让跨设备的算法验证变得前所未有的轻松。
可以说,Legged Gym 不仅仅是一个代码工具箱,它更像是一个让强化学习回归「策略设计」本身的基础设施。它极大降低了腿足机器人智能控制的入门门槛,让研究人员能够更纯粹地去验证自己的控制灵感。
目前,OpenBayes 官网已上线「 Legged Gym:强化学习仿真环境教程 」教程,快来直观感受机器人在算法驱动下从笨拙走向灵动的全过程吧!
在线运行链接:
图源:Isaac Lab 官方
Demo 运行
01 Demo 运行阶段
1.登录 OpenBayes.com,在「公共教程」页面,搜索并选择「Legged Gym:强化学习仿真环境教程」。
2.页面跳转后,点击右上角「克隆」,将该教程克隆至自己的容器中。
3.选择「NVIDIA GeForce RTX 4090」以及「ubuntu」镜像,点击「继续执行」。新用户使用下方邀请链接注册,即可获得满 ¥10 赠 ¥10 优惠券,更有机会获得 ¥15 赠金!
小贝总专属邀请链接(直接复制到浏览器打开):
4.等待分配资源,当状态变为「运行中」后,点击「通过 WEB 访问」,即可进入 VNC 工作空间。
02 效果演示
1.训练前需要先激活已配置好的 Conda 环境。本容器已经完成环境安装,新建终端后直接执行以下命令即可。
# 激活 Legged Gym 虚拟环境
source activate /input0/legged_gym_env
# 设置 Python 共享库路径(Isaac Gym 依赖
export LD_LIBRARY_PATH=/input0/legged_gym_env/lib:$LD_LIBRARY_PATH
cd /output/legged_gym
2.以下依次展示七种机器人的训练命令。每个命令启动后,Isaac Gym 会弹出渲染窗口,可以使用 W、S、A、D 键和 Shift、Space 键来移动视角,或按住鼠标右键拖动来旋转视角。
注意: 训练过程会持续运行直到手动停止或达到最大迭代次数。如需在 CPU上运行,可在命令后添加 --sim_device=cpu 参数。
(1)二阶倒立摆(CartPole2)
二阶倒立摆是强化学习入门的经典环境。该环境定义在./envs/cartpole2/cartpole2.py 中,观测包括各个关节角的速度和位置(6 维向量),奖励函数鼓励关节角速度越小、关节角越接近竖直状态。请在终端中输入下面命令:
python legged_gym/scripts/train.py --task=cartpole2
项目示例
(2)Anymal C 平地行走(anymal_c_flat)
Anymal C 是由ANYbotics 开发的四足机器人,是 Legged Gym 的默认训练环境。该任务训练机器狗在平地地形上行走。请在终端中输入下面命令:
python legged_gym/scripts/train.py --task=anymal_c_flat
项目示例
(3)Anymal C 粗糙地形行走(anymal_c_rough)
同样是 Anymal C 四足机器人,但训练环境变为混合粗糙地形,包含上坡、下坡、台阶等多种地形障碍。相比于平地任务,该任务难度更高,需要机器人学会自适应不同地形。请在终端中输入下面命令:
python legged_gym/scripts/train.py --task=anymal_c_rough
项目示例
(4)Anymal B 粗糙地形行走(anymal_b)
Anymal B 是ANYbotics 的上一代四足机器人。该任务训练 Anymal B 在粗糙地形上行走。与 Anymal C 相比,Anymal B 的硬件配置和动力学参数有所不同。请在终端中输入下面命令:
python legged_gym/scripts/train.py --task=anymal_b
项目示例
(5)A1 四足机器狗(a1)
A1 是由 Unitree(宇树科技)开发的小型四足机器人。该任务训练 A1 在仿真环境中学习运动控制策略。请在终端中输入下面命令:
python legged_gym/scripts/train.py --task=a1
项目示例
(6)Cassie 双腿机器人(cassie)
Cassie 是由 Agility Robotics 开发的双足机器人,具有复杂的腿部关节结构。该任务训练双足机器人在仿真环境中实现稳定行走,是具身智能领域中双足 locomotion 的经典研究平台。请在终端中输入下面命令:
python legged_gym/scripts/train.py --task=cassie
项目示例
(7)PF2 双腿鸵鸟机器人(pf2)
PF2 是一款仿鸵鸟的双足机器人,具有独特的腿部结构设计。该任务训练仿鸵鸟机器人在仿真环境中实现快速奔跑和稳定运动。请在终端中输入下面命令:
python legged_gym/scripts/train.py --task=pf2
项目示例
教程链接: