自動運転車の開発の世界は、ともすると無味乾燥なものになりがちだ。無事故で走った距離が百万マイルに達したとか、歩行者の検出範囲が10%増えたとか、そういったことしか語られない。しかしここで紹介する研究は、そのような指標からは見えてこない面白いアイディアを持ち、驚くほど実践的なテスト方法を採用している。自動運転車とレーシングドライバーを、サーキットで競わせようというのだ。
念のために言っておくが、これは見世物ではない。紛れもないまじめな研究なのだ。コース上でポジションを争ったり、フェイントをかけたり、バンバーを擦り付けたりはしない。走行は別々に行われた。また私がやりとりした研究者は、ラップタイムを明らかにすることを丁重に断ってきた。これはあくまで科学であることをご理解いただきたい。
スタンフォード大学のNathan Spielberg氏とその同僚は、自動運転車の極限状態での挙動に関する質問には喜んで答えてくれた。言うまでもないが、一般的な自動運転車の走行のほとんどは、通常のスピード、良好な条件でのものだ。また、その際に遭遇する障害物のほとんどは、想定内のものとなっている。
もしも最悪の事態となり、車が通常の操縦の限界を超えなければならなくなったとき、たとえばタイヤのグリップ力の限度を超えるような状態になったときでも、その自動運転を信頼できるのだろうか? 果たして、そのような運転が可能なAIを開発できるのだろうか?
この研究者の論文は、Science Robotics誌に掲載された。物理学ベースのモデルでは、こうした状況に十分に対処できないかもしれない、という仮説から始まっている。そうしたコンピュータモデルは、重量、速度、路面状態、などの条件を考慮して、車の挙動のシミュレーションを行う。しかし、そうした条件は、どうしても単純化されているので、値が通常の範囲を超えると、かなり不正確な結果を導くことになる。
そのようなシミュレーションが、タイヤの接地を点または線に単純化して考えているとしよう。しかし、実際に滑り始めたときには、タイヤのどちら側に強い摩擦力が働いているのかは非常に重要だ。そこまでの詳細なシミュレーションは、現在のハードウェアの能力を超えていて、十分に速くかつ正確に実行することができない。しかし、シミュレーションの結果は、入力と出力に要約することができる。それらのデータをニューラルネットワークに処理させたらどうだろう。その結果、非常にうまくいくことがわかった。
シミュレーションによって、この車の構造と重量なら、Xという速度のときにYの角度で曲がろうとすれば、どのような挙動を示すのか、という基本的な情報が得られる。もちろん、実際にはもっと複雑だが、基本的にはそういうこと。ここまでは単純だ。次に、このモデルはトレーニングによるデータを参照し、さらに現実世界の結果も調べる。それはおそらく、理論とは異なったものとなっている。
そうして、車がコーナーに差し掛かったとき、理論的にはハンドルをどれだけ左に切る必要があるか、次の点ではどれだけ切り足すか、といったことを知ることができる。しかし車内のセンサーが、車が意図したラインから少しずれていることを報告したとする。すると、その入力が考慮され、AIエージェントはハンドルをもう少し切るか、逆に戻すのか、状況に合わせて判断するのだ。
では、レーシングドライバーはどこで登場するのか、と疑問に思われるかもしれない。研究者は、この車のパフォーマンスを人間のドライバーと比較する必要があった。それも、摩擦の限界で車をコントロールする方法を経験的に体得しているようなドライバー、つまりレーサーのことだ。普通の人には、なかなかそこまでの運転はできない。
チームによれば「アマチュアレースのチャンピオンドライバー」というレーサーを雇って、カリフォルニアのThunderhill Raceway Parkを走らせた。それから、Shelleyという名の、2009年型のAudi TTSを改造した自動運転車を送り出した。それぞれ10回ずつだ。これは、のんきな日曜日のイベントなどというものではなかった。上記論文には、以下のように書かれている。
自動運転車と人間のドライバーは、いずれもサーキットをできるだけ短い時間で周回しようと試みた。この運転の最大加速度は、ほぼ0.95Gに達した。タイムを最短にできるようなレーシングラインを通り、タイヤのグリップの物理的な限界を追求した状態だ。縦方向と横方向ともに、このレベルの加速度を実現すると、車の最大速度は、サーキットの一部区間で95mph(約153km/h)に達する。
このような極端な運転条件の下でも、コントローラーは一貫してレーシングラインをトレースすることができた。平均的な誤差は、サーキット上のあらゆる区間で40cm以下だった。
言い換えれば、それだけのGがかかり、95mphの速度に達した状態でも、自動運転のAudiは、理想的なレーシングラインから1フィート半以上逸れることはなかったのだ。人間のドライバーのズレは、もっと大きかった。しかし、これはエラーとはみなされていない。人間は、自分の判断でラインを変更するものなのだ。
「サーキットをセグメントに分けて、いろいろなタイプのコーナーを比較しました。それによって貴重なデータを収集できました」と、Spielberg氏はTechCrunchへの電子メールで述べている。「サーキット1周全体のデータについても比較し、同様の傾向が維持されていることも確認しています。つまり、Shelleyは、一貫性という点では優れていますが、人間のドライバーは車の変化に応じてラインを変更できるという点で優れています。これは現在実装中の能力です」。
Shelleyは、人間よりもラップタイムの変動がずっと小さかったが、人間のレーサーは周回を重ねることで、かなり優れたタイムを出すようになった。セグメントごとの平均を評価すると、ほとんど同等だが、わずかながら人間が優っていた。
これが単純な自動運転モデルであることを考えると、かなり印象的な結果だ。現実世界の知識は、システムにはほとんど組み込まれていなかった。たいていは、シミュレーションから得られた結果によって、その瞬間、瞬間で、どのようにハンドルを操作すべきか判断していた。しかも、フィードバックは非常に限られていた。自動運転システムが置かれた状況を把握するために使うことの多い、高度なテレメトリにはアクセスしていなかったのだ。
結論を言えば、比較的単純なモデルによって、通常のハンドリングの条件を超えた車をコントロールするというアプローチも、なかなか有望だということになる。ただ、路面の状態や条件によって、調整する必要はあるだろう。たとえば、後輪駆動車で未舗装路を走るのと、前輪駆動車で舗装道路を走るのとでは、明らかに違っている。そのようなモデルを、どのようにして開発し、どうやってテストすれば良いのか、ベストな方法は今後の研究課題となる。しかしチームは、それも単にエンジニアリング上の課題だと確信しているようだ。
今回の実験は、あらゆる運転操作において、自動運転車が人間よりも優れるという、まだまだ遠い目標を追求するために実施されたもの。この初期段階のテスト結果は希望の持てるものだった。とはいえ、自動運転車がプロと渡り合えるようになるまでには、まだ長い道のりがある。それでも、その時が来るのが楽しみだ。
画像クレジット:スタンフォード大学
[原文へ]
(翻訳:Fumihiko Shibata)