株式会社ティアフォー(以下、ティアフォー)は、自動運転技術の発展および実用化に貢献することを目的とし、「Autoware *1」向けのシナリオテストフレームワークをオープンソース公開したことをお知らせします。
仮想シナリオテストフレームワークの構成要素のうち、HD Map *2 と周囲の物体情報からシナリオに登場するNPC *3 の動きを作り出す交通流シミュレータ、複数のテストケースを逐次的に実行しその結果を出力するテストランナー、さまざまな交通状況の記述を可能にするOpenSCENARIO *4 ver 1.0フォーマット解釈器およびシナリオ実行器、Autowareとのインテグレーション、さらに非常に簡易なLiDAR *5 センサシミュレータのリファレンス実装がオープンソースとなり、シナリオをブラウザ上で直感的に記述することを可能にするGUIシナリオエディタについては無償で利用可能となります。なお、本フレームワーク全体はROS2上に実装されています。
本フレームワークは複数のシナリオフォーマットをサポートすることやさまざまなセンサシミュレータと本フレームワークに含まれる交通流シミュレータを連携させることでAutowareに対するシナリオテストをより効率化していくことを目的として開発されています。

GUIシナリオエディタの出力はティアフォー定義のROS2互換形式のシナリオで、テストランナー内部で標準規格OpenSCENARIO 1.0に変換され、シナリオ解釈器によって解釈が行われ交通流シミュレータに対してシナリオに応じた命令が発行されます。本シナリオ形式は「The Autoware Foundation *6」のデフォルトシナリオ形式となります。

交通流シミュレータおよびリファレンス実装として公開されたセンサシミュレータの組み合わせは、自車位置推定と認識機能が正常に動作しているという仮定のもと、シナリオに記述した条件やNPCの振る舞い等に応じて、自車が正しいパスプランに沿って走行できることを確認するシンプルで直感的なツールです。
交通流シミュレータとセンサシミュレータはZeroMQ *7 プロトコル上でProtocol Buffers *8 によるバイナリ化を行ったデータをやり取りするプロセス間通信で同期をされており、ZeroMQ、Protocol Buffers両方に対応しているプログラミング言語でインターフェースを作成することで簡単にリファレンス実装以外のシミュレータともインテグレーションが可能です。
本フレームワークによりAutoware開発者はセンサシミュレータを切り替えることで評価したいテストケースに対して最適なシミュレータを選定しテストを実行することが可能となり、センサシミュレータ開発者はAutowareとのインテグレーションやAutowareの採用しているHD Mapとのインテグレーションといったあまりシミュレータとして本質的でない機能の開発やそれらの継続的なメンテナンス作業に煩わされることなくより精緻なセンサモデル開発等、シミュレータのコア機能開発に専念できます。

ティアフォーは、本シミュレーションフレームワークのオープンソース化がAutowareコミュニティにおけるODD(Operational Design Domain / 運行設計領域)*9 オリエンテッドな開発を進める基盤となると考えており、「The Autoware Foundation」のメンバーとともにさらなる改良と発展を進めていきます。
リンク
ドキュメント
https://tier4.github.io/scenario_simulator_v2-docs/
リポジトリ
https://github.com/tier4/scenario_simulator_v2
用語解説
*1 Autoware は Linux と ROS をベースとしたオープンソースの自動運転ソフトウェア。
(Autoware は、The Autoware Foundation の商標)
*2 High Definition Map(高精度地図)の略語、AutowareにおいてはLanelet2および点群地図がHD Mapとして採用されている。
*3 Non Player Characterの略語、シナリオテストに登場する自動運転車両以外の交通参加者のことを表現する。
*4 ASAM(Association for Standardisation of Automation and Measuring Systems)により策定が行われている自動運転、ADASのシナリオテストを記述するための標準フォーマット。
*5 電磁波によって物体を検知し、そこまでの距離を測る技術のこと。自動運転では、人間の目の代わりにこのレーザーを照射し対象物の正確な形や性質を特定しシステムが判断する。
*6 自動運転OS「Autoware」の業界標準を目指す世界初の国際業界団体。
*7 ZeroMQは高性能非同期通信プロトコル。C++やC#、Python等さまざまなプログラミング言語による実装が存在する。ZeroMQはiMatix社の商標。
*8 Protocol BuffersはGoogleにより定義されたバイナリ形式のデータフォーマット。
C++やC#、Python等さまざまなプログラミング言語から共通のバイナリ形式にデータを読み書きすることができる。
*9 Operational Design Domain(運行設計領域)の略語、自動運転システムを開発・設計するうえでそれぞれのシステムが作動する前提となる走行環境条件のこと。自動運転システムによって設定できる条件(道路条件、地理条件、環境条件など)が異なる。あらかじめその能力に応じた ODD を設定し、走行環境や運用方法を制限することで、自動運転システムが引き起こす可能性がある事故などを未然に防止する。
お問い合わせ先
Media Contact
pr@tier4.jp