fan-ziqi/robot_lab
RL Extension Library for Robots, Based on IsaacLab.
robot_lab – 現実世界のロボットのための強化学習環境
概要
- NVIDIA の Isaac Lab 上に構築された拡張ライブラリで、多くの商用ロボットプラットフォーム(四足歩行、車輪型ベース、人型など)向けのすぐに使える強化学習 (RL) 環境を多数バンドルしています。
- Isaac Lab のコアリポジトリの外で動作するため、個別にインストールして独自の実験を分離して管理できます。
主な機能
- 数百の事前設定済みタスク – 各環境は OpenAI-Gym API (
gym.Env) に準拠しており、RobotLab-Isaac-Velocity-Rough-Unitree-A1-v0のような名前で識別されます。名前にはタスク(例: Velocity)、地形スタイル(Rough 対 Flat)、ロボットモデル、バージョンがエンコードされています。 - 幅広いロボット対応 – Anymal D、Unitree Go2/B2/A1、Deeprobotics Lite3、MagicDog、Unitree G1/H1、Booster T1 など、人気のプラットフォームが含まれています。脚式ロボットと車輪型ロボットの両方がサポートされています。
- 複数の RL バックエンド – バンドルされている RSL-RL や実験的な CusRL アルゴリズムを使用して学習でき、skrl を使用した例もあります。スクリプトにより、コマンドラインフラグを介してアルゴリズム、エージェント、ハイパーパラメータを切り替えることができます。
- スケーラブルな学習 – シングル GPU、マルチ GPU (
torch.distributed.run経由)、およびマルチノード設定をサポートしています。また、多数の並列環境 (--num_envs) を実行してデータ収集を高速化することも可能です。 - 便利なユーティリティ – 健全性チェック用のダミーのゼロまたはランダムエージェント、ビデオ録画、単一ロボットのキーボード遠隔操作、およびモーションキャプチャデータセット (BeyondMimic) を学習データに変換するツールを提供します。
- Docker サポート – Isaac-Lab ベースイメージ上に構築された Dockerfile と
docker-compose設定を提供し、コンテナ内でスタック全体を実行できます。 - 拡張性 – アセットを定義し、新しい Gym 環境を登録することで新しいロボットを追加する方法がリポジトリで示されています。設定は Python クラスまたは YAML ファイルで記述できます。
典型的なワークフロー
- Isaac Lab のインストール(NVIDIA のガイドに従ってください。Conda を推奨)。
- robot_lab のクローン と編集可能モードでのインストール:
python -m pip install -e source/robot_lab。 - 利用可能な環境のリスト表示:
python scripts/tools/list_envs.py。 - ポリシーの学習:
python scripts/reinforcement_learning/rsl_rl/train.py --task=RobotLab-Isaac-Velocity-Rough-Unitree-A1-v0 --headless - ポリシーの再生/評価:
手動制御にはpython scripts/reinforcement_learning/rsl_rl/play.py --task=RobotLab-Isaac-Velocity-Rough-Unitree-A1-v0--keyboard、録画には--video、多数のインスタンスを実行するには--num_envsを追加します。
対象ユーザー
- ロボットの移動、操作、全身制御に取り組む研究者やエンジニアで、NVIDIA Isaac Sim に裏打ちされた高忠実度のシミュレーションを必要とする方。
- ハードウェアに移行する前に、さまざまな実ロボットモデルでポリシーをプロトタイプする必要があるチーム(README には、Gazebo/実ロボットデプロイ用のコンパニオンリポジトリ
rl_sarへのリンクがあります)。
インストールのポイント
- Isaac Sim 4.5-5.1 および Isaac Lab 2.3.2(または対応するブランチ)が必要です。
- Linux および Windows (64-bit) で動作します。
- Python 環境を自動設定するためのオプションの VS Code タスクや、Sim UI からライブラリを読み込むための Omniverse UI 拡張機能が含まれています。
コミュニティ
- 議論は GitHub Discussions および Discord サーバー(リンク提供)で行われます。
- プロジェクトは Apache 2.0 ライセンスに従います。
結論: robot_lab は、NVIDIA の Isaac Sim エコシステム内で多くの商用ロボットのポリシーを学習・評価できる本格的なプロダクショングレードの RL 拡張機能であり、スケーラブルな学習、Docker デプロイ、新しいロボットモデルの容易な追加を完全にサポートしています。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト