【Ruby】OpenAI Gymで遊ぶためのgemをつくった

 夏休みなので、取り急ぎ作ってみました。
 ソースコード:https://github.com/kojix2/openai_gym

 OpenAI Gymとはイーロン・マスクらが率いる、人工知能(AI)を研究する非営利団体「OpenAI」が開設したAIシステムに、さまざまなゲームや課題を練習させることができる「ジム」です。人工知能開発のためのベンチマークとなることを目指して地道な取り組みが続いているようです。(内容はAtariゲームなどですが、こうやって人を集めて研究のインフラ基盤を作っていこうとする姿勢は本当に見習いたいと思います。)OpenAI GymはPythonで作られていますのでユーザーもPythonが中心です。GitHubを検索すると、Juliaのwrapperはありますが、Rubyのラッパーは見つかりませんでした。黙って待っていてもなかなか誰も作ってくれないでしょうから自分で手を動してみました。

 仕組みは単純で、open3で呼び出したPythonのプロセスのパイプを通してパックされた数字をPython←→Ruby間でやりとりしています。

 はじめてgemを公開してみたわけですが、IT業界ともデータサイエンスとも無縁な人が趣味と気合だけで作っていますので、変なところ、間違ってるところ、作りかけのところが多々あるかと思います。そういうところを見つけたら Pull Request 等して教えてくれると嬉しいですね。

 Numpyを使った機械学習なら、ちょっとした気合で大半のものがNumo::NArrayに直訳できると思われます。あとはRubyでもGPUを使った高速計算ができるようになればいいなと願っています。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です