141
94

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

機械学習Advent Calendar 2024

Day 24

[Genesis] 1時間で4脚ロボットの強化学習の環境構築

Last updated at Posted at 2024-12-28

環境

Genesisはクロスプラットホームで様々なOS、ハードウェアで動作できるように設計されています。しかし、公式が最も推奨するのは、Linux環境にCUDAが使用できるGPUとのことです。

サポートするOSとハードの表です。WindowsではInteractive ViewerとHeadless Renderingが使えないので、Genesisを始める方は、LinuxかApple Siliconの入っているMacが良いです。
Screenshot from 2024-12-28 13-59-21.png

なお、筆者の環境は次の表の通りです。

項目 環境
CPU Intel Core i7 11700F
GPU RTX3070ti
RAM 32GB
OS Ubuntu22.04

よってこのチュートリアルはUbuntuの方用です。
Macをお使いの方は、こちらの記事が参考になります。

Genesisのインストール

インストールした方は適宜飛ばしてください。

Python3.9以上とpipをインストール

sudo apt update
sudo apt install python3
sudo apt install python3-pip

#互換性を上げておく
sudo apt install python-is-python3

PyTorchをインストール

#Cuda 11.8の場合
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

#Cuda 12.1の場合
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121

#CUDA 12.4の場合
pip3 install torch torchvision torchaudio

Genesisのインストール

pip install genesis-world

モーションプランナーをインストール(必須でない)
ここから、自分の環境に合うやつをダウンロードしてください。
(私の場合ompl-1.6.0-cp310-cp310-manylinux_2_28_x86_64.whl)

cd Downloads
pip install ompl-1.6.0-cp310-cp310-manylinux_2_28_x86_64.whl

nvidiaのドライバを入れる (nvidiaのGPUを持っている人限定)

nvidiaのGPUが刺さっているPCでも、ドライバを入れなければGenesisが動きません。入れ方の参考サイトを書いておきます。すでに入れている人は飛ばしてください。

Genesisパッケージをgit cloneする

cd
git clone https://github.com/Genesis-Embodied-AI/Genesis.git

動作確認として、Genesis/exampleの中に次のコードをtest.pyとしてコピペする。gs.cpuをgs.cudaにするとnvidiaのGPUを使います。

test.py
import genesis as gs
gs.init(backend=gs.cpu)

scene = gs.Scene(show_viewer=True)
plane = scene.add_entity(gs.morphs.Plane())
franka = scene.add_entity(
    gs.morphs.MJCF(file='xml/franka_emika_panda/panda.xml'),
)

scene.build()

for i in range(1000):
    scene.step()

実行

cd Genesis
python3 examples/test.py

ロボットアームがぶっ倒れるシミュレーションが表示されたら成功です。
image.png

CPUのみで動かす場合に発生するエラーについて

エラーが出ない人は飛ばしてください。
cpuのみで動かす場合にエラーが出ることがあるとのことです。

その際には、このissueを参考にコードを修正してください。

4脚ロボットの強化学習環をgit cloneする

cd
git clone https://github.com/leggedrobotics/rsl_rl
cd rsl_rl && git checkout v1.0.2 && pip install -e .

pip install tensorboard

学習を回す

cd
cd Genesis
python examples/locomotion/go2_train.py

学習の途中でモニターする場合。(学習が1分未満なので私はやってない)

tensorboard --logdir logs

学習結果を見る

python examples/locomotion/go2_eval.py

成功するとこのように歩いていきます。

参考サイト

ロボットアームのチュートリアル

4脚ロボットのチュートリアル

141
94
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
141
94

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?