誰もがハンドルを握らずに移動できる日はいつ来るのか?
慣れてしまえば、車の運転は簡単なものです。エンジンを点けて、周囲に注意しながらアクセルを踏む。言ってしまえばこれだけです。なら、自動運転車(自走車)がそれを覚えるのに、どうしてここまで時間がかかるのでしょうか?
現在、マウンテンバレーの道を複数の自走車と、少数のグーグル製極秘プロトタイプが毎日行き来しています。その他にもオックスフォードを走る自走日産リーフや、スウェーデンを走る自走ボルボXC90、クパティーノで密かに走っていると噂される何か等、各地で散見されるようになりました。ともかく、全ての車に共通しているのは、どれも強力な計算能力を誇り、いずれそれが人間並あるいはそれ以上に運転できると期待されているのです。
人間の体は、車の運転に便利な機能をいくつも備えています。周囲の状況を把握するための目と耳、それらの情報を高速で処理する頭脳、そしてすでに知った道を自信を持って運転できるようにする記憶力です。しかし、私達の見る世界とコンピューターの見る世界は全く違うのです。「運転の教本からルールをそのままインプットする事で、理論的には車を自動で走らせる事ができます。」とは、グーグルの自走車チームに所属する、Katelin Jabbariさん。「しかし、それでは実際の道路上で起こる99%の事象を考慮に入れる事ができません。状況に応じてどれくらい優しくブレーキをかければいいのか?どれくらい速くハンドルを切ればいいのか?といった機微の事です。」これらのスキルをデジタルセンサーとシリコンチップで再現する事は、可能ではありますが、簡単ではありません。
自走車が走るには、3つの基礎的なスキルが必要です。まず、自分の現在地を理解する事、そして次の目的地へ安全に進むルートを見つける事、最後にいかにしてその目的地に到着するかを知る事です。これらは私達が運転中自然に行っていることですが、幸い、デジタル技術が3つ目を簡単にしてくれました。自動で駐車してくれる車を見れば分かるように、パワーステアリングは自動で動かすのが簡単なのです。
つまり、一番の問題はペダルを踏んでハンドルを切るという物理的な運転行動ではなく、最初の2つをマスターさせるという事でした。これはつまり、人間の頭脳と同じようにコンピューターに物理空間を理解させるトレーニングをするという事なのです。
事前マップとは
「GPSを使えばいいんじゃないの?と良く訊かれますよ。」と語るのは、Robot Carを開発した、オックスフォード大学Mobile Robotics Groupの研究者、Will Maddern氏。「GPS衛星は素晴らしいエンジニアリングの功績だし、理屈にはかなっている質問ですよね。」
ですが、GPSには大きな技術的制限があります。まず、空から見えなければ使用できません。なので、トンネルや屋内駐車場、更には森などでも使用不可能です。しかも精度はメートル単位なので、センチ単位の誤差で事故になり得る都市内では安全に車をナビゲートできません。
「定位アルゴリズムを高速化するために、GPSを使う事はよくあります。」とMaddern氏は認めます。「でも、車がどの車線にいるかを判断するのにGPSは使いません。」代わりに、自走車は自分の位置を全く違うアプローチで理解しなければなりません。
ミシガン大学で自走車の画像処理と電子視野に携わる工学部教授、Sridhar Lakshmanan氏は、現在の地図には2つの改良が必要だと説明します。「地図の精度を向上させ、なおかつ電子空間上での位置情報をより正確にする事です。」
私達の車に備わっているようなナビではなく、グーグルやオックスフォード大学の自走車が使っているのは、事前マップと呼ばれる、上の写真のような見た目の3Dマップです。そして、オンボードのセンサーがリアルタイムの周囲の状況を捉え、事前マップの記録と照らし合わせるのです。「事前マップのおかげで、リアルタイムのデータを確認する前に、車は自分の位置をより正確に理解できます。そして、起こっているべき状況と実際に起きている状況を照らしあわせ、どう行動するかを判断できるのです。」
しかし、マップを必須にしてしまうと、自走車の利用に制限がうまれます。つまり、自動で運転できるようになるには、まず事前に道路のマッピングを行わなければいけないということです。事前マップを採用しているグーグルやその他のグループは、自動運転の実験に使っているものと同じ車を出動させて、周囲の環境を緻密なディテールで少しずつマッピングしています。自走車に備わっているセンサーは道路を3Dデータとして取り込むので、それを記録してそのまま事前マップとして利用できるわけですね。
現実世界
自走車は特殊なセンサーが山ほど付いています。グーグルの車はレーザーとレーダースキャナーに大きく依存しており、64個のレーザーセンサーを搭載したVelodyne製のユニットが車の上に配置され、パトカーの警告灯のようにクルクル回っています。
「レーザーを使用したレーダー」という意味でライダーと呼ばれるこのシステムは、回る度に車の周囲2.4mから先を130万個のポイントでスキャンし、160フィート(約50m)先にある14インチ(約35cm)四方の物体も確認できるそうです。そしてそれの倍の範囲をスキャンできるレーダーは、精度では劣るものの、雨やみぞれ、雪の中でも理論上では見通す事ができます。一方オックスフォード大学の場合は、ライダーと複数のステレオカメラを使用しています。その他、ドイツのAutoNOMOS Labsやスタンフォード大学の自動車研究センターなども、それらに近いセンサーの組み合わせを採用しています。それぞれ違いはあれ、目的は同じ。車の周囲の情報を可能な限り収集する事です。
でも、リアルタイムの情報をそれだけセンサーで収集できるなら、なぜマップが必要なのでしょうか?Maddern氏によれば、全ての自走車開発者が、事前マップを必要だと認めているわけではないそうです。「研究者の中には、車が現在地を知っている必要はなく、車線を守り、標識に従い、周囲の車や歩行者にさえ気をつけていれば、最低でも知らない道を走っているドライバー程度には車も自動で運転できるはずだと考える人もいます。」
グーグルは勿論、その見方には否定的です。「リアルタイムデータだけに頼ってしまうと、必要な処理が膨大に増えてしまいます。事前マップはそれを軽減し、安全性と信頼性を一層高める役割を担っているのです。」とJabbariさんは説明し、事前マップの機能を、道を知り尽くした近所を運転するようなものだとしました。
少なくとも現在は、事前マップを利用しているグループが大きく進歩しているようです。かと言って、リアルタイムデータのみを使うアプローチが間違っているわけではありません。ただ、それによって必要な処理がより多いというだけなのです。道が変わる度にマッピングによって膨大なデータを更新しなければいけない事前マップアプローチに比べると、究極的にはこちらの方がベストである可能性はありますが、最初に市場に出るのはこちらではなさそうです。
オンボードのマップがあっても、自走車は周囲の見え方について常に新しい情報を収集しています。特に、同じ場所における様々なコンディション、つまり雪や雨、風、昼夜の違いなどを記録し続けているのです。Maddern氏によれば、オックスフォード大学で開発されている車は絶えず新しいマップを作っており、「同じ場所での異なったコンディション下での複数の経験」を記録しています。こうすれば、同じルートを走る際に辿れる「記憶」が増えて、常に現在のコンディションに最適な走り方を選択できるのです。
それでも、世界的に使える最初の事前マップの作成が自走車発売における大きな障害とされています。「グーグルのマッピング能力は素晴らしいですよ。」とJabbariさんは自信を見せていますが、例えば、グーグルのマップと、絶えず新しい経験をデータベース化するというMaddern氏のアイデアを組み合わせれば、周囲の環境に対する強固な記憶をつくり上げる事ができるかも知れません。しかも人間と違って、「経験」を更新するにはネットから新しいバージョンをダウンロードすればいいだけです。新しい地域に入ったら、その地域特定のデータをダウンロードするという事も考えられますしね。
車の目から見た世界
完璧な記憶力があったとしても、記憶の中のマップと現実に見えている状況を比較できなければ意味がありません。これを行う方法は積んでいるセンサーによって違いますが、グーグルの車に載っているようなレーザースキャナーの場合、センサーは周囲をスキャンし、ポイントクラウドと呼ばれるミリ単位で正確な3Dデータを作成します。ポイントクラウドデータの正確さ故に、既存のアルゴリズムでも事前マップと充分容易に比較でき、過去と現在のマップを重ねあわせる事で、ミリ単位の精度で車が道路上のどこにいるかを判断できます。
しかしMaddern氏は、3Dライダーは以前コストが高く、電力消費も大きい上に構造が複雑すぎると指摘しています。その為、オックスフォード大学やその他多くで開発されている車は、通常のデジタルカメラを使用して現実と車のマップを比較します。チームによってカメラはKinectの様にステレオだったりシングルだったりと様々ですが、どれもライダーに匹敵する正確さはない為、簡単なアルゴリズムによる比較はできません。
その代わりにMaddern氏が提案するのは、ピクセル単位でマップ同士を比較するのではなく、丸みや角など、「特徴点」を検出して比較する方法です。両方のマップの特徴点は区画に分けられ、その後比較されます。Maddern氏によればこの手法はかなり精度が高く、区画のサイズが違ったり、照明のコンディションが違っても比較は可能だそうです。
実際、多くの場合はちゃんと動作しているようで、下の映像はRobot Carのカメラの映像が事前マップと見事にマッチングしている状態です。安価なセンサーの魅力は、勿論車のコストを抑えられるという事です。ライダーだと数百万円ですが、これなら数十万円ですみます。しかしこの手法にも欠点があり、モーションブラーやレンズフレアがカメラに写っている状況や、ウェットなコンディションでは比較に手こずります。自走車の主な批判がそのコストである故、この問題の解決には大きく力を入れているというMaddern氏の言葉には納得です。
物体認識
しかし、これらはイメージ同士を重ねあわせて、車が自分の場所を探る為の手段でしかありません。人間のドライバーが同じように周囲を見た後行う一番重要な事は、その状況を理解する事。つまり、状況に合わせてどう行動すべきかを知るという事です。現在研究者達は、自分の置かれた状況の特徴を認識し、それに対して反応できる車を作ろうとしています。これは言わば、人間と同じ知覚を開発しているようなものです。
「それこそ自動運転における究極のゴールですね。」とLakshmanan氏は認めます。「その日置かれたカラーコーン、横切る歩行者、突然車線変更した車等、予期しない障害物に対する注意力がなければ、置かれた状況の急な変化に車は対応できません。」
知覚といっても様々なレベルがありますが、最も単純に言えば、車に物を認識させるのは、グーグルイメージ検索にティーポットと猫の違いを認識させるのに似ています。それぞれの物体の画像をいくつも見せて学習させれば、いずれ2つを判断できるようになっていきます。
グーグルが行っているのはほぼ同じ事です。「複数のカテゴリーを理解できるように教えました。車は歩行者、サイクリスト、そして車を識別できます。更に車のタイプも理解でき、パトカーやスクールバスなども判別します。」とJabbariさんは説明します。更に、物体の行動を観察し、次の行動を予想するようにもトレーニングしています。例えば、サイクリストが左腕をあげたら、それは恐らく左へ曲がるか左車線に合流する合図です。そのサインを認識し、相手に合わせた行動を取る事ができるそうです。
最終的には、車はこれらを教わる事なく、自分で理解しなければなりません。この高レベルの知覚こそが、自動運転開発の最大のハードルと言えます。「人間の頭脳をエミュレートする…。この秘訣を最初にマスターした企業が、一番先に市場にやってくるでしょう。」とLakshmanan氏は語りました。
急に子供が道路に飛び出してきたとします。それを、車が自分で認識して避けられるようにならない限り、自走車が行き来する事には反対意見も多いでしょう。しかし、技術的、そしてアルゴリズム的な進歩は、そんな日が来るのが遠くないことを示しています。車を運転するのは簡単ですが、それを完璧にするのはまた別の問題だという事ですね。
Jamie Condliffe - Gizmono US[原文]
(scheme_a)