自動運転車は長年、厳格な指示セットに従ってきました。エンジニアは何千ものif-then文を書き込みました。「歩行者が横断したらブレーキをかける」「信号が赤になったら止まる」「車線がカーブしたらハンドルを切る」といった具合です。このアプローチは、世界が予想通りに動く場合には機能しますが、実際の運転はもっと複雑です。ルールブックでは、あらゆるぬかるんだ裏道や標識のない交差点、交通の流れを縫うように走るサイクリストを網羅することはできません。環境が変化すると、厳格なコマンドは破綻します。単にチェックリストに従うのではなく、「何が良い運転であるか」を学習するシステムが必要なのです。
ハードコードされたルールを超えて
従来の自律走行システムは、明示的なプログラミングに依存しています。倉庫のフロアや専用レーン、予測可能な天候といった閉鎖的な環境ではうまく機能します。しかし、公道では同じロジックが通用しないことがよくあります。
手書きの標識があり、コーンが不規則な角度で散らばり、誘導員が交通を制御している工事現場を想像してみてください。ルールベースのシステムは、明確な交通信号を求めます。しかし、そこにあるのは混沌です。「オレンジ色のベストを着て左に合図を送る人」に対する特定のルールがなければ、車は停止するか、誤った判断を下します。人間のドライバーは、単なるピクセルではなく、意図や文脈を解釈するため、これを即座に処理できます。私たちはシーンを読み取っているのです。機械に同じことを教えるには、根本的に異なるアプローチが必要です。
見ることで学ぶ:逆強化学習 (Inverse Reinforcement Learning)
ここで、逆強化学習(Inverse Reinforcement Learning)がゲームチェンジャーとなります。標準的な強化学習では、AIに目標と報酬関数を与えます。「目的地に早く着けばポイント獲得」「縁石にぶつかればポイント喪失」といった具合です。エージェントは、スコアを最大化する方策を見つけるまで試行錯誤を繰り返します。しかし、運転は単なる効率性の問題ではありません。快適さ、安全性、法令遵守、そして社会的慣習も重要です。「慎重だが有能な人間のように運転する」という数学的な報酬を書くことは、ほぼ不可能です。
逆強化学習はこの問題を逆転させます。AIに目標を与える代わりに、例を見せるのです。アルゴリズムは、何時間もの人間の運転映像を観察します。人間がいつ減速するか、いつ早めに車線変更するか、あるいは合流してくるトラックにいつ道を譲るかを観察します。単に正確なステアリング角度を暗記するわけではありません。なぜそうしたのかを、逆算して推論するのです。例えば、道路は法的にクリアであっても、歩道近くに子供がいたためにドライバーが減速したのかもしれません。AIは、隠れた報酬を抽出します。つまり、「横断歩道がなくても、歩行者との距離が重要である」ということです。
人間を、すでに最適化問題を解決済みのエキスパートとして扱うことで、アルゴリズムは、そのエキスパートが最小化しようとしているコスト関数を復元します。システムが、「急停止よりもスムーズなブレーキを好む」「カーブを攻めるよりも車線中央を維持することを好む」といった潜在的な好みを理解すれば、それを一般化することができます。別の都市の新しい道路に遭遇しても、その未知の環境において優れたドライバーが何を重視するかを、おおよそ把握できるのです。
意思決定:Deep Q-Networks
報酬を理解することは、戦いの半分に過ぎません。車は依然として行動する必要があります。Deep Q-Networksは、センサーデータを処理して最適なアクションを選択することで、意思決定を行います。
古典的なQ学習は何十年も前から存在しています。エージェントは、特定の状態で特定の行動をとることの価値を学習します。問題は、実際の運転における状態は実質的に無限であるということです。カメラの映像は単純なグリッドワールドではありません。毎秒60フレームで変化する数百万のピクセルに、LiDARの点群、速度データ、GPSベクトルが組み合わさったものです。
Deep Q-Networksは、ニューラルネットワークを関数近似器として使用することで、この問題を解決します。ネットワークは生のセンサーデータを取り込み、考えられるすべてのアクション(左にハンドルを切る、緩やかにブレーキをかける、加速する、進路を維持する)に対して予測値を算出します。あらゆるシナリオのルックアップテーブルを保存する代わりに、ネットワークは一般化を行います。晴天時のトレーニングで学んだように、雨の夜の暗い塊はおそらく停車中の車であると認識し、「加速する」というアクションに低い値を割り当てます。
トレーニングには「経験再生(experience replay)」が含まれます。システムは、過去の走行、成功した車線変更、ニアミス、スムーズな減速などの瞬間を保存し、それらをランダムにサンプリングしてネットワークを更新します。これにより、有害な相関が断ち切られ、学習が安定します。数千時間のシミュレーションを通じて、ネットワークはどの行動が安全な進行につながり、どの行動がトラブルにつながるかを学習していきます。
これらを統合する
単独の手法では、有能なドライバーを構築することはできません。意思決定エンジンを伴わない Inverse Reinforcement Learning は、単なる観察者に過ぎません。人間が滑らかさを重視していることは理解していても、ハンドルを握ることはできないのです。精緻に設計された報酬関数を持たない Deep Q-Network は、誤った対象を最適化してしまいます。例えば、円を描いて走り続けることが衝突を完璧に回避する手段であると見出し、どこにも辿り着けないまま高いスコアを獲得してしまうかもしれません。
これらを組み合わせることで、強力なループが生まれます。Inverse Reinforcement Learning が人間のエキスパートを観察して、現実世界の優先順位を捉えた報酬関数を抽出します。そして Deep Q-Network がその報酬関数を用いて、ライブセンサーデータを処理しながら試行錯誤を通じて自らを訓練し、行動を選択します。AIは観察だけでなく、実践を通じても複雑な振る舞いを学習するのです。
高速道路への合流を例に考えてみましょう。Inverse Reinforcement Learning コンポーネントは、人間のドライバーが速度合わせと車間距離の許容のバランスを取っていることを推論しています。Deep Q-Network はこの微細なコスト信号を受け取り、シミュレーション内で1万回もの合流を練習します。加速すべき時、速度を落として待つべき時、そして車間が狭すぎる時を学習します。その結果は、記録された人間の動きを繰り返すだけのオウムではありません。それは論理を内面化し、路面が濡れていたり、車間が通常より狭かったりする場合でも適応できるシステムなのです。
