強化学習(DQN)に強引にSceneKitの物理エンジンを使った結果
強化学習(DQN)に強引にSceneKitの物理エンジンを使う
↑SceneKitの物理エンジンを強引に強化学習(DQN)に使う、という手法で倒立振子を学習させてみたが、、、
↑こんな感じでなんとなくそれっぽくなってる。正直それっぽい場合を動画にしてるだけで、毎回倒立できるわけではない。
それでもまあ学習してんだな、ということはわかった。
あと、制御の時間ごと(今回は0.2秒ごと)に逐次前の状態を使って計算していく、しかも状態を得られるタイミングが SCNSceneRendererDelegate がコールされるタイミングであり、そこで近似する、という方法なので、ランダムなアクションを与えなくても微妙にずれが生じていた。
与えるトルクや制御の時間間隔、1エピソードを何点にするか?何エピソードを学習にまわすか?などなど粘り強くやって行けば、完全に倒立キープできるようになるのかもしれないけど、、、そこまではええか。
↑SceneKitの物理エンジンを強引に強化学習(DQN)に使う、という手法で倒立振子を学習させてみたが、、、
強化学習(DQN)で倒立振子、頑張ればもっと行けるかもしれんが、学習してることがわかったからこの辺でええか。 pic.twitter.com/XDC8TgRB4z
— Tatsuya (@yt) 2018年6月22日
↑こんな感じでなんとなくそれっぽくなってる。正直それっぽい場合を動画にしてるだけで、毎回倒立できるわけではない。
それでもまあ学習してんだな、ということはわかった。
あと、制御の時間ごと(今回は0.2秒ごと)に逐次前の状態を使って計算していく、しかも状態を得られるタイミングが SCNSceneRendererDelegate がコールされるタイミングであり、そこで近似する、という方法なので、ランダムなアクションを与えなくても微妙にずれが生じていた。
与えるトルクや制御の時間間隔、1エピソードを何点にするか?何エピソードを学習にまわすか?などなど粘り強くやって行けば、完全に倒立キープできるようになるのかもしれないけど、、、そこまではええか。
スポンサーサイト
<< NSAttributedStringでiPhoneに関西弁をしゃべらせる? TopPage アプリでMacの輝度調整 >>
トラックバック
トラックバックURL
https://ringsbell.blog.fc2.com/tb.php/1153-f43978a2
https://ringsbell.blog.fc2.com/tb.php/1153-f43978a2