自動運転技術の開発を加速するシミュレーション、仮想環境の構築はどうする自動運転技術

ADASや自動運転システムを開発するには膨大な回数の試験が必要であり、もはや実車を用いた試験ではカバーしきれない。自動車業界において導入されている仮想環境を用いたシミュレーションを容易にするのが、MathWorksのソリューション「RoadRunner」と「RoadRunner Scenario」だ。

» 2022年12月28日 10時00分 公開
[PR/MONOist]
PR

 ADAS(先進運転支援システム)や自動運転システムの開発では、仮想環境を用いたシミュレーションの重要性がうたわれるようになって久しいが、シミュレーターごとにシーンの作成が必要になる、CGの作成に工数がかかる、シナリオバリエーションの作成に苦労するといった課題が多く聞かれるようになってきた。

 仮想環境を構築し、シミュレーションを行うMathWorksの「RoadRunner(ロードランナー)」は、CGの経験がないエンジニアでも、マウス操作で簡単に始められるUIを提供し、道路作成に特化した機能で効率よく自動運転のための“シーン”と“シナリオ”を作成することが可能だ。また、作成したシーンとシナリオは、共通フォーマットでエクスポート可能であり、外部ツールと連携が可能なAPIでシナリオの自動生成やコ・シミュレーションを実行することができる。

実車による走行試験の課題と仮想環境を活用するメリット 実車による走行試験の課題と仮想環境を活用するメリット[クリックで拡大] 提供:MathWorks Japan

仮想環境の構築ツールとして注目されるMathWorksの「RoadRunner」

MathWorks Japanの大塚慶太郎氏 MathWorks Japan アプリケーションエンジニアリング部 シニアチームリーダーの大塚慶太郎氏 提供:MathWorks Japan

 シミュレーションのための仮想環境を整えるのは容易ではない。MathWorks Japan アプリケーションエンジニアリング部 シニアチームリーダーの大塚慶太郎氏は、仮想環境での試験に必要となる設定項目を次のように説明する。

 まず、ADASや自動運転システムを検証するための仮想空間を一から構築しなければならない。例えば、道路であれば幅、車線数、路面の状態、直線なのかカーブなのか、傾斜はどの程度あるのかといった項目だ。これらに対し、具体的な数値を個別に設定する必要がある。また、信号機や交通標識、横断歩道やゼブラゾーンといった要素も必須だ。

 実際の道路を走る車両の制御システムを開発するのだから、試験環境も実際の道路や周辺環境に即していなければならない。これを仮想環境で作るには、CGに関する専門知識や経験が必要になる。大塚氏は「しかし、ADASや自動運転システムの技術を開発するエンジニアは一般的には3次元のCGツールの経験に慣れ親しんではいません。簡単なCGならともかく、実際の道路を再現した仮想環境を作るのは困難でしょう」と語る。

 仮想環境のCGを外部に委託する方法もあるが、開発のスピードが重視される競争領域では、そのタイムラグも無視できない。この他、どのような制御システムを開発しているかが外部に漏れてしまう情報漏えいへの懸念もある。

 これらの課題を解消するのが、MathWorksのRoadRunnerおよび関連するツール群だ。

「RoadRunner」関連製品によって解決できる課題とターゲット 「RoadRunner」関連製品によって解決できる課題とターゲット[クリックで拡大] 提供:MathWorks Japan

 RoadRunnerは、CG作成の経験がなくてもマウスによる直感的な操作で扱えるように作られている。ADASや自動運転システムを開発するエンジニアにも、試験の目的に応じた道路環境が手軽に作成できる。試験すべきポイントにフォーカスした環境を自ら設定できるのは、開発者にとって大きな利点となるだろう。

 また、RoadRunnerは、自動車の各種開発ツールのデータ連携に関する標準化を手掛けるASAM(Association for Standardization of Automation and Measuring Systems)が策定した自動運転システム開発向けの仮想環境のファイルフォーマットである「OpenDRIVE/OpenSCENARIO」に準拠している。これまで、シミュレーションを行うアプリケーションごとに仮想環境を用意しなければならないことが課題になっていたが、OpenDRIVE/OpenSCENARIOに対応するシミュレーターであれば、RoadRunnerで作成した仮想環境をインポートしてそのまま活用できるというわけだ。

 もちろん、MathWorksの製品として「MATLAB」や「Simulink」との連携も考慮されている。OpenDRIVEやOpenSCENARIOを利用しない場合には、RoadRunnerとシミュレーターを直接接続してシミュレーションを実行できる機能も利用できる。

ロケーションを規定する“シーン”と、動きを表現する“シナリオ”

 仮想環境でシステムの試験や検証を行うには、大きく分けて2つの要素を設定する必要がある。試験環境の静的なロケーションを規定する“シーン”と、そこでの動きを表現する“シナリオ”だ。

 RoadRunnerのソリューションでは、試験/検証の場となる“シーン”をRoadRunnerで作り、その上で人や他の車両といった交通参加者の動き/振る舞いである“シナリオ”を「RoadRunner Scenario(ロードランナー・シナリオ)」というソフトウェアで作成するようになっている。RoadRunner Scenarioは、RoadRunner上で動作するアドオン製品だ。

 大塚氏は「従来の車載制御システムの開発ではMATLABとSimulinkがモデルベース設計環境として利用されてきましたが、RoadRunner/RoadRunner Scenarioで作成する仮想環境もモデルの一部として捉える必要があります」と述べる。

 RoadRunnerでは、マウス操作で道路の構築を対話的/直感的に作成できるのが特徴だが、道路勾配の変更など微妙な調整が必要な場合にも専用のウィンドウで調整が可能となっている。また、点群データや空中写真、標高データなどのGISデータを取り込むことも可能で、道路作成の参照用データとしての活用が可能だ。地図データのインポートにも対応しており、実際の道路環境を容易に再現したい場合に有用だ。

「RoadRunner」による直観的なシーン設計 「RoadRunner」による直観的なシーン設計[クリックで拡大] 提供:MathWorks Japan

 RoadRunnerのオプション製品となる「RoadRunner Scene Builder」を使えば、HERE TechnologiesやTomTomが提供する、いわゆる“cmオーダー”のHD(高精度)地図データを読み込んでシーン作成に活用できる。また、RoadRunner単体でも、日本の道路に特化したゼンリンデータコムの地図データである「いつもNAVI」を利用可能だ。これらに加えて、国土地理院や地方自治体などが公開する点群データを読み込み、試験を行う仮想環境のシーンのベースとすることもできる(地図データの利用ライセンスは別途必要)。

 このようなデータを利用してRoadRunner上で作成した道路には、道路標識や街路樹、横断歩道などのアセットを設置する。オプション製品の「RoadRunner Asset Library」では多数のアセットが用意されており、日本の標識なども含まれている。

シナリオ作成で多彩な連携機能を備えた「RoadRunner Scenario」

 仮想環境上に作成した道路上で開発中の制御システムを試験するには、自車以外の車両や人などの交通参加者が必要になる。これは、仮想環境上では“アクター”と呼ばれる。

 実際の社会では、これらの交通参加者は個別に意志を持って動いている。このため、仮想環境上で試験を行うには、開発中の制御システムを搭載した自車の動きに加え、交通参加者の動きも設定しなければならない。これらの仮想環境上で車両や人の動きを指定する動的なデータが“シナリオ”である。RoadRunner Scenarioは、仮想環境上で動く自車やアクターの動き、振る舞いを設定してシナリオを作成するツールになる。

 シナリオの作成で一番シンプルなのは、各車両や人の動きを軌跡で設定しておく方法だ。この設定法では、周囲に何が起きようとも各アクターはその軌跡に沿って動く。しかし、これは現実社会での交通環境には程遠い。

 実際の交通では、何か事象が発生すれば、その周囲にいる交通参加者はおのおの違った動きをするはずだ。軌跡だけではそれを表現できない。これに対応するため、RoadRunner Scenarioでは、条件やトリガーによって動きを定義できるようになっている。例えば、「前方を走る車両の走行速度が時速○○km以下なら」や「後方の車両との間隔が××m以下になったら」などの条件を設定して、それに対するアクションが指定できる。これによって、現実社会での交通を反映したさまざまなシナリオが定義できるようになっている。

「RoadRunner Scenario」による対話的なシナリオ設計 「RoadRunner Scenario」による対話的なシナリオ設計[クリックで拡大] 提供:MathWorks Japan

 仮想環境での試験は、設定のパラメータを変えながら何度も行われるのが普通だ。しかし、パラメータを変更することで、交通参加者間でのタイミングが合わなくなることもある。

 例えば、衝突事故のシミュレーションにおいて自車の走行スピードを変更する場合、事故が発生しなくなることもある。これでは試験にならない。しかし、ちょうどよいタイミングで事故が発生するように個々のアクターの動きを指定し直すのには手間が掛かる。こういったことに対応できるように、RoadRunner ScenarioはAPI連携によってシナリオ作成のワークフローにプログラミング環境を利用できるようになっている。

 車載制御システムの開発者にとって有用なのが、強力な計算機能を備える数値解析ソフトウェアであるMATLABを利用可能なことだろう。MATLABは、RoadRunner Scenario上のアクターの動きを解析し、適切なタイミングやスピードを計算してパラメータをRoadRunner Scenarioに返すことができるので、シナリオの条件設定を自動化できるようになる。また、実際の制御アルゴリズムに即した動きをアクターに与えたければ、Simulinkで設計した制御モデルをアクターと連動させ、Simulink上での計算結果を基にアクターの動作を決定することも可能だ。

次世代の自動車開発を加速させる、MathWorksの仮想環境ソリューション

 2020年に市場投入されたRoadRunnerは、スバルやポルシェが採用するなど自動車業界で着実に浸透し始めている。ASAMが策定するファイルフォーマットのうちOpenSCENARIOは、最新のバージョン2.0が2022年7月にリリースされたが、2022年春から展開を始めているRoadRunner Scenarioでは既に対応済みだ。「MathWorksはASAMの標準化活動に参画しているので、今後も最新バージョンへの対応を素早く行えるでしょう」(大塚氏)という。

「RoadRunner」製品ファミリー 「RoadRunner」製品ファミリー[クリックで拡大] 提供:MathWorks Japan

 ADASや自動運転システムに代表される次世代の自動車開発は、もはや仮想環境なしでは行えない段階にある。そこで重要なのは、交通参加者を含めた実際の道路環境をいかに素早くかつ忠実に仮想環境上で構築するかだ。この点において、RoadRunnerやRoadRunner Scenarioを始めとするMathWorksのソリューションは力強い助けとなる。

 さらに、MathWorksのソリューションを採用する大きな魅力は、同社のMATLAB、Simulinkとの強力な連携機能にもある。RoadRunnerであれば、これらの強力な計算機能を活用し、より複雑なシナリオによる解析や試験が行える。この開発環境は、ADASや自動運転システムの熾烈な開発競争をリードする力強い武器となるだろう。

Copyright © ITmedia, Inc. All Rights Reserved.


提供:MathWorks Japan
アイティメディア営業企画/制作:MONOist 編集部/掲載内容有効期限:2023年1月29日