本記事では、Isaac Labを使ってシミュレーション上でロボットの動作の強化学習をし、Isaac Simで動きを描画して確認する基本的なやり方を初心者にも分かりやすく解説していきます。
Isaac Labとは
Isaac Labは、NVIDIAが開発・提供しているロボット向けの強化学習フレームワークです。
Isaac Simと連携し、高精度な物理シミュレーション環境でロボットの学習や評価を効率的に行えます。
GPUを活用した大規模並列シミュレーションに対応しているため、実機では時間やコストがかかる学習も短時間で実施できるのが大きな特徴です。
また、移動ロボットやロボットアーム、四足歩行ロボットなど幅広いロボットに対応しており、強化学習アルゴリズムの開発から検証まで一貫して行えます。
Isaac Simを使えるようにするのは以下の記事を参考にしてください。

Isaac Labのインストール
ターミナルでホームディレクトリへ移動します。
|
1 |
cd ~ |
Githubからクローンします。
|
1 |
git clone https://github.com/isaac-sim/IsaacLab.git |
ディレクトリを移動します。
|
1 |
cd IsaacLab |
Isaac Simのバージョンによってチェックアウトするものを変えるのでtagのリストを表示して何があるか確認します。
|
1 |
git tag |
Isaac Simが5.xバージョンだったら以下を実行します。
|
1 |
git checkout release/2.3.0 |
Isaac Simが6.xバージョンだったら以下を実行します。
|
1 |
git checkout v3.0.0-beta2 |
Isaac Simを認識できるように以下を実行しておきます。
|
1 |
export ISAACSIM_PATH=/opt/isaacsim |
|
1 |
export ISAACSIM_PYTHON_EXE=/opt/isaacsim/python.sh |
|
1 |
ln -s /opt/isaacsim _isaac_sim |
以下を実行してインストールします。
|
1 |
./isaaclab.sh --install |
続いて、以下を実行します。
|
1 |
export PYTHONPATH=$PYTHONPATH:~/IsaacLab/source/isaaclab |
何かときどき足りないモジュールがでるときがあるので、足りないというエラーがでたらその都度インストールします。
|
1 |
./_isaac_sim/python.sh -m pip install flatdict |
|
1 |
./_isaac_sim/python.sh -m pip install prettytable |
|
1 |
./_isaac_sim/python.sh -m pip install hid |
|
1 2 3 4 |
sudo apt install \ libhidapi-dev \ libhidapi-hidraw0 \ libhidapi-libusb0 |
強化学習のやり方
以下で学習を開始します。
|
1 2 3 |
./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/train.py \ --task Isaac-Cartpole-v0 \ --headless |
学習を途中で止めるときは、Ctrl+Cで止めることができます。
注意するのは保存されたファイルのとこまでが残るだけなので、止めるタイミングは見極める必要があります。
保存する間隔を縮めた方がいいかもしれません。
学習を途中で止めて、後で途中から再開するときは以下のように実行します。
|
1 2 3 4 5 6 |
./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/train.py \ --task MY-Isaac-Deploy-GearAssembly-UR10e-2F140-v0 \ --resume \ --load_run 2026-07-02_09-42-16 \ --checkpoint model_1050.pt \ --headless |
以下のコマンドで学習結果のファイルの名称を調べます。
|
1 |
find logs -name "*.pt" |
学習したものを指定して以下を実行するとIsaac Simが開きます。
|
1 2 3 |
./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/play.py \ --task Isaac-Cartpole-v0 \ --checkpoint logs/rsl_rl/cartpole/2026-06-12_13-46-18/model_149.pt |
Isaac Simのバージョンが5.xのときは以下でないとエラーになっていました。
|
1 2 3 4 5 |
./isaaclab.sh -p scripts/reinforcement_learning/rsl_rl/play.py \ --task Isaac-Cartpole-v0 \ --checkpoint logs/rsl_rl/cartpole/EXPERIMENT_NAME/POLICY_FILE.pt \ --device cuda:0 \ --kit_args "--/renderer/multiGpu/enabled=false --/renderer/activeGpu=0 --/physics/cudaDevice=0" |
Isaac Labのバージョン3.0.0の場合にGUI有では以下のように実行します。
|
1 2 3 4 5 |
./isaaclab.sh play \ --rl_library rsl_rl \ --task MY-Isaac-Deploy-GearAssembly-UR10e-2F140-Play-v0 \ --checkpoint logs/rsl_rl/my_gear_assembly_ur10e/2026-07-04_03-35-51/model_1100.pt \ --viz kit |
デフォルトでは環境がたくさん表示されるので、表示が重くなる場合は以下のように表示数を変更できます。
|
1 2 3 4 5 6 |
./isaaclab.sh play \ --rl_library rsl_rl \ --task MY-Isaac-Deploy-GearAssembly-UR10e-2F140-ROS-Inference-v0 \ --checkpoint logs/rsl_rl/my_gear_assembly_ur10e/2026-07-12_12-05-04/model_1500.pt \ --num_envs 1 \ --viz kit |
まとめ
Isaac Labでロボットの動作の強化学習ができました。
学習結果のポリシーファイルを本番環境等で使うにはROS2で実行するプログラムが必要だと思うので次はそれを作成したいと思います。
ロボットに関連した他の記事
ROS2の記事



コメント