1.2 仿真环境
本节目标:把 1.1 介绍的训练栈在本机真正装好、跑通。终点是一条命令的"冒烟测试"——不追求训出什么,只验证「Isaac Sim 能起、G1 任务能注册、RSL-RL 能跑」整条链路是通的。
1. 软硬件环境
| 项 | 值 |
|---|---|
| GPU | NVIDIA RTX 5070 Ti(16 GB) |
| conda 环境 | isaaclab |
| Isaac Lab 版本 / 路径 | v2.3.2,/home/jeff/IsaacLab(脚本里用环境变量 ISAACLAB_DIR 可覆盖) |
| 训练入口 | $ISAACLAB_DIR/isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/train.py(脚本已封装) |
| MuJoCo | 暂未安装(M3 sim2sim 阶段再装,见 1.3) |
2. 我们项目的目录与脚本
项目仓(2-humanoid-locomotion/)只放薄封装,真正的训练代码在 Isaac Lab 里。脚本一览:
| 脚本 / 目录 | 作用 |
|---|---|
scripts/train_flat.sh | 训练平地行走(任务 Isaac-Velocity-Flat-G1-v0) |
scripts/train_rough.sh | 训练崎岖地形(任务 Isaac-Velocity-Rough-G1-v0) |
scripts/play.sh | 回放最新策略 + 导出 policy.pt / policy.onnx |
configs/ | 自定义 reward / 域随机化(继承官方 env,不改 Isaac Lab 源码) |
sim2sim/ | 导出策略 → MuJoCo 部署(M3) |
logs/ | 训练产物(已 gitignore;实际落盘在 $ISAACLAB_DIR/logs/rsl_rl/) |
3. 冒烟测试:确认环境就绪
这是整个项目的第一个动手目标:
# 进入项目目录,跑 10 个迭代的迷你训练(无界面)
scripts/train_flat.sh --max_iterations 10 --headless
首次启动 Isaac Sim 会编译 shader、缓存资产,等几分钟是正常的,不是卡死。
通过标准(gate):跑完没有报错,终端能看到 reward 在更新,且 $ISAACLAB_DIR/logs/rsl_rl/g1_flat/<时间戳>/ 下生成了日志 / checkpoint。看到这些就说明仿真环境 OK。