(57)【要約】【課題】高性能かつ順応性に優れた運転者行動予測システムを提供する。【解決手段】コンピュータによって実行される方法であって、車両が有する複数のセンサからセンサデータを収集する収集ステップと、前記センサデータを用いて運転者行動を検出する検出ステップと、前記センサデータから、運転者行動の予測に関連する特徴を抽出する抽出ステップと、抽出された前記特徴と、検出された前記運転者行動とを用いて、基礎運転者行動予測モデルを学習させることで、運転環境に適合したカスタマイズ運転者行動予測モデルを生成する学習ステップと、前記カスタマイズ運転者行動予測モデルと、前記抽出された特徴と、を用いて、運転者行動を予測する予測ステップと、を含む。【選択図】図３Ｂ
2018027776.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータによって実行される方法であって、
車両が有する複数のセンサからセンサデータを収集する収集ステップと、
前記センサデータを用いて運転者行動を検出する検出ステップと、
前記センサデータから、運転者行動の予測に関連する特徴を抽出する抽出ステップと、
抽出された前記特徴と、検出された前記運転者行動とを用いて、基礎運転者行動予測モデルを学習させることで、運転環境に適合したカスタマイズ運転者行動予測モデルを生成する学習ステップと、
前記カスタマイズ運転者行動予測モデルと、前記抽出された特徴と、を用いて、運転者行動を予測する予測ステップと、
を含む、方法。
【請求項２】
前記抽出ステップは、複数の前記特徴を特徴ベクトルとして抽出する処理を含み、
前記学習ステップでは、検出した前記運転者行動を、前記特徴ベクトルと同期させたうえで前記学習を行う、
請求項１に記載の方法。
【請求項３】
運転者行動予測期間を決定するステップをさらに含み、
前記抽出ステップでは、前記運転者行動予測期間にわたって前記センサデータから前記特徴を抽出する、
請求項２に記載の方法。
【請求項４】
前記学習ステップでは、前記特徴ベクトルに含まれる複数の特徴から、前記学習において利用する特徴を抽出する、
請求項２に記載の方法。
【請求項５】
運転者による車両の運転中に、前記学習ステップと前記予測ステップの双方を前記コンピュータに実行させる、
請求項１から４のいずれかに記載の方法。
【請求項６】
前記学習ステップでは、新たに取得したセンサデータを用いて、前記カスタマイズ運転者行動予測モデルを周期的に更新する、
請求項１から５のいずれかに記載の方法。
【請求項７】
前記収集ステップでは、特定の運転者に対応する運転環境において局所的に収集したセンサデータである局所化データを収集し、
前記学習ステップでは、前記局所化データを用いて、前記カスタマイズ運転者行動予測モデルを更新する、
請求項１から５のいずれかに記載の方法。
【請求項８】
前記局所化データは、特定の運転者、特定の車両、特定の地域のいずれかにおいて収集されたセンサデータである、
請求項７に記載の方法。
【請求項９】
前記収集ステップでは、他の車両によって特定の地域で取得された前記局所化データをさらに収集する、
請求項７に記載の方法。
【請求項１０】
前記カスタマイズ運転者行動予測モデルは、特定の運転者に関連付いたモデルであり、
前記カスタマイズ運転者行動予測モデルを、前記特定の運転者が運転する第二の車両が有するコンピュータに送信するステップをさらに含む、
請求項１から６のいずれかに記載の方法。
【請求項１１】
車両が有する複数のセンサからセンサデータを収集する収集手段と、
前記センサデータを用いて運転者行動を検出する検出手段と、
前記センサデータから、運転者行動の予測に関連する特徴を抽出する抽出手段と、
抽出された前記特徴と、検出された前記運転者行動とを用いて、基礎運転者行動予測モデルを学習させることで、運転環境に適合したカスタマイズ運転者行動予測モデルを生成する学習手段と、
前記カスタマイズ運転者行動予測モデルと、前記抽出された特徴と、を用いて、運転者行動を予測する予測手段と、
を含む、システム。
【請求項１２】
前記抽出手段は、複数の前記特徴を特徴ベクトルとして抽出する処理を含み、
前記学習手段は、検出した前記運転者行動を、前記特徴ベクトルと同期させたうえで前記学習を行う、
請求項１１に記載のシステム。
【請求項１３】
運転者行動予測期間を決定する手段をさらに含み、
前記抽出手段は、前記運転者行動予測期間にわたって前記センサデータから前記特徴を抽出する
請求項１２に記載のシステム。
【請求項１４】
前記学習手段は、前記特徴ベクトルに含まれる複数の特徴から、前記学習において利用する特徴を抽出する、
請求項１２に記載のシステム。
【請求項１５】
前記学習手段は、新たに取得したセンサデータを用いて、前記カスタマイズ運転者行動予測モデルを周期的に更新する、
請求項１１から１４のいずれかに記載のシステム。
【請求項１６】
前記収集手段は、特定の運転者に対応する運転環境において局所的に収集したセンサデータである局所化データを収集し、
前記学習手段は、前記局所化データを用いて、前記カスタマイズ運転者行動予測モデルを更新する、
請求項１１から１５のいずれかに記載のシステム。
【請求項１７】
前記局所化データは、特定の運転者、特定の車両、特定の地域のいずれかにおいて収集されたセンサデータである、
請求項１６に記載のシステム。
【請求項１８】
前記収集手段は、他の車両によって特定の地域で取得された前記局所化データをさらに収集する、
請求項１６に記載のシステム。
【請求項１９】
前記カスタマイズ運転者行動予測モデルは、特定の運転者に関連付いたモデルであり、
前記カスタマイズ運転者行動予測モデルを、前記特定の運転者が運転する第二の車両が有するコンピュータに送信する手段をさらに含む、
請求項１１から１５のいずれかに記載のシステム。
【請求項２０】
一般運転者による学習データを用いて機械学習によって生成された基礎運転者行動予測モデルを取得する取得ステップと、
センサデータを用いて、車両の走行中に運転者が行った運転者行動を検出する検出ステップと、
前記運転者行動に関する特徴を、前記センサデータから抽出する抽出ステップと、
前記抽出された特徴と、前記運転者行動を用いて、学習データを生成する生成ステップと、
前記学習データを用いて、前記基礎運転者行動予測モデルを更新し、カスタマイズ運転者行動予測モデルを生成する学習ステップと、
前記カスタマイズ運転者行動予測モデルを用いて、さらなる運転者行動を予測する予測ステップと、
を含む、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、「Integrative Cognition of Driver Behavior」と題し、２０１６年８月１６日に出願された米国特許出願第１５／２３８，６４６号の優先権を主張する。
また、本出願は、「Individualized Adaptation of Driver Action Prediction Models」と題し、２０１６年１１月２８に出願された米国特許出願第１５／３６２，７９９号の優先権を主張する。
これらの特許出願は、その全体が参照によって本願明細書に援用される。
【０００２】
本開示は機械学習に関する。特に、本開示は、移動プラットフォームに関係するユーザの行動予測に関する。
【背景技術】
【０００３】
世界保健機関（ＷＨＯ）の路上安全に関するグローバルステータスリポートならびに米国道路交通安全局の報告によると、交通事故による死者は全世界で年間１２０万人を超え、米国だけでも年間３万人を上回る。事故の原因の多くは危険な運転挙動にある。もしもこうした危険な挙動を予測することができ、たとえ数秒前であっても運転者に警告を与える、または、状況を緩和する方策を事前に講じることができれば、多くの事故を予防できるかもしれない。一般に、最新の運転支援ソリューションは、そのシステムないしモデルがもつ制約のゆえに、高精度の運転挙動予測を高い費用対効果で実現することができない。
【０００４】
先進運転支援（ＡＤＡＳ）システムは、順応性に優れた高度な運転者行動予測（ＤＡＰ）システムの長所を活用することができる。昨今の車両の安全機能の多く（例えば、自動ブレーキや自動ステアリング）は、そうした機能を完全かつ安全に実行するために、運転者の応答時間がどうしても必要となる。行動の数秒前に運転者行動を予測できれば、かかる先進運転支援システムの効率および有用性が大幅に改善されうる。特に、行動をもっと早くに、そしてより正確に予測できる先進運転支援システムは、先進運転支援システムにおいて新たな機能（例えば、自動方向転換や自動ブレーキ信号）を可能にし、路上安全をさらに高めることができると考えられる。
【０００５】
これまでの解決策では、データ収集（例えばビッグデータを用いたもの）に先立って、任意の運転者行動を予測するための一般化モデルを作成する必要がある。しかし、運転者行動の認識または検出が普遍的であるのに対し、運転者行動の事前予測は個々人の運転挙動ならびに運転者の運転環境に大いに依存する。さらに、コンピュータ学習モデル、とりわけニューラルネットワークはデータ駆動型のソリューションであり、正確な予測を行うには、コンピュータ学習モデルが遭遇しがちな状況に関するトレーニングデータが多量に必要となる。そのため、起こりうる個々の状況に存在しうる個々のユーザをカバーするには、極めて巨大なトレーニングデータベースが必要になると考えられる。したがって、過去のデータ収集とカスタムセットの状況への適合をともに活かすことができる、適応型モデルが必要となる。
【０００６】
一部の既存アプローチは、運転に関する限られたデータのみを用いて運転挙動の予測を試みる。例えば、非特許文献１は、二重レイヤ隠れマルコフモデル（ＨＭＭ）について記載している。このＨＭＭは、行動認識を実行する低位レイヤの多次元ガウスＨＭＭと、予想を実行する上位レイヤの多次元離散ＨＭＭとを含んでいる。しかし、このモデルは、ＣＡＮ（Ｃｏｎｔｒｏｌｌｅｄ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）のデータ（例えば、ブレーキ、加速、およびステアリング）しか考慮しておらず、運転に影響を与える重要な特徴（例
えば、道路状況、土地勘、および運転者のステアリングのパターン）を反映できない。したがって、このモデルならびにＨＭＭベースの他のソリューションは、個々の運転者の違いをモデル化するだけの十分な複雑性に欠いている。そのため、かかるソリューションは過去に何度も起こった事象に関する予測しか行うことができず、非常事態に対してはあまり役に立たない。さらに、かかるモデルをエキスパートシステム（System of Experts）
ソリューションに拡張しても、リアルタイムで運転者に適合させることはほとんど不可能であり、しかも巨大なデータセットからの学習を行うには十分な複雑性を依然として欠いている。
【０００７】
一般的ではあるが上記のものよりロバスト性が低い、運転者行動予測のためのもう１つの機械学習法に、隠れマルコフモデル（ＨＭＭ）がある。例えば、非特許文献２は、個々の運転者に適合せず、範囲が包括的であり、かつ予測精度が限られる運転者行動予測システムを提示している。
【０００８】
いくつかのアプローチは、運転挙動の認識と予測に先立って特徴の抽出を必要とする。例えば、非特許文献３は、運転者の行動を、自己回帰入出力ＨＭＭ（ＡＩＯ−ＨＭＭ）を用いて予測するために、複雑な多重検知ドメインを考慮している。最初の工程において、非特許文献３は入力センサデータから特徴を抽出する工程（例えば、運転者の頭部姿勢を検出するために運転者に向けたカメラから上位レベルの特徴を抽出する、道路の混雑状況を決定するために道路に向けたカメラから物体特徴を抽出する等）について記載している。しかし、非特許文献３の方法では人の関与がかなりの程度必要であり、動的なシステムにとって非実用的であるばかりか、場合によっては危険ですらある。また、非特許文献３が考えているセンサ入力の数は、人間の標準的な運転経験を代表していない。さらに、このモデルは、運転者の行動に影響を与える重要な特徴（例えば、ステアリングのパターンや土地勘等）を考慮することができない。
【０００９】
非特許文献４を初めとするいくつかのアプローチは、一群の運転者から得たデータを用いて開発した汎用モデルの使用について記載している。しかし、非特許文献４に記載されるようなモデルは運転者挙動を十分にモデル化および予測することができず、そのため事故の発生リスクを低減することができない。特に、非特許文献４のモデルはＬＳＴＭ−ＲＮＮ（長期短期記憶の再帰型ニューラルネットワーク）に基づいており、ＢＰＴＴ（通時的逆伝播）アルゴリズムを用いてトレーニングされる。非特許文献４の解決策における特に重要な限界点として、トレーニングデータが人手を用いて構築され、現在の運転者の観察に基づく運転者挙動の予測はそのやり方では改善されないことが挙げられる。
【００１０】
いくつかのアプローチはエキスパートシステムを採用しているが、それらのアプローチは予測システムのトレーニングに対して更新プロセスを提供することを試みてきた。これまでのかかる試みは、例えば、特許文献１ならびに特許文献２に記載されている。これらの解決策は各専門家（エキスパート）の出力に対して重みを適用し、予測される行動と認識される行動との比較が一致するときに重みを増やしている。それにより、それ以後はその専門家の重みが強められる。この解決策は機械学習においてブースティングと呼ばれる。これはエキスパートシステムの融合作業には効果的であるが、極めて巨大なデータセットに対するスケーラビリティを改善しない。なぜなら、データ内に何か新しいものがあるときにそれを表すようにモデルを再トレーニングすることがないからである。また、このアプローチでは、ラベリングした行動中に多くのノイズが含まれると、アルゴリズムが不安定になる。そのような状況は、例えば、微妙な運転者行動の場合（例えば、道路のカーブや車線の増減と車線変更とが区別しづらい場合）に予想されうる。
【００１１】
以上のように、高性能かつ順応性に優れた運転者行動予測システムが求められている。
【先行技術文献】
【特許文献】
【００１２】
【特許文献１】特許第４０９６３８４号公報
【特許文献２】米国特許第７８０９５０６号明細書
【非特許文献】
【００１３】
【非特許文献１】He L.,Zong C.,and Wang C.，”Driving intention recognition and behavior prediction based on a double-layer hidden Markov model”，Journal of Zhejiang University-SCIENCE C(Computers & Electronics)，第13巻第3号，2012，208-217
【非特許文献２】Ohn-Bar,E.,Tawari,A.,Martin,S.,Trivedi,M.，”Predicting Driver Maneuvers by Learning Holistic Features”，IEEE Intelligent Vehicles Symposium，2014
【非特許文献３】Jain A.,Koppula S.,Raghavan B.,Soh S.,and Saxena A.，”Car that knows before you do:anticipating maneuvers via learning temporal driving models”，ICCV，2015，3182-3190
【非特許文献４】Jain A.,Koppula S.,Raghavan B.,Soh S.,and Saxena A.，”Recurrent neural networks for driver activity anticipation via sensory-fusion architecture”，arXiv:1509.05016v1[cs.CV]，2015
【発明の概要】
【発明が解決しようとする課題】
【００１４】
本明細書は、上記「背景技術」に記載したアプローチの欠点や限界を克服する。それは、少なくとも部分的には、ライブセンシングによる行動認識によって運転者行動予測モデルを更新し、また個々の運転者および環境に関する性能を改善するような、新しい技術を提供することによって実現される。
【課題を解決するための手段】
【００１５】
本開示に記載する主題の革新的な一態様によると、
本発明に係る方法は、複数の車両システムセンサからのローカルセンサデータを、運転者による車両運転中に集積する工程と、車両運転中にローカルセンサデータを用いて運転者行動を検出する工程と、車両運転中に運転者行動の予測に関係する特徴をローカルセンサデータから抽出する工程と、を含む。
上記方法は、車両運転中に、機械学習に基づく基礎運転者行動予測モデルを、抽出された特徴と検出された運転者行動の１つ以上を用いて、機械学習に基づくカスタマイズ運転者行動予測モデルに適合させる工程であって、機械学習に基づく基礎運転者行動予測モデルは、一般化した運転者集団に適用できるように構成された汎用モデルを用いて最初に生成される工程、を含む。
さらに、いくつかの実装において、上記方法は、機械学習に基づくカスタマイズ運転者行動予測モデルと、抽出された特徴と、を用いて運転者行動を予測する工程を含む。
【００１６】
本開示に記載する主題の革新的な別の態様によると、
本発明に係るコンピュータシステムは、１つ以上のコンピュータプロセッサと、上記１つ以上のコンピュータプロセッサによって実行された場合に上記コンピュータシステムに動作を行わせる命令を格納する１つ以上の非一時的なメモリであって、上記動作は、複数の車両システムセンサからのローカルセンサデータを、運転者による車両運転中に集積することと、車両運転中にローカルセンサデータを用いて運転者行動を検出することと、車両運転中に運転者行動の予測に関係する特徴をローカルセンサデータから抽出することと、を含む、メモリと、を備える。
上記動作は、車両運転中に、機械学習に基づく基礎運転者行動予測モデルを、抽出され
た特徴と検出された運転者行動の１つ以上を用いて、機械学習に基づくカスタマイズ運転者行動予測モデルに適合させることであって、機械学習に基づく基礎運転者行動予測モデルは、一般化した運転者集団に適用できるように構成された汎用モデルを用いて最初に生成されること、を含む。
さらに、いくつかの実装において、上記動作は、機械学習に基づくカスタマイズ運転者行動予測モデルと、抽出された特徴と、を用いて運転者行動を予測すること、を含む。
【００１７】
他の態様は、上記態様に関連して記載されるさまざまな動作を実行するように、および／またはさまざまなデータを格納するように構成された、対応する方法、システム、装置、およびコンピュータプログラムを含む。
上記および他の態様（例えば、データ構造体）は、有形のコンピュータ記憶装置上に符号化されうる。例えば、上記態様の１つ以上は、次に示す特徴の１つ以上を含みうる。
ローカルセンサデータを用いて運転者行動を検出する上記工程は、運転者行動をラベリングする工程を含むことと、
運転者行動の予測に関係する特徴をローカルセンサデータから抽出する上記工程は、抽出された特徴を含む１つ以上の抽出特徴ベクトルを生成する工程と、ラベリングされた運転者行動を上記１つ以上の抽出特徴ベクトルと同期する工程と、運転者行動予測期間を決定する工程と、を含み、上記特徴はローカルセンサデータから運転者行動予測期間にわたって抽出されることと、
ラベリングした運転者行動を上記１つ以上の抽出特徴ベクトルと同期する工程は、上記１つ以上の抽出特徴ベクトルの特徴をラベリングする工程と、上記１つ以上の抽出特徴ベクトルに由来する抽出された特徴のうちのどれを、機械学習に基づく運転者行動予測モデルの適合化に用いるかを決定する工程と、を含むことと、
ローカルセンサデータは、車両の室内に備わるセンサからの内部センサデータと、車両の室外に備わるセンサからの外部センサデータと、近隣の車両および道路インフラ装置の１つ以上からネットワーク通信経由で送信されるセンサデータと、の１つ以上を含むことと、
ローカルセンサデータは、運転者によるブレーキ動作を記述するブレーキデータと、運転者によるステアリング操作を記述するステアリングデータと、運転者による方向転換動作を記述するウインカーデータと、運転者による加速動作を記述する加速度データと、運転者によるコントロールパネル操作を記述するコントロールパネルデータと、Ｖ２Ｖ（vehicle-to-vehicle）データと、Ｖ２Ｉ（vehicle-to-infrastructure）データと、の１つ
以上を含むことと、
機械学習に基づく基礎運転者行動予測モデルを適合させる上記工程は、機械学習に基づく基礎運転者行動予測モデルを、新たに受信するローカルセンサデータ群を用いて繰り返し更新する工程を含むことと、
ローカルセンサデータを集積する上記工程は、車両を取り巻く周囲環境の局所条件を反映する、１つ以上の他の近隣の車両からの局所的データを受信する工程を含むことと、
機械学習に基づく基礎運転者行動予測モデルを適合させる上記工程は、機械学習に基づく基礎運転者行動予測モデルを、局所的データを用いてトレーニングする工程を含むこと。
【００１８】
本開示に記載する主題の革新的なさらに別の態様によると、
本発明に係る方法は、機械学習に基づく基礎運転者行動予測モデルを車両の運転の前に受信する工程であって、機械学習に基づく基礎運転者行動予測モデルは１つ以上の汎用トレーニング事例を用いて最初に生成されており、上記１つ以上の汎用トレーニング事例は一般化したユーザ群に適用できるように構成されている、工程と、ある具体的なユーザの運転者行動を、車両運転中にローカルセンサデータを用いて検出する工程と、運転者行動に関係する特徴を、車両運転中にローカルセンサデータから抽出する工程と、を含む。上記方法は、トレーニング事例を、運転者行動に関係する抽出された特徴および運転者行動
を用いて車両運転中に生成する工程と、機械学習に基づく基礎運転者行動予測モデルを、トレーニング事例を用いて更新することにより、機械学習に基づくカスタマイズ運転者行動予測モデルを車両運転中に生成する工程と、さらなる運転者行動を、機械学習に基づくカスタマイズ運転者行動予測モデルを用いて車両運転中に予測する工程と、を含む。
【００１９】
上記および他の実装は、次に挙げる特徴の１つ以上をさらに含みうる。
機械学習に基づく基礎運転者行動予測モデルはニューラルネットワークに基づくコンピュータ学習モデルであること、
運転者行動を検出する上記工程は、運転者行動の認識ラベルを機械学習に基づく認識モデルを用いて生成する工程と、機械学習に基づくカスタマイズ運転者行動予測モデルを具体的ユーザにリンクする工程と、第２の車両に関係する具体的ユーザの未来の運転者行動の予測に用いるために、機械学習に基づくカスタマイズ運転者行動予測モデルを第２の車両のリモート計算装置に提供する工程と、を含むこと。
【００２０】
また、本発明の別形態に係る方法は、
コンピュータによって実行される方法であって、車両が有する複数のセンサからセンサデータを収集する収集ステップと、前記センサデータを用いて運転者行動を検出する検出ステップと、前記センサデータから、運転者行動の予測に関連する特徴を抽出する抽出ステップと、抽出された前記特徴と、検出された前記運転者行動とを用いて、基礎運転者行動予測モデルを学習させることで、運転環境に適合したカスタマイズ運転者行動予測モデルを生成する学習ステップと、前記カスタマイズ運転者行動予測モデルと、前記抽出された特徴と、を用いて、運転者行動を予測する予測ステップと、を含むことを特徴とする。
【００２１】
また、前記抽出ステップは、複数の前記特徴を特徴ベクトルとして抽出する処理を含み、前記学習ステップでは、検出した前記運転者行動を、前記特徴ベクトルと同期させたうえで前記学習を行うことを特徴としてもよい。
また、運転者行動予測期間を決定するステップをさらに含み、前記抽出ステップでは、前記運転者行動予測期間にわたって前記センサデータから前記特徴を抽出することを特徴としてもよい。
また、前記学習ステップでは、前記特徴ベクトルに含まれる複数の特徴から、前記学習において利用する特徴を抽出することを特徴としてもよい。
また、運転者による車両の運転中に、前記学習ステップと前記予測ステップの双方を前記コンピュータに実行させることを特徴としてもよい。
また、前記学習ステップでは、新たに取得したセンサデータを用いて、前記カスタマイズ運転者行動予測モデルを周期的に更新することを特徴としてもよい。
また、前記収集ステップでは、特定の運転者に対応する運転環境において局所的に収集したセンサデータである局所化データを収集し、前記学習ステップでは、前記局所化データを用いて、前記カスタマイズ運転者行動予測モデルを更新することを特徴としてもよい。
また、前記局所化データは、特定の運転者、特定の車両、特定の地域のいずれかにおいて収集されたセンサデータであることを特徴としてもよい。
また、前記収集ステップでは、他の車両によって特定の地域で取得された前記局所化データをさらに収集することを特徴としてもよい。
また、前記カスタマイズ運転者行動予測モデルは、特定の運転者に関連付いたモデルであり、前記カスタマイズ運転者行動予測モデルを、前記特定の運転者が運転する第二の車両が有するコンピュータに送信するステップをさらに含むことを特徴としてもよい。
【００２２】
また、本発明に係るシステムは、
車両が有する複数のセンサからセンサデータを収集する収集手段と、前記センサデータを用いて運転者行動を検出する検出手段と、前記センサデータから、運転者行動の予測に
関連する特徴を抽出する抽出手段と、抽出された前記特徴と、検出された前記運転者行動とを用いて、基礎運転者行動予測モデルを学習させることで、運転環境に適合したカスタマイズ運転者行動予測モデルを生成する学習手段と、前記カスタマイズ運転者行動予測モデルと、前記抽出された特徴と、を用いて、運転者行動を予測する予測手段と、を含むことを特徴とする。
【００２３】
また、本発明の別形態に係る方法は、
一般運転者による学習データを用いて機械学習によって生成された基礎運転者行動予測モデルを取得する取得ステップと、センサデータを用いて、車両の走行中に運転者が行った運転者行動を検出する検出ステップと、前記運転者行動に関する特徴を、前記センサデータから抽出する抽出ステップと、前記抽出された特徴と、前記運転者行動を用いて、学習データを生成する生成ステップと、前記学習データを用いて、前記基礎運転者行動予測モデルを更新し、カスタマイズ運転者行動予測モデルを生成する学習ステップと、前記カスタマイズ運転者行動予測モデルを用いて、さらなる運転者行動を予測する予測ステップと、を含むことを特徴とする。
【００２４】
本開示の全体を通して論じるように、上記およびさまざまな他の実装には多くの追加的特徴が含まれうる。
【発明の効果】
【００２５】
本開示の技術は多くの点において他の既存の解決策よりも有利である。その非限定的な一例として、本明細書に記載する技術により、計算システムは、事前トレーニングが可能であり、かつカスタムセットの状況に適合されうる、運転者行動予測システムを提供することができる。例えば、オンラインでの適合化もしくは連続的な適合化により、工場でトレーニングした運転者行動予測モデルを局所収集したデータを用いて改善し、それによって、運転者行動予測システムは、上記「背景技術」に記載したデータ収集の課題を克服することができる。例えば、本明細書に記載する技術の実装によって提供されうるいくつかの利点として、運転者行動のリアルタイム検出を埋め込む能力（例えば、ラベリングやトレーニング事例の作成における人の関与がそれによって低減される）、大規模データセットにおいて分類ノイズに強い学習、および既存の運転者行動予測モデルを運転者の具体的データによって更新できる機能、を挙げることができる。
【００２６】
本明細書に記載する特徴および利点はすべてを網羅するものではなく、図面および説明に照らせば多くの追加的な特徴および利点が当業者には明らかだろう。また、本明細書に用いる文言は読みやすさや説明を考慮して選定したものであり、発明対象の範囲を限定するものではないことに留意するべきである。
【００２７】
本開示の内容は単なる例示であり、また添付の図面に限定されることもない。図中、同様の要素には同様の参照符号を付している。
【図面の簡単な説明】
【００２８】
【図１】運転挙動をモデル化するための例示的なシステムのブロック図である。
【図２】例示的な計算装置のブロック図である。
【図３Ａ】先進運転支援エンジンの実使用例のブロック図である。
【図３Ｂ】先進運転支援エンジンを用いてモデルを更新する例示的な実装のブロック図である。
【図４】運転者行動予測モデルを個別に適合化する例示的方法のフローチャートである。
【図５Ａ】センサデータの一例を示す図である。
【図５Ｂ】センサデータの別の例を示す図である。
【図５Ｃ】センサデータのさらに別の例を示す図である。
【図５Ｄ】センサデータのさらに別の例を示す図である。
【図５Ｅ】センサデータのさらに別の例を示す図である。
【発明を実施するための形態】
【００２９】
本明細書に記載する技術は、移動プラットフォーム１０１の内部および外部の環境をセンシングしたデータに基づいて、運転者の挙動を効率的かつ効果的にモデル化する。例えば、当該技術は、運転に関する情報（例えば、運転者の運転の癖や、運転環境にどの程度馴染みがあるかを記述するデータ）を処理し、処理した情報をモデル化し、当該モデルに基づいて正確な運転予測を生成する。いくつかの実装において、モデル化は空間的および時間的パターン認識に基づいて行われる。これについては別途詳述する。
【００３０】
本開示に記載する技術のいくつかの実装は、ニューラルネットワークに基づく運転者行動予測モデルを使用および適合化するように構成される、カスタマイズ可能な先進運転支援エンジン１０５を備えている。例えば、本技術は、抽出された特徴と検出された運転者行動とに基づいてトレーニングラベル（ターゲットともいう）を生成し、さらに、事前トレーニングした運転者行動予測モデルの性能を、当該ラベルを用いて段階的に（incrementally）更新および改善しうる。例えば、本明細書に記載する技術のいくつかの実装は、
ニューラルネットワークに基づく運転者行動予測モデルの精度および再現性を改善する。これは、動作をリアルタイムで検出／認識し、かつラベリングした認識結果を用いることにより、運転者行動予測モデルを具体的な運転者や状況に対して更新することによって実現する。
なお、本明細書において、「モデルを適合させる」とは、ある機械学習モデル（例えば、初期状態におけるモデル）を、学習によって、運転行動の予測に適したモデル（例えば、運転者や運転環境に特有なモデル）に更新することを指す。
【００３１】
さらに別の例として、運転者行動予測モデルは、コンピュータ学習アルゴリズム（例えば、ニューラルネットワーク）を含んでもよい。例えば、ニューラルネットワークに基づく運転者行動予測モデルのいくつかの例として、１つ以上の多層ニューラルネットワーク、ディープな畳み込みニューラルネットワーク、および再帰型ニューラルネットワークが挙げられる。ただし、本願は他の機械学習モデルも想定しており、それによってかかるモデルも包含される。
【００３２】
上記「背景技術」で簡単に触れたように、コンピュータ学習モデル（例えばニューラルネットワーク）はデータ駆動型ソリューションであり、正確な予測を行うには、多くの場合、コンピュータ学習モデルによって実現されるシステムが遭遇しがちな状況に関する大量のトレーニングデータを必要とする。そのため、起こりうる個々の状況に存在しうる個々のユーザをカバーするには、非現実的なほど巨大なトレーニングデータベースが必要となることが多い。本明細書に記載する技術のいくつかの実装は、データ収集に関するこの課題を、モデル適合化エンジン２３３を提供することによって克服している。このモデル適合化エンジン２３３は、最先端モデル（例えば、機械学習に基づく基礎運転者行動予測モデル）を、局所的に収集したデータ（例えば、ユーザごとに異なる、地域ごとに異なる、移動プラットフォーム１０１ごとに異なる、等のデータ）を用いて適合させるように構成される。なお、局所的に収集したデータを本明細書では「ローカルデータ」または「ローカルセンサデータ」とも呼ぶ。したがって、本技術は、ユーザ行動のリアルタイム検出機能の搭載、大規模データセットにおいて分類ノイズに強い学習の実現、およびローカルデータ（例えば、運転者ごとに異なるデータ）を用いた、既存の（例えば、工場出荷状態の）運転者行動予測モデルの更新、を行う。この更新機能により、モデルを最新状態に維持するために、モデルを、改善された事前トレーニングモデルと日常的に入れ替える必要があるいくつかの実装とは対照的に、運転者行動予測モデルを適合化および改善すること
ができる。
【００３３】
図を参照するにあたり、図中の構成要素を指すために参照符号を用いる。なお、説明中の図にその参照符号が書かれているとは限らない。また、ある参照符号に、複数ある類似構成要素の１つを指す文字がある場合（例えば、構成要素０００ａ、０００ｂ、……、０００ｎ）、類似構成要素の１つまたはすべてを指すために、かかる文字のない形式で参照符号を用いることがある。
【００３４】
本明細書に記載する実装は、車両の運転に関する場合が多いが、本技術は他の好適な分野（例えば、機械、列車、機関車、航空機、フォークリフト、船舶、または任意の他の好適なプラットフォームの操作等）にも適用できる。なお、本開示に記載するいくつかの実装において、ユーザ１１５は「運転者」と表記することがあるが、「運転者」の語を使用することが本開示に記載する技法の範囲を限定すると解釈するべきではない。また、構成要素の個数については本明細書を通して必ずしも記載していないが、状況に応じて複数を適宜含みうる。
【００３５】
図１は、例示的なシステム１００のブロック図である。図に示すように、システム１００は、モデル化サーバ１２１、マップサーバ１３１、クライアントデバイス１１７、移動プラットフォーム１０１を含む。システム１００の実体要素（entity）同士はネットワーク１１１を介して通信可能に結合される。なお、図１に示すシステム１００は例示にすぎず、システム１００や本開示が想定する他のシステムは、追加的な構成要素を含んでいてもよく、または含まれる構成要素が記載のものより少なくてもよく、構成要素を組み合わせてもよく、または構成要素の１つ以上を追加的な構成要素に分割するなどしてもよい。例えば、システム１００は、任意の数の移動プラットフォーム１０１、クライアントデバイス１１７、モデル化サーバ１２１、またはマップサーバ１３１を含みうる。例えば、それに加えて、またはその代わりに、システム１００は、ユーザ１１５からの音声コマンドを受信して処理する音声サーバ、検索クエリにマッチする検索結果を返す検索サーバ、Ｖ２Ｖ（vehicle-to-vehicle）技術、およびＶ２Ｉ（vehicle-to-infrastructure）技術等
を含みうる。
【００３６】
ネットワーク１１１は有線または無線による従来タイプのネットワークである。また、スター型、トークンリング型、または他の構成を含む、多様な構成を有しうる。例えば、ネットワーク１１１は、１つ以上のＬＡＮ（ローカルエリアネットワーク）、ＷＡＮ（ワイドエリアネットワーク）（例えばインターネット）、公衆網、私設網、仮想ネットワーク、複数の車両間のメッシュネットワーク、ピアツーピアネットワーク、または、複数の装置がそれを介して通信する他の相互接続データ経路を含みうる。
【００３７】
ネットワーク１１１はデータを多様な通信プロトコルで送信するために、電気通信ネットワークに結合されるか、または電気通信ネットワークの一部を含みうる。いくつかの実装において、ネットワーク１１１は、Ｂｌｕｅｔｏｏｔｈ（登録商標）通信網または移動体通信網を含み、それにより、ＳＭＳ（ショートメッセージサービス）、ＭＭＳ（マルチメディアメッセージングサービス）、ＨＴＴＰ（ハイパーテキスト転送プロトコル）、直接的なデータ接続、ＷＡＰ（ワイヤレスアプリケーションプロトコル）、電子メール等、を介するなどしたデータの送受信を可能とする。いくつかの実装において、ネットワーク１１１はワイヤレスネットワークであって、ＤＳＲＣ（dedicated short range communications）、ＷＡＶＥ（wireless access in vehicular environments）、８０２．１１ｐ
、３Ｇ、４Ｇ、５Ｇ＋ネットワーク、Ｗｉ−Ｆｉ（登録商標）、または任意の他のワイヤレスネットワーク等の接続を用いる。いくつかの実装において、移動プラットフォーム１０１間、または移動プラットフォーム１０１の外部にあるインフラ設備（例えば、交通システムや道路システム等）との間でデータ通信を行うために、ネットワーク１１１はＶ２
ＶまたはＶ２Ｉ通信網を含む。図１では、モデル化サーバ１２１、マップサーバ１３１、クライアントデバイス１１７、および移動プラットフォーム１０１を結合するネットワーク１１１について１つのブロックしか描いていないが、ネットワーク１１１は実際には上述のように任意数のネットワークの組み合わせを含んでもよい。
【００３８】
モデル化サーバ１２１は、プロセッサと、メモリと、ネットワーク通信能力（例えば通信ユニット）とを備えた、ハードウェアまたは仮想サーバである。信号線１１０によって表されるように、モデル化サーバ１２１はネットワーク１１１と通信可能に結合される。いくつかの実装において、モデル化サーバ１２１は、マップサーバ１３１、クライアントデバイス１１７、および移動プラットフォーム１０１の１つ以上との間で、データの送受信を行う。いくつかの実装において、モデル化サーバ１２１は、先進運転支援エンジンのインスタンス１０５ｃと認識データ記憶装置１２３を含む。これについては本明細書において適宜さらに説明する。
【００３９】
認識データ記憶装置１２３は、ユーザの行動を記述するための用語（terminology）デ
ータ（例えば、先進運転支援エンジン１０５によって、または何らかの他の方法によって生成された認識ラベル）を格納する手段である。なお、図１においては、モデル化サーバ１２１が認識データ記憶装置１２３を備えるものとして描かれているが、それに加えて、またはその代わりに、移動プラットフォーム１０１やクライアントデバイス１１７が認識データ記憶装置１２３を備えていてもよい。例えば、移動プラットフォーム１０１やクライアントデバイス１１７は、認識データ記憶装置１２３のインスタンスを含んだり、認識データ記憶装置１２３からのデータをキャッシュ（例えば、認識データをさまざまな時間間隔でダウンロードする）してもよい。例えば、いくつかの実装において、一部の認識データは、移動プラットフォーム１０１に予め格納ないしインストールされ、セットアップ時もしくは最初の使用時に格納またはリフレッシュされ、さまざまな時間間隔で複製されてもよい。さらに他の実装において、認識データ記憶装置１２３からのデータは、実行時もしくはトレーニング時に要求されてダウンロードされる。他の好適な変形も可能であり、かかる変形も想定されている。
【００４０】
クライアントデバイス１１７は、プロセッサと、メモリと、通信ユニットと、を備えた計算装置である。クライアントデバイス１１７はネットワーク１１１と結合可能であり、モデル化サーバ１２１、マップサーバ１３１、および移動プラットフォーム１０１（またはネットワーク１１１に結合される、本システムの任意の他の構成要素）の１つ以上との間でデータの送受信を行う。クライアントデバイス１１７の非限定的な例として、ラップトップコンピュータ、デスクトップコンピュータ、タブレット型コンピュータ、携帯電話機、ＰＤＡ（携帯情報端末）、モバイル電子メール装置、路側センサ、信号機、交通カメラ、組み込みシステム、専用装置、または情報処理およびネットワーク１１１へのアクセスが可能な任意の他の電子機器、が挙げられる。いくつかの実装において、クライアントデバイス１１７は、１つ以上のセンサ１０３ｂ、ナビゲーションアプリケーション１０７ｂ、または先進運転支援エンジン１０５ｂを含む。
【００４１】
いくつかの実装において、クライアントデバイス１１７は、ナビゲーションアプリケーションのインスタンス１０７ｂを含む。これはナビゲーションの指示をユーザ１１５に、ＧＰＳ情報を先進運転支援エンジン１０５に提供する。信号線１０６によって示すように、ユーザ１１５はクライアントデバイス１１７とインタラクトする。図１にはクライアントデバイス１１７を１つしか描いていないが、システム１００は複数のクライアントデバイス１１７を含んでもよい。
【００４２】
移動プラットフォーム１０１は、プロセッサと、メモリと、通信ユニットと、を備えた計算装置を含む。かかる計算装置の例として、移動プラットフォーム１０１の他の構成要
素（例えば、それぞれ１つ以上のセンサ１０３ａ、アクチュエータ、モチベータ等）と結合された、電子制御装置（ＥＣＵ）または他の好適なプロセッサが挙げられる。移動プラットフォーム１０１は、信号線１０２を介してネットワーク１１１と結合されるほか、モデル化サーバ１２１、マップサーバ１３１、およびクライアントデバイス１１７の１つ以上との間でデータの送受信を行う。いくつかの実装において、移動プラットフォーム１０１は、ある場所から別の場所へ人もしくは物を輸送できる。移動プラットフォーム１０１の非限定的な例として、車両、自動車、バス、船、航空機、バイオインプラント、またはコンピュータ電子部品（例えば、プロセッサ、メモリ、または任意に組み合わせられた非一時的なコンピュータ電子部品）を備えた任意の他の移動プラットフォームが挙げられる。信号線１０４によって表されるように、ユーザ１１５は移動プラットフォーム１０１とインタラクトする。ユーザ１１５は、移動プラットフォーム１０１を操作する人間である。例えば、ユーザ１１５は、車両の運転者である。
【００４３】
移動プラットフォーム１０１は、１つ以上のセンサ１０３ａ、ＣＡＮ（Controller Area Network）データ記憶装置１０９、先進運転支援エンジン１０５ａ、またはナビゲーシ
ョンアプリケーションのインスタンス１０７ａを含む。図１には移動プラットフォーム１０１を１つしか描いていないが、システム１００は複数の移動プラットフォーム１０１を含みうる（例えば、路上で遭遇してもよい）。例えば、いくつかの実装において、複数の移動プラットフォーム１０１が互いに通信を行うことによってセンサ１０３が生成したセンサデータを共有してもよい。
【００４４】
ＣＡＮデータ記憶装置１０９は、ある所与の移動プラットフォーム１０１の各種構成要素間でＣＡＮを用いて通信される、さまざまな種類の車両動作データ（車両ＣＡＮデータともいう）を格納する手段である。これについては本明細書中で適宜説明するとおりである。いくつかの実装において、車両動作データは、移動プラットフォーム１０１の各種構成要素と結合される複数のセンサ１０３ａから収集され、それらの構成要素の動作状態のモニタリングに使用される。車両ＣＡＮデータの例として、変速機情報、速度、加速度、減速度、車輪速度（ＲＰＭ：１分間の回転数）、車輪スリップ、トラクションコントロール情報、ワイパ制御情報、ステアリング角、ブレーキ力等が挙げられるが、これらには限定されない。いくつかの実装において、車両動作データは、移動プラットフォーム１０１の現在位置を表す位置データ（例えばＧＰＳ座標）を含んでもよい。それ以外の標準的な車両動作データも想定される。いくつかの実装において、ＣＡＮデータ記憶装置１０９は、データを格納してデータへのアクセスを提供するデータストレージシステム（例えば、標準的なデータないしデータベース管理システム）の一部である。
【００４５】
センサ１０３ａ／１０３ｂ（本明細書では総称して１０３とも表記する）は、移動プラットフォーム１０１やクライアントデバイス１１７にとって好適な任意の種類のセンサを含む。センサ１０３は、移動プラットフォーム１０１の特性、その内部および外部の環境、またはユーザの行動を（例えば、直接的または間接的に）決定するのに好適な、任意の種類のセンサデータを収集するように構成される。センサ１０３の非限定的な例として、上述のような、各種光学センサ（ＣＣＤ、ＣＭＯＳ、２Ｄ、３Ｄ、ＬＩＤＡＲ（光検知測距）、カメラ等）、音感センサ、動き検出センサ、気圧計、高度計、熱電対、湿度センサ、赤外線センサ、レーダセンサ、その他の光センサ、ジャイロスコープ、加速度計、速度計、ステアリングセンサ、ブレーキセンサ、スイッチ、車両表示器センサ、ワイパセンサ、地理的位置センサ、送受信機、ソナーセンサ、超音波センサ、タッチセンサ、近接センサ、ＣＡＮデータに関係する任意のセンサ等が挙げられる。
【００４６】
センサ１０３は、移動プラットフォーム１０１の内部または外部環境の動画像および静止画像を含む画像を記録、使用可能な任意のフレームレートを用いてビデオストリームのフレームを記録、使用可能な任意の方法を用いて捕捉した動画像および静止画像を符号化
または処理、または、感知範囲内の周囲環境の画像を捕捉するように構成された、１つ以上の光学センサを含む。例えば、移動プラットフォーム１０１のコンテキストにおいて、センサ１０３ａは、移動プラットフォーム１０１の周りの環境（道路、沿道の構造物、建物、樹木、動的な路上物体（例えば、周囲の移動プラットフォーム１０１、歩行者、道路作業員等）、静的な路上物体（例えば、車線、交通標識、路面標識、ロードコーン、バリケード等）などを含む）を捕捉する。いくつかの実装において、センサ１０３は、移動プラットフォーム１０１の経路に対して任意の方向（前方、後方、側方、上方、下方、対向方向等）を感知するように搭載される。いくつかの実装において、１つ以上のセンサ１０３は多方向型（例えばＬＩＤＡＲ）である。
【００４７】
センサ１０３は、それに加えて、またはその代わりに、ユーザの動作（例えば、移動プラットフォーム１０１の内側を向いているか外側を向いているか）を含む動画像や静止画像を記録、使用可能な任意のフレームレートを用いてビデオストリームを記録、または、使用可能な任意の方法を用いて捕捉した動画像および静止画像を符号化または処理するように構成された、１つ以上の光学センサを含む。例えば、移動プラットフォーム１０１のコンテキストにおいて、センサ１０３は、ユーザによる移動プラットフォーム１０１の操作（例えば、前進、ブレーキ、左折、右折、左への車線変更、右への車線変更、Ｕターン、停止、急停止、滑りやすい道での制御不能等）を捕捉する。いくつかの実装において、センサ１０３は、ユーザのステアリング行動やブレーキ動作等を捕捉することによって、移動プラットフォーム１０１の動作を決定する。１つ以上の実装において、センサ１０３は、移動プラットフォーム１０１の動きとは直接関係のない、ユーザの行動および動作（例えば、ユーザの顔の表情、頭部の向き、手の位置、およびユーザによる移動プラットフォーム１０１の操作に影響しうるかどうかによらない他の動作）を捕捉する。さらに別の例として、画像データは、移動プラットフォーム１０１やユーザ１１５のある状況を反映する（例えば、ユーザの頭の動きをある時間にわたって一連の画像フレームにおいてモニタする等）。
【００４８】
また、オプションとして、センサ１０３は、車両情報を記録してそれを周囲の他の移動プラットフォーム１０１に送信し、上記周囲の他の移動プラットフォーム１０１、クライアントデバイス１１７、遠隔デバイスのセンサ１０３等から情報を受信するように構成された、１つ以上の信号受信器を含んでもよい。上記他の移動プラットフォーム１０１から受信した情報は、移動プラットフォーム１０１の他の構成要素（例えば、先進運転支援エンジン１０５）に、後続処理のために送信される。
【００４９】
移動プラットフォーム１０１、モデル化サーバ１２１、クライアントデバイス１１７のプロセッサ２１３（例えば、図２参照）は、センサ１０３からセンサデータを受信して処理する。移動プラットフォーム１０１のコンテキストにおいて、プロセッサ２１３は、移動プラットフォーム１０１（例えば、車両）内に実装される電子制御装置（ＥＣＵ）を含んでもよい。ただし、それ以外の移動プラットフォームタイプも想定される。ＥＣＵはセンサデータを車両動作データとして受信し、先進運転支援エンジン１０５がアクセスおよび検索できるようにＣＡＮデータ記憶装置１０９に格納する。いくつかの例において、車両動作データは（例えば、受信または処理時に車両のバスを介して、ＥＣＵを介して、等によって）先進運転支援エンジン１０５に直接提供される。他の好適な変形も可能であり、かかる変形も想定されている。さらに別の例として、１つ以上のセンサ１０３は、移動プラットフォーム１０１を操作するユーザ１１５の、時間的に変化する画像データを捕捉する。このとき、画像データは、移動プラットフォーム１０１を操作しながら次の行動を準備するときのユーザ１１５の動作（例えば、左を見る、右を見る、右足をアクセルからブレーキペダルに移す、ステアリングホイール上で両手を動かす）を示している。先進運転支援エンジン１０５は、センサ１０３からのセンサデータ（例えば、リアルタイムビデオストリームや一連の静止画像等）を、（例えば、バスやＥＣＵ経由等で）受信し、ユー
ザ１１５がこれから行うであろう行動を判定するために処理する。これについては本明細書において適宜さらに説明する。
【００５０】
モデル化サーバ１２１、移動プラットフォーム１０１、クライアントデバイス１１７は、先進運転支援エンジン１０５のインスタンス１０５ａ、１０５ｂ、および１０５ｃを含む。一部の構成において、先進運転支援エンジン１０５は、ネットワーク１１１内の異なる位置にある異なるデバイス間に分散されていてもよい。その場合、クライアントデバイス１１７、移動プラットフォーム１０１、モデル化サーバ１２１はそれぞれ先進運転支援エンジン１０５のインスタンスもしくは先進運転支援エンジン１０５のアスペクトを含む。例えば、先進運転支援エンジンの各インスタンス１０５ａ、１０５ｂ、および１０５ｃは、図２に示す下位構成要素（サブコンポーネント）、またはそれらの下位構成要素のさまざまな変形の１つ以上を含む。これについては以下にさらに詳細に説明している。一部の構成において、先進運転支援エンジン１０５は、例えば、図２に示す構成要素２３１および２３３を備えたアプリケーションである。
【００５１】
先進運転支援エンジン１０５は、センサ１０３からのセンサデータを受信もしくは検索して処理、センサデータのパターンを認識、または、予測される未来のユーザ行動を生成するためのコンピュータロジックを含む。または、さらにいくつかの実装では、運転者行動予測モデルを、ある具体的なユーザ１１５、移動プラットフォーム１０１、または環境に適合させるためのコンピュータロジックを含む。いくつかの実装において、先進運転支援エンジン１０５は、１つ以上のコンピュータ装置の１つ以上のプロセッサによって実行可能なソフトウェアを用いて、ハードウェア（次のものに限定されないが、例えば、ＦＰＧＡ（フィールドプログラマブルゲートアレイ）、ＡＳＩＣ（特定用途向け集積回路）等）を用いて、またはハードウェアとソフトウェアの組み合わせ等を用いて実現される。先進運転支援エンジン１０５については以下でより詳細に説明する。
【００５２】
ナビゲーションアプリケーション１０７（例えば、インスタンス１０７ａまたは１０７ｂ）は、例えば、ナビゲーションの指示をユーザ１１５に提供、情報を表示、または入力を受信するためのコンピュータロジックを含む。いくつかの実装において、ナビゲーションアプリケーション１０７は、１つ以上のコンピュータ装置の１つ以上のプロセッサによって実行可能なソフトウェアを用いて、ハードウェア（次のものに限定されないが、例えば、ＦＰＧＡ（フィールドプログラマブルゲートアレイ）、ＡＳＩＣ（特定用途向け集積回路）等）を用いて、またはハードウェアとソフトウェアの組み合わせ等を用いて実現されうる。
【００５３】
ナビゲーションアプリケーション１０７は、位置データ（例えば、ＧＰＳ、三角測量、セルラー三角測量等）を受信して、それを対応する計算装置およびセンサ１０３等に（例えば、センサデータとして）提供するように構成された、地理位置送受信機（例えば、ＧＰＳ送受信機、セルラー無線機、無線通信機等）等のセンサ１０３からのデータを利用する。例えば、移動プラットフォーム１０１やクライアントデバイス１１７は、かかる地理位置送受信機を搭載してもよく、ナビゲーションアプリケーション１０７の対応するインスタンスは、かかる送受信機からの位置データを受信して処理するように構成されてもよい。ナビゲーションアプリケーション１０７については以下でより詳細に説明する。
【００５４】
マップサーバ１３１は、プロセッサ、メモリ、およびネットワーク通信能力を有するハードウェアまたは仮想サーバを含む。いくつかの実装において、マップサーバ１３１は、モデル化サーバ１２１、移動プラットフォーム１０１、およびクライアントデバイス１１７の１つ以上との間でデータの送受信を行う。例えば、マップサーバ１３１は、地理空間的領域のマップを記述するデータを、先進運転支援エンジン１０５とナビゲーションアプリケーション１０７の１つ以上に送信する。マップサーバ１３１は信号線１１２を介して
ネットワーク１１１と通信可能に結合されている。いくつかの実装において、マップサーバ１３１は、マップデータベース１３２および関心地点（ＰＯＩ）データベース１３４を含む。
【００５５】
マップデータベース１３２は、１つ以上の地理的地域に関連するマップを記述するデータを格納する。このデータは、時間または他のセンサデータとリンクされるほか、センサデータとして使用ないし含有される。いくつかの実装において、マップデータは１つ以上の地理的地域を街路レベルで記述する。例えば、マップデータは、ある特定の道路に関連する１つ以上の車線を記述する情報を含む。より具体的には、マップデータは、道路の進行方向、道路の車線数、その道路からの出口および道路への入口、１つ以上の車線が特殊な状態にある（例えば、駐車可能車線である）かどうか、それらの車線における道路状況、それらの車線における交通または事故データ、それらの車線に関連する交通規制（例えば、車線区分線、路面標示、交通信号、交通標識等）等を記述する。いくつかの実装において、マップデータベース１３２は、データを格納してデータへのアクセスを提供するデータベース管理システム（ＤＢＭＳ）を含み、またはそのようなＤＢＭＳと関連してもよい。
【００５６】
関心地点（ＰＯＩ）データベース１３４は、関心地点を記述するデータをさまざまな地理的地域について格納する手段である。例えば、ＰＯＩデータベース１３４は、さまざまな道路区画沿いにある観光名所、ホテル、レストラン、ガソリンスタンド、スタジアム、ランドマーク等を記述するデータを格納する。いくつかの実装において、ＰＯＩデータベース１３４は、データを格納してデータへのアクセスを提供するデータベース管理システム（ＤＢＭＳ）を含む。
【００５７】
なお、図１に示すシステム１００は例示的システムの代表にすぎず、この他にも多様なシステム環境および構成が想定されるうえ、それらはいずれも本開示の範囲内にある。例えば、さまざまな作用や機能をモデル化サーバ１２１からクライアントデバイス１１７もしくは移動プラットフォーム１０１に移動してもよい。あるいは、データを１台のデータ記憶装置に集約してもよいし、追加的なデータ記憶装置にさらに分散させてもよい。いくつかの実装は、追加的な計算装置、サーバ、ネットワークを含んでもよく、あるいは含まれる計算装置、サーバ、ネットワークが記載のものより少なくてもよい。また、さまざまな機能をクライアント側に実装しても、サーバ側に実装してもよい。さらに、システムのさまざまな実体要素を１つの計算装置もしくはシステムに統合してもよいし、追加的な計算装置もしくはシステムに分割するなどしてもよい。
【００５８】
図２は、例示的な計算装置２００のブロック図である。これは、モデル化サーバ１２１、クライアントデバイス１１７、移動プラットフォーム１０１、またはマップサーバ１３１のアーキテクチャを表したものである。
【００５９】
図に示すように、計算装置２００は、１つ以上のプロセッサ２１３と、１つ以上のメモリ２１５と、１つ以上の通信ユニット２１７と、１つ以上の入力デバイス２１９と、１つ以上の出力デバイス２２１と、１つ以上のデータ記憶装置２２３と、を備えている。計算装置２００の構成要素は、バス２１０を介して通信可能に結合されている。計算装置２００がサーバ、クライアントデバイス１１７、または移動プラットフォーム１０１を表す実装形態において、計算装置２００は、１つ以上の先進運転支援エンジン１０５、１つ以上のセンサ１０３、１つ以上のナビゲーションアプリケーション１０７等を含む。
【００６０】
図２に示す計算装置２００は例示にすぎず、本開示の範囲を逸脱することなく他の形態を取ってもよく、また追加的な構成要素を含んでもよく、含まれる構成要素が図示のものより少なくてもよい。例えば、図示していないが、計算装置２００は、さまざまなオペレ
ーティングシステム、ソフトウェア、ハードウェアコンポーネント、および他の物理構成を含んでいてもよい。
【００６１】
計算装置２００が移動プラットフォーム１０１に含まれる、または組み込まれる実装形態において、計算装置２００は、移動プラットフォーム１０１のさまざまなプラットフォームコンポーネント（例えば、プラットフォームバス（例えば、図５Ｅに記載したＣＡＮ）、１つ以上のセンサ１０３（例えば、車載センサ、音響センサ、映像センサ、化学センサ、バイオメトリックセンサ、位置センサ（例えば、ＧＰＳ、コンパス、加速度計、ジャイロスコープ等）、スイッチ、およびコントローラ）、カメラ等、内燃機関、電気モータ、パワートレイン部品、サスペンション装置、計器類、空調機、移動プラットフォーム１０１の任意の他の電気的、機械的、構造的、および機械的部品）を含むか、これらの要素に結合されてもよい。これらの実装において、計算装置２００はＥＣＵ、ＥＣＭ、ＰＣＭ等を実現するか、それらに組み込まれるか、またはそれらを含んでもよい。さらに他の実装において、計算装置２００は、移動プラットフォーム１０１に組み込まれる組み込みシステムを含む。
【００６２】
プロセッサ２１３は、さまざまな入出力動作、論理演算、数学的演算を実行することによってソフトウェア命令を実行する手段である。プロセッサ２１３は、データ信号処理を行うさまざまな計算アーキテクチャを有する。これには例えば、ＣＩＳＣ（複雑命令セットコンピュータ）アーキテクチャ、ＲＩＳＣ（縮小命令セットコンピュータ）アーキテクチャ、または命令セットの組み合わせを実装するアーキテクチャが挙げられる。プロセッサ２１３は物理プロセッサまたは仮想プロセッサでありうる。また、シングルコアを含んでもいいし、複数の処理装置やコアを含んでもよい。いくつかの実装において、プロセッサ２１３は、電子表示信号を生成し、それを表示装置（図示せず）に提供すること、画像の表示をサポートすること、画像をキャプチャして送信すること、さまざまなタイプの特徴抽出およびサンプリングを含む複雑なタスクを実行すること、等が可能である。いくつかの実装において、プロセッサ２１３はバス２１０を介してメモリ２１５に結合され、それにより、メモリ２１５内部のデータおよび命令へのアクセス、ならびにメモリ２１５内部へのデータの格納を行う。バス２１０は、プロセッサ２１３を、計算装置２００の他の構成要素（例えば、メモリ２１５、通信ユニット２１７、センサ１０３、先進運転支援エンジン１０５、ナビゲーションアプリケーション１０７、入力デバイス２１９、出力デバイス２２１、データ記憶装置２２３を含む）に結合させる。
【００６３】
メモリ２１５は、データを格納するとともに、計算装置２００の他の構成要素に対してデータへのアクセスを提供する手段である。いくつかの実装において、メモリ２１５は、プロセッサ２１３によって実行される命令やデータを格納する。例えば、計算装置２００の構成に応じて、メモリ２１５は、先進運転支援エンジン１０５の１つ以上のインスタンス、またはナビゲーションアプリケーション１０７の１つ以上のインスタンスを格納する。メモリ２１５は、他の命令およびデータ（例えば、本明細書中に記載されるさまざまなデータ、オペレーティングシステム、ハードウェアドライバ、他のソフトウェアアプリケーション、データベース等）を格納することもできる。プロセッサ２１３および計算装置２００の他の構成要素と通信するため、メモリ２１５はバス２１０に結合される。
【００６４】
メモリ２１５は、コンピュータで使用可能（例えば、読み取り可能、書き込み可能等）な１つ以上の非一時的媒体を含む。その媒体は、プロセッサ２１３によって、もしくはプロセッサ２１３と関連して処理するための、命令、データ、コンピュータプログラム、ソフトウェア、コード、ルーチン等を含み、格納し、通信し、伝達し、または搬送する、任意の有形な非一時的な装置もしくはデバイスである。いくつかの実装において、メモリ２１５は、揮発性メモリおよび不揮発性メモリの１つ以上を含む。例えば、メモリ２１５は、ＤＲＡＭ（ダイナミックランダムアクセスメモリ）デバイス、ＳＲＡＭ（スタティック
ランダムアクセスメモリ）デバイス、ディスクリートメモリデバイス（例えば、ＰＲＯＭ、ＦＰＲＯＭ、ＲＯＭ）、ハードディスクドライブ、光ディスクドライブ（ＣＤ、ＤＶＤ、Ｂｌｕ−ｒａｙ（登録商標）ディスク等）の１つ以上を含みうるが、これらには限定されない。なお、メモリ２１５は単一のデバイスであってもいいし、複数種類のデバイスおよび構成を含んでいてもよい。
【００６５】
通信ユニット２１７は、無線または有線接続を用いて（例えば、ネットワーク１１１を介して）通信可能に結合された他の計算装置との間でデータを送受信する手段である。通信ユニット２１７は、データを送受信するために１つ以上の有線インタフェースまたはワイヤレス送受信機を備える。通信ユニット２１７は、ネットワーク１１１と結合されて他のコンピューティングノード（例えば、クライアントデバイス１１７、移動プラットフォーム１０１、サーバ１２１もしくは１３１等（構成によって異なる））と通信する。通信ユニット２１７は、上述したような標準的な通信方法を用いて他のコンピューティングノードとの間でデータを交換する。
【００６６】
バス２１０は、計算装置２００の構成要素間または計算装置間でデータを転送するための通信バス、ネットワーク１１１またはその一部を含むネットワークバスシステム、プロセッサメッシュ、その組み合わせ等を含む。いくつかの実装において、バス２１０は、ＩＳＡ（インダストリスタンダードアーキテクチャ）バス、ＰＣＩ（ペリフェラルコンポーネントインターコネクト）バス、ＵＳＢ（ユニバーサルシリアルバス）、または同様の機能を提供することが知られている他のバスを含む、１つ以上のバスを表す。それに加えて、またはその代わりに、計算装置２００のさまざまな構成要素は、バス２１０に関連して実装されるソフトウェア通信メカニズムを介して協調および通信する。ソフトウェア通信メカニズムは、例えば、プロセス間通信、ローカル関数もしくは手続きの呼び出し、リモート手続きの呼び出し、オブジェクトブローカ（例えば、ＣＯＲＢＡ）、ソフトウェアモジュール間の直接的なソケット通信（例えば、ＴＣＰ／ＩＰソケット）、ＵＤＰによるブロードキャストと受信、ＨＴＴＰ接続等を含むか、または促進する。さらに、任意の、もしくはすべての通信はセキュアにできる（例えば、ＳＳＨ、ＨＴＴＰＳ等）。
【００６７】
データ記憶装置２２３は、データを格納する非一時的な記憶媒体である。非一時的な記憶媒体の非限定的な例として、ＤＲＡＭ（ダイナミックランダムアクセスメモリ）デバイス、ＳＲＡＭ（スタティックランダムアクセスメモリ）デバイス、フラッシュメモリ、ハードディスクドライブ、フロッピーディスクドライブ、ディスク型メモリデバイス（例えば、ＣＤ、ＤＶＤ、Ｂｌｕ−ｒａｙ（登録商標）ディスク等）、フラッシュメモリデバイス、または何らかの既知の有形かつ揮発性もしくは不揮発性の記憶装置が挙げられる。データ記憶装置２２３は、図２に示す計算装置２００の具体的な構成に応じて、ＣＡＮデータ記憶装置１０９、認識データ記憶装置１２３、ＰＯＩデータベース１３４、およびマップデータベース１３２の１つ以上を表すが、他のタイプのデータ記憶装置も可能であり、かかるタイプのものも想定されている。
【００６８】
データ記憶装置２２３は、計算装置２００の１つ以上のメモリ２１５内に含まれてもよく、もしくは計算装置２００によってアクセス可能な、別の計算装置またはストレージシステム内に含まれてもよい。いくつかの実装において、データ記憶装置２２３は、モデル化サーバ１２１、マップサーバ１３１、移動プラットフォーム１０１、クライアントデバイス１１７によって操作可能なＤＢＭＳに関連するデータを格納する。例えば、ＤＢＭＳは、ＳＱＬ（Structured Query Language）に対応したＤＢＭＳ、ＮｏＳＱＬ型のＤＭＢ
Ｓ、等を含むことが可能である。いくつかの例において、ＤＢＭＳは、行と列で構成される多次元テーブルの形態でデータを格納し、プログラム操作を用いてデータ行の操作（例えば、挿入、クエリ、更新、削除）を行う。
【００６９】
入力デバイス２１９は、ユーザ１１５もしくは他のデバイスからの多様な制御入力（例えば、ジェスチャ、音声指示）を受信するように構成された、任意の標準的デバイスである。入力デバイス２１９の非限定的な例として、テキスト情報の入力、選択の指定、およびユーザ１１５とのインタラクトを行うタッチスクリーン（例えば、ＬＥＤベースのディスプレイ）、動き検出入力デバイス、オーディオ入力デバイス、他のタッチ型入力デバイス、キーボード、ポインティングデバイス、インジケータ、ユーザ１１５もしくは上記の他のデバイスとの通信やインタラクションを促進する、任意の他の入力構成要素が挙げられる。入力デバイス２１９は、ユーザ１１５またはセンサ１０３から受信される入力ないし信号を中継するために、直接もしくは仲介コントローラを介して、計算装置２００と結合される。
【００７０】
出力デバイス２２１は、ユーザ１１５もしくは他のデバイスに情報を出力もしくは表示するように構成された、任意の標準的デバイスである。出力デバイス２２１の非限定的な例として、ナビゲーション情報をユーザ１１５に表示するタッチスクリーン（例えば、ＬＥＤベースのディスプレイ）、音声情報をユーザ１１５に届けるオーディオ再生装置（例えば、スピーカ）、テキスト情報ないしグラフィック情報をユーザ１１５に提示する表示装置ないしモニタ等、が挙げられる。出力される情報は、テキスト、グラフィック、触覚的、音声、動画、およびユーザ１１５もしくは上記の他のデバイスによって理解される他の情報であってもよいし、あるいは、移動プラットフォーム１０１または他の計算装置のオペレーティングシステムによって読み取り可能なデータ、ロジック、プログラミングであってもよい。出力デバイス２２１は、直接もしくは仲介コントローラを介して計算装置２００と結合される。いくつかの実装において、移動プラットフォーム１０１の設定または制御を調整するためにユーザ１１５がインタラクトするコントロールパネル（例えば、運転者用制御装置、インフォテインメント制御装置、ガイダンス制御装置、安全制御装置等）内に、一群の出力デバイス２２１が設けられる。あるいは、一群の出力デバイス２２１が上記コントロールパネルを形成する。
【００７１】
いくつかの実装において、計算装置２００は先進運転支援エンジン１０５を含む。先進運転支援エンジン１０５は、例えば、予測エンジン２３１およびモデル適合化エンジン２３３を含む。先進運転支援エンジン１０５またはその構成要素は、ソフトウェア、ハードウェア、または両者の組み合わせとして実現することができる。いくつかの実装において、予測エンジン２３１とモデル適合化エンジン２３３とは、バス２１０またはプロセッサ２１３によって互いに、または計算装置２００の他の構成要素と通信可能に結合される。いくつかの実装において、構成要素２３１と２３３との１つ以上は、プロセッサ２１３によって実行可能な命令群である。さらに他の実装において、構成要素２３１と２３３との１つ以上はメモリ２１５内に格納可能であり、プロセッサ２１３によってアクセスおよび実行可能である。上記実装のいずれにおいても、これらの構成要素２３１と２３３とは、プロセッサ２１３および計算装置２００の他の構成要素と協調および通信するように適合される。
【００７２】
予測エンジン２３１は、センサデータを処理して、未来の行動（例えば、移動プラットフォーム１０１に関する未来の運転者行動）を予測するためのコンピュータロジックを含む。いくつかの実装において、予測エンジン２３１は、ユーザの未来の行動の予測に用いる特徴をセンサデータから抽出する。ユーザの未来の行動の予測は、例えば、抽出された特徴を運転者行動予測モデルに入力することによって行う。
【００７３】
いくつかの実装において、予測エンジン２３１は、移動プラットフォーム１０１の環境（例えば、車両の内部または外部）、運転者の行動、付近の他の移動プラットフォーム１０１、インフラ設備等に関係するセンサデータを、センサ１０３から受信する。予測エンジン２３１は、受信したセンサデータを分析するとともに、センサデータのノイズや不要
情報を除去する。いくつかの実装において、センサ１０３によって受信されるセンサデータは、異なる特徴やフォーマットを含む。予測エンジン２３１はさまざまな特徴をフィルタリングして、またはそれら異なるフォーマットを規格化して、運転者行動予測モデルの適合に用いる。
【００７４】
予測エンジン２３１は、センサデータから特徴を抽出するためのコンピュータロジックを含む。いくつかの実装において、予測エンジン２３１は、ユーザ行動を独立して認識または予測するために使用できる特徴を抽出する。いくつかの実装において、予測エンジン２３１は、センサ１０３から直接受信したセンサデータから特徴を抽出する。
【００７５】
モデル適合化エンジン２３３が運転者行動を認識してもよいが、いくつかの実装において、これらの動作は予測エンジン２３１によって実行されてもよい。例えば、予測エンジン２３１は、上記に加えて、または上記の代わりに、センサデータや特徴に基づいて行動を認識するためのコンピュータロジックを含む。いくつかの実装において、予測エンジン２３１は、抽出された特徴またはセンサデータからユーザ行動を認識もしくは検出する、アルゴリズム用モデルコンポーネントを含む。例えば、予測エンジン２３１は、ユーザ行動を記述するラベルを、センサデータに基づいて（例えば、コンピュータ学習モデルや、分類器に結合された手動ラベリング要素等を用いて）生成する。
【００７６】
予測エンジン２３１は、センサデータまたは特徴に基づいて行動を予測するためのコンピュータロジックを含む。いくつかの実装において、予測エンジン２３１は、ユーザ行動を予測するために、抽出された特徴を基に運転者行動予測モデル（例えば、本明細書に適宜さらに詳細に説明するようなもの）を稼働させる。例えば、いくつかの例において、予測エンジン２３１は、特徴を（例えば、リアルタイムで、ほぼリアルタイムで等）受信するときに、予測目的で抽出した特徴を基に運転者行動予測モデルを稼働させることによって、未来の運転者行動を継続的に予測する。
【００７７】
予測エンジン２３１は、バス２１０を介してプロセッサ２１３、メモリ２１５、または計算装置２００の他の構成要素と協調および通信するように適合される。いくつかの実装において、予測エンジン２３１は、データ（例えば、抽出された特徴）をデータ記憶装置２２３に格納し、または特徴を先進運転支援エンジン１０５の他の構成要素の１つ以上に送信する。例えば、予測エンジン２３１は、特徴、または予測される運転者行動、ラベル、またはターゲットを出力するためにモデル適合化エンジン２３３に結合される。それにより、例えば、モデル適合化エンジン２３３が運転者行動予測モデルを更新できるようにする。
【００７８】
モデル適合化エンジン２３３は、運転者行動を認識するように、トレーニング事例を生成する、または、運転者行動予測モデルをローカルデータに基づいて更新するためのコンピュータロジックを含む。いくつかの実装において、ローカルデータは、ユーザ１１５、または当該移動プラットフォーム１０１もしくは他の移動プラットフォーム１０１に関してユーザが動作している状況または他の類似の状況、に関するセンサデータ、抽出された特徴、および運転者行動予測を含む。
【００７９】
いくつかの実装において、モデル適合化エンジン２３３は、運転者行動を（例えば、センサデータに基づいて）認識するように構成される。例えば、モデル適合化エンジン２３３は、センサデータや特徴に基づいて行動を認識するためのコンピュータロジックを含む。いくつかの実装において、モデル適合化エンジン２３３は、抽出された特徴またはセンサデータからユーザ行動を認識もしくは検出する、アルゴリズム用モデルコンポーネントを含む。例えば、モデル適合化エンジン２３３は、ユーザ行動を記述するラベルを、センサデータに基づいて、（例えば、コンピュータ学習モデルや、分類器に結合された手動ラ
ベリング要素等を用いて）生成する。
【００８０】
いくつかの実装において、モデル適合化エンジン２３３は、例えば、運転者行動予測モデルやその重みをトレーニングするためのコンピュータロジックを含む。いくつかの実装において、モデル適合化エンジン２３３は、トレーニング事例を生成する（例えば、予測目的で抽出した特徴と実際に認識された行動ラベルとを組み合わせることによって行う）ために、トレーニングアルゴリズムを実行する。次に、このトレーニング事例を用いて運転者行動予測モデルを更新する。これについては本明細書に適宜さらに詳細に説明する。
【００８１】
図３Ａは、先進運転支援エンジン１０５の実使用例のブロック図３００である。順応性に優れた先進運転支援エンジン１０５を用いることで精度および再現性が改善される。これは、ラベリングした（運転者行動の）結果を用いて運転者行動を経時的に検出／認識することを含む処理を実行し、それによって、運転者行動予測モデルをある具体的なユーザについて更新することによって実現される。図３Ａおよび図３Ｂに示す例は、本明細書に記載する技法のいくつかの実装によれば、上記処理の少なくとも一部を並列に実行することができ、それによって、受信データのラベリングおよびそれを用いたモデルの改良が、例えば、ユーザの運転中に、運転の終了時（駐車中、駐車時）に、予測される未来の走行前等に、可能であることを示している。
【００８２】
先進運転支援エンジン１０５は、移動プラットフォーム１０１の運転者モニタ能力に部分的に基づいて自己カスタマイズを行う。バックグラウンドが自動車である場合、このモニタ能力の例として、ブレーキペダルとアクセルの圧力、ステアリングホイール角、ＧＰＳ位置履歴、視線追跡、運転者に向けたカメラ、さらには本明細書に記載する任意の他のセンサデータが挙げられるが、これらには限定されない。また、自動車以外のバックグラウンド（例えば、航空機、船舶、列車、操作者によって動かされる他のプラットフォーム）においては、操作挙動を反映する他のセンサデータも可能であり、かかるデータも想定されていることを理解するべきである。
【００８３】
運転者、移動プラットフォーム１０１、および運転者ないし移動プラットフォーム１０１の環境に関するこの豊富なセンサデータを先進運転支援エンジン１０５が使用することで、運転者行動をリアルタイムで認識可能に、または、さらなるセンサデータと同期できるようにする。上記センサデータの例として、例えば、外部環境を感知するセンサ１０３（例えば、カメラ、ＬＩＤＡＲ、レーダ等）からのもの、ネットワークセンサからのもの（ネットワーク１１１の他のノードからＶ２Ｖ、Ｖ２Ｉインタフェース検知通信を経由するもの）、等が挙げられる。多様なセンサデータが先進運転支援エンジン１０５によって使用されることで、リアルタイムのトレーニングデータ収集を行い、運転者行動予測モデルをある具体的な運転者に対してトレーニングすることが可能になる。また、これにより、具体的な運転者の行動を予測するように運転者行動予測モデルを適合化ないしカスタマイズすることができる。
【００８４】
さらに別の例として、ブロック図３００は、先進運転支援エンジン１０５が移動プラットフォーム１０１（例えば車両３０３）に関連するセンサ１０３（図示せず）からセンサデータ３０１を受信できることを示している。センサデータ３０１は、環境センシングデータ、車内センシングデータ、ネットワークセンサデータ等を含みうる。例えば、環境センシングデータは、カメラ（例えば外部に向けたもの）、ＬＩＤＡＲ、レーダ、ＧＰＳ等によるデータを含みうる。また、車内センシングデータは、カメラ（例えば内部に向けたもの）、マイクロフォン、ＣＡＮバスによるデータ（例えば、本明細書に適宜記載されるようなもの）等を含みうる。また、ネットワークセンサデータは、Ｖ２Ｖセンシング（例えば、ある車両から別の車両に提供されるセンサデータ）、Ｖ２Ｉセンシング（例えば、道路センサや交通センサ等のインフラ設備によって提供されるセンサデータ）等を含みう
る。
【００８５】
次に、先進運転支援エンジン１０５は、センサデータ３０１を用いて運転者行動の予測または運転者行動予測モデルの適合化を行う。これについては、例えば図３Ｂおよび図４を参照して本明細書で適宜さらに詳細に説明するとおりである。いくつかの実装において、動作（例えば、自動ステアリング、ブレーキ、信号発信等）または警告（例えば、運転者向けのアラーム）を提供するために、予測される未来の運転者行動が、車両３０３の他のシステムに送信される。予測される未来の運転者行動は、さらに、差し迫った予測される運転者行動を近隣の車両またはインフラ設備に通知するために、それらのノードに送信される。また、さらに上記車両の予測システム（例えば、先進運転支援エンジン１０５のインスタンス）またはインフラ設備により、対策を講じるように処理されてもよい。対策の例として、例えば、方向をそらす、もしくは変えるように上記システムのステアリングを制御する、街路照明を変更する、車両を他の経路に導く、視覚的、触覚的、または音声による通知を提供すること等が挙げられる。
【００８６】
図３Ｂは、先進運転支援エンジン１０５を用いてモデルを更新する例示的な実装のブロック図である。このブロック図は、運転者行動予測モデル（例えば、ニューラルネットワークに基づく機械学習アルゴリズム）を、ある具体的な車両３０３および／または運転者について収集したローカルデータを用いてカスタマイズする処理を表す。この適合処理は運転者行動予測と並列実行されてもよい。
【００８７】
図３Ｂに示すように、いくつかの実装において、先進運転支援エンジン１０５は、運転者行動予測処理３２１およびモデル適合処理３２３を行う。いくつかの例において、運転者行動予測処理３２１（予測エンジン２３１によって実行される）は、ステップ３２５において特徴を抽出する工程と、ステップ３３１において運転者行動を予測する工程とを含む。いくつかの例において、モデル適合処理３２３（モデル適合化エンジン２３３によって実行される）は、ステップ３２７において運転者行動を検出する（例えば、発見して認識する）工程と、ステップ３２９においてトレーニング事例を生成する工程と、ステップ３３３において運転者行動予測モデルを更新する工程と、を含む。
【００８８】
図３Ｂに示す例では、先進運転支援エンジン１０５は、格納されたセンサデータ（例えば、メモリ内にキャッシュもしくは格納されたセンサデータ）を受信もしくは検索し、ステップ３２５において、センサデータから特徴を抽出する。ステップ３３１において、先進運転支援エンジン１０５は、１つ以上の運転者行動を、運転者行動予測モデルを用いて予測する。例えば、適合化がまったく行われていない場合、運転者行動予測モデルは、機械学習に基づく基礎運転者行動予測モデルとなる。ここで「基礎」というのは、一般的な運転者挙動を特定するために、多様な移動プラットフォーム１０１から収集されたセンサデータ群を用いてモデルが事前トレーニングされたことを意味する。いくつかの例において、基礎モデルは、販売前もしくは運転者に提供される前にベンダの施設（工場）においてトレーニングされる。
すなわち、基礎運転者行動予測モデルは、一般の運転者集団に適合するよう構成された、デフォルトの運転者行動予測モデルである。
【００８９】
ステップ３２７において、先進運転支援エンジン１０５は、運転者行動を検出／認識する。車両３０３の運転は、ヒューマンマシンインタラクションのなかでもユーザの行動が観察可能な特殊なケースである。なぜなら、運転において、ユーザが機械に強く関与するからである。運転者および移動プラットフォームの特性を反映するセンサデータは、ユーザの動作内容ならびにユーザがその行動を行っている時間を高精度かつ正確に反映することができる。本明細書において適宜より詳細に説明するように、運転者行動を認識する方法は、センシングへの閾値の適用、ロジスティック回帰、ＳＶＭ（サポートベクターマシ
ン）、浅い多層パーセプトロン、畳み込みニューラルネットワーク等を含む。上記の認識モデルは、対象の運転者行動に関係する任意のセンサデータを取り込む。それが移動プラットフォーム１０１／車両３０３のセンサ１０３からのものか、あるいはリモートセンサからのものかは問わない。例えば、対象の運転者行動は、車両３０３の内部または外部にセンサを設けることによって認識することができる。例えば、センサデータは、Ｖ２ＶまたはＶ２Ｉ通信を介して取得できる。センサデータの取得方法にかかわらず、先進運転支援エンジン１０５は、基礎となるユーザ行動を（いくつかの例ではリアルタイムで）検出する。
【００９０】
ステップ３２９において、先進運転支援エンジン１０５は、予測目的で抽出した特徴と、実際に認識された運転者行動と、を用いてトレーニング事例を生成する。いくつかの実装において、（例えば、ステップ３２７において）行動が検出されると、認識された行動（例えば、行動のラベル）が、事例のトレーニングを行うために次のノードに送られ、抽出された特徴とともに使用される。例えば、先進運転支援エンジン１０５は、認識された運転者行動から得られるラベリングされた行動を、ある所与の期間（例えば、直前のＮ秒／ただし、Ｎは運転者行動予測をトレーニングするのに適切な時間）にわたって収集された特徴ベクトル（例えば、特徴、行動、データ等はベクトルとして表現できる）と同期する。
すなわち、同期とは、抽出された特徴と、実際に行われた運転者行動（当然、時間差がある）とを関連付ける処理である。
【００９１】
先進運転支援エンジン１０５は、ラベリングした行動がモデルの更新にとって有用かどうかの決定を行い、さらに、ラベリングしたデータを運転者行動予測モデルの更新処理において利用可能にする。トレーニングに新規データを追加するべきかどうかの判定は、過剰な当てはめ（オーバーフィッティング）にも対処しうる。例えば、運転者行動予測モデルのトレーニングを、ほとんど１種類の運転（例えば、日々の通勤）しか関係しないデータを基に行うと、運転者行動予測モデルは、その種の運転中については高精度で正確な（例えば、許容される信頼度（例えば、９０％、９５％、９９．９％等）の範囲内の）予測を生成できるようになる。しかし、他の運転シナリオ（例えば、長距離移動）では信頼度が低下する。したがって、管理者による設定もしくはユーザ設定によって、例えば、先進運転支援エンジン１０５は、一部のデータ点（例えば、以前の反復によってすでに十分よく表現されているもの、または運転者行動予測モデルによってすでにカバーされているもの）を廃棄するように構成してもよい。ただし、学習の最適化には他のやり方（例えば、全データ点を使用する、データ点の各種サブセットを使用する、等）も可能であり、本明細書ではそれも想定されている。
【００９２】
ステップ３３３では、先進運転支援エンジン１０５は、運転者行動予測ネットワークモデルをローカルデータ（例えば、運転者、車両、または環境ごとに異なるデータ）によって更新（トレーニングともいう）する。これについては本明細書で適宜説明している。いくつかの実装において、個人化されていない運転者行動予測モデルを先進運転支援エンジン１０５に最初にロードした後、モデルをある具体的なユーザ、車両３０３、または環境等に適合させるようにしてもよい。例えば、本明細書に記載する技術の利点のひとつは、以前から存在するモデルを適合化できるため、先進運転支援エンジン１０５が事前トレーニングした基礎モデルに対して動作すること、ならびに（例えば、完全に入れ替えるのではなく）適合化や改良も行われることである。
【００９３】
運転者行動予測モデルの更新に関する判定処理は、実際の実装次第で簡単にも複雑にもなる。例として次のものが挙げられる。
・ラベリングしたデータ点の一部または全部（例えば、上述した、抽出された特徴や検出された運転者行動）またはある部類に属するデータ点を用いた、運転者行動予測モデルの
更新
・生（ｌｉｖｅ）の運転者行動予測モデル結果とラベリングされた実際のデータとの比較（例えば、破線で示したもの）
・既存データセットにおけるその唯一性に基づく新規データベースの有益性の推定、ならびに唯一性の値が低い、ある閾値量のラベリングされたデータの廃棄等
【００９４】
ラベリングされたデータ（例えば、上述したステップ３２７における運転者行動認識処理の出力）は、適合（改善、更新等）された運転者行動予測モデルのトレーニングにおいて有用である。いくつかの実装では、ニューラルネットワークのトレーニングを、学習に勾配降下法を用いる逆伝播法を用いて実施する。いくつかの例では、大規模なデータセットの処理に対しても、モデルを段階的に更新する場合と同一のアルゴリズムを使用する。したがって、新しいデータを受信したときにモデルを最初からトレーニングし直すのではなく、例えば、データを（例えば、バッチ等の処理で）繰り返し受信しながら段階的に更新することができ、または、１種類以上のセンサデータタイプに基づいて更新することによってある種の結果をより正確にトレーニングする。
【００９５】
図４は、運転者行動予測モデルを個別に適合化する例示的方法４００のフローチャートである。方法４００は、先進運転支援エンジン１０５の使用に関する上記の記載にさらに付け加えられる、本開示の手法による、運転者行動の予測およびローカルデータを用いた運転者行動予測モデルの適合化を行うための詳細および例を含む。
【００９６】
ステップ４０１において、先進運転支援エンジン１０５は、複数の車両システムセンサ１０３からのローカルセンサデータを、運転者による車両（例えば、移動プラットフォーム１０１）の運転中に収集する。いくつかの実装において、ローカルセンサデータを収集する工程は、車両を取り巻く周囲環境の局所条件を反映する、１つ以上の他の近隣の車両からの局所的データを受信する工程を含んでもよい。局所的データは、例えば、車両そのものから、他の車両からＶ２Ｖ通信を経て、他の車両から、インフラ設備からＶ２Ｉ通信を経て受信される、運転者の行動、車両、環境等に関するセンサデータを含んでいてもよい。
【００９７】
ステップ４０３において、先進運転支援エンジン１０５は、車両運転中に、運転者行動を、ローカルセンサデータを用いて検出する。運転者行動を検出する工程は、センサデータに基づいて１つ以上の運転者行動を認識する工程と、いくつかの例では、運転者行動をラベリングするためにローカルセンサデータを使用する工程と、を含んでもよい。本明細書に記載する技術によると、運転者の行動を行動の発生後に認識する方法にはいくつかの可能性がある。その例として、センシングへの閾値の適用、ロジスティック回帰の使用、ＳＶＭ（サポートベクターマシン）、浅い多層パーセプトロン、畳み込みニューラルネットワーク等が挙げられる。
【００９８】
例えば、運転者の行動を認識するいくつかの例示的な実装は、ブレーキ圧データのフィルタリングと量子化とによるブレーキ動作の認識、アクセル圧データに基づく加速動作の認識、ならびにウインカー、ステアリング角、および道路湾曲データの組み合わせに対してロジスティック回帰を行うことによる、合流・方向転換データの認識などを含む。
【００９９】
いくつかの実装において、行動の認識のためにモデルに与えられる入力は、運転者の関心行動に直接関係するあらゆるセンサデータを含む。例えば、ローカルセンサデータは、次に示すものの１つ以上を含む。
・車両の室内に備わるセンサからの内部センサデータ
・車両の室外に備わるセンサからの外部センサデータ
・近隣の車両および道路インフラ装置の１つ以上からネットワーク通信経由で送信される
センサデータ
・運転者によるブレーキ動作を記述するブレーキデータ
・運転者によるステアリング操作を記述するステアリングデータ
・運転者による方向転換動作を記述するウインカーデータ
・運転者による加速動作を記述する加速度データ
・運転者によるコントロールパネル操作を記述するコントロールパネルデータ
・Ｖ２Ｖデータ
・Ｖ２Ｉデータ
なお、上記以外のタイプのローカルセンサデータも可能であり、かかるデータも想定されている。また上記のように、ローカルセンサデータは、他の車両またはインフラ設備から（例えば、Ｖ２ＶまたはＶ２Ｉ通信を介して）取得される場合もある。
【０１００】
ステップ４０５において、先進運転支援エンジン１０５は、運転者行動の予測に関係する特徴を、車両運転中にローカルセンサデータから抽出する。いくつかの実装において、運転者行動の予測に関係する特徴をローカルセンサデータから抽出する工程は、抽出された特徴を含む１つ以上の特徴ベクトルを生成する工程を含む。例えば、センサデータは、行動の予測に関係する特徴を抽出するように処理される（例えば、周囲環境における他の車両の位置および速度は、運転者がブレーキペダルを踏み込む尤もらしさを推定するのに有用である）。また、かかる特徴は同期され、運転者行動予測モデルに転送されるベクトルとして収集される（例えば、ニューラルネットワークに基づく運転者行動予測モデルは、１つ以上の多層ニューラルネットワーク、ディープな畳み込みニューラルネットワーク、および再帰型ニューラルネットワークを含む）。いくつかの例において、先進運転支援エンジン１０５は運転者行動予測期間を決定し、このとき上記の特徴は、その運転者行動予測期間にわたってローカルセンサデータから抽出される。
【０１０１】
ステップ４０７において、先進運転支援エンジン１０５は、機械学習に基づく基礎運転者行動予測モデルを、（いくつかの例では車両運転中に）抽出された特徴と検出された運転者行動との１つ以上を用いて、機械学習に基づくカスタマイズ運転者行動予測モデルに適合させる。例えば、機械学習に基づく基礎運転者行動予測モデルは、一般化した運転者集団に適用できるように構成された汎用モデルを用いて最初に（例えば工場出荷時に）生成される。
【０１０２】
いくつかの実装において、機械学習に基づく基礎運転者行動予測モデルを適合させる工程は、機械学習に基づく基礎運転者行動予測モデルを、局所的データを用いてトレーニングする工程を含む。例えば、機械学習に基づく基礎運転者行動予測モデルをトレーニングする工程は、機械学習に基づく基礎運転者行動予測モデルを、新たに受信するローカルセンサデータ群を用いて周期的に更新する工程を含む。
【０１０３】
いくつかの実装において、機械学習に基づく基礎運転者行動予測モデルを、抽出された特徴と検出された運転者行動との１つ以上を用いて、機械学習に基づくカスタマイズ運転者行動予測モデルに適合させる工程は、トレーニング事例を生成する工程と、生成されたトレーニング事例を用いてモデルを更新する工程と、を含む。
【０１０４】
いくつかの実装において、トレーニング事例を生成する工程は、ラベリングした運転者行動を１つ以上の特徴ベクトルと同期する工程を含む。例えば、ラベリングした運転者行動を１つ以上の特徴と同期する工程は、１つ以上の特徴ベクトルの特徴をラベリングする工程と、上記１つ以上の特徴ベクトルに含まれる特徴のうちのどれを、機械学習に基づく運転者行動予測モデルの適合化に用いるかを決定する工程と、を含む。ラベリングした行動を抽出された特徴と同期する工程に関するさらなる詳細については、本明細書において適宜説明している。
なお、運転者行動予測モデルの適合化において、特徴ベクトルに含まれるどの特徴を利用するかを、関連付いている運転者行動に基づいて決定してもよい。
【０１０５】
いくつかの実装において、機械学習に基づく基礎運転者行動予測モデルを更新する工程は、モデルを最初にトレーニングしたときと同じ方法を用いて運転者行動予測モデルをトレーニングもしくは再トレーニングする工程を含む。例えば、すでに存在する、ないしすでにトレーニングしたモデル（例えば、機械学習に基づく基礎運転者行動予測モデル）を更新する工程により、複数の運転者に関わる巨大なトレーニングデータセットを用いてトレーニングした可能性のある、汎用の、個人化されていない運転者行動予測モデルを、先進運転支援エンジン１０５に最初にロードすることが可能になる。例えば、新しい運転者が車両を所有したのち、その運転者の行動に関するローカルセンサデータを認識し、以前にトレーニングされた既存のモデルを、そのローカルセンサデータを用いて更新する。したがって、一般化された、（多くの運転者タイプに）広く適用可能なデータセットからの学習を行ってもモデルの複雑さは維持しうるが、モデルは、ある特定の運転者または運転条件群（例えば、当該運転者が一般に車両を操作する、地理的エリアや運転特性等）に対して特に優れた性能を発揮するように適合される。
【０１０６】
いくつかの実装において、運転者行動予測モデルは、ある特定の条件群もしくはある特定の運転者について更新される。例えば、車両運転者行動予測モデルは、他の車両において観察される行動を基に更新できるだろう。例えば、ある運転者Ｘが車を２台所有している場合、Ｘ氏のカスタマイズ運転者行動予測モデルをこの２台の車で共有してもよい（例えば、１台目の車における運転者Ｘの行動を２台目の車が直接感知する必要はない）。いくつかの実装において、カスタマイズ運転者行動予測モデルは、上記のように、Ｘ氏（例えば、プロフィール等）にリンクされ、それにより、この２台の車はＸ氏のデータを（例えば、ローカルなＶ２Ｖ通信や中央サーバへの接続等を介して）共有することができる。
【０１０７】
上記の説明を続けると、運転者行動予測モデルは、具体的な運転者とは別の条件に基づいて適合させることができる。例えば、Ｘ氏が新しい町に転居することになった場合、モデルは前の町の周辺におけるＸ氏の挙動を非常に的確に予測できるようになっているが、新しい町のみに関わる情報はそのモデルにおいて限られるか、またはかかる情報がそのモデルにはまったく存在しない。したがって、いくつかの実装において、先進運転支援エンジン１０５が中央データベース（例えば、自動車メーカのもの）と通信し、それにより、新しい町における運転者行動予測の新しいトレーニング事例を、運転者Ｘの車両の先進運転支援エンジン１０５にダウンロードし、それを用いてローカルの運転者行動予測モデルを更新することができる。このとき、運転者Ｘのみに関わるトレーニング情報を完全に入れ替える、または除去する必要はない。
【０１０８】
ステップ４０９において、先進運転支援エンジン１０５は、機械学習に基づくカスタマイズ運転者行動予測モデルと抽出された特徴（上記の抽出された特徴か、それ以後のある時点に抽出された別の一群の特徴かは問わない）とを用いて運転者行動を予測する。例えば、抽出された特徴は、現在のセンサデータに由来する現在の一群の特徴（例えば、現在の一群の特徴は、現在移動中の車両を記述しうる）を含む。それらの特徴は、機械学習に基づくカスタマイズ運転者行動予測モデルに供給される。
【０１０９】
図５Ａ〜図５Ｅに、センサデータのさまざまな例を示す。図５Ａは、特に、移動プラットフォーム１０１の外部センサによって捕捉されて提供される例示的な画像データの図５００である。図示した画像データは、移動プラットフォーム１０１のさまざまな外部環境を含んでいる。図示した例において、移動プラットフォーム１０１（車両５０２）は、片側２車線の４車線道路を北に向かって移動している。車両５０２の前方の道路状況をモニタするために、車両５０２にセンサ１０３（例えば、正面を向いた画像センサ）が搭載さ
れている。また、車両５０２が交差点５０８に近づく瞬間に画像データ（グレーの四角５０４で示したもの）がキャプチャされる。この画像データは、その瞬間における車両５０２の正面の道路交通データ（例えば、交差点内を東に走行中の別の車両５０６を描いた一連のフレーム）を含む。
【０１１０】
図５Ｂは、時間変化する画像データであって、移動プラットフォーム１０１の内側または外側の環境をモニタするために使用される画像データのさらなる例を示す図５２０である。画像データは、異なる時間に撮影された一連の画像を含む。例えば、画像５２２と５２４によって示される画像は、車両内部の運転者の頭部５２６の動きをモニタするために異なる時間に続けて撮影された２枚の画像をそれぞれ表している。画像５２２と５２４の違いは、運転者が頭部を左に回していることを示している。別の例として、画像５３２と５３４は、車両外部の交通信号をモニタするために異なる時間に続けて撮影された２枚の画像をそれぞれ表している。画像５３２と５３４の違いは、信号機５３６がちょうど緑（画像５３２）から赤（画像５３４）に変わったところであることを示している。
【０１１１】
図５Ｃは例示的なセンサデータを示す。このセンサデータは、センサデータ処理部２５１が位置情報装置（例えば、ＧＰＳまたは他の好適な地理位置情報ユニット）から受信するナビゲーションデータを含む。いくつかの実装において、ナビゲーションアプリケーション１０７は、ナビゲーションの指示を運転者に提示するように位置情報装置によって操作されるが、ナビゲーションアプリケーション１０７の他の変形も可能であり、かかる変形も想定されている。これについては本明細書中で適宜説明しているとおりである。
【０１１２】
図５Ｃのグレーの四角５５２の内側に示すように、ナビゲーションデータは、移動プラットフォーム１０１の過去、現在、および未来の位置に関する情報を含む。例えば、ナビゲーションデータは、移動プラットフォーム１０１の現在の状態に関する情報（例えば、速度、方向、現在の道路等）を含む。符号５５４、５５６、５５７、および５６０に示すように、ナビゲーションデータは、地図上のナビゲーション経路、予定目的地、どこをどう曲がるかの指示等に基づく、移動プラットフォーム１０１の未来の位置をも含む。それに加えて、またはその代わりに、ナビゲーションデータはマップデータ、音声データ、および本明細書中で適宜説明している他のデータを含んでもよい。図５Ｄは、ユーザ１１５に対してどこをどう曲がるかを指示する例である。これは、ユーザに対して表示されるルートと関係する。この指示は１つ以上の出力デバイス２２１（例えば、スピーカや画面等）を介して視覚的または音声によってユーザ１１５に向けて出力される。
【０１１３】
いくつかの実装において、センサデータによって受信される音声データは、移動プラットフォーム１０１の内部および／または外部で捕捉された任意の音声信号を含む。音声データの非限定的な例として、衝突音、緊急車両によって発せられる音、音声コマンド等が挙げられる。いくつかの実装において、センサデータは、車両の運転者に関する時間変化する方向を含む。
【０１１４】
図５Ｅは、ＣＡＮデータを抽出する例示的なＣＡＮネットワーク５７０を示したものである。ＣＡＮネットワーク５７０は、１つ以上のセンサデータ源（sensor source）を含
む。例えば、ＣＡＮネットワーク５７０またはＣＡＮネットワーク５７０によって捕捉されるデータを格納する非一時的なメモリが、１つの共同センサデータ源を含んでもいいし、あるいは、ネットワーク５７０に含まれる、センサ１０３を構成する各センサ群（例えば、５７４、５７６、５７８等）のそれぞれが、センサデータ源を含んでもよい。
【０１１５】
ＣＡＮネットワーク５７０は、メッセージベースのプロトコルであって、マイクロコントローラおよび装置がホストコンピュータなしで互いに通信することを可能にするプロトコルを用いる。ＣＡＮネットワーク５７０は、信号をデータに変換して格納し、変換した
データをセンサデータ処理部２５１、ＥＣＵ、非一時的メモリ、またはシステム１００の他の構成要素に送信する。センサデータは、車両に備わるマイクロコントローラおよび装置のいずれからも届く。マイクロコントローラおよび装置の例として、例えば、ユーザ制御装置５７８、ブレーキシステム５７６、エンジン制御装置５７４、パワーシート５９４、計器類５９２、バッテリ５８８、照明システム５９０、ステアリングセンサ１０３、電動ロック５８６、情報システム５８４（例えば、オーディオシステム、ビデオシステム、ナビゲーションシステム等）、変速機制御装置５８２、サスペンションシステム５８０等が挙げられる。
【０１１６】
図５Ａ〜図５Ｅを参照して説明した例示的なセンサデータに加えて、またはその代わりに、多種多様な他のセンサデータ（例えば、電子的なメッセージデータ、他のセンサデータ、他の移動プラットフォーム１０１からのデータ、所定のシステムからのデータ等）も使用できる。例えば、ある車両から受信するセンサデータは、対向方向から接近してくる別の車両から受信する、数秒後に左折しようとしていること、ないし左折が予想されることを知らせる電子的なメッセージデータを含む場合がある。
【０１１７】
以上の説明では、本発明を十分に理解できるように、多くの詳細について説明した。しかしながら、各実施形態はこれらの具体的な詳細無しでも良いことは当業者にとって明らかであろう。また、説明が不明瞭になることを避けるために、構造や装置をブロック図の形式で表すこともある。たとえば、一実施形態は、ユーザインタフェースおよび特定のハードウェアとともに説明される。しかし、ここでの説明は、データおよびコマンドを受信する任意のタイプの計算装置および任意の周辺機器について適用できる。
【０１１８】
以上の詳細な説明の一部は、非一時的（non-transitory）なコンピュータ可読記憶媒体に記憶されたデータビットに対する動作のアルゴリズムおよび記号的表現として提供される。これらのアルゴリズム的な説明および表現は、データ処理技術分野の当業者によって、他の当業者に対して自らの成果の本質を最も効果的に説明するために用いられるものである。なお、本明細書において（また一般に）アルゴリズムとは、所望の結果を得るための論理的な手順を意味する。処理のステップは、物理量を物理的に操作するものである。必ずしも必須ではないが、通常は、これらの量は記憶・伝送・結合・比較およびその他の処理が可能な電気的または磁気的信号の形式を取る。通例にしたがって、これらの信号をビット・値・要素・エレメント・シンボル・キャラクタ・項・数値などとして称することが簡便である。
【０１１９】
なお、これらの用語および類似する用語はいずれも、適切な物理量と関連付いているものであり、これら物理量に対する簡易的なラベルに過ぎないということに留意する必要がある。説明から明らかなように、特に断らない限りは、本明細書において「処理」「計算」「コンピュータ計算（処理）」「判断」「表示」等の用語を用いた説明は、コンピュータシステムや類似の電子的計算装置の動作および処理であって、コンピュータシステムのレジスタやメモリ内の物理的（電子的）量を、他のメモリやレジスタまたは同様の情報ストレージや通信装置、表示装置内の物理量として表される他のデータへ操作および変形する動作および処理を意味する。
【０１２０】
本発明は、本明細書で説明される動作を実行する装置にも関する。この装置は要求される目的のために特別に製造されるものであっても良いし、汎用コンピュータを用いて構成しコンピュータ内に格納されるプログラムによって選択的に実行されたり再構成されたりするものであっても良い。このようなコンピュータプログラムは、コンピュータのシステムバスに接続可能な、例えばフロッピー（登録商標）ディスク・光ディスク・ＣＤ−ＲＯＭ・ＭＯディスク・磁気ディスクなど任意のタイプのディスク、読み込み専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード、
フラッシュメモリ、光学式カード、電子的命令を格納するために適した任意のタイプの媒体などの、非一時的なコンピュータ可読記憶媒体に記憶される。
【０１２１】
発明の具体的な実施形態は、完全にハードウェアによって実現されるものでも良いし、完全にソフトウェアによって実現されるものでも良いし、ハードウェアとソフトウェアの両方によって実現されるものでも良い。好ましい実施形態は、ソフトウェアによって実現される。ここでソフトウェアとは、ファームウェア、常駐ソフトウェア、マイクロコードやその他のソフトウェアを含むものである。
【０１２２】
さらに、ある実施形態は、コンピュータが利用あるいは読み込み可能な記憶媒体からアクセス可能なコンピュータプログラムプロダクトの形態を取る。この記憶媒体は、コンピュータや任意の命令実行システムによってあるいはそれらと共に利用されるプログラムコードを提供する。コンピュータが利用あるいは読み込み可能な記憶媒体とは、命令実行システムや装置によってあるいはそれらと共に利用されるプログラムを、保持、格納、通信、伝搬および転送可能な任意の装置を指す。
【０１２３】
プログラムコードを格納・実行するために適したデータ処理システムは、システムバスを介して記憶素子に直接または間接的に接続された少なくとも１つのプロセッサを有する。記憶素子は、プログラムコードの実際の実行に際して使われるローカルメモリや、大容量記憶装置や、実行中に大容量記憶装置からデータを取得する回数を減らすためにいくつかのプログラムコードを一時的に記憶するキャッシュメモリなどを含む。
入力／出力（Ｉ／Ｏ）装置は、例えばキーボード、ディスプレイ、ポインティング装置などであるが、これらはＩ／Ｏコントローラを介して直接あるいは間接的にシステムに接続される。
【０１２４】
システムにはネットワークアダプタも接続されており、これにより、私的ネットワークや公共ネットワークを介して他のデータ処理システムやリモートにあるプリンタや記憶装置に接続される。モデム、ケーブルモデム、イーサネット（登録商標）は、現在利用可能なネットワークアダプタのほんの一例である。
【０１２５】
最後に、本明細書において提示されるアルゴリズムおよび表示は特定のコンピュータや他の装置と本来的に関連するものではない。本明細書における説明にしたがったプログラムを有する種々の汎用システムを用いることができるし、また要求された処理ステップを実行するための特定用途の装置を製作することが適した場合もある。これら種々のシステムに要求される構成は、以上の説明において明らかにされる。さらに、本発明は、特定のプログラミング言語と関連づけられるものではない。本明細書で説明される本発明の内容を実装するために種々のプログラミング言語を利用できることは明らかであろう。
【０１２６】
実施形態の前述の説明は、例示と説明を目的として行われたものである。したがって、開示された実施形態が本発明の全てではないし、本発明を上記の実施形態に限定するものでもない。本発明は、上記の開示にしたがって、種々の変形が可能である。本発明の範囲は上述の実施形態に限定解釈されるべきではなく、特許請求の範囲にしたがって解釈されるべきである。本発明の技術に詳しい者であれば、本発明はその思想や本質的特徴から離れることなくその他の種々の形態で実現できることを理解できるであろう。同様に、モジュール・処理・特徴・属性・方法およびその他の本発明の態様に関する名前付けや分割方法は必須なものでものないし重要でもない。また、本発明やその特徴を実装する機構は異なる名前や分割方法や構成を備えていても構わない。
【０１２７】
さらに、当業者であれば、モジュール・処理・特徴・属性・方法およびその他の本発明の態様は、ソフトウェア、ハードウェア、ファームウェアもしくはこれらの組合せとして
実装できることを理解できるであろう。また、本発明をソフトウェアとして実装する場合には、モジュールなどの各要素は、どのような様式で実装されても良い。例えば、スタンドアローンのプログラム、大きなプログラムの一部、異なる複数のプログラム、静的あるいは動的なリンクライブラリー、カーネルローダブルモジュール、デバイスドライバー、その他コンピュータプログラミングの当業者にとって既知な方式として実装することができる。さらに、本発明の実装は特定のプログラミング言語に限定されるものではないし、特定のオペレーティングシステムや環境に限定されるものでもない。以上のように、上記の本発明の説明は限定的なものではなく例示的なものであり、本発明の範囲は添付の特許請求の範囲にしたがって定められる。
【符号の説明】
【０１２８】
１００  システム
１０１  移動プラットフォーム
１０３  センサ
１０５  先進運転支援エンジン
１０７  ナビゲーションアプリケーション
１０９  ＣＡＮデータ記憶装置
１１１  ネットワーク
１１５  ユーザ
１１７  クライアントデバイス
１２１  モデル化サーバ
１２３  認識データ記憶装置
１３１  マップサーバ
１３２  マップデータベース
１３４  ＰＯＩデータベース
【図１】
2018027776.tif 000003
【図２】
2018027776.tif 000004
【図３Ａ】
2018027776.tif 000005
【図３Ｂ】
2018027776.tif 000006
【図４】
2018027776.tif 000007
【図５Ａ】
2018027776.tif 000008
【図５Ｂ】
2018027776.tif 000009
【図５Ｃ】
2018027776.tif 000010
【図５Ｄ】
2018027776.tif 000011
【図５Ｅ】
2018027776.tif 000012