Genesisでgo2に歩容を獲得させる

基本的にはhttps://genesis-world.readthedocs.io/ja/latest/user_guide/getting_started/locomotion.html#id7 の手順で進めます.以下は手順の備忘録です.

前提

環境構築が完了していること.

rsl-rlのインストール

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

学習の実行

rsl-rlのインストールが完了したら以下のコマンドで学習を実行できる.

cd go2_sim2real/
git clone <https://github.com/Genesis-Embodied-AI/Genesis.git>
cd Genesis/
python examples/locomotion/go2_train.py

学習の経過/結果を見る

tensorboardで見られます.新しいterminalをもう一つ開いて,以下のコマンドで起動します.

cd go2_sim2real/Genesis/
tensorboard --logdir logs

次のようなログが出て起動したら, http://localhost:6006/ へブラウザで接続すればOKです.

$ tensorboard --logdir Genesis/logs/
TensorFlow installation not found - running with reduced feature set.

NOTE: Using experimental fast data loading logic. To disable, pass
    "--load_fast=false" and report issues on GitHub. More details:
    <https://github.com/tensorflow/tensorboard/issues/4784>

Serving TensorBoard on localhost; to expose to the network, use a proxy or pass --bind_all
TensorBoard 2.19.0 at <http://localhost:6006/> (Press CTRL+C to quit)

以下の図は python examples/locomotion/go2_train.py --max_iterations=1000 として繰り返し回数をデフォルトの100回から1000回へ増やしてみた際のrewardの平均の推移です.200回を過ぎたあたりでサチっていますね.ちょっと長すぎたようですが学習は落ち着いたとみて良いでしょう.



学習結果を再生してみましょう.以下のコマンドを実行します.

python examples/locomotion/go2_eval.py

犬ロボが歩いている様子が再生されればOKです.

補足

TensorBoardの他のグラフは以下のとおりでした.

ThinkPadでも再生

持ち歩き開発用のサブ機ThinkPadでも獲得した歩容を再生してみましょう.デバイス指定を全て cpu にしても20fpsは出ていました.スペックは以下の通りです

  • CPU: Intel Core i5-8265U

  • GPU: Intel UHD Graphics 620

  • RAM: 16GB

中古で2万円のThinkpadでこれだけ動くんだからすごい.

以上です.

#Jizai
#Unitree
#Genesis
#強化学習
#ロボティクス

いいなと思ったら応援しよう!