1 问题1
Will_Watson 强化学习训练: 一阶摆启摆初试 (任意初始位置速度起摆) 环境数10000 迭代1000轮 用时584.52秒
对dof和link都加入域随机化: 在初始化时加入随机静摩擦、动摩擦、质量、质心位置, 加入力控误差±10% 在每次采样时更新观测噪声
在复位时更新随机位置速度初态且更新随机位置目标 Randomization for all dof and link: random
properties of envs: dof friction and damping; link mass and com;
motor_force(50N scale ±10%). update random noise every observation
tick: dof_pos and dof_vel. random state params when reset:
dof_pos,dof_vel,cartpos_command. Train: 10000 envs, 1000 iteration,
450.23s. Hardware: T8PlusE94 14900HX RTX4070(8G). 主要研究内容包括: IsaacGym 物理参数设置及其动力学特性 Tensor 操作 LeggedGym 框架 RewardFuntion 设计 Randomization 设计
Gym2Gym Policy 控制
有无github仓库进行学习,我这边是从b站用户https://www.bilibili.com/video/BV1i7jAzxEwd?spm_id_from=333.788.player.switch\&vd_source=c19fb5ffb5f179d8e98679f016305f3d看到的
可以学。最接近你看到的这个方向的是 ZzzzzzS/legged_gym,而不是 NVIDIA 官方原版。
1. 最接近该视频内容的仓库
ZzzzzzS/legged_gym
这是一个基于 leggedrobotics/legged_gym 的改版,README 里明确写了是 ZZS version,并且 release 里提到加入了带详细注释的二阶倒立摆 cartpole2,适合强化学习初学者作为起点。(GitHub)
仓库名:
text
ZzzzzzS/legged_gym
建议重点看:
text
legged_gym/envs/
legged_gym/envs/base/
legged_gym/scripts/train.py
legged_gym/scripts/play.py
.vscode/launch.json
这和你列出的内容高度对应:
| 你看到的内容 | 对应应看部分 |
|---|---|
| IsaacGym 物理参数设置 | env config / asset config |
| Tensor 操作 | obs/reward/reset 中的 torch tensor |
| LeggedGym 框架 | envs/base 与 task_registry |
| RewardFunction 设计 | reward scales 与 _reward_xxx() |
| Randomization 设计 | friction/mass/noise/push/random reset |
| Policy 控制/部署 | play.py、导出 policy、ONNX/部署框架 |
ZZSHUB 的教程也明确说,入门时应重点看 ./legged_gym/envs/base/legged_robot.py、legged_robot_config.py、scripts/train.py、scripts/play.py 和 .vscode/launch.json。(ZZSHUB)
2. 官方基础仓库
leggedrobotics/legged_gym
这是 ETH RSL 的官方 Legged Gym。它包含 rough terrain 行走训练,并且内置了 sim-to-real 相关组件,包括 actuator network、friction/mass randomization、noisy observations、random pushes。(GitHub)
仓库名:
text
leggedrobotics/legged_gym
用途:
text
学 LeggedGym 框架结构、reward 写法、domain randomization、sim-to-real 思路。
但注意,官方 README 也说明,随着 NVIDIA 从 Isaac Gym 转向 Isaac Sim,相关环境已经迁移到 Isaac Lab,原仓库更新和支持会比较有限。(GitHub)
3. IsaacGym 官方环境仓库
isaac-sim/IsaacGymEnvs
这个是 NVIDIA 官方 Isaac Gym RL 环境集合,里面有 Cartpole、Ant、Humanoid、ShadowHand 等任务。Cartpole 文档明确说明了 DOF state tensor、位置速度观测、用力控制小车、reset 时随机化 DOF 状态,这和你看到的一阶摆/倒立摆训练非常接近。(GitHub)
仓库名:
text
isaac-sim/IsaacGymEnvs
适合学习:
text
IsaacGym tensor API
并行环境 num_envs
Cartpole 任务结构
rl_games PPO 训练
4. 新项目更建议看 Isaac Lab
Isaac Gym 现在已经是 legacy software,NVIDIA 官方页面明确写了 "Now Deprecated",仍可下载但不再支持,并建议使用 Isaac Lab。(NVIDIA Developer)
isaac-sim/IsaacLab
这是当前更推荐的新框架,基于 Isaac Sim,支持 reinforcement learning、imitation learning、motion planning,并内置 30 多个可训练环境,可配合 RSL-RL、SKRL、RL-Games、Stable-Baselines 等库使用。(GitHub)
仓库名:
text
isaac-sim/IsaacLab
建议判断:
| 目标 | 选哪个 |
|---|---|
| 复现 B 站那个倒立摆训练 | ZzzzzzS/legged_gym |
| 快速学 IsaacGym + Cartpole | isaac-sim/IsaacGymEnvs |
| 学四足/轮足/人形框架 | leggedrobotics/legged_gym |
| 做新项目、长期维护 | isaac-sim/IsaacLab |
| 学 PPO 算法实现 | leggedrobotics/rsl_rl 或 Denys88/rl_games |
| 学 policy 部署到机器人 | ZzzzzzS/CtrlZ |
5. 训练算法仓库
leggedrobotics/rsl_rl
Legged Gym 常用的 PPO 实现库。README 说明它是面向机器人研究的 GPU 加速轻量级学习库,支持 PPO、Student-Teacher Distillation,并被 Isaac Lab 和 Legged Gym 使用。(GitHub)
仓库名:
text
leggedrobotics/rsl_rl
Denys88/rl_games
IsaacGymEnvs 常用的训练库,支持 PPO、SAC、Isaac Gym GPU pipeline、masked actions、多智能体训练等。(GitHub)
仓库名:
text
Denys88/rl_games
6. Policy 部署相关
ZzzzzzS/CtrlZ
如果你后面关心 "Gym2Gym Policy 控制" 或把训练好的 policy 放到控制程序里运行,可以看这个。它是一个多线程强化学习部署框架,用于机器人运动控制算法部署,包含传感器信息获取、用户指令控制、网络推理、PD 跟随、数据记录等功能。(GitHub)
仓库名:
text
ZzzzzzS/CtrlZ
建议学习顺序
text
1. ZzzzzzS/legged_gym
先跑通 cartpole2 / 倒立摆任务
2. IsaacGymEnvs Cartpole
对照官方 Cartpole,理解 DOF tensor、reset、action force
3. leggedrobotics/legged_gym
学 reward、domain randomization、task_registry、play/train 结构
4. rsl_rl
看 PPO runner、actor-critic、rollout buffer
5. IsaacLab
后续新项目迁移到更现代的框架
结论:你先从 ZzzzzzS/legged_gym 入手最合适 ,它和你贴出的 B 站内容最接近;如果只是学官方标准写法,再对照 IsaacGymEnvs 的 Cartpole。
2 问题2
如果要把这些都收集到一个仓库里面这个github仓库应该怎么取名字,并且应该怎么命名
建议用一个短、可扩展、偏工程化 的名字,不要只写 cartpole,因为你后面可能会继续收集:
- IsaacGym
- LeggedGym
- IsaacLab
- domain randomization
- reward design
- policy deploy
- Gym2Gym 控制
- 倒立摆、四足机器人、机械臂等任务
最推荐仓库名
text
sim2real-rl-lab
中文含义:
text
仿真到现实强化学习实验室
这个名字比较适合你现在的内容,因为它不局限于倒立摆,也不局限于 IsaacGym。以后即使你把 IsaacGym 迁移到 IsaacLab,名字也不会过时。
GitHub 显示可以写成:
text
sim2real-rl-lab
README 标题可以写:
markdown
# Sim2Real RL Lab
IsaacGym / LeggedGym / IsaacLab reinforcement learning notes, experiments, and policy deployment examples.
其他可选名字
| 仓库名 | 适合情况 |
|---|---|
sim2real-rl-lab |
最推荐,范围完整,适合长期维护 |
isaacgym-rl-learning |
主要学习 IsaacGym,不强调部署 |
isaacgym-leggedgym-notes |
偏笔记整理,不太像工程仓库 |
rl-robotics-lab |
更宽泛,适合以后加入机械臂、四足、人形 |
leggedgym-learning-lab |
主要研究 LeggedGym |
gym2gym-policy-lab |
主要研究 policy 控制和部署 |
domain-randomized-rl |
强调域随机化,但范围稍窄 |
cartpole-to-legged-rl |
从倒立摆到腿式机器人,比较有学习路线感 |
如果你只是做学习资料汇总,推荐:
text
isaacgym-rl-learning
如果你想做成长期工程仓库,推荐:
text
sim2real-rl-lab
仓库命名规则
GitHub 仓库建议用:
text
小写英文 + 连字符
例如:
text
sim2real-rl-lab
isaacgym-rl-learning
leggedgym-policy-control
不要用:
text
Sim2Real_RL_Lab
IsaacGymRLStudy
强化学习仓库
RL学习资料汇总
原因是前者更像正式开源项目,后者更像个人临时文件夹。
推荐目录结构
可以这样命名:
text
sim2real-rl-lab/
│
├── README.md
├── docs/
│ ├── 00_overview.md
│ ├── 01_isaacgym_basics.md
│ ├── 02_tensor_api.md
│ ├── 03_leggedgym_framework.md
│ ├── 04_reward_design.md
│ ├── 05_domain_randomization.md
│ ├── 06_policy_deployment.md
│ └── 07_gym2gym_control.md
│
├── references/
│ ├── github_repos.md
│ ├── bilibili_notes.md
│ └── papers.md
│
├── examples/
│ ├── cartpole_swingup/
│ ├── cartpole_randomization/
│ ├── legged_robot_basic/
│ └── policy_export/
│
├── configs/
│ ├── cartpole_swingup.yaml
│ ├── domain_randomization.yaml
│ └── ppo_default.yaml
│
├── scripts/
│ ├── train_cartpole.py
│ ├── play_policy.py
│ ├── export_policy.py
│ └── evaluate_policy.py
│
├── assets/
│ ├── images/
│ └── diagrams/
│
└── third_party/
├── README.md
└── submodules.md
文件命名建议
文档文件
用编号,方便形成学习路线:
text
00_overview.md
01_isaacgym_basics.md
02_tensor_api.md
03_leggedgym_framework.md
04_reward_design.md
05_domain_randomization.md
06_policy_deployment.md
07_gym2gym_control.md
实验文件夹
用任务名 + 研究点:
text
cartpole_swingup
cartpole_domain_randomization
cartpole_force_noise
legged_locomotion_basic
policy_export_onnx
gym2gym_policy_control
配置文件
用任务名 + 算法名 + 随机化版本:
text
cartpole_ppo_base.yaml
cartpole_ppo_dr.yaml
cartpole_ppo_noise.yaml
cartpole_ppo_force_error.yaml
legged_ppo_base.yaml
legged_ppo_randomized.yaml
训练日志命名
建议这样:
text
cartpole_swingup_ppo_env10000_iter1000_dr_v1
cartpole_swingup_ppo_env10000_iter1000_dr_noise_v2
legged_basic_ppo_env4096_dr_v1
格式可以固定为:
text
任务名_算法_环境数_迭代数_设置版本
例如:
text
cartpole_swingup_ppo_env10000_iter1000_dr_v1
含义:
text
倒立摆起摆任务 + PPO + 10000 个环境 + 1000 轮迭代 + 域随机化版本 1
README 命名模板
README 开头可以这样写:
markdown
# Sim2Real RL Lab
This repository collects learning notes, code examples, and experiment records for reinforcement learning in IsaacGym, LeggedGym, and IsaacLab.
## Topics
- IsaacGym tensor API
- LeggedGym framework
- PPO training
- reward function design
- domain randomization
- policy export and deployment
- Gym2Gym policy control
- cartpole swing-up experiments
中文也可以:
markdown
# Sim2Real RL Lab
本仓库用于整理 IsaacGym、LeggedGym、IsaacLab 中与强化学习训练、域随机化、奖励函数设计和策略部署相关的学习笔记、代码实验和复现实验记录。
最终建议
你这个仓库最好命名为:
text
sim2real-rl-lab
对应中文标题:
text
仿真到现实强化学习实验室
如果你想更明确和 B 站这个方向关联,可以写成:
text
isaacgym-rl-learning
但从长期扩展角度看,sim2real-rl-lab 更合适。
3 问题3
V ISAACGYM
assets
docker
docs
licenses v python vexamples
dr_output_images
graphics_images
interop_images 1080 balls_of_solitude.py actor_scaling.py eapply_forces_at_pos.py apply_forces.py 2AssemMaths_Watson.pyM
AssemSimPhsX Watson.pyM asset info_watson.py asset info.py
ebody_physics_props.pyCartpole_JXHT_Watson.py convex_decomposition.py
dof_controls.py domain randomization.py
那个github会有这些代码,我想学习
这些代码不属于 LeggedGym 主仓库 ,而是更接近 NVIDIA Isaac Gym Preview 安装包里的 python/examples 示例代码。
你列出的这些文件,例如:
text
1080_balls_of_solitude.py
actor_scaling.py
apply_forces.py
apply_forces_at_pos.py
asset_info.py
body_physics_props.py
dof_controls.py
domain_randomization.py
在 Isaac Gym 官方示例文档中都有对应说明。比如官方文档列出了 1080_balls_of_solitude.py、asset_info.py、body_physics_props.py、domain_randomization.py、dof_controls.py、apply_forces.py、apply_forces_at_pos.py、actor_scaling.py 等示例。(Robotsfan)
结论
你要学的这一套,仓库最好不要叫 leggedgym-learning,而应该偏向:
text
isaacgym-learning-lab
或者:
text
isaacgym-sim2real-lab
如果你后面还要放 LeggedGym、IsaacLab、Policy 部署,再用之前推荐的:
text
sim2real-rl-lab
最适合你当前内容的仓库名
我建议你用:
text
isaacgym-learning-lab
中文含义:
text
IsaacGym 学习实验室
因为你现在主要是在学:
- IsaacGym 基础 API
- asset 加载
- dof 控制
- tensor 操作
- 力控制
- 域随机化
- cartpole 起摆
- 自己改写 Watson 版本代码
这个名字最准确。
推荐仓库结构
不要把所有 .py 文件直接堆在根目录。可以这样整理:
text
isaacgym-learning-lab/
│
├── README.md
├── docs/
│ ├── 00_overview.md
│ ├── 01_installation.md
│ ├── 02_isaacgym_api_basics.md
│ ├── 03_tensor_api.md
│ ├── 04_dof_control.md
│ ├── 05_force_control.md
│ ├── 06_domain_randomization.md
│ └── 07_cartpole_swingup.md
│
├── examples/
│ ├── 00_official_examples/
│ │ ├── 1080_balls_of_solitude.py
│ │ ├── actor_scaling.py
│ │ ├── apply_forces.py
│ │ ├── apply_forces_at_pos.py
│ │ ├── asset_info.py
│ │ ├── body_physics_props.py
│ │ ├── convex_decomposition.py
│ │ ├── dof_controls.py
│ │ └── domain_randomization.py
│ │
│ ├── 01_watson_notes/
│ │ ├── assem_maths_watson.py
│ │ ├── assem_sim_physx_watson.py
│ │ ├── asset_info_watson.py
│ │ └── cartpole_jxht_watson.py
│ │
│ ├── 02_tensor_api/
│ │ ├── tensor_state_read.py
│ │ ├── tensor_force_apply.py
│ │ └── tensor_dof_control.py
│ │
│ ├── 03_cartpole/
│ │ ├── cartpole_basic.py
│ │ ├── cartpole_swingup.py
│ │ ├── cartpole_random_reset.py
│ │ └── cartpole_domain_randomization.py
│ │
│ └── 04_domain_randomization/
│ ├── randomize_friction.py
│ ├── randomize_damping.py
│ ├── randomize_mass_com.py
│ ├── randomize_motor_force.py
│ └── randomize_observation_noise.py
│
├── assets/
├── docker/
├── licenses/
├── outputs/
│ ├── dr_output_images/
│ ├── graphics_images/
│ └── interop_images/
│
└── third_party/
└── README.md
你的文件建议怎么命名
你现在有些文件名像:
text
2AssemMaths_Watson.pyM
AssemSimPhsX Watson.pyM
asset info_watson.py
Cartpole_JXHT_Watson.py
domain randomization.py
建议统一改成 小写英文 + 下划线:
| 原文件名 | 建议文件名 |
|---|---|
2AssemMaths_Watson.py |
assem_maths_watson.py |
AssemSimPhsX Watson.py |
assem_sim_physx_watson.py |
asset info_watson.py |
asset_info_watson.py |
Cartpole_JXHT_Watson.py |
cartpole_jxht_watson.py |
domain randomization.py |
domain_randomization.py |
注意:你截图里的 M 很可能不是文件名的一部分,而是 VS Code / Git 显示的 Modified,表示文件被修改过 。文件名应该还是 .py,不是 .pyM。
学习顺序建议
按照你现在这些代码,建议这样学:
text
1. asset_info.py
学 asset、actor、body、joint、dof 的基本概念。
2. body_physics_props.py
学刚体质量、惯量、摩擦、材质、物理属性。
3. dof_controls.py
学位置控制、速度控制、力矩控制。
4. apply_forces.py
学 tensor API 下如何对刚体施加力和力矩。
5. apply_forces_at_pos.py
学在指定位置施加外力。
6. actor_scaling.py
学 actor 尺寸缩放,以及缩放后质量、碰撞、关节限制的影响。
7. domain_randomization.py
学颜色、纹理、灯光、相机等随机化。
8. cartpole_jxht_watson.py
学你真正关心的一阶摆 / 倒立摆起摆任务。
Isaac Gym 文档也明确说明,dof_controls.py 用于展示 DOF 控制模式,包括 position、velocity 和 effort 控制;apply_forces.py 和 apply_forces_at_pos.py 用于展示 tensor API 下施加力;actor_scaling.py 用于展示 actor 运行时缩放。(Robotsfan)
README 可以这样写
markdown
# IsaacGym Learning Lab
This repository collects Isaac Gym learning notes, annotated examples, and reinforcement learning experiments.
## Topics
- Isaac Gym basic API
- Asset, actor, body, joint, and DOF concepts
- Tensor API
- DOF position / velocity / effort control
- Force and torque control
- Domain randomization
- Cartpole swing-up reinforcement learning
- Sim-to-real preparation
中文版本:
markdown
# IsaacGym Learning Lab
本仓库用于整理 Isaac Gym 学习笔记、基础示例代码、注释版代码和强化学习实验记录。
## 主要内容
- Isaac Gym 基础 API
- asset、actor、body、joint、dof 概念
- Tensor API
- DOF 位置控制、速度控制、力控制
- 刚体外力与力矩施加
- 域随机化设计
- Cartpole 一阶摆起摆强化学习
- Sim-to-real 前期准备
需要注意版权
Isaac Gym 现在是 deprecated legacy software,NVIDIA 官方页面说明它仍可下载使用,但不再支持,并建议转向 Isaac Lab。(NVIDIA Developer)
如果你要把 Isaac Gym 安装包里的官方示例代码放到自己的 GitHub,建议:
text
1. 保留原始 licenses 文件夹。
2. README 中注明代码来源于 Isaac Gym Preview examples。
3. 不要把 NVIDIA 安装包、二进制文件、大型 asset 原封不动上传。
4. 自己修改过的文件单独放到 examples/01_watson_notes/。
5. 原始示例和你改写的示例分开放。
最终建议
你的仓库名用:
text
isaacgym-learning-lab
如果后面你还要继续加入 LeggedGym、IsaacLab、Gym2Gym、Policy 部署,再升级成:
text
sim2real-rl-lab
当前阶段,isaacgym-learning-lab 最准确。
4 问题4
V ISAACGYM
assets
docker
docs
licenses v python vexamples
dr_output_images
graphics_images
interop_images 1080 balls_of_solitude.py actor_scaling.py eapply_forces_at_pos.py apply_forces.py 2AssemMaths_Watson.pyM
AssemSimPhsX Watson.pyM asset info_watson.py asset info.py
ebody_physics_props.pyCartpole_JXHT_Watson.py convex_decomposition.py
dof_controls.py domain randomization.py
这是来自于那个github的仓库,给出连接
你列出的这个目录结构:
text
ISAACGYM/
├── assets
├── docker
├── docs
├── licenses
└── python/
└── examples/
├── 1080_balls_of_solitude.py
├── actor_scaling.py
├── apply_forces.py
├── apply_forces_at_pos.py
├── asset_info.py
├── body_physics_props.py
├── dof_controls.py
└── domain_randomization.py
主要不是某个普通 GitHub 仓库,而是 NVIDIA Isaac Gym Preview 安装包解压后的目录。
官方示例文档里确实列出了你这些文件,包括 1080_balls_of_solitude.py、actor_scaling.py、apply_forces.py、apply_forces_at_pos.py、asset_info.py、body_physics_props.py、dof_controls.py、domain_randomization.py。(Robotsfan)
官方下载入口
这是 Isaac Gym 的官方入口:
Isaac Gym Preview Release / Download From Archive
NVIDIA 页面现在标注 Isaac Gym 已经 deprecated,但仍可从 archive 下载继续使用。(NVIDIA Developer)
GitHub 相关仓库
1. IsaacGymEnvs
这个是 NVIDIA/Isaac 官方强化学习环境仓库:
但注意:这个仓库不是你截图里的完整 ISAACGYM 安装包目录 。它是强化学习任务环境仓库。README 里也说明,需要先下载 Isaac Gym Preview 4,然后跑通 isaacgym/python/examples 里的示例。(GitHub)
2. LeggedGym
如果你要学 B 站视频里那种 LeggedGym 强化学习训练,可以看这个:
它的安装说明也写到,需要先安装 Isaac Gym,并测试 python/examples 里的 1080_balls_of_solitude.py。(GitHub)
你说的 Watson 文件
这些文件:
text
2AssemMaths_Watson.py
AssemSimPhsX Watson.py
asset info_watson.py
Cartpole_JXHT_Watson.py
我没有检索到对应的公开 GitHub 结果。它们很可能是:
text
1. UP 主自己改过的本地文件;
2. 视频配套的私有仓库文件;
3. 从 Isaac Gym 官方 example 改写出来的学习代码;
4. 还没有被 GitHub 搜索索引。
所以你目前能确定拿到的官方来源是:
text
Isaac Gym Preview 安装包:
https://developer.nvidia.com/isaac-gym
以及配套学习仓库:
text
IsaacGymEnvs:
https://github.com/isaac-sim/IsaacGymEnvs
LeggedGym:
https://github.com/leggedrobotics/legged_gym
建议你怎么找 Watson 的具体仓库
在 GitHub 里直接搜这几个关键词:
text
Cartpole_JXHT_Watson
AssemSimPhsX
AssemMaths_Watson
Will_Watson IsaacGym
如果没有结果,基本说明它不是公开仓库,或者文件名在上传后被改过。
问题5
结论
这个仓库 可以收藏,但不建议作为你学习 IsaacGym 倒立摆/LeggedGym 强化学习训练的主仓库。
你给的这个文件:
text
rofunc/simulator/src/domain_randomization.py
本质上更像是 NVIDIA Isaac Gym 官方示例 domain_randomization.py 的搬运/整理版,不是针对强化学习训练、倒立摆起摆、10000 并行环境、DOF/link 物理参数随机化的完整训练代码。
仓库链接:
text
https://github.com/Skylark0924/Rofunc
这个仓库本身是什么
Rofunc 的定位是:
text
Robot Learning from Demonstration and Robot Manipulation 工具包
它不是单纯的 IsaacGym 教程仓库,而是一个更大的机器人学习工具库,包含:
- imitation learning
- reinforcement learning
- learning from demonstration
- data preprocessing
- planning and control
- IsaacGym / OmniIsaacGym simulator support
README 里明确说,它面向机器人模仿学习、强化学习和示范学习,并提供 IsaacGym 和 OmniIsaacGym 机器人仿真器用于评估。(GitHub)
这个仓库也不是很小众。GitHub 页面显示有 714 stars、61 forks、1303 commits。(GitHub)
你给的 domain_randomization.py 能学什么
这个文件可以学 视觉域随机化,包括:
text
1. randomize color
2. randomize texture
3. randomize light parameters
4. randomize camera position
文件头部也明确写了这个示例的作用就是展示 domain randomization,并列出随机颜色、纹理、灯光参数和相机位置。(GitHub)
所以它适合你学:
| 内容 | 是否适合 |
|---|---|
| IsaacGym 基础 API | 可以 |
| 相机传感器 | 可以 |
| 颜色随机化 | 可以 |
| 纹理随机化 | 可以 |
| 灯光随机化 | 可以 |
| 相机位置随机化 | 可以 |
| 物理参数随机化 | 不够 |
| DOF friction / damping 随机化 | 不够 |
| link mass / COM 随机化 | 不够 |
| 10000 env 并行训练 | 不适合 |
| 倒立摆强化学习训练 | 不适合 |
| LeggedGym reward 设计 | 不适合 |
| PPO 训练流程 | 不适合 |
和你要学的内容差在哪里
你前面提到的是:
text
dof friction / damping
link mass / COM
motor force ±10%
observation noise
reset random dof_pos / dof_vel / command
10000 envs
PPO training
cartpole swing-up
而这个 domain_randomization.py 主要是:
text
Ant asset
1 个 env
视觉随机化
相机传感器
颜色/纹理/灯光/相机变化
不包含 PPO 训练
不包含 reward function
不包含 DOF/link 物理参数随机化训练
所以它和 B 站视频里的"强化学习训练 + 域随机化 + 倒立摆起摆"不是一个层级。
需要注意版权问题
这个文件头部写着:
text
Copyright (c) 2020, NVIDIA CORPORATION.
并且说明 NVIDIA 保留相关知识产权,未经明确许可不得复制、披露或分发。(GitHub)
因此,如果你要建自己的 GitHub 学习仓库,不建议直接把这个文件复制进去公开发布。更稳妥的做法是:
text
1. 在 README 里放链接。
2. 自己写学习笔记。
3. 自己重新写一个简化版 domain_randomization_demo.py。
4. 不直接搬运 NVIDIA 原文件。
5. 如果引用 Rofunc,也注明来源。
另外,Rofunc 仓库整体标的是 GPL-3.0 license。(GitHub) 但这个单独文件内部又带有 NVIDIA 的版权声明,所以你公开复用时要更谨慎。
对你来说的推荐用法
可以收藏
建议把它放到你自己的学习索引里:
text
references/isaacgym_domain_randomization.md
里面记录:
markdown
# Rofunc domain_randomization.py
Source:
https://github.com/Skylark0924/Rofunc/blob/37dffbc190f6010cb61e5e27365e7c192e86e8b8/rofunc/simulator/src/domain_randomization.py
Purpose:
Learn IsaacGym visual domain randomization, including color, texture, light, and camera randomization.
Not suitable for:
- PPO training
- cartpole swing-up
- DOF physics randomization
- link mass / COM randomization
不建议作为主线
你的主线仍然建议是:
text
1. Isaac Gym Preview examples
2. IsaacGymEnvs Cartpole
3. ZzzzzzS/legged_gym cartpole2
4. leggedrobotics/legged_gym
5. rsl_rl PPO
6. IsaacLab
最终评价
| 维度 | 评价 |
|---|---|
| 作为 IsaacGym API 示例 | 有价值 |
| 作为 domain randomization 入门 | 有价值,但偏视觉随机化 |
| 作为倒立摆强化学习训练参考 | 不够 |
| 作为 LeggedGym 学习材料 | 不够 |
| 作为长期机器人学习工具库 | 可以收藏 |
| 作为你自己的 GitHub 代码来源 | 不建议直接复制 |
| 作为学习笔记引用对象 | 合适 |
一句话判断:
这个仓库适合当"扩展参考库",不适合当你学习 IsaacGym 强化学习训练的主仓库。你真正要复现 B 站那套倒立摆起摆训练,还是应该优先找 IsaacGymEnvs、LeggedGym 或 UP 主自己的 Watson 改写代码。
问题6
isaacgym/python/examples 里的示例这个在哪里,我去哪里找
位置结论
isaacgym/python/examples 不在普通 GitHub 仓库里 ,它在 NVIDIA Isaac Gym Preview 4 安装包解压后的目录里。
官方入口是 NVIDIA Isaac Gym Download Archive 。NVIDIA 页面说明 Isaac Gym 是 legacy software,可以继续下载使用,但已经不再支持;页面也列出下载项是 Isaac Gym Preview 4 release 。(NVIDIA Developer)
下载位置
去这里:
text
NVIDIA Isaac Gym Download Archive
页面名称一般是:
text
Isaac Gym - Download Archive
进去后:
text
1. 登录 NVIDIA Developer 账号
2. 勾选同意 Isaac Gym License Agreement
3. 下载 Isaac Gym Preview 4
4. 解压安装包
下载页面明确写着安装说明在安装包的 docs 文件夹里,打开 docs/index.html 即可查看。(NVIDIA Developer)
解压后目录大概是这样
下载并解压后,你会看到类似结构:
text
isaacgym/
├── assets/
├── docker/
├── docs/
├── licenses/
└── python/
├── examples/
└── isaacgym/
你要找的示例就在:
text
isaacgym/python/examples/
里面会有这些文件:
text
1080_balls_of_solitude.py
actor_scaling.py
apply_forces.py
apply_forces_at_pos.py
asset_info.py
body_physics_props.py
dof_controls.py
domain_randomization.py
joint_monkey.py
Isaac Gym 文档里的 Programming Examples 页面也列出了这些示例,包括 1080_balls_of_solitude.py、asset_info.py、body_physics_props.py、domain_randomization.py、dof_controls.py、apply_forces.py、apply_forces_at_pos.py 和 actor_scaling.py。(Robotsfan)
安装后怎么运行
在 Ubuntu 里:
bash
cd /你的路径/isaacgym/python
pip install -e .
然后进入示例目录:
bash
cd /你的路径/isaacgym/python/examples
先跑最简单的测试:
bash
python joint_monkey.py
或者:
bash
python 1080_balls_of_solitude.py
IsaacGymEnvs 官方仓库 README 也建议:先下载 Isaac Gym Preview 4,然后运行 python/examples 目录里的示例,比如 joint_monkey.py,确认 Isaac Gym 本体安装成功。(GitHub)
系统要求注意
官方下载页写的前提条件是:
text
Ubuntu 18.04 或 Ubuntu 20.04
Python 3.6、3.7 或 3.8
NVIDIA driver >= 470.74
NVIDIA Pascal 或更新 GPU
至少 8GB 显存
这些要求是官方页面列出的。(NVIDIA Developer)
所以如果你现在是 Windows 电脑,不要直接在 Windows 原生环境里找这个路径。更推荐:
text
方案 1:Ubuntu 20.04 原生系统
方案 2:双系统 Ubuntu
方案 3:Linux 工作站 / 服务器
方案 4:WSL2,可能能跑,但图形和 PhysX/CUDA 问题更多
和 GitHub 的关系
容易混淆的是这个仓库:
text
isaac-sim/IsaacGymEnvs
它是强化学习任务仓库,不是 Isaac Gym 本体。里面有 Cartpole、Ant、Humanoid、ShadowHand 等 RL 任务,并且可以运行:
bash
python train.py task=Cartpole
但你问的:
text
isaacgym/python/examples/
是在 Isaac Gym Preview 4 安装包本体 里面,不是在 IsaacGymEnvs 这个 GitHub 仓库里。
问题7
这个大不大
不大。
IsaacGym_Preview_4_Package.tar.gz 压缩包大约 190--201 MB 。公开镜像/记录里显示该文件大小约 201,141,673 bytes ,也就是约 192 MB ;有些 Docker 构建记录显示约 187.67 MB 。(Hugging Face)
解压后会比压缩包大一些,但通常仍然不算大,主要目录就是:
text
assets/
docker/
docs/
licenses/
python/
实际建议预留:
text
下载包:约 200 MB
解压后:建议预留 1--2 GB
完整实验环境:建议预留 10--20 GB
注意:大的是后面的环境依赖,比如 Conda、PyTorch、CUDA 相关包、IsaacGymEnvs、LeggedGym、训练日志和模型。Isaac Gym 本体不大。
问题8
物理参数随机化 不够 DOF friction / damping 随机化 不够 link mass / COM 随机化 不够 10000
env 并行训练 不适合 倒立摆强化学习训练 不适合 LeggedGym reward 设计 不适合 PPO 训练流程 不适合
这几个去哪里学呢https://github.com/search?q=1080_balls_of_solitude.py\&type=code
你这个搜索方向要改一下。
1080_balls_of_solitude.py 只能找到 IsaacGym 基础演示代码,主要学 API,不是学强化学习训练主线。
你列出的这些内容应该分开学:
| 你要学的内容 | 去哪里学 | 重点文件/目录 |
|---|---|---|
| 物理参数随机化 | IsaacGymEnvs |
docs/domain_randomization.md |
| DOF friction / damping 随机化 | IsaacGymEnvs |
actor_params -> dof_properties |
| link mass / COM 随机化 | IsaacGymEnvs / IsaacLab |
rigid_body_properties.mass、randomize_rigid_body_mass |
| 10000 env 并行训练 | IsaacGymEnvs / LeggedGym |
num_envs、VecTask、gpu pipeline |
| 倒立摆强化学习训练 | IsaacGymEnvs Cartpole / ZzzzzzS/legged_gym |
cartpole.py、cartpole2.py |
| LeggedGym reward 设计 | leggedrobotics/legged_gym |
legged_robot.py、legged_robot_config.py |
| PPO 训练流程 | rsl_rl / rl_games |
OnPolicyRunner、PPO、ActorCritic |
1. 最该先看的:IsaacGymEnvs
仓库:
text
isaac-sim/IsaacGymEnvs
这个仓库是 NVIDIA Isaac Gym 的强化学习环境仓库,不是普通 demo。它的任务源码在 isaacgymenvs/tasks,每个 task 都继承 VecEnv/VecTask 体系;训练配置在 isaacgymenvs/cfg/train,任务配置在 isaacgymenvs/cfg/task。(GitHub)
重点看这几个:
text
isaacgymenvs/tasks/cartpole.py
isaacgymenvs/cfg/task/Cartpole.yaml
isaacgymenvs/cfg/train/CartpolePPO.yaml
docs/domain_randomization.md
cartpole.py 里面能学到完整 RL 环境结构:
text
create_sim()
_create_envs()
compute_observations()
compute_reward()
reset_idx()
pre_physics_step()
post_physics_step()
它的 Cartpole 代码里有 DOF state tensor、观测、随机 reset、action 转 force、reward 和 done 条件,是你学倒立摆训练最直接的起点。(GitHub)
训练配置在:
text
isaacgymenvs/cfg/train/CartpolePPO.yaml
里面包含 PPO 参数,例如 gamma、learning_rate、horizon_length、minibatch_size、mini_epochs、e_clip、max_epochs 等。(GitHub)
任务配置在:
text
isaacgymenvs/cfg/task/Cartpole.yaml
里面有 numEnvs、envSpacing、maxEffort、sim.dt、gravity、use_gpu_pipeline 等。默认 numEnvs 是 512,但可以通过命令行覆盖。(GitHub)
可以这样跑:
bash
git clone https://github.com/isaac-sim/IsaacGymEnvs.git
cd IsaacGymEnvs/isaacgymenvs
python train.py task=Cartpole headless=True
如果你要接近 B 站那个:
bash
python train.py task=Cartpole num_envs=10000 max_iterations=1000 headless=True
2. 物理参数随机化:看 IsaacGymEnvs 的 domain_randomization.md
这是最重要的文档:
text
IsaacGymEnvs/docs/domain_randomization.md
它不是只讲视觉随机化,而是讲真正训练用的 domain randomization。IsaacGymEnvs 支持在 reset 时 on-the-fly 随机化,不需要重新加载 asset;随机化可以通过 YAML 配置,也可以直接调用 apply_randomizations。(GitHub)
它把随机化分成 4 类:
text
observations
actions
sim_params
actor_params
其中 actor_params 就是你要的物理对象参数,例如 dof_properties、rigid_body_properties、rigid_shape_properties。(GitHub)
尤其要看这一段:
yaml
actor_params:
hand:
dof_properties:
upper:
range: [0, 0.15]
operation: "additive"
distribution: "uniform"
cube:
rigid_body_properties:
mass:
range: [0.5, 1.5]
operation: "scaling"
distribution: "uniform"
setup_only: True
这个就是你要学的随机化配置思路。文档明确列出 rigid_body_properties.mass、rigid_shape_properties.friction、dof_properties.damping、dof_properties.friction 等都可以作为随机化对象。(GitHub)
对应你前面那几个:
| 目标 | IsaacGymEnvs 对应配置 |
|---|---|
| DOF damping | actor_params.<actor>.dof_properties.damping |
| DOF friction | actor_params.<actor>.dof_properties.friction |
| link mass | actor_params.<actor>.rigid_body_properties.mass |
| 静摩擦/动摩擦 | rigid_shape_properties.friction,但 IsaacGymEnvs 文档中主要列 friction,没有区分 static/dynamic |
| action 力控误差 | actions noise |
| observation noise | observations noise |
| 重力随机化 | sim_params.gravity |
3. LeggedGym reward 和 sim2real:看 leggedrobotics/legged_gym
仓库:
text
leggedrobotics/legged_gym
这是 ETH RSL 的 LeggedGym。README 明确说它包含 sim-to-real 需要的组件:actuator network、friction and mass randomization、noisy observations、random pushes。(GitHub)
重点文件:
text
legged_gym/envs/base/legged_robot.py
legged_gym/envs/base/legged_robot_config.py
legged_gym/envs/__init__.py
legged_gym/scripts/train.py
legged_gym/scripts/play.py
看 legged_robot_config.py 里的:
python
class domain_rand:
randomize_friction = True
friction_range = [0.5, 1.25]
randomize_base_mass = False
added_mass_range = [-1., 1.]
push_robots = True
push_interval_s = 15
max_push_vel_xy = 1.
以及:
python
class noise:
add_noise = True
noise_level = 1.0
class noise_scales:
dof_pos = 0.01
dof_vel = 1.5
lin_vel = 0.1
ang_vel = 0.2
这些就是 LeggedGym 里典型的 domain randomization 和 observation noise 写法。(GitHub)
再看 legged_robot.py 里的:
text
_process_rigid_shape_props()
_process_dof_props()
_process_rigid_body_props()
_reset_dofs()
_reset_root_states()
_push_robots()
compute_reward()
compute_observations()
这里能学到:
- friction 随机化;
- base mass 随机化;
- DOF 状态 reset;
- root state reset;
- 外部 push;
- reward 函数如何按 scale 自动组装;
- observation noise 如何加。(GitHub)
LeggedGym 的 README 也说明,每个环境由 env 文件和 config 文件定义,非零 reward scale 会自动把对应 _reward_xxx() 函数加入总奖励,任务需要通过 task_registry.register() 注册。(GitHub)
4. 倒立摆起摆/二阶摆:看 ZzzzzzS/legged_gym
你前面提到的 B 站风格,最接近的是这个:
text
ZzzzzzS/legged_gym
ZZSHUB 文章明确说这是 Legged Gym 的 ZZS 版本,并用二阶倒立摆完成一次强化学习训练;文章建议重点读 legged_gym/envs/base/legged_robot.py、legged_robot_config.py、scripts/train.py、scripts/play.py 和 .vscode/launch.json。(ZZSHUB)
它的 release 说明里也写了:加入了一个带详细注释的二阶倒立摆环境 cartpole2,适合作为强化学习初学者的起点。(GitHub)
重点路径:
text
legged_gym/envs/cartpole2/cartpole2.py
legged_gym/envs/cartpole2/cartpole2_config.py
legged_gym/envs/__init__.py
legged_gym/scripts/train.py
legged_gym/scripts/play.py
这个比官方 IsaacGymEnvs Cartpole 更接近"视频教学版"。
5. PPO 训练流程:看 rsl_rl
仓库:
text
leggedrobotics/rsl_rl
RSL-RL 是 robotics-first 的轻量级强化学习库,支持 PPO,并且被 Isaac Lab 和 Legged Gym 使用。(GitHub)
重点看:
text
rsl_rl/runners/on_policy_runner.py
rsl_rl/algorithms/ppo.py
rsl_rl/modules/actor_critic.py
rsl_rl/storage/rollout_storage.py
你需要理解的不是 PPO 论文所有推导,而是这条链:
text
env.step(actions)
→ rollout buffer
→ compute returns
→ PPO update
→ actor_critic.act()
→ save checkpoint
如果只是为了写环境和训练倒立摆,PPO 先会用就行;如果后面要改算法,再深入 rsl_rl。
6. 新项目长期建议:IsaacLab
如果你是现在开始系统学,长期还是要看:
text
isaac-sim/IsaacLab
IsaacLab 是 NVIDIA 当前主推的统一机器人学习框架,支持 reinforcement learning、imitation learning、motion planning,并包含 30 多个可训练环境,可对接 RSL-RL、SKRL、RL-Games、Stable-Baselines 等。(GitHub)
IsaacLab 里也有 Cartpole 教程。它的 Direct Workflow RL 教程明确用 Cartpole 环境讲 scene、actions、resets、rewards、observations 的实现。(Isaac Sim)
它的 domain randomization 更现代,放在 event system 里。比如:
| 随机化对象 | IsaacLab 函数 |
|---|---|
| 材质摩擦/恢复系数 | randomize_rigid_body_material |
| 刚体质量 | randomize_rigid_body_mass |
| CoM | 相关 CoM 随机采样逻辑 |
| 重力 | randomize_physics_scene_gravity |
| actuator stiffness/damping | randomize_actuator_gains |
| joint friction/armature/limits | randomize_joint_parameters |
| root state 随机复位 | reset_root_state_uniform |
| joint position/velocity 随机复位 | reset joint state functions |
IsaacLab 文档中这些事件函数明确包括静摩擦、动摩擦、restitution、mass、gravity、actuator stiffness/damping、joint friction/armature/position limits、root position/velocity reset 等。(Robotsfan)
你应该怎么搜
不要搜:
text
1080_balls_of_solitude.py
这个只会搜到 IsaacGym 基础示例。
改成搜这些:
text
repo:isaac-sim/IsaacGymEnvs domain_randomization.md dof_properties
repo:isaac-sim/IsaacGymEnvs CartpolePPO.yaml
repo:isaac-sim/IsaacGymEnvs cartpole.py compute_reward
repo:leggedrobotics/legged_gym randomize_base_mass
repo:leggedrobotics/legged_gym _process_rigid_body_props
repo:leggedrobotics/legged_gym _reward_
repo:leggedrobotics/rsl_rl class PPO
repo:ZzzzzzS/legged_gym cartpole2
repo:isaac-sim/IsaacLab randomize_rigid_body_mass
repo:isaac-sim/IsaacLab randomize_joint_parameters
推荐学习路线
第一阶段:IsaacGym 基础 API
text
isaacgym/python/examples/
看:
text
asset_info.py
body_physics_props.py
dof_controls.py
apply_forces.py
apply_forces_at_pos.py
actor_scaling.py
目标:知道 actor、asset、body、DOF、force、damping、friction 是什么。
第二阶段:官方 Cartpole 强化学习
text
isaac-sim/IsaacGymEnvs
看:
text
isaacgymenvs/tasks/cartpole.py
isaacgymenvs/cfg/task/Cartpole.yaml
isaacgymenvs/cfg/train/CartpolePPO.yaml
目标:跑通倒立摆 RL,理解 obs / action / reward / reset / PPO config。
第三阶段:domain randomization
text
IsaacGymEnvs/docs/domain_randomization.md
目标:学会写:
yaml
observations:
actions:
sim_params:
actor_params:
cartpole:
dof_properties:
rigid_body_properties:
rigid_shape_properties:
第四阶段:LeggedGym reward 和 sim2real
text
leggedrobotics/legged_gym
看:
text
legged_robot.py
legged_robot_config.py
目标:学 reward scales、noise、push、mass/friction randomization、command randomization。
第五阶段:ZzzzzzS 二阶倒立摆
text
ZzzzzzS/legged_gym
看:
text
cartpole2.py
cartpole2_config.py
目标:把你 B 站看到的倒立摆训练逻辑拆懂。
第六阶段:PPO 源码
text
leggedrobotics/rsl_rl
看:
text
on_policy_runner.py
ppo.py
actor_critic.py
rollout_storage.py
目标:理解训练循环,而不是只会改 reward。
总结
你要找的不是一个单独 GitHub 搜索结果,而是这几条主线:
text
基础 API:Isaac Gym Preview examples
RL 倒立摆:isaac-sim/IsaacGymEnvs
随机化配置:IsaacGymEnvs/docs/domain_randomization.md
LeggedGym reward:leggedrobotics/legged_gym
二阶倒立摆教程:ZzzzzzS/legged_gym
PPO 算法源码:leggedrobotics/rsl_rl
长期新框架:isaac-sim/IsaacLab
你现在最该先看:
text
1. IsaacGymEnvs/tasks/cartpole.py
2. IsaacGymEnvs/docs/domain_randomization.md
3. ZzzzzzS/legged_gym 的 cartpole2
4. leggedrobotics/legged_gym/envs/base/legged_robot.py
这四个看完,基本就能理解你列出的那几个技术点。
问题9
结论
是的,这两个更偏"部署",但它们不是最适合入门的材料。
| 仓库 | 定位 | 是否适合入门 |
|---|---|---|
ZzzzzzS/CtrlZ |
多线程强化学习机器人运动控制部署框架 | 不适合作为第一步 |
ZzzzzzS/OwheelNT |
OwheelNT 轮足机器人运控部署代码 | 更不适合作为第一步 |
IsaacGymEnvs |
NVIDIA Isaac Gym 强化学习环境示例 | 适合入门 |
IsaacLab |
NVIDIA 当前主推机器人学习框架 | 更官方、更长期 |
1. 这两个是不是关于部署?
ZzzzzzS/CtrlZ
是。它的 README 明确说,CtrlZ 是一个"多线程强化学习部署框架",用于把学习类机器人运动控制算法部署到实际机器人上,并包含传感器信息获取、用户指令控制、网络推理、多网络切换、PD 跟随、数据记录等功能。(GitHub)
所以它主要解决的是:
text
训练好的 policy 怎么从仿真环境拿出来
怎么用 onnxruntime 做推理
怎么读取 IMU / 电机状态
怎么下发 PD 控制
怎么做多线程实时控制
怎么记录部署数据
这已经不是"怎么训练倒立摆"的层级,而是 policy 训练完以后怎么上机器人。
ZzzzzzS/OwheelNT
也是部署相关。GitHub 页面写的是"OwheelNT轮足机器人运控部署代码",而且代码主要是 C++,仓库中有 main.cpp、WheelRobotInference.hpp、SmartDriverWorker.hpp、DDSCommWorker.hpp 等文件,更接近具体机器人平台的控制部署工程。(GitHub)
但它的 README 基本只有标题,公开说明很少,所以不适合作为系统入门教材。(GitHub)
2. 为什么你现在不需要先学它们?
你现在的问题是:
text
IsaacGym 怎么建环境
Cartpole 怎么训练
domain randomization 怎么加
reward 怎么写
PPO 怎么跑
10000 envs 并行训练怎么做
这些属于 训练阶段。
而 CtrlZ / OwheelNT 解决的是:
text
训练好的策略怎么实时运行
怎么和真实机器人通信
怎么把神经网络输出变成电机命令
怎么做 ONNX 推理
怎么做多线程控制
这是 部署阶段。
所以顺序应该是:
text
先学训练 → 再学仿真内推理 → 最后学真实机器人部署
如果你还没有跑通 Cartpole / LeggedGym 训练,直接看 CtrlZ 会很吃力,因为它默认你已经知道:
text
policy 输入是什么
policy 输出是什么
obs normalization 怎么处理
action scale 怎么处理
PD target 怎么生成
控制频率和仿真频率如何对应
3. 更适合入门、比较官方的材料
第一优先:IsaacGymEnvs
这是 NVIDIA Isaac Gym 的官方强化学习环境仓库。README 说明它包含 Isaac Gym 高性能环境的 example RL environments,并建议先下载 Isaac Gym Preview 4,再运行 python/examples 里的示例确认 Isaac Gym 本体可用。(GitHub)
你要重点看:
text
isaacgymenvs/tasks/cartpole.py
isaacgymenvs/cfg/task/Cartpole.yaml
isaacgymenvs/cfg/train/CartpolePPO.yaml
docs/domain_randomization.md
docs/rl_examples.md
它更适合你现在学:
text
Cartpole 强化学习
PPO 训练配置
num_envs 并行环境
obs / action / reward / reset
IsaacGym tensor API
domain randomization
IsaacGymEnvs 的 RL examples 文档明确说,可以用 python train.py 启动单 GPU 强化学习训练,并列出了 Cartpole、Ant、Humanoid、ANYmal、Franka、ShadowHand 等任务。(GitHub)
推荐先跑:
bash
python train.py task=Cartpole headless=True
然后再改成:
bash
python train.py task=Cartpole num_envs=10000 headless=True
第二优先:Isaac Lab 官方教程
如果你想走更长期、更官方的路线,应该看 Isaac Lab 。Isaac Lab 是现在 NVIDIA 主推的新框架,Isaac Gym 已经偏 legacy。Isaac Lab 官方教程里有 Cartpole PPO 训练示例,文档明确使用 Stable-Baselines3 的 PPO 来训练 Isaac-Cartpole-v0,并给出了 headless、录制视频、交互式训练三种运行方式。(Isaac Sim)
官方 Cartpole 训练命令示例:
bash
./isaaclab.sh -p scripts/reinforcement_learning/sb3/train.py --task Isaac-Cartpole-v0 --num_envs 64 --headless
这条路线比 CtrlZ 更适合新手,因为它先教你:
text
怎么创建环境
怎么训练 agent
怎么观察训练结果
怎么运行 policy
第三优先:Isaac Lab / Isaac Sim 官方部署教程
如果你后面真的要学"部署",优先看 NVIDIA 官方部署教程,而不是先看个人仓库。Isaac Sim 官方文档有 "Deploying Policies in Isaac Sim" 教程,目标就是解释如何部署 Isaac Lab 训练出来的 policy,并包含 H1、Spot 示例、训练与导出 policy、读取环境参数、机器人定义、位置到力矩转换、调试和 sim-to-real 部署等内容。(Isaac Sim 文档)
Isaac Lab 也有专门的 "Sim2Real Deployment of Policies Trained in Isaac Lab" 指南,说明该部分提供训练 policy 并部署到仿真和真实机器人的示例。(Isaac Sim)
如果只是想在仿真场景里运行训练好的 policy,可以看 Isaac Lab 的 "Policy Inference in USD Environment" 教程。该教程用 RSL-RL 训练好的 H1 policy,在预置 USD 仓库场景中运行推理。(Isaac Sim)
4. 你的学习顺序应该这样排
阶段 1:先学 IsaacGym 基础
text
Isaac Gym Preview 4
isaacgym/python/examples
看:
text
asset_info.py
body_physics_props.py
dof_controls.py
apply_forces.py
apply_forces_at_pos.py
domain_randomization.py
目标:知道 asset / actor / body / dof / force / tensor 是什么。
阶段 2:学官方 RL 训练
text
isaac-sim/IsaacGymEnvs
看:
text
tasks/cartpole.py
cfg/task/Cartpole.yaml
cfg/train/CartpolePPO.yaml
docs/domain_randomization.md
目标:跑通 Cartpole PPO,理解 reward、reset、observation、action、并行环境。
阶段 3:学 LeggedGym reward 设计
text
leggedrobotics/legged_gym
看:
text
legged_gym/envs/base/legged_robot.py
legged_gym/envs/base/legged_robot_config.py
目标:理解四足/腿式机器人里的 reward scales、commands、noise、push、friction/mass randomization。
阶段 4:再看 Isaac Lab
text
isaac-sim/IsaacLab
看:
text
Cartpole training tutorial
Direct RL environment tutorial
Policy inference tutorial
Policy deployment guide
目标:迁移到 NVIDIA 当前主线框架。
阶段 5:最后再看 CtrlZ / OwheelNT
text
ZzzzzzS/CtrlZ
ZzzzzzS/OwheelNT
目标:理解真实机器人部署、ONNX 推理、多线程、PD 控制、电机通信。
5. 是否要现在收藏 CtrlZ 和 OwheelNT?
可以收藏,但不要作为主线。
| 仓库 | 现在怎么用 |
|---|---|
CtrlZ |
先收藏,等你训练出 policy 并能导出 ONNX/JIT 后再看 |
OwheelNT |
只作为具体轮足机器人部署案例,不建议现在细读 |
IsaacGymEnvs |
现在主学 |
IsaacLab |
同步收藏,后续主线 |
legged_gym |
学 reward 和 sim2real 思路 |
rsl_rl |
学 PPO 训练流程 |
最推荐的入门主线
text
1. Isaac Gym Preview examples
2. IsaacGymEnvs Cartpole
3. IsaacGymEnvs domain_randomization.md
4. leggedrobotics/legged_gym
5. Isaac Lab Cartpole / locomotion tutorial
6. Isaac Lab policy deployment guide
7. CtrlZ / OwheelNT
一句话:CtrlZ 和 OwheelNT 是部署阶段材料,不是入门训练材料。你现在更应该先学 NVIDIA 官方的 IsaacGymEnvs 和 IsaacLab。
问题10
先学训练 → 再学仿真内推理 → 最后学真实机器人部署 这个起个名字给github的这个star
最适合给这个 GitHub Star List 起名:
text
RL Sim2Real Path
对应仓库/列表名可以写成:
text
rl-sim2real-path
含义很清楚:
text
强化学习:训练 → 仿真推理 → 真实机器人部署
推荐名称
| 名称 | 适合程度 | 说明 |
|---|---|---|
RL Sim2Real Path |
最推荐 | 简洁,覆盖训练、推理、部署 |
Robot RL Pipeline |
推荐 | 强调完整流程 |
Policy Train Infer Deploy |
推荐 | 直接对应你的三阶段 |
Isaac RL Learning Path |
推荐 | 偏 IsaacGym / IsaacLab 学习路线 |
Sim2Real RL Stack |
可用 | 更像技术栈收藏 |
Robot Policy Deployment Path |
可用 | 偏后期部署,不够覆盖训练 |
RL Training to Deployment |
可用 | 直白,但稍普通 |
我建议你最终用这个
GitHub Star List 名称:
text
RL Sim2Real Path
描述写:
text
Training → Sim Inference → Real Robot Deployment for IsaacGym, IsaacLab, LeggedGym, PPO, and robot policy deployment.
中文备注可以写:
text
强化学习从仿真训练、仿真内策略推理到真实机器人部署的学习路线。
Star List 内部分组可以这样记
text
01 Training
02 Sim Inference
03 Real Robot Deployment
04 PPO / RL Algorithms
05 Domain Randomization
06 IsaacGym / IsaacLab
最稳妥的命名组合:
text
List name: RL Sim2Real Path
Description: Training → Sim Inference → Real Robot Deployment
问题10
https://github.com/search?q=1080_balls_of_solitude.py\&type=code
你遍历下这些仓库,看看这个里面有哪些仓库有特色可以让我学的
我看了一轮。结论是:搜
1080_balls_of_solitude.py得到的大多数仓库,并不是因为它们有这个示例源码,而是 README 里把它当 Isaac Gym 安装验证命令。 GitHub 未登录状态下不能直接查看完整 code search 结果,页面提示需要登录才能使用代码搜索;所以我按这个精确关键词检索了公开可访问的仓库页面和 README。(GitHub)
最值得 Star 的主线仓库
| 优先级 | 仓库 | 值得学什么 | 判断 |
|---|---|---|---|
| 1 | isaac-sim/IsaacGymEnvs |
官方 RL 环境、Cartpole、Ant、Humanoid、并行环境、PPO 配置、domain randomization | 最适合入门训练 |
| 2 | leggedrobotics/legged_gym |
LeggedGym 框架、reward 设计、friction/mass randomization、noisy observations、random pushes | 腿式机器人训练主线 |
| 3 | leggedrobotics/rsl_rl |
PPO、Actor-Critic、rollout buffer、on-policy runner | 理解 PPO 训练流程 |
| 4 | isaac-sim/IsaacLab |
NVIDIA 当前主推新框架,后续长期迁移方向 | 长期主线 |
| 5 | ZzzzzzS/legged_gym |
中文/教学友好,加入注释版二阶倒立摆 cartpole2 |
适合你现在看倒立摆 |
IsaacGymEnvs 是 NVIDIA Isaac Gym 的强化学习环境仓库,README 明确说它包含 NVIDIA Isaac Gym 高性能环境的 RL 示例;它也明确给出 python train.py task=Cartpole,并说明 Cartpole 几秒内能训练到杆保持竖直。它还支持用 num_envs 覆盖并行环境数量。(GitHub)
leggedrobotics/legged_gym 是 ETH RSL 的腿式机器人训练主仓库,README 说明它用于训练 ANYmal 等机器人在 rough terrain 上行走,并包含 sim-to-real 所需的 actuator network、friction/mass randomization、noisy observations、random pushes。(GitHub)
rsl_rl 是 LeggedGym 和 IsaacLab 常用的 PPO 库。README 说明它是面向机器人研究的 GPU 加速轻量级学习库,特点包括 PPO、Student-Teacher Distillation、多 GPU训练,并被 Isaac Lab 和 Legged Gym 使用。(GitHub)
你这个 Star List 里建议这样分组
01 Training Core
放这几个:
text
isaac-sim/IsaacGymEnvs
leggedrobotics/legged_gym
leggedrobotics/rsl_rl
ZzzzzzS/legged_gym
这组解决:
text
怎么建 RL 环境
怎么写 observation / reward / reset
怎么跑 PPO
怎么并行 10000 envs
怎么做 domain randomization
怎么训练倒立摆或腿式机器人
有特色、但属于进阶再看的仓库
| 仓库 | 特色 | 适合什么时候看 |
|---|---|---|
unitreerobotics/unitree_rl_gym |
Unitree 官方/半官方 RL 训练路线,支持 Go2、H1、H1_2、G1 | 想学真实商用机器人训练/部署时 |
Improbable-AI/walk-these-ways |
Go1 sim-to-real、运动技能、真实机器人迁移 | 学会 LeggedGym 后 |
Improbable-AI/learning-compliance |
Unitree B1 + Z1 机械臂,学习力控和腿臂协同 | 想学 loco-manipulation 时 |
ZiwenZhuang/parkour |
Go2 parkour,多阶段训练、skill policy、distillation | 想学复杂地形和技能蒸馏时 |
ykwang20/Guardians_as_You_Fall |
安全摔倒、恢复控制、多策略切换 | 想学异常状态恢复时 |
arclab-hku/Omni-Jump |
四足机器人跳跃、步态切换、joystick 控制 | 想学跳跃/特殊运动时 |
LeCAR-Lab/HumanoidVerse |
多仿真器框架,IsaacGym / IsaacSim / Genesis | 想做人形机器人长期路线时 |
LeCAR-Lab/ASAP |
人形机器人 sim-to-real 对齐,敏捷全身技能 | 高级人形机器人方向 |
LeCAR-Lab/FALCON |
人形机器人 loco-manipulation,sim2sim / sim2real | 高级人形机器人操作 |
LeCAR-Lab/wococo |
CoRL 2024,humanoid sequential contacts | 论文复现/高级研究 |
engineai-robotics/engineai_legged_gym |
训练、play、sim2sim、sim2real、ONNX 导出 | 想学国产机器人部署链路时 |
unitreerobotics/unitree_rl_gym 的 README 说明它是面向 Unitree 机器人的强化学习实现,支持 Go2、H1、H1_2 和 G1;安装文档也把 1080_balls_of_solitude.py 当 Isaac Gym 安装验证步骤。(GitHub)
learning-compliance 比普通行走更复杂,它实现的是 "Learning Force Control for Legged Manipulation",用于 Unitree B1 + Z1 arm 的力控和移动操作训练;README 说明默认训练需要约 12GB 显存,默认并行环境数是 4000。(GitHub)
parkour 是机器人跑酷训练教程,包含 Go2 walking policy、parkour policy、distillation policy 三阶段流程,还提到需要配置 depth camera extrinsic pose。这个不是入门仓库,但很适合学多阶段技能训练。(GitHub)
Guardians_as_You_Fall 的特色是安全摔倒与恢复控制。README 说明它包含 working policy、transition controller、recovery controller 和 planner,其中 go1_fall_dr.py 还包含额外 domain randomization 用于 sim-to-real。(GitHub)
Omni-Jump 是四足跳跃方向,README 明确说这个仓库只包含 RL policy 部分,任务 reward 设置在 legged_robot.py 和 Go2 配置文件中,还提供 joystick 播放方式。(GitHub)
HumanoidVerse 更偏长期路线。它支持 IsaacGym、IsaacSim、Genesis,多仿真器、多任务、sim-to-sim、sim-to-real,并且强调 simulator、task、algorithm 的模块化分离。(GitHub)
engineai_legged_gym 的特色是流程比较完整,README 说它提供训练、play 生成 .pt、sim2sim、sim2real,并能生成 .onnx 用于真实部署。(GitHub)
不建议你现在重点看的仓库类型
很多搜索结果只是把 1080_balls_of_solitude.py 写在安装说明里,没有实质训练内容 。例如一些安装教程仓库、个人 fork、只改了机器人模型的仓库,学习价值不如直接看 IsaacGymEnvs、legged_gym 和 rsl_rl。
建议暂时跳过:
text
只写安装步骤的仓库
几乎没有 README 的个人 fork
只替换机器人 URDF/asset、没有讲 reward / randomization / train pipeline 的仓库
专门面向真实机器人部署、但没有训练细节的仓库
你的 Star List 可以这样命名和排序
List 名称:
text
RL Sim2Real Path
分组顺序:
text
01 Official / Core
- isaac-sim/IsaacGymEnvs
- isaac-sim/IsaacLab
- leggedrobotics/legged_gym
- leggedrobotics/rsl_rl
02 Beginner / Cartpole
- ZzzzzzS/legged_gym
03 Robot RL Frameworks
- unitreerobotics/unitree_rl_gym
- engineai-robotics/engineai_legged_gym
04 Advanced Locomotion
- Improbable-AI/walk-these-ways
- ZiwenZhuang/parkour
- arclab-hku/Omni-Jump
- ykwang20/Guardians_as_You_Fall
05 Loco-Manipulation / Humanoid
- Improbable-AI/learning-compliance
- LeCAR-Lab/HumanoidVerse
- LeCAR-Lab/ASAP
- LeCAR-Lab/FALCON
- LeCAR-Lab/wococo
你现在最该学的 5 个
按你的目标"倒立摆训练 + 物理随机化 + PPO + 后续部署",只需要先看:
text
1. isaac-sim/IsaacGymEnvs
2. leggedrobotics/legged_gym
3. leggedrobotics/rsl_rl
4. ZzzzzzS/legged_gym
5. unitreerobotics/unitree_rl_gym
其他先 Star,不要马上深读。尤其 ASAP / FALCON / wococo / parkour / Omni-Jump 都是高级项目,适合在你已经能读懂 reward、obs、reset、domain_rand、PPO runner、policy export 之后再看。
问题11
→ 仿真推理 → 真实机器人部署
这个文档是干嘛的?
你给的页面:
text
https://docs.robotsfan.com/isaacgym/programming/simsetup.html#cleanup
是 Isaac Gym 的 Simulation Setup 编程说明文档 。它不是强化学习算法教程,而是教你 如何用 Isaac Gym 从零搭一个仿真程序。
它主要讲这些基础流程:
text
1. acquire_gym()
2. create_sim()
3. 设置 SimParams
4. 添加 ground plane
5. 加载 URDF / MJCF asset
6. 创建多个 env
7. 创建 actor
8. simulate / fetch_results
9. 添加 viewer
10. 退出时 destroy_viewer / destroy_sim
文档里明确说,Isaac Gym 的 API 是 procedural and data-oriented ,不是传统面向对象结构;它用扁平数组表示仿真状态和控制量,方便和 NumPy / PyTorch / GPU tensor 交换数据。(robotsfan)
所以它的作用是:教你 Isaac Gym 底层仿真环境怎么搭起来 。
它对应的学习阶段是:
text
IsaacGym 底层仿真 API
↓
并行环境 env / actor / asset
↓
Tensor API
↓
RL 环境封装
↓
PPO 训练
不是直接教你 PPO,但它是理解 IsaacGymEnvs、LeggedGym 的基础。
这个文档有用吗?
有用,但只适合学 Isaac Gym 底层。
尤其对你要理解这些内容有帮助:
| 你要学的东西 | 这个文档是否有用 |
|---|---|
sim 是什么 |
有用 |
env 是什么 |
有用 |
actor 是什么 |
有用 |
asset 是什么 |
有用 |
| 为什么可以几千个环境并行 | 有用 |
create_env / create_actor 怎么写 |
有用 |
| viewer / headless 是什么 | 有用 |
| reward 怎么写 | 不够 |
| PPO 怎么训练 | 不够 |
| policy 怎么部署 | 不够 |
| 真实机器人部署 | 不够 |
文档中特别重要的一段是它解释了 Isaac Gym 为什么适合强化学习:可以把多个环境实例打包进一个 simulation,几十、几百、几千个环境同步运行,并可以随机化初始条件、物理属性、视觉属性和控制属性。(robotsfan)
需要注意:Isaac Gym 已经不是新主线
Isaac Gym 现在是 legacy / deprecated software 。NVIDIA 官方页面写明:Isaac Gym 可以继续下载使用,但不再支持,并建议使用 Isaac Lab。(NVIDIA Developer)
所以学习路线应该分成两条:
text
旧路线:Isaac Gym → IsaacGymEnvs → LeggedGym
新路线:Isaac Sim → Isaac Lab → Isaac Lab Policy Deployment
你现在看 B 站、LeggedGym、IsaacGymEnvs,很多内容仍然基于旧路线;但如果你要长期做机器人强化学习,最终应该转向 Isaac Lab。
官方资源学习路线:训练 → 仿真推理 → 真实机器人部署
我建议你的 GitHub Star List 可以按这个路线整理。
01. 底层仿真基础:Isaac Gym Programming Docs
适合阶段:
text
先搞懂仿真器本身
重点资源:
text
Isaac Gym Documentation
- Installation
- Programming Examples
- Simulation Setup
- Assets
- Physics Simulation
- Tensor API
- Force Sensors
- Simulation Tuning
- Graphics and Camera Sensors
- Terrains
Isaac Gym 文档首页本身就按这些模块组织:Installation、Examples、Programming、Simulation Setup、Assets、Physics Simulation、Tensor API、Force Sensors、Simulation Tuning、Camera Sensors、Terrains、API Reference。(robotsfan)
重点看:
text
1. Simulation Setup
2. Assets
3. Physics Simulation
4. Tensor API
5. Simulation Tuning
6. Programming Examples
你给的这个 simsetup.html 就属于第 1 类。
02. 强化学习训练入门:IsaacGymEnvs
适合阶段:
text
训练一个 policy
官方仓库:
text
isaac-sim/IsaacGymEnvs
这个仓库是 Isaac Gym 的 RL 环境仓库,README 说明它包含 NVIDIA Isaac Gym 高性能环境的 example RL environments。(GitHub)
它最适合你学:
text
Cartpole 训练
Ant / Humanoid / Anymal 训练
num_envs 并行环境
PPO 配置
RL task 文件结构
checkpoint
test=True 仿真推理
domain randomization
重点看:
text
isaacgymenvs/tasks/cartpole.py
isaacgymenvs/cfg/task/Cartpole.yaml
isaacgymenvs/cfg/train/CartpolePPO.yaml
docs/rl_examples.md
docs/domain_randomization.md
官方 README 给出的第一个训练命令就是:
bash
python train.py task=Cartpole
并且说明 Cartpole 很快就能训练到杆保持竖直。(GitHub)
它也支持加载 checkpoint 只做推理:
bash
python train.py task=Ant checkpoint=runs/Ant/nn/Ant.pth test=True num_envs=64
README 明确说明 test=True 表示只运行 inference,不继续训练。(GitHub)
03. Domain Randomization:IsaacGymEnvs 官方文档
适合阶段:
text
训练更稳健的 policy,为 sim-to-real 做准备
重点资源:
text
IsaacGymEnvs/docs/domain_randomization.md
这个文档非常关键,因为它讲的是你前面问的这些东西:
text
observation noise
action noise
sim_params randomization
actor_params randomization
dof_properties
rigid_body_properties
rigid_shape_properties
mass
friction
damping
effort
IsaacGymEnvs 文档把随机化分成四类:
text
observations
actions
sim_params
actor_params
其中 actor_params 可以随机化 actor 的 dof_properties 等属性。(GitHub)
它明确列出可随机化的属性包括:
text
rigid_body_properties.mass
rigid_shape_properties.friction
dof_properties.stiffness
dof_properties.damping
dof_properties.friction
dof_properties.effort
这些正好对应你关心的 DOF friction / damping、link mass、动作误差、观测噪声等。(GitHub)
04. 当前官方主线:Isaac Lab
适合阶段:
text
从旧 Isaac Gym 迁移到新框架
官方仓库:
text
isaac-sim/IsaacLab
官方文档:
text
Isaac Lab Documentation
NVIDIA Isaac Sim 文档明确写了:Isaac Lab 是 Isaac Sim 的 official robot learning framework ,提供 reinforcement learning、imitation learning 等 API 和示例。(Isaac Sim 文档)
Isaac Lab 的重要性在于:
text
1. Isaac Gym 已经 deprecated
2. IsaacGymEnvs 已经归档
3. OmniIsaacGymEnvs 也被替代
4. Orbit 也被 Isaac Lab 替代
5. 新项目应该优先看 Isaac Lab
Isaac Sim 文档明确说 Isaac Lab 会替代 IsaacGymEnvs、OmniIsaacGymEnvs 和 Orbit,并建议迁移到 Isaac Lab。(Isaac Sim 文档)
05. Isaac Lab 入门课程:Getting Started With Isaac Lab
适合阶段:
text
完全从新框架入门
官方学习课程:
text
NVIDIA Getting Started With Isaac Lab
这个资源比 API 文档更像"教程课"。它的目录里直接包含:
text
Train Your First Robot in Isaac Lab
Training the Cartpole
Running the Training
Analyzing the Code
Running our Policy
Train Your Second Robot
Custom Reward Functions
Transferring Robot Learning Policies From Simulation to Reality
Domain Randomization
System Identification
Actuator Modeling
Tips for Sim-to-Real
这些目录直接覆盖你说的"训练 → 仿真推理 → 真实机器人部署"的主线。(NVIDIA Docs)
如果你想找"教会你怎么用"的资源,这个比纯 API 文档更适合入门。
06. Isaac Lab 强化学习脚本:RL-Games / RSL-RL / SKRL / SB3
适合阶段:
text
知道怎么训练,但还不熟悉训练脚本
官方资源:
text
Isaac Lab Reinforcement Learning Scripts
Isaac Lab 文档说明,它提供不同强化学习库的 wrappers,把 Isaac Lab 环境数据转换成不同 RL 库需要的输入输出格式。支持的库包括:
text
RL-Games
RSL-RL
SKRL
Stable-Baselines3
文档中还给出了训练和 play 命令,例如用 RL-Games 训练 Isaac-Ant-v0,再用 checkpoint 运行 play。(Isaac Sim)
这部分对应你的路线:
text
训练 policy
↓
保存 checkpoint
↓
加载 checkpoint
↓
仿真内运行 policy
07. Isaac Lab Training Guide:并行环境、显存、OOM、调参
适合阶段:
text
你开始跑大规模 num_envs,例如 4096、8192、10000
官方资源:
text
Isaac Lab Debugging and Training Guide
这个文档讲:
text
Training with Parallel Environments
Hyperparameter Tuning
Debugging NaNs
Understanding Training Outputs
OOM 处理
GPU 利用率
memory usage
文档明确说明,Isaac Lab 的关键 RL 范式是用大量并行环境训练,环境数量会影响 rollout 数据量、训练速度和显存占用。(Isaac Sim)
你前面提到:
text
10000 envs
RTX4070 8G
这类问题就应该看这个文档。
08. 仿真内推理:Deploying Policies in Isaac Sim
适合阶段:
text
训练完 policy 后,在 Isaac Sim 场景里运行
官方资源:
text
Deploying Policies in Isaac Sim
这个教程的目标就是解释 如何部署 Isaac Lab 训练出来的 policy。它包含:
text
H1 humanoid policy demo
Spot quadruped policy demo
Training and exporting policies in Isaac Lab
Reading environment parameter file
Robot definition class
Position to torque conversion
Debugging tips
Sim-to-real deployment
文档明确把这些列为 learning objectives。(Isaac Sim 文档)
这正好对应你说的第二步:
text
仿真内推理
也就是:
text
我已经训练出 policy
↓
我不想继续训练
↓
我要把 policy 放进 Isaac Sim 场景里跑
↓
看它如何控制 H1 / Spot / 自己的机器人
09. 真实机器人部署:Isaac Lab Policy Deployment Guide
适合阶段:
text
准备 sim-to-real
官方资源:
text
Sim2Real Deployment of Policies Trained in Isaac Lab
这个文档明确说,它提供 Isaac Lab 中训练策略,并部署到 simulation and real robots 的示例。(Isaac Sim)
它下面包括:
text
Training & Deploying HOVER Policy
IO Descriptors 101
Training a Gear Insertion Policy and ROS Deployment
这部分才是你路线里的第三步:
text
真实机器人部署
你现在可以收藏,但不建议一开始就深入。它默认你已经知道:
text
policy 输入输出
obs normalization
action scale
joint target
torque conversion
robot config
env.yaml / agent.yaml
ROS / control bridge
最终推荐收藏清单
你的 GitHub Star List / 学习资料清单可以叫:
text
RL Sim2Real Path
然后按下面整理。
A. Isaac Gym Legacy 基础
text
Isaac Gym Preview Release
Isaac Gym Documentation
IsaacGymEnvs
用途:
text
学旧版 Isaac Gym
学 Cartpole / Ant / Humanoid / Anymal 训练
学 tensor API
学 domain randomization
理解 LeggedGym 的底层背景
B. Isaac Lab Official Mainline
text
Isaac Lab Documentation
Isaac Lab GitHub
Getting Started With Isaac Lab
Isaac Lab RL Scripts
Isaac Lab Training Guide
用途:
text
学当前官方主线
学新框架任务设计
学 RSL-RL / RL-Games / SKRL / SB3 接入
学并行环境训练和调参
C. Policy Inference
text
Deploying Policies in Isaac Sim
Isaac Sim Policy Example Extension
Isaac Lab play.py tutorials
用途:
text
训练后加载 checkpoint
导出 policy
在 Isaac Sim 场景中运行 policy
看 H1 / Spot demo
D. Sim-to-Real Deployment
text
Isaac Lab Policy Deployment Guide
HOVER Policy Deployment
IO Descriptors 101
Gear Insertion ROS Deployment
用途:
text
学真实机器人部署
学 policy I/O 描述
学 ROS 部署
学 sim-to-real 工程链路
你现在应该先看哪些?
按你的当前阶段,建议不要一下子看真实机器人部署。先看这 6 个:
text
1. Isaac Gym Simulation Setup
2. Isaac Gym Tensor API
3. IsaacGymEnvs Cartpole
4. IsaacGymEnvs Domain Randomization
5. Isaac Lab Getting Started With Isaac Lab
6. Isaac Lab RL Scripts
对应目标:
text
先能搭环境
再能读 tensor
再能训练 Cartpole
再能加随机化
再迁移到 Isaac Lab
最后才考虑部署
一句话:
你给的这个文档是 Isaac Gym 底层仿真搭建手册;真正完整学习"训练 → 仿真推理 → 真实机器人部署",应该以 Isaac Lab 官方教程和 Policy Deployment Guide 为主,Isaac Gym / IsaacGymEnvs 作为旧版入门和理解 LeggedGym 的基础。