強化学習入門レシピ本を書きたい俺1

Home > Advent Calendar > 強化学習入門レシピ本を書きたい俺1

本記事にはアフィリエイト広告が含まれます。

すき 0
うんこ 0

HomeMadeGarbage Advent Calendar 2025 |1日目

先日つぶやいたコチラのポストへの反応が凄くよかったのです。
強化学習について興味を持っている人が多くいるのだろうと感じました。

 

そこで
“リアクションホイールで強化学習実践レシピ Sim.からRealまで網羅の完全版”
みたいな入門レシピを書いてみよう思い立ちました。

商用のロボット犬やヒューマノイド用の強化学習ライブラリは多数登場していますが、実機確認が難しいですし
そもそも学習を実施する計算機のスペック要求も高く敷居が高いのが現状です。

 

ここではモータ 1個で作れるリアクションホイール型倒立振子をテーマにして
気軽に手を動かしながら強化学習を学ぶことのできるレシピの制作過程を連載形式でお送りしたいと思います。

 

AudiostockでBGM・効果音を販売中!

おさらい

私が強化学習のお勉強を開始したのはもう半年以上前で、その間に世の中も自身の持つ情報にもいろいろアップデートがなされているので
まずはリアクションホイール倒立振子の製作からおさらいしようと思います。

強化学習への道1

実機動作 (Real)

久しぶりに “強化学習への道”のブラシレスモータ倒立振子を動かしてみました。

 

ベクトル制御によるトルクモードでブラシレスモータを動かして以下のようにフィードバックさせて
各ゲイン(Kp, Kd, Kw)を調整(職人技)して倒立を実現しています。

  モータトルク = Kp * 機体角度 + Kd * 機体角速度 + Kw * モータ回転速度

MuJoCoモデル

続いてブラシレスモータ倒立振子のMuJoCoモデルも動かしてみました。

制御方式は実機(Real)と全く同じでSim. 上で機体角度・角速度、ホイール回転速度を取得してゲイン調整して倒立させています。

“強化学習への道” でも確認したようにMuJoCoは素晴らしい物理シミュレータなので、しっかりモデリングすれば実機と全く同じ感覚でモノの動作を楽しめます。

 

強化学習 おさらい

続いて強化学習のおさらいを実施

強化学習への道2 -強化学習開始-

 

強化学習は “強化学習への道” の時と同様に
Gymnasium + Stable-Baselines3 (PPO) で実施して MuJoCoで動作確認 (Sim2Sim) します。

学習はどなたでも楽しめるようにCPUで実施して、SubprocVecEnvでCPUコア数に応じて並列処理して高速化します。

 

強化学習結果

  
以下の報酬で上の倒立結果を得ました。
 ・機体角度、角速度とホイール回転速度を最小にする
それぞれの報酬の重みの設計が結構大変でした。

また学習時にたまに(頻度5%)、機体横からと回転方向に外乱を与えてロバスト化をはかりました。

 

おわりに

ここでは強化学習入門レシピ本の制作をめざして、強化学習実施までのおさらいをしました。

レシピには倒立振子実機は製法は当然のこと、MuJoCoモデルの製法や強化学習の環境・設定について詳しく明記が必要だなと現状感じております。
また強化学習時の報酬設計も現状トライ&エラーになってしまうので大変です。

次回は強化学習結果を実機で確認 (Sim2Real)します。
レシピ向けの機体のスペック検討も行います。

それでは次回またお会いいたしましょう!

コメントはこちらから

メールアドレスが公開されることはありません。コメントのみでもOKです。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください