RLtools: A Fast, Portable Deep Reinforcement Learning Library for Continuous Control

要約

深層強化学習 (RL) は、いくつかの領域で有能なエージェントと制御ポリシーを生成することが実証されていますが、一般に法外に長いトレーニング時間に悩まされます。
さらに、継続的な制御問題の場合、既存のディープ ラーニング ライブラリにはリアルタイム性の保証と移植性が欠如しているため、学習されたポリシーを実際の組み込みデバイスに適用できるかどうかが制限されます。
これらの課題に対処するために、深層教師あり強化学習用の依存関係のない、ヘッダーのみの純粋な C++ ライブラリである RLtools を紹介します。
最近の C++ 標準のテンプレート メタプログラミング機能を活用して、コンパイラーによって緊密に統合できる構成可能なコンポーネントを提供します。
その斬新なアーキテクチャにより、ワークステーションやラップトップ上の HPC クラスターからスマートフォン、スマートウォッチ、マイクロコントローラーに至るまで、異種プラットフォームのセットで RLtools をシームレスに使用できます。
具体的には、RL アルゴリズムとシミュレーション環境が緊密に統合されているため、RLtools は、他の一般的な RL フレームワークと比較して、実時間トレーニング時間の観点から約 7 ~ 15 倍速く、Pendulum-v1 スイングアップなどの一般的な RL 問題を解決できます。
TD3を使って。
また、MuJoCo シミュレータへの低オーバーヘッドで並列化されたインターフェイスも提供しており、PPO 実装が Ant-v4 環境で最先端のリターンを達成しながら、実測トレーニング時間の観点から 25% ~ 30% 高速であることを示しています。
最後に、さまざまなマイクロコントローラーのセットでポリシー推論のベンチマークも行い、ほとんどの場合、最適化された推論の実装がメーカーの DSP ライブラリよりもはるかに高速であることを示します。
私たちの知る限り、RLtools はマイクロコントローラー上でディープ RL アルゴリズムを直接トレーニングする初めてのデモンストレーションを可能にし、TinyRL の分野を生み出しました。
ソース コードは、https://rl.tools のプロジェクト ページから入手できます。

要約(オリジナル)

Deep Reinforcement Learning (RL) has been demonstrated to yield capable agents and control policies in several domains but is commonly plagued by prohibitively long training times. Additionally, in the case of continuous control problems, the applicability of learned policies on real-world embedded devices is limited due to the lack of real-time guarantees and portability of existing deep learning libraries. To address these challenges, we present RLtools, a dependency-free, header-only, pure C++ library for deep supervised and reinforcement learning. Leveraging the template meta-programming capabilities of recent C++ standards, we provide composable components that can be tightly integrated by the compiler. Its novel architecture allows RLtools to be used seamlessly on a heterogeneous set of platforms, from HPC clusters over workstations and laptops to smartphones, smartwatches, and microcontrollers. Specifically, due to the tight integration of the RL algorithms with simulation environments, RLtools can solve popular RL problems like the Pendulum-v1 swing-up about 7 to 15 times faster in terms of wall-clock training time compared to other popular RL frameworks when using TD3. We also provide a low-overhead and parallelized interface to the MuJoCo simulator, showing that our PPO implementation achieves state of the art returns in the Ant-v4 environment while being 25%-30% faster in terms of wall-clock training time. Finally, we also benchmark the policy inference on a diverse set of microcontrollers and show that in most cases our optimized inference implementation is much faster than even the manufacturer’s DSP libraries. To the best of our knowledge, RLtools enables the first-ever demonstration of training a deep RL algorithm directly on a microcontroller, giving rise to the field of TinyRL. The source code is available through our project page at https://rl.tools.

arxiv情報

著者 Jonas Eschmann,Dario Albani,Giuseppe Loianno
発行日 2023-11-14 20:35:09+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.AI, cs.LG, cs.RO パーマリンク