@techreport{oai:ipsj.ixsq.nii.ac.jp:00224304, author = {仮谷, 拡晃 and 松崎, 公紀 and Hiroaki, Kariya and Kiminori, Matsuzaki}, issue = {25}, month = {Feb}, note = {分散強化学習は,強化学習におけるエージェントの経験生成を分散並列処理により高速化したものであり,様々な応用分野で利用されている.分散強化学習では,複数のアクターが非同期かつ並列に学習データを生成するが,生成された学習データは検証や解析などの追試のため保存されていることが望ましい.そこで本研究では,強化学習向けの分散並列処理フレームワークである Ray 上で動作する,分散強化学習向けのデータ保存ライブラリの設計と実装を行う.非同期に生成される学習データを効率よく保存するために,ファイルへの書き込み処理をリモート関数化した Ray アクターを用いて,非同期に処理する.実装したライブラリの性能を評価するため,OpenAI Gym が提供する CartPole と Breakout 環境を用いて,学習データを保存した際の実行時間を測定した.CartPole 環境を用いた実験結果から,経験の生成を行うアクターが多くなるとアクター間のデータの受け渡しがボトルネックとなりうることが確認された.一方,状態のデータサイズが大きい Breakout 環境を用いた実験結果から,Ray においてリモート関数を実行する際に発生する共有メモリへのオブジェクトコピーが,20% 程度のオーバーヘッドとなることが確認された., Distributed Reinforcement Learning (DRL) applies distributed parallel computing to the generation of episodes in reinforcement learning and is an important AI method with many applications. In DRL, multiple actors generate training data asynchronously in parallel, and those generated training data should be saved for follow-up studies for verification and analysis. In this study, we design and implement a data storage library for DRL on top of Ray, a distributed parallel processing framework especially for reinforcement learning. In order to efficiently and asynchronously save the generated data, we use remote Ray actors for the write-to-file processes. To evaluate the performance of proposed library, we measured the execution time with saving the training data for two applications, CartPole and Breakout, from OpenAI Gym. From the experiment results with the CartPole application, we observed a possible bottleneck of data transfer between actors, as we increased the number of episode-generating actors. From the experiment results with the Breakout application with a large data size of the states, we had an overhead of about 20% of execution time due to the data copy to the shared memory in Ray's remote calls.}, title = {分散強化学習におけるデータ保存ライブラリの設計と実装}, year = {2023} }