AsaHP
AI・深層学習

背景と概要 - 交通流の強化学習ツール highway-env


強化学習においてはOpenAI Gymという研究の基盤となるツールがある。これを拡張させたツールに、交通流を扱うhighway-envがある。交通流シミュレーション上で強化学習を行い、学習の性能を計測する事ができる。幾つかの動作パターンがあり、高速道路でのレーン移動や、駐車場での停車などをシミュレートできる。



以下は2023/2時点での情報である。

強化学習の現状


強化学習は囲碁・将棋などのボードゲームでは盛んに実用化されているが、ロボットなどの分野では未だ研究段階である。ボードゲームなどの限定された環境と違い、ロボットのように実体的な環境は複雑で難しいからである。しかし今後AIを人間に近づける上で、強化学習の研究は非常に重要である。人間も実体的で複雑な環境の中で行動しており、将来的なAIもそのような機能が要求されるからである。

現在の実用的なAIは画像・言語・音声などの単機能なものが多い。画像・言語・音声を複合した研究も現在盛んに行われているが、人間はさらに複合的な機能を持つ。強化学習の機能は基本的に複合的である。ボードゲーム用の強化学習でも状況評価・行動探索などの複数の機能を組み合わせて実装される。ロボットを制御する強化学習では、その上に画像処理・地図探索・音声処理など多くの機能が必要で、実装は容易でない。

画像・言語などの深層学習研究では、特定のテストデータに対して高性能なモデルを作る事が重要だった。深層学習はその繰り返しで急激に進展し実用化されてきた。最近になると高性能化はある程度限界に達しつつあり、基本的な方法論・機能の複合化・応用の多様化に関する研究が進んでいる。強化学習はまだ研究段階の部分が多く、モデルの高性能化だけでなく方法論も重要である。

日本は深層学習の研究では米国・中国などに後れを取っているが、ロボットに関しては今も先端的である。自動車産業なども強化学習から近く、強化学習の研究を日本で進める事は重要だと思われる。

highway-env


highway-envは2019年頃からある交通流を扱う強化学習ツールで、OpenAI Gymの上で交通流シミュレーションとして動作する。highway-envという名前だが、高速道路だけでなく駐車場などの機能もある。最近の論文で頻繁に利用されている。Papers With Codeにおいてtrafficを検索すると、このツールを使った2021年などの論文が幾つか出て来る。highway-envのサイトにはさらに多数の論文が紹介されている。

交通流シミュレーションは実際の交通流に基づいたミクロシミュレーションであり、実用的である。一方で車の挙動に絞った機能を持ち、簡易的でもある。実用的かつ簡易的なので、強化学習の様々な研究が行いやすい。highway-envのサイトにある利用例や幾つかの利用論文を見ても、内容は多様である。

強化学習は特定の環境の上で動くエージェントという形で実装される。OpenAI Gymでは環境とエージェントを別々に実装できる。highway-envは交通流ミクロシミュレーションの環境である。エージェントは各種の強化学習ライブラリとして別途実装される。

学習対象車を除く他車は、IDMという方法で制御される。論文はこのサイトから取得できる。2000年の比較的古い論文である。これは適切な車の挙動をシミュレートするものであり、挙動を学習するものではない。

サンプルとOpenAI Gymの問題


highway-envの公式文書サイトに幾つかのサンプルが載っている。GoogleのColab上で動作すると書いてあるが、実際に動かそうとするとほとんど動作しなかった。動作させるには様々な問題点を克服する必要があり容易ではなかった。一方で何とか動作させてみると、この利用例だけで様々な種類があった。2020年という比較的新しい論文に準拠したものもあった。やはり研究ベースの内容なので、利用者目線での出来は悪いが、研究者目線での出来は良いようである。

利用する上での最大の問題点はバージョン不整合である。これは深層学習全体の問題とも言える。深層学習は研究が急速に進歩しており、様々なライブラリ等を利用する事で処理が実現できる。一方でライブラリ等の開発管理は各開発者がバラバラに行っており、必ずしも連携が取れないない。商用の製品であればまとまった形になるのだが、無料の研究用ライブラリだと基本的にまとまりはない。

OpenAIはGPT-3などを作った著名な企業で、OpenAI Gymは2016年からある強化学習の標準的なツールである。ただしOpenAI Gymは無料の研究用ツールなので利用面の期待はできない。2021年からOpenAI Gymのメンテナーが変更され、急速な仕様変更によりトラブルになっている。最大の問題は、強化学習の有力ライブラリであるStable Baselines3が、2023/1の時点で最新のGymに対応していない事だ。また私が試した限りではGoogle Colab上で最新のGymが上手く動かなかった。

現状のOpenAI Gymは互換性とバージョン不整合の問題が大きく、特に動画が作成できない事が多い。動作するバージョンの組み合わせを調べるのは、いちいち検討して組み合わせた上で試行を繰り返さなければならず大変である。2023/1の時点で一応動かす事はできたが、今後バージョンが変わるとまた動かなくなる可能性もある。最新のバージョンを使っていると、数日単位で動かなくなる場合もある。ただ古いバージョンで揃えた状態なら、機能的な不足があるにしても安全だろうと思われる。

目次


背景と概要

Getting Started

SB3 DQN サンプル

Highway Planning サンプル

Parking HER サンプル

Social Attention DQN サンプル

利用論文

AI・深層学習