BLOGY-modifyは、ものづくりを楽しむ学生達のコミュニティです。各メンバーの得意な分野をかけあわせ、世の中にテクノロジーで変化をもたらします。Y-modifyなんだかただ進捗があっただけともとれるタイトルですね。やったー!!ただし、以前書いた構成とは全然違うものになっています。そこで、今回はこう前進できるようになるまでの過程をざっとご紹介します。Gazebo&ROS&ODEとの長い戦い以前、Gazebo&ROSを使用していると書きました。地面にめり込んで腕が吹っ飛んでいたときですね。あのときはGazebo内部でbulletという物理エンジンを使用していましたが、あのあと(投稿から1週間後くらい)実はデフォルトのODEのほうがいいのでは!?となってODEに変えました。̄これにまるまる2ヶ月ぐらい悩まされました。現実からかけ離れてゆく物理パラメータ。詰まってゆくスケジュール。だめかと思ったその時(約2週間前)、やっと原因がわかりました。Gazeboのバグです。ROSと連携したときに重力が変になったような挙動になるバグでした。原因がわかったので、ざっと直しました。このバグについては別記事でさらに掘り下げます。(とりあえず、パッチを地味にgithubに上げてあります)直した結果、右のように物理感のある重力が帰ってきました。https://blog.y-modify.org/wp-content/uploads/2018/03/bug.out_.webmしかし重力が正常になったとはいえ、決して現実的とは言えない挙動を見せていました。https://blog.y-modify.org/wp-content/uploads/2018/03/wwww.out_.webm直にBulletを使うどうも無理そうでうーんと悩んでいたとき、Gazeboから離れれてみようと思いました。(一昨日)発表までに学習結果を用意したかった僕としてはすぐに強化学習と連携でき、かつ既存のYamaXのモデルが読み込めるものでないといけなかったので、pyBulletを選びました。↓https://blog.y-modify.org/wp-content/uploads/2018/03/cartpole.out_.webmこれはすごいということで、ざっと学習プログラムを書き上げ(発表前日)、一晩学習させました。報酬はこのように上昇していました。学習がうまく行っている証拠ではないでしょうか報酬の移動平均グラフこの結果のおかげかもしれません、先日の京都大学サイエンスフェスティバルでも副学長賞をいただきました!!まとめということで、前に進みました。やったーこれのソースコードもgithubに上がっていますhttps://github.com/Y-modify/deepl2-pybullet-locomotionこの学習プログラムについても、また別記事に詳しく書こうと思います。