Stable Baselines 3 って知ってますかね。
私は、知りませんでしたよ
OpenAI社が提供している強化学習の実装を強化したライブラリのようですね
早い話が、python3で動作する、強化学習ライブラリのようです
それで、OpenAI社が提供している OpenAI Gymというのがあって、Box2Dを使った強化学習の実験環境があるみたいですね。
その中で、BipedalWalker-v3 というのが、2足歩行ロボットのような環境でして、でっかい頭に足が2つあるロボットを右に向かって走らせる実験が出来ます。
ガンダムだと、ビグザムで、スターウォーズでもAT-ST ウォーカーなんてのがありましたね。
マクロスの敵もこんな感じでしたね。

こんな感じですね。
素で動作させると、そのままこけます。
当然、地面に向かって引力があるからですね。
強化学習は、このロボットみたいなやつから入力される関節の角度や、足の座標等から、ロボットを操作する為のデータを出力するモデルを作成することになります。
この手のネタは、ネットを探すと色々とヒットすると思いますよ。
何も策を打たないと、以下のような感じで、何も出来ないんですね。


おもしろいですね。
ということで、ここから、この子にアメとムチを使って、教育をしていきますね。
簡単に言うと、こんな感じですね。
「一歩進むごとにお小遣い」。止まっていても減点はされないが、稼げない
「転んだら罰金、ただし最初は軽め」。素の−100だと怖くて動けなくなるため、−20に甘くして挑戦を促したのが突破の鍵
「サボったら強制終了」。立ち尽くす練習をさせない仕組み

ちゃんと前に進んで走ってますね。
でも、足の運びが、交差していないので、不自然ですね。
ということで、さらに教育ですよ。
「少なくとも片足は地面につけておくこと」。両足ジャンプは減点ならぬ加点なし
「脚を交互に前に出すこと。ただし一歩の幅は1.5〜2.5歩分で」。狭すぎも広すぎも安く買いたたく
「脚は大きく開くこと」。ちょこちょこ歩きは認めない
「100歩(2秒)脚をすれ違わせなかったら罰金」。片脚ホッピーの禁止条項
「120歩の間に5回以上すれ違わせても罰金」。バタバタ小刻みの禁止条項

完璧に2足歩行を獲得しましたね。
起伏もこなして進んでいますね。
ロボットさんの構造に足首が無いので、ここまでが限界かもしれないですね。
で、さらにスピードを上げるように教育することで、タイムを縮めてくれましたね。

ということで、強化学習の実験を行いました。
とても、おもしろいですね。
基本的に、AIさんと共同で作業したので、ほとんど、コーディングはしていませんよ。
良い思考実験になって良いですね。
しかし、単純に歩くという作業にも、制約 効率 達成のバランスが取れているんだなと感心しました。
夜道で、これに追いかけられたら、めっちゃ怖いですね。





