(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-07
(45)【発行日】2023-08-16
(54)【発明の名称】汎用ナビゲーションシステムを有する車両のための目標指向型ナビゲーションシステム、方法、および非一時的コンピュータ可読媒体
(51)【国際特許分類】
G08G 1/16 20060101AFI20230808BHJP
G08G 1/0969 20060101ALI20230808BHJP
G01C 21/36 20060101ALI20230808BHJP
B60W 30/095 20120101ALI20230808BHJP
B60W 40/02 20060101ALI20230808BHJP
B60W 30/14 20060101ALI20230808BHJP
G09B 29/10 20060101ALI20230808BHJP
【FI】
G08G1/16 C
G08G1/0969
G01C21/36
B60W30/095
B60W40/02
B60W30/14
G09B29/10 A
(21)【出願番号】P 2020204476
(22)【出願日】2020-12-09
【審査請求日】2020-12-09
(32)【優先日】2020-03-30
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】500164385
【氏名又は名称】デンソー インターナショナル アメリカ インコーポレーテッド
(73)【特許権者】
【識別番号】000004260
【氏名又は名称】株式会社デンソー
(74)【代理人】
【識別番号】100106149
【氏名又は名称】矢作 和行
(74)【代理人】
【識別番号】100121991
【氏名又は名称】野々部 泰平
(74)【代理人】
【識別番号】100145595
【氏名又は名称】久保 貴則
(72)【発明者】
【氏名】プラサナー クーマー シーバークーマー
【審査官】佐々木 佳祐
(56)【参考文献】
【文献】米国特許出願公開第2017/0060133(US,A1)
【文献】米国特許出願公開第2010/0100325(US,A1)
【文献】特開2011-253302(JP,A)
【文献】国際公開第2017/068701(WO,A1)
【文献】特開2010-089716(JP,A)
【文献】国際公開第2019/083978(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G08G 1/00-99/00
G01C 21/00-25/00
B60W 10/00-10/30
B60W 30/00-60/00
G09B 29/10
(57)【特許請求の範囲】
【請求項1】
汎用ナビゲーションシステムを有する車両のための目標指向型ナビゲーションシステムであって、
ひとつ以上のプロセッサと、
ひとつ以上の前記プロセッサと通信するメモリと、を備え、
前記メモリは、受信モジュールと、離散化モジュールと、衝突確率モジュールと、目標スコア配列モジュールと、車両制御モジュールとを格納しており、
前記受信モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、前記車両の知覚システムから知覚データを受信させる命令を含み、
前記離散化モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、前記知覚データを前記車両の現在位置に隣接し、複数の格子で構成される領域に離散化させる命令を含み、
前記衝突確率モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、前記複数の格子に対応する複数のセルを有する衝突確率配列を生成させる命令を含み、前記衝突確率配列のセルは、前記衝突確率配列のセルによって表される領域に前記車両が移動した場合の衝突の可能性を示しており、前記衝突確率配列のどのセルが安全基準を満たすかを決定させる命令を含み、
前記受信モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、前記衝突確率配列の複数のセルに対応する複数のセルを有する人工ポテンシャルフィールド配列を受信させる命令を含み、前記人工ポテンシャルフィールド配列の複数のセルの値は、車両の目標位置に対する車両位置の近接度を示し、
前記車両の目標位置は、前記車両の走行予定経路上に複数設定され、
前記目標スコア配列モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、安全基準を満たす前記衝突確率配列のセルに対応する複数のセルを有する目標スコア配列を生成させる命令を含み、前記目標スコア配列のセルの値は、前記衝突確率配列と前記人工ポテンシャルフィールド配列の対応するセルの値に基づいて、衝突を回避できる可能性が高いほど、及び目標位置に近づくほど高くなるように算出され、
前記車両制御モジュールは、ひとつ以上の前記プロセッサによって実行されると、最高値を有する前記目標スコア配列内のセルを表す場所に車両制御システムが前記車両を誘導するように、ひとつ以上の前記プロセッサに指示させる命令を有する、目標指向型ナビゲーションシステム。
【請求項2】
前記離散化モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、前記車両の現在位置に隣接する車両前方のK×Kの領域を、ふたつ以上の軸に沿って複数の格子を有するグリッドに分割する命令をさらに含む、請求項1に記載の目標指向型ナビゲーションシステム。
【請求項3】
前記衝突確率モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、前記衝突確率配列のどのセルが前記安全基準を満たすかを決定するために、前記衝突確率配列の複数のセルの値を反転させる命令をさらに含む、請求項1に記載の目標指向型ナビゲーションシステム。
【請求項4】
前記目標スコア配列の複数のセルの値は、下記式(1)により表され、
【数3】
ここで、oiは前記目標スコア配列の複数のセルの値、φ’iは前記人工ポテンシャルフィールド配列の複数のセルの値、s’iは前記衝突確率配列の複数のセルの値で、βは、安全性の相対的な重要度を表す攻撃性係数である、請求項1に記載の目標指向型ナビゲーションシステム。
【請求項5】
前記目標スコア配列の中で最高値を有するセルが、下記式(2)により表される、請求項4に記載の目標指向型ナビゲーションシステム。
【数4】
【請求項6】
前記メモリは、ひとつ以上の前記プロセッサによって実行されると、前記車両が前記目標位置に到達したときに、ひとつ以上の前記プロセッサに前記目標位置を新しい目標位置に更新させる命令を含む目標更新モジュールをさらに備える、請求項1に記載の目標指向型ナビゲーションシステム。
【請求項7】
前記新しい目標位置は、最終的な目標位置への経路に基づいて決定される、請求項6に記載の目標指向型ナビゲーションシステム。
【請求項8】
前記メモリは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに以下を実行させる命令を含むハンドオーバ制御モジュールをさらに備え、
前記ハンドオーバ制御モジュールがひとつ以上の前記プロセッサに実行させる命令は、
経路に沿った前記車両の位置を決定し、
ハンドオーバ制御システムにより、前記経路に沿った前記車両の位置に基づいて、前記目標指向型ナビゲーションシステムまたは前記汎用ナビゲーションシステムからのコマンドを利用するように前記車両制御システムに指示することである、請求項1に記載の目標指向型ナビゲーションシステム。
【請求項9】
汎用ナビゲーションシステムおよび目標指向型ナビゲーションシステムを有する車両を操作するための方法であって、
前記車両の知覚システムから知覚データを受信するステップと、
前記目標指向型ナビゲーションシステムによって、前記知覚データを、前記車両の現在位置に隣接し、複数の格子で構成される領域に離散化するステップと、
前記目標指向型ナビゲーションシステムによって、前記複数の格子に対応する複数のセルを有する衝突確率配列を生成するステップと、
前記目標指向型ナビゲーションシステムによって、前記衝突確率配列のどのセルが安全基準を満たすかを決定するステップと、
前記目標指向型ナビゲーションシステムによって、前記衝突確率配列の複数のセルに対応する複数のセルを有する人工ポテンシャルフィールド配列を受信するステップと、
前記目標指向型ナビゲーションシステムによって、前記安全基準を満たす前記衝突確率配列のセルに対応する複数のセルを有する目標スコア配列を生成するステップと、
前記目標指向型ナビゲーションシステムによって、前記車両の車両制御システムに、最高値を有する前記目標スコア配列内のセルを表す場所に前記車両を誘導するように指示するステップと、を含み、
前記衝突確率配列のセルは、前記衝突確率配列のセルによって表される領域に前記車両が移動した場合の衝突の可能性を示し、
前記人工ポテンシャルフィールド配列の複数のセルの値は、車両の目標位置に対する車両位置の近接度を示し、
前記車両の目標位置は、前記車両の走行予定経路上に複数設定され、
前記目標スコア配列のセルの値は、前記衝突確率配列と前記人工ポテンシャルフィールド配列の対応するセルの値に基づいて、衝突を回避できる可能性が高いほど、及び目標位置に近づくほど高くなるように算出される、方法。
【請求項10】
前記目標指向型ナビゲーションシステムによって、前記車両の現在位置に隣接する車両前方のK×Kの前記領域を、ふたつ以上の軸に沿って複数の格子を有するグリッドに分割するステップをさらに含む、請求項9に記載の方法。
【請求項11】
前記衝突確率配列のどのセルが前記安全基準を満たすかを決定するために、前記衝突確率配列の複数のセルの値を反転するステップをさらに含む、請求項9に記載の方法。
【請求項12】
前記目標スコア配列の複数のセルの値は、下記式(1)により表され、
【数5】
ここで、oiは前記目標スコア配列の複数のセルの値、φ’iは前記人工ポテンシャルフィールド配列の複数のセルの値、s’iは前記衝突確率配列の複数のセルの値で、βは、安全性の相対的な重要度を表す攻撃性係数である、請求項9に記載の方法。
【請求項13】
前記目標スコア配列の中で最高値を有するセルが、下記式(2)により表される、請求項12に記載の方法。
【数6】
【請求項14】
前記車両が前記目標位置に到達したときに、前記目標位置を新しい目標位置に更新するステップをさらに含む、請求項9に記載の方法。
【請求項15】
前記新しい目標位置は、最終的な目標位置への経路に基づいて決定される、請求項14に記載の方法。
【請求項16】
経路に沿った前記車両の位置を決定するステップと、
ハンドオーバ制御システムによって、前記経路に沿った前記車両の位置に基づいて、前記目標指向型ナビゲーションシステムまたは前記汎用ナビゲーションシステムからのコマンドを利用するように前記車両制御システムに指示するステップと、をさらに含む請求項9に記載の方法。
【請求項17】
汎用ナビゲーションシステムおよび目標指向型ナビゲーションシステムを有する車両を操作するための命令を格納する非一時的コンピュータ可読媒体であって、
ひとつ以上のプロセッサによって実行されたときに、ひとつ以上の前記プロセッサに実行させる命令として、
前記車両の知覚システムから知覚データを受信し、
前記目標指向型ナビゲーションシステムによって、前記知覚データを、前記車両の現在位置に隣接し、複数の格子で構成される領域に離散化し、
前記目標指向型ナビゲーションシステムによって、前記複数の格子に対応する複数のセルを有する衝突確率配列を生成し、
前記目標指向型ナビゲーションシステムによって、前記衝突確率配列のどのセルが安全基準を満たすかを決定し、
前記目標指向型ナビゲーションシステムによって、前記衝突確率配列の複数のセルに対応する複数のセルを有する人工ポテンシャルフィールド配列を受信し、
前記目標指向型ナビゲーションシステムによって、前記安全基準を満たす前記衝突確率配列のセルに対応する複数のセルを有する目標スコア配列を生成し、
前記目標指向型ナビゲーションシステムによって、前記車両の車両制御システムに、最高値を有する前記目標スコア配列内のセルを表す場所に前記車両を誘導するように指示すること、を含み、
前記衝突確率配列のセルは、前記衝突確率配列のセルによって表される領域に前記車両が移動した場合の衝突の可能性を示し、
前記人工ポテンシャルフィールド配列の複数のセルの値は、車両の目標位置に対する車両位置の近接度を示し、
前記車両の目標位置は、前記車両の走行予定経路上に複数設定され、
前記目標スコア配列のセルの値は、前記衝突確率配列と前記人工ポテンシャルフィールド配列の対応するセルの値に基づいて、衝突を回避できる可能性が高いほど、及び目標位置に近づくほど高くなるように算出される、非一時的コンピュータ可読媒体。
【請求項18】
ひとつ以上の前記プロセッサによって実行されると、前記車両が前記目標位置に到達したときに、ひとつ以上の前記プロセッサに前記目標位置を新しい目標位置に更新させる命令をさらに含む、請求項17に記載の、非一時的コンピュータ可読媒体。
【請求項19】
前記新しい目標位置は、最終的な目標位置への経路に基づいて決定される、請求項18に記載の非一時的コンピュータ可読媒体。
【請求項20】
経路に沿った前記車両の位置を決定し、
ハンドオーバ制御システムにより、前記経路に沿った前記車両の位置に基づいて、前記目標指向型ナビゲーションシステムまたは前記汎用ナビゲーションシステムからのコマンドを利用するように前記車両制御システムに指示する命令をさらに含む、請求項17に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
この明細書で説明する手段は、たとえば一般的な知覚システムのような車両の一般的なコンポーネントを利用する目標指向型ナビゲーションシステムを使用して車両を操縦するためのシステムおよび方法に関する。
【背景技術】
【0002】
提供された背景技術の説明は、開示のおおよその概要を示している。この背景技術の項で説明される範囲における発明者の活動、および、出願時において先行技術と見なされない説明の側面は、この技術に対する先行技術として、明示的にも、または、黙示的にも、自認されたものではない。
【0003】
一部の車両には、乗員の入力がほとんどないか、まったくない状態で車両を操縦できる完全自律システムが装備されている。完全自律システムは、非常に複雑で高価であり、多数の専用センサ、計算ハードウェアなどを使用する必要がある。
【0004】
あるいは、一部の車両は、警告を発したり、特定の状況下で車両を制御したりできるひとつ以上のアクティブセーフティシステムを有する。アクティブセーフティシステムは、レーンキープアシスト、アダプティブクルーズコントロール、物体検出、緊急ブレーキなどのシステムを含むことができる。アクティブセーフティシステムは、完全自律的型の動作を提供するものではない。しかしながら、完全自律システムが必要とするいくつかの動作を実行する。たとえば、これらのシステムは、ひとつ以上の知覚センサから情報を収集し、この情報を汎用ナビゲーション意思決定システムに中継する。
【発明の概要】
【0005】
このセクションは一般的に開示を要約したものであり、その全範囲またはそのすべての機能を包括的に説明するものではない。
【0006】
一実施形態では、汎用ナビゲーションシステムを有する車両のための目標指向型ナビゲーションシステムは、ひとつ以上のプロセッサと、ひとつ以上のプロセッサと通信可能なメモリと、を備える。メモリは、受信モジュール、離散化モジュール、衝突確率モジュール、目標スコア配列モジュール、および車両制御モジュールを格納している。受信モジュールは、ひとつ以上のプロセッサによって実行されると、ひとつ以上のプロセッサに、車両の知覚システムから知覚データを受信させる命令を含む。離散化モジュールは、ひとつ以上のプロセッサによって実行されると、ひとつ以上のプロセッサに、知覚データを、車両の現在位置に隣接し、複数の格子で構成される領域に離散化させる命令を含む。
【0007】
衝突確率モジュールは、ひとつ以上のプロセッサによって実行されると、ひとつ以上のプロセッサに、複数の格子に対応する複数のセルを有する衝突確率配列を生成させる命令を含む。衝突確率配列のセルは、車両が衝突確率配列のセルで表される領域に移動した場合の衝突の可能性を示す。衝突確率モジュールは、また、衝突確率配列のどのセルが安全基準を満たすかをひとつ以上のプロセッサに決定させる。
【0008】
目標スコア配列モジュールは、ひとつ以上のプロセッサによって実行されると、ひとつ以上のプロセッサに、安全基準を満たす衝突確率配列のセルに対応する複数のセルを有する目標スコア配列を生成させる命令を含む。目標スコア配列のセルの値は、衝突確率配列の対応するセルの値と、車両の目標位置に対する車両位置の近接度を示す人工ポテンシャルフィールド配列の対応するセルの値とに基づいて、衝突を回避できる可能性が高いほど、及び目標位置に近づくほど高くなるように算出される。車両の目標位置は、車両の走行予定経路上に複数設定される。車両制御モジュールは、ひとつ以上のプロセッサによって実行されると、車両制御システムが車両をある場所に誘導するように、ひとつ以上のプロセッサに指示させる命令を含む。
【0009】
別の実施形態では、汎用ナビゲーションシステムおよび目標指向型ナビゲーションシステムを有する車両を操作するための方法は、車両の知覚システムから知覚データを受信するステップと、知覚データを、車両の現在位置に隣接し、複数の格子で構成された領域に離散化するステップと、複数の格子に対応する複数のセルを有する衝突確率配列を生成するステップと、衝突確率配列のどのセルが安全基準を満たすかを決定し、安全基準を満たす衝突確率配列のセルに対応する複数のセルを有する目標スコア配列を生成するステップと、車両の車両制御システムに、最も望ましい値を有する目標スコア配列のセルの表す場所に車両を誘導するように指示するステップを含む。
【0010】
衝突確率配列のセルは、車両が衝突確率配列のセルで表される領域に移動した場合の衝突の可能性を示す。人工ポテンシャルフィールド配列の複数のセルの値は、車両の目標位置に対する車両位置の近接度を示す。車両の目標位置は、車両の走行予定経路上に複数設定される。目標スコア配列のセルの値は、衝突確率配列と人工ポテンシャルフィールド配列の対応するセルの値に基づいて、衝突を回避できる可能性が高いほど、及び目標位置に近づくほど高くなるように算出される。
【0011】
さらに別の実施形態では、汎用ナビゲーションシステムおよび目標指向型ナビゲーションシステムを有する車両を操作するための非一時的コンピュータ可読媒体は、ひとつ以上のプロセッサによって実行されると、ひとつ以上のプロセッサに、車両の知覚システムから知覚データを受信し、知覚データを車両の現在位置に隣接する領域に離散化し、複数の格子に対応する複数のセルを有する衝突確率配列を生成し、衝突確率配列のどのセルが安全基準を満たすかを決定し、安全基準を満たす衝突確率配列のセルに対応する複数のセルを有する目標スコア配列を生成し、最高値を有する目標スコア配列内のセルを表す場所に車両を誘導するように車両制御システムに指示する命令を含む。
【0012】
前述同様、衝突確率配列のセルは、車両が衝突確率配列のセルで表される領域に移動した場合の衝突の可能性を示す。人工ポテンシャルフィールド配列の複数のセルの値は、車両の目標位置に対する車両位置の近接度を示す。車両の目標位置は、車両の走行予定経路上に複数設定される。目標スコア配列のセルの値は、衝突確率配列と人工ポテンシャルフィールド配列の対応するセルの値に基づいて、衝突を回避できる可能性が高いほど、及び目標位置に近づくほど高くなるように算出される。
【0013】
適用可能なさらなる領域、および、開示される技術を拡張するさまざまな方法が、提供されている説明から明らかにされる。この概要における説明および特定の実施形態は、図示のためだけを意図されており、この開示の範囲を限定するものではない。
【図面の簡単な説明】
【0014】
この明細書に組み込まれ、その一部を構成する添付図面は、本開示の様々なシステム、方法、および他の実施形態を示している。図中の図示された要素の境界(たとえば、ボックス、ボックスのグループ、または他の形状)は、境界の一実施形態を表すことが理解されるであろう。いくつかの実施形態では、ひとつの要素が複数の要素として設計されてもよく、または複数の要素がひとつの要素として設計されてもよい。いくつかの実施形態では、別の要素の内部コンポーネントとして示される要素は、外部コンポーネントとして実装されてもよく、その逆もあり得る。さらに、要素は縮尺どおりに描かれない場合がある。
【
図1】目標指向型ナビゲーションシステムを組み込んだ車両のブロック図である。
【
図2】目標指向型ナビゲーションシステムを示すブロック図である。
【
図3】汎用ナビゲーションシステムを示すフロー図である。
【
図4】汎用ナビゲーションシステムのコンポーネントを利用する目標指向型ナビゲーションシステムを示すフロー図である。
【
図5】目標指向型ナビゲーションシステムを利用する車両の例示的なシーンを示す図である。
【
図6】目標指向型ナビゲーションシステムと汎用ナビゲーションシステムとの間でハンドオーバ操作を行う目標指向型ナビゲーションシステムを利用する車両の例示的なシーンを示す図である。
【
図7】汎用ナビゲーションシステムとともに目標指向型ナビゲーションシステムを利用するための方法を示す図である。
【
図8】中間目標位置を用いて最終目標位置に到達するために、汎用ナビゲーションシステムとともに目標指向型ナビゲーションシステムを利用するための方法を示す図である。
【
図9】目標指向型ナビゲーションシステムと汎用ナビゲーションシステムとの間でハンドオーバ操作を行う汎用ナビゲーションシステムとともに目標指向型ナビゲーションシステムを利用するための方法を示す図である。
【発明を実施するための形態】
【0015】
この明細書の開示は、ある場所から別の場所へ車両を操縦するために、目標指向型ナビゲーションシステムによる車両の汎用ナビゲーションシステムを利用するシステム、方法、および非一時的な媒体を含む。目標指向型ナビゲーションシステムは、衝突確率配列を決定するために、汎用ナビゲーションシステムからの情報を利用する。衝突確率配列の各セルは、車両が衝突確率配列のセルに対応する場所に向かって操縦された場合の衝突の可能性を示す。システムは、衝突確率配列のどのセルが安全基準を満たすかを判断する。安全基準は、車両が他の物体と衝突する可能性がたとえば5%未満のように極めて低い場合に満たされる。
【0016】
目標指向型ナビゲーションシステムは、人工ポテンシャルフィールド配列とともに、安全基準を満たす衝突確率配列のセルを考慮する。人工ポテンシャルフィールド配列は、目的地への車両の近さを表すセルの配列である。配列は、アレイ、行列と称されることがある。システムは、衝突確率配列(車両の安全性)と人工ポテンシャルフィールド(車両が走行したい目的地)の両方を満たす、車両をどこに向けて操縦すべきかを表す値を有する複数のセルを含む目標スコア配列を生成する。次いで、ひとつ以上の車両制御システムは、最も望ましいスコアを有する目標スコア配列のセルに向かって車両を操縦するように作動させることができる。このように、目標指向型ナビゲーションシステムは、汎用ハードウェアコンポーネントを使用して車両の自律ナビゲーションを提供するための費用対効果の高いソリューションを提供する。
【0017】
図1を参照すると、目標指向型ナビゲーションシステム200を組み込んだ車両100が示されている。車両100は、ある場所から別の場所へ乗員および/または物品の輸送を可能にする動力輸送機の任意の形態であり得る。車両100は、自動車であってもよいが、小型トラック、大型トラック、トラクターなどの農業用車両、スポーツユーティリティビークル、トラクタ・トレーラ、軍用車両、鉱業用車両などであってもよい。さらに、車両100は、陸上車両に限定されず、たとえば、船舶や航空機などの他の種類の車両であってもよい。
【0018】
車両100は、
図1に示される構成要素を、より多く含んでもよいし、より少なく含んでもよい。この例では、車両100は、ひとつ以上のバス111を介して、他の車両システムおよびサブシステムと通信できるプロセッサ110を備える。この明細書で後述するように、プロセッサ110の一部またはすべては、車両100内に配置されてもよく、車両100の外部に配置されて、ひとつ以上の計算の実行を支援してもよい。
【0019】
車両100は、また、ひとつ以上の知覚センサ120を備えることができる。知覚センサ120は、車両100が動作している環境および/またはその環境内の任意の物体を検出する。たとえば、知覚センサ120は、環境および車両100の外部にある環境内の任意の物体を検出するためのひとつ以上の異なるタイプのセンサを含んでもよい。
【0020】
一例的に、車両100は、知覚センサ120として、LiDARセンサ121、カメラ122、レーダセンサ123、ソナーセンサ124などのセンサを含むことができる。カメラ122は、高ダイナミックレンジの撮像カメラであってもよい。さらに、カメラ122は、ひとつ以上の単眼カメラまたはひとつ以上のステレオカメラを含んでもよい。知覚センサ120を構成するセンサは、一般に、車両100の外部の環境を知覚できるように、車両100に取り付けられている。
【0021】
車両100は、また、汎用ナビゲーションシステム130を備えることができる。汎用ナビゲーションシステム130は、汎用知覚システム131および汎用ナビゲーション意思決定システム132を含んでもよい。汎用知覚システム131は、たとえばRGB画像、レーダデータ、ソナーデータ、3次元点群などの情報を、知覚センサ120から受信する。なお、汎用は、一般的と称されることがある。
【0022】
知覚センサ120から情報を受信した後、汎用知覚システム131は、次に、知覚情報を汎用ナビゲーション意思決定システム132に出力する。知覚情報は、車両100の近傍の環境内に位置するひとつ以上の物体の存在、位置、および他の情報を含んでもよい。汎用ナビゲーション意思決定システム132は、汎用知覚システム131から知覚情報を受信し、この情報に基づいてひとつ以上の意思決定を行う。
【0023】
汎用ナビゲーション意思決定システム132は、汎用知覚システム131からの情報を利用して、ある種の行動をとるいくつかの異なるシステムのうちのひとつであり得る。汎用ナビゲーション意思決定システム132は、レーンキープアシストシステムであり得る。レーンキープアシストシステムは、車線を規定するひとつ以上の道路標示に関連して車両100の位置を検出することができるシステムであってもよい。車線に対する車両100の位置に基づいて、レーンキープアシストシステムは、車両100が車線から逸脱しているか、または逸脱中であることを車両100の乗員に警告し、および/または、車両を車線内に維持するように車両100を制御することができる。レーンキープアシストシステムは、一般に、車両100を目的地まで操縦するのではなく、車両100を車線内に維持し、車両100を意図した目的地まで操縦するために、車両100の乗員が適切な時間に車両100を制御することを要求する。
【0024】
汎用ナビゲーションシステム130は、他のタイプのシステムであってもよい。たとえば、汎用ナビゲーションシステム130は、汎用知覚システム131を用いて物体の存在を本質的に検出し、検出された物体に対する車両100の位置を決定し、検出された物体との差し迫った衝突を回避するために緊急ブレーキまたは操舵を実行する物体検出システムおよび緊急ブレーキシステムを含んでもよい。
【0025】
汎用ナビゲーションシステム130は、アダプティブクルーズコントロールシステムであってもよく、車両100は、クルーズコントロールが作動しているときに、車両100の外部にある物体を検出し、検出された物体と衝突しないように車両の速度を調整することができる。検出された物体が車両100から遠ざかるにつれて、車両100は、クルーズコントロールシステムを作動させるときに、車両100の乗員によって設定された速度を回復してもよい。アダプティブクルーズコントロールシステムは、他の車両または物体に対する車両の速度を調整するだけでなく、車両100を指定された車線内に維持するレーンキープアシスト機能を含んでもよい。
【0026】
別の例では、汎用ナビゲーションシステム130は、自由空間推定システムからの入力を受信する自由空間追従システムであってもよい。たとえば、自由空間推定システムは、知覚センサ120から情報を受信して、車両100の前方にある自由空間の存在を決定することができる。車両100の前方の自由空間の存在に基づいて、自由空間追従システムは、別の車両および/または自由空間に追従するように車両を操縦することができる。
【0027】
汎用ナビゲーションシステム130に関する上記した例は、単なる例示に過ぎない。汎用ナビゲーションシステム130は、上記した例の要素、または特に記載されていない他の要素を含む、いくつかの異なる形態のうちの任意のひとつをとることができる。
【0028】
車両100は、車両100のひとつ以上のシステムまたはサブシステムが車両100の位置を決定することを可能にするひとつ以上の位置決めセンサ140を備えることができる。たとえば、位置決めセンサ140は、車両100の加速度、速度、ステアリングホイールの角度などを測定するセンサを含むことができる。具体的には、加速度センサ、コンパスセンサ、車輪速センサ、操舵角センサ、それらの組み合わせなどを含むことができる。
【0029】
車両100は、また、全地球的航法衛星システム(GNSS)145を備えることができる。GNSS145は、GPS、GLONASS、ガリレオ、および/またはベイドゥーなどの任意のタイプの全地球航法衛星システムであってもよい。GNSS145は、ひとつ以上の衛星から信号を受信し、衛星から受信した信号に基づいて、車両100の位置を決定することができる。後述するように、GNSS145は、中間または最終の目標(ターゲット)に対する車両100の位置を決定するために利用されてもよい。
【0030】
車両100は、また、経路計画システム150および地図データベース160を備えることができる。経路計画システム150は、車両100が初期位置から目的地まで移動するためにとるべき経路(ルート)を決定することができる。経路計画システム150は、車両100の乗員から、目的地の入力を受けてもよい。車両100の乗員は、車両100の入力システム180を利用して、目的地情報を提供してもよい。入力システム180は、乗員が情報を入力することができる任意のタイプの入力システムであってもよい。たとえば、音声入力マイク、タッチスクリーン、キーボード、アナログ入力などとすることができる。
【0031】
入力システム180から目的地を受信した後、経路計画システム150は、GNSS145から車両位置情報を受信する。したがって、この情報を受け取った後、経路計画システム150は、車両の初期位置と目的位置の両方を有する。次いで、経路計画システム150は、この情報を地図データベース160からの地図情報とともに使用して、車両100の初期位置から目的地までのひとつ以上の経路を決定する。一例では、経路は、出力システム181に指示とともに表示されてもよく、出力システム181は、車両100を目的地に導くための指示を提供するためのディスプレイおよび/または可聴出力装置であってもよい。
【0032】
車両100は、また、車両100の動きに関連するひとつ以上の車両システムおよびサブシステムを制御することができる車両運動コントローラ190を備えることができる。たとえば、車両運動コントローラ190は、車両100の動きを制御するひとつ以上のシステムを作動させるアクチュエータコントローラ185と通信することができる。たとえば、アクチュエータコントローラ185は、ペダル位置、ブレーキ、ステアリングホイール角度、トランスミッション選択などを制御する。車両運動コントローラ190は、アクチュエータコントローラ185に指示を送信することにより、汎用ナビゲーションシステム130から車両100の動きを制御するための情報を受信してもよい。たとえば、汎用ナビゲーションシステム130がレーンキープアシストシステムである場合、車両運動コントローラ190は、信号をアクチュエータコントローラ185に送信して、車線内の車両100の位置を制御してもよい。
【0033】
車両100は、また、ポテンシャルフィールド画像化システム195を備えることができる。ポテンシャルフィールド画像化システム195は、「Systems and Methods for Controlling an Autonomous Vehicle Using Target-Orientated Artificial Intelligence」と題する米国特許出願第16/502,602号に開示された方法を使用して、人工ポテンシャルフィールド画像(ポテンシャルフィールド画像と呼ばれる)を生成してもよく、その記載の全体が参照によりこの明細書に組み込まれる。人工ポテンシャルフィールド画像は、「目標状態」によって放出される仮想のポテンシャルフィールドである。目標状態とは、システムが到達しようとしている目標である。たとえば、自律運転ナビゲーションの場合、目標は、車両が到達しようとしている目的地である場合がある。ポテンシャルフィールド画像は、物体が電位源に近いほど、物体がより強く電位の影響を受けるという点で、電位場と概念が似ている。ポテンシャルフィールド画像の場合、車両100が目標状態に近づくほど、車両100によってポテンシャルが強くなる。直感的に、車両100により経験されるポテンシャルは、車両100が目標の場所に図的にどれだけ近いかを表す。
【0034】
車両100が目標にどれだけ近いかを画像的に表現することは、特に計算能力の向上に関連して、いくつかの利点がある。画像プロセッシングユニット(GPU)の最近の進歩により、GPUは一定時間内に大量の画像データを処理できる。この大量のデータを処理できるAIライブラリとフレームワークのその後の開発により、驚くほど正確な結果を得ことができる。このように、この開示は、コンピュータ技術の革新、つまり、車両100が目標位置にどれだけ近いかを示す画像的な形式のデジタル画像処理を可能とし、この場合、コンピュータの機能の改善と、目標指向型のナビゲーションの技術の改善との両方が反映される。
【0035】
車両100は、また、目標指向型ナビゲーションシステム200を備えてもよい。目標指向型ナビゲーションシステム200は、車両100に目標指向型ナビゲーションを提供するために、車両100内の汎用コンポーネントを使用してもよい。より簡単に言えば、目標指向型ナビゲーションシステム200は、車両100に目標指向型ナビゲーションを提供するために、汎用ナビゲーションシステム130の汎用知覚システム131を使用してもよい。これがどのように行われるかの大まかな概要を提供するために、
図3を参照する。
図3には、知覚センサ120により検出された情報を汎用ナビゲーションシステム130に提供する従来のシステムフロー300が示されている。汎用ナビゲーションシステム130の汎用知覚システム131は、知覚センサ120からの情報(St)を、汎用ナビゲーション意思決定システム132によって利用可能な情報(Ot)に変換する。前述したように、汎用ナビゲーション意思決定システム132は、車両100を車線内に維持するレーンキープアシストシステムであり得る。汎用ナビゲーション意思決定システム132は、この情報(T’t)を、アクチュエータコントローラ185に指示を送信する車両運動コントローラ190に提供する。アクチュエータコントローラ185は、車両運動コントローラ190からの指示(Acc、SA)を受信すると、車両100の動きを制御して車両100を所定の車線内に維持するひとつ以上のアクチュエータを制御する。
【0036】
図4は、汎用ナビゲーションシステム130の汎用知覚システム131などの汎用コンポーネントを利用する目標指向型ナビゲーションシステム200を含むシステムフロー400を示している。ここで、目標指向型ナビゲーションシステム200は、汎用知覚システム131の出力(Ot)を受信する。そうすることにより、別の知覚センサ120および/または汎用知覚システム131が、目標指向型ナビゲーションシステム200を利用するために実装される必要がない。これによれば、追加の知覚センサや知覚システムが不要であり、システムのコストと複雑さを低減できるため、有利な場合がある。
図4に示されるように、ポテンシャルフィールド画像化システム195は、ポテンシャルフィールド(Vt)を生成するために、位置決めセンサ140および/またはデータストア210から情報(Ex、Ex,Ey、Tx、Ty)を受信する。前述したように、ポテンシャルフィールドの生成は米国特許出願第16/502,602号に記載されており、その記載の全体が参照により援用される。そして、ポテンシャルフィールドは、目標指向型ナビゲーションシステム200に提供される。
【0037】
目標指向型ナビゲーションシステム200は、また、汎用知覚システム131から情報を受信する。この明細書の後半でより詳細に説明するように、目標指向型ナビゲーションシステム200は、汎用知覚システム131からの情報を使用して、衝突確率配列を決定する。衝突確率配列の各セルは、車両100が衝突確率配列のセルに対応する場所に向かって操縦される場合の衝突の可能性を示す。目標指向型ナビゲーションシステム200は、衝突確率配列のどのセルが安全基準を満たすかを判断することができる。安全基準は、車両100が他の物体と衝突する可能性が5%未満など、極めて低いものであってもよい。
【0038】
目標指向型ナビゲーションシステム200は、人工ポテンシャルフィールド配列とともに、安全基準を満たす衝突確率配列のセルを考慮する。人工ポテンシャルフィールド配列は、車両100の目的地への近さを表すセルの配列である。目標指向型ナビゲーションシステム200は、衝突確率配列(車両の安全性)と人工ポテンシャルフィールド(車両が走行したい目的地)の両方を満たす、車両100がどこに向かって操縦されるべきかを表す値を有する複数のセルを含む目標スコア配列を生成する。車両運動コントローラ190は、アクチュエータコントローラ185を介してアクチュエータを作動させ、最も望ましいスコアを有する目標スコア配列のセルに向かって車両100を操縦することができる。このように、目標指向型ナビゲーションシステム200は、汎用ナビゲーションシステム130の汎用知覚システム131のような汎用ハードウェアコンポーネントを使用して、車両の自律ナビゲーションを提供するための費用対効果の高いソリューションを提供する。
【0039】
図2を参照すると、目標指向型ナビゲーションシステム200の一実施形態が示されている。
図2に示されるように、目標指向型ナビゲーションシステム200は、プロセッサ110を備える。プロセッサ110は、目標指向型ナビゲーションシステム200の一部であってもよく、または目標指向型ナビゲーションシステム200が、データバスまたは別の通信経路を介してプロセッサ110にアクセスしてもよい。ひとつ以上の実施形態において、プロセッサ110は、受信モジュール241、離散化モジュール242、衝突確率モジュール243、目標スコア配列モジュール244、車両制御モジュール245、目標更新モジュール246、および/またはハンドオーバモジュール247に関連する機能を実装するように構成された特定用途向け集積回路である。より一般的には、ひとつ以上の態様において、プロセッサ110は、モジュール241~247をロードし、それに関連する符号化機能を実行するときに、この明細書に記載の様々な機能を実行できるマイクロプロセッサなどの電子プロセッサである。
【0040】
一実施形態において、目標指向型ナビゲーションシステム200は、モジュール241~247を格納するメモリ240を備える。メモリ240は、ランダムアクセスメモリ(RAM)、リードオンリーメモリ(ROM)、ハードディスクドライブ、フラッシュメモリ、またはモジュール241~247を格納するための他の適切なメモリである。モジュール241~247は、たとえば、プロセッサ110によって実行されると、プロセッサ110にこの明細書に開示された様々な機能を実行させるコンピュータ可読命令である。ひとつ以上の実施形態において、モジュール241~247は、メモリ240に具現化された命令であるが、さらなる態様では、モジュール241~247は、ハードウェア、たとえば、この明細書に開示された機能のひとつ以上を独立して実行するための処理コンポーネント(たとえば、コントローラ)、回路などを含む。
【0041】
さらに、一実施形態では、目標指向型ナビゲーションシステム200は、データストア210を備える。データストア210は、一実施形態では、情報を格納するための電子ベースのデータ構造である。少なくともひとつの実施形態では、データストア210は、メモリ240または別の適切な媒体に格納され、格納されたデータの分析、格納されたデータの提供、格納されたデータの整理などのためにプロセッサ110によって実行可能なルーチンで構成されるデータベースである。いずれの場合も、一実施形態では、データストア210は、様々な機能を実行する際にモジュール241~247によって使用されるデータを格納する。一実施形態では、データストア210はセンサデータ220を含み、センサデータは、知覚センサ120によって収集されたデータおよび/または汎用知覚システム131によって処理されたデータであってもよい。データストア210は、また、目標情報230を含み、目標情報230は、車両100の中間的および/または最終的な目標情報および/または車両100の現在位置情報を含んでもよい。
【0042】
モジュール241~247に関して、受信モジュール241は、プロセッサ110によって実行されると、プロセッサ110に、車両100の汎用知覚システム131から知覚データを受信させる命令を含むことができる。汎用知覚システム131からの知覚データは、ひとつ以上の画像、点群、ソナーデータ、および/またはレーダデータの形式であってもよく、あるいはひとつ以上の画像、点群、ソナーデータ、および/またはレーダデータ内に位置するひとつ以上の物体の存在に関する情報を提供する処理データであってもよい。たとえば、
図5Aを参照すると、この図は道路を走行する車両100を示しており、同じ道路を走行する他の車両も示している。
図5Bでは、知覚データ501は、車両100に関連したひとつ以上の物体の存在に関する情報の形態である。
【0043】
離散化モジュール242は、プロセッサ110によって実行されると、プロセッサ110に、車両100の現在位置に隣接する領域に知覚データを離散化させる命令を含むことができる。さらに、
図5Cに最もよく示されているように、
図5Bの知覚データ501は複数の格子502に離散化されている。離散化モジュール242は、プロセッサ110によって実行されると、プロセッサ110に、車両100の現在位置に隣接する車両前方のK×K(m
2)の領域を、ふたつ以上の軸に沿って複数の格子を有するグリッドに分割する命令をさらに含むことができる。m
2は、平方メートルを意味する。
【0044】
衝突確率モジュール243は、プロセッサ110によって実行されると、プロセッサ110に、複数の格子502に対応する複数のセルを有する衝突確率配列を生成させる命令を含むことができる。衝突確率配列のセルは、車両100が衝突確率配列のセルによって表される領域に移動した場合の衝突の可能性を示し、衝突確率配列のどのセルが安全基準を満たすかを決定する。たとえば、
図5Dを参照すると、衝突確率配列503が示されている。衝突確率配列503は、安全基準を満たすことを示すために陰影が付けられたセルの一部を含む。安全基準は、車両100が衝突確率配列503の安全基準を満たすひとつ以上のセルによって表される位置に移動した場合に、車両100が他の物体と衝突する可能性が低いようなものとすることができる。このように、衝突確率配列503の陰影付き領域は、安全基準を満たすセルを示し、車両100が安全基準を満たすセルによって表される位置に移動した場合に、車両100が他の物体と衝突する可能性が低いことを示す。
【0045】
受信モジュール241は、また、プロセッサ110によって実行されると、プロセッサ110に、人工ポテンシャルフィールド配列を受信させる命令を含むことができる。たとえば、
図5Eを参照すると、人工ポテンシャルフィールド配列504が示されており、車両100が移動しようとする目標を示している。前述したように、人工ポテンシャルフィールド配列は、車両100の目的地への近さを表すセルの配列である。人工ポテンシャルフィールド配列の複数のセルの値は、目標位置または目的地からの車両100の現在位置の近接度の関数である。目的地は、中間目標であってもよいし、最終目標であってもよい。中間目標は、車両の現在位置と最終目標との間に位置する目的地である。中間目標は、最終目標への足がかりの役割を果たすことができる。
【0046】
目標スコア配列モジュール244は、プロセッサ110によって実行されると、プロセッサ110に、安全基準を満たす衝突確率配列のセルに対応する複数のセルを有する目標スコア配列を生成させる命令を含むことができる。目標スコア配列のセルの値は、衝突確率配列と人工ポテンシャルフィールド配列の対応するセルの値に基づいている。たとえば、
図5Fを参照すると、衝突確率配列503および人工ポテンシャルフィールド配列504の対応するセルに基づく値を有するセルを含む目標スコア配列505が示されている。また、最も望ましい値を有すると決定されたセルによって表される場所506も示されている。最も望ましい値は、車両100が他の物体との衝突を回避するために移動すべき場所(位置)を表すが、同時に中間目標または最終目標に向かって移動すべき場所を表す。最も望ましい値は、高い値であってもよいし、低い値であってもよい。
【0047】
目標スコア配列の複数のセルの値は、下記(1)式により表される。
【数1】
ここで、oiは目標スコア配列の複数のセルの値であり、φ’iは人工ポテンシャルフィールド配列の複数のセルの値であり、s’iは衝突確率配列の複数のセルの値であり、βは安全性の相対的重要度を表す攻撃性係数である。
目標スコア配列の中で最も高い値を有するセルT’tは、oiを変数とするargmax関数を用いて下記式(2)により表される。
【数2】
【0048】
車両制御モジュール245は、プロセッサ110によって実行されると、最高値を有する目標スコア配列内のセルを表す場所に車両運動コントローラ190が車両100を誘導するように、プロセッサ110に指示させる命令を含むことができる。たとえば、
図5Fおよび
図5Gを参照すると、車両100の車両運動コントローラ190は、車両100を、目標スコア配列505の最も望ましい値を表す場所506に誘導する。このように、目標指向型ナビゲーションシステム200は、衝突確率配列503(車両の安全性)および人工ポテンシャルフィールド配列504(車両が移動したい目的地)の両方を満たす目標に向かって車両100を操縦することができる。
【0049】
目標更新モジュール246は、プロセッサ110によって実行されると、車両100が目標位置に到達したときに、プロセッサ110に目標位置を新しい目標位置に更新させる命令を含むことができる。たとえば、
図5Gを参照すると、車両が場所506に到達した後、目標指向型ナビゲーションシステム200は、前述した方法を再び実行して、車両100が移動する新たな目標位置を決定することができる。このように、目標指向型ナビゲーションシステム200は、移動する最終目標を決定することができ、その後、経路計画システム150を使用して経路を決定することができる。経路は、車両100が移動する場所を表す中間目標に分割することができる。車両がひとつの中間目標から別の目標に移動するにつれて、車両100は最終目標に近づいていく。
【0050】
たとえば、
図6は、車両100が出発位置602と最終目標604を有することを示している。出発位置602は、車両100が出発する場所であり、最終目標604は、車両100の目的地が終わる場所である。ここで、経路計画システム150は、道路に沿った経路を考案する。経路は、いくつかの中間目標606、608、610、612を含む。ここで、中間目標606は、人工ポテンシャルフィールドの中心を表してもよい。前述したように、目標指向型ナビゲーションシステム200は、汎用ナビゲーションシステム130からの情報とともに人工ポテンシャルフィールドを利用して、車両を目標、この場合は中間目標606に向けて操縦する。中間目標606に到達した後、目標指向型ナビゲーションシステム200は、別の中間目標608を追加する。中間目標608に到達した後、目標指向型ナビゲーションシステム200は、中間目標610、次いで中間目標612、最後に最終目標604に向けてコースを設定する。
【0051】
ハンドオーバモジュール247は、プロセッサ110によって実行されると、プロセッサ110に、目標指向型ナビゲーションシステム200と汎用ナビゲーションシステム130との間のハンドオーバ制御を行わせる命令を含むことができる。
図6を参照すると、出発位置602から最終目標604への経路は、中間目標606、608、610、および612に分割されてもよく、それぞれの目標は、それを取り囲む人工ポテンシャルフィールドを有する。車両100が経路に沿って位置する場所に応じて、目標指向型ナビゲーションシステム200が車両100を制御してもよいし、汎用ナビゲーションシステム130が車両100を制御してもよい。
【0052】
たとえば、
図6に示される経路は、出発位置602と中間目標606間との間の期間621を含む。拡張された期間(期間621および622)の間、ハンドオーバモジュール247は、プロセッサ110に、目標指向型ナビゲーションシステム200が車両100を制御すべきであると決定させることができる。これは、車両100が多数の車両が走行する高速道路に合流しようとしており、目標指向型ナビゲーションシステム200が高速道路の入口を管理できるのに対し、単にレーンキープシステムであってもよい汎用ナビゲーションシステム130は、一般的にはできないためである。
【0053】
車両100が経路に沿って走行を続けると、車両は中間目標608に到達する。中間目標608において、ハンドオーバモジュール247は、プロセッサ110に、車両100が直線道路に沿って走行しているので、目標指向型ナビゲーションシステム200の代わりに汎用ナビゲーションシステム130を利用することができる(期間623)と判断させることができる。ここで、車両100は単に直線道路に沿って走行しているので、ハンドオーバモジュール247は、プロセッサ110に、レーンキープアシストシステムが道路の車線に沿って車両を操縦するのに適切であると判断させることができる。
【0054】
車両100が中間目標610に向けて道路に沿って進み続けると、ハンドオーバモジュール247は、プロセッサ110に、目標指向型ナビゲーションシステム200が車両100のコマンドを汎用ナビゲーションシステム130から引き継ぐべきであると決定させることができる。(期間624、625、および626)。ここでは、車両100が車線を変更し、最終目標604に通じる出口ランプに向かって移動しているので、ハンドオーバモジュール247は、プロセッサ110に、車両100の安全性と車両100が移動しようとする目的地の両方を考慮して、目標指向型ナビゲーションシステム200が車両100を制御すべきであると決定させることができる。
【0055】
ハンドオーバモジュール247は、プロセッサ110に、汎用ナビゲーションシステム130が車両100を操縦するのに適切である状況、および、目標指向型ナビゲーションシステム200が車両100を操縦するのに利用されるべき他の状況を決定させる。前述した例では、汎用ナビゲーションシステム130は、車両100が直線道路に沿って走行しているとき、または、他の方法で同じ車線に留まろうとしているときに利用することができる。しかしながら、車両100が、最終目標または中間目標に到達するために、より複雑な操作を実行する必要がある場合、ハンドオーバモジュール247は、プロセッサ110に、車両100の制御を目標指向型ナビゲーションシステム200に切り替えさせることができる。
【0056】
図7は、汎用ナビゲーション制御システムおよび目標指向型ナビゲーションシステムを有する車両のための方法700を示している。方法700は、
図1の車両100および
図2の目標指向型ナビゲーションシステム200の観点から説明される。しかしながら、方法700は、
図1の車両100および/または
図2の目標指向型ナビゲーションシステム200によって必ずしも実行されるとは限らず、いくつかの異なる状況のうちの任意のひとつで実行されるように適合されてもよい。
【0057】
ここで、方法700はステップ702から始まり、目標更新モジュール246がプロセッサ110に目標位置を受信させる。目標位置は、経路の開始と経路の終了との間の中間目標位置であってもよいし、経路の終了を表す最終目標であってもよい。ステップ704において、受信モジュール241は、プロセッサ110に車両100の位置(現在位置)を受信させる。車両100の位置は、車両100のGNSS145によって生成されてもよい。
【0058】
ステップ706において、目標更新モジュール246は、プロセッサ110に、車両100がステップ702で示された目標位置に到達したか否かを判定させる。これは、目標位置と車両の位置とを比較することによって行うことができる。実質的に一致する場合、方法700は終了する。しかしながら、車両が目標位置に到達していない場合、方法は方法710に進む。方法710は、目標指向型ナビゲーションシステム200を利用するための一連のステップに関する。方法710は、すべてのステップ712~722またはステップのサブセットを含むことができる。さらに、方法710は、記載された順序で実行されなくてもよい。
【0059】
方法710は、ステップ712から始まり、受信モジュール241は、プロセッサ110に、車両100の汎用知覚システム131から知覚データを受信させる。前述したように、知覚データは、車両100の外部にあるひとつ以上の物体に関する情報を含むことができる。
【0060】
ステップ714において、離散化モジュール242は、プロセッサ110に、知覚データを車両100の現在位置に隣接する領域に離散化させる。
図5Cに最もよく示されているように、
図5Bの知覚データ501は、複数の格子502に離散化されている。離散化モジュール242は、プロセッサ110によって実行されると、プロセッサ110に、車両100の現在位置に隣接する車両前方のK×Kの領域を、ふたつ以上の軸に沿って複数の格子を有するグリッドに分割させる命令をさらに含むことができる。
【0061】
ステップ716において、衝突確率モジュール243は、プロセッサ110に、複数の格子に対応する複数のセルを有する衝突確率配列を生成させる。衝突確率配列のセルは、車両100が衝突確率配列のセルによって表される領域に移動した場合の衝突の可能性を示し、衝突確率配列のどのセルが安全基準を満たすかを決定する。たとえば、
図5Dを参照すると、衝突確率配列503が示されている。
【0062】
ステップ718において、衝突確率モジュール243は、プロセッサ110に、衝突確率配列のどのセルが安全基準を満たすかを決定させる。衝突確率配列503は、それらが安全基準を満たすことを示すために陰影が付けられたセルの一部を含む。安全基準は、車両100が衝突確率配列503の安全基準を満たすひとつ以上のセルによって表される位置に移動した場合に、車両100が他の物体と衝突する可能性が低いようなものとすることができる。したがって、衝突確率配列503の陰影付き領域は、安全基準を満たすセルを示し、車両100が安全基準を満たすセルによって表される位置に移動した場合、車両100が他の物体と衝突する可能性が低いことを示す。
【0063】
ステップ719において、受信モジュール241は、プロセッサ110に人工ポテンシャルフィールド配列を受信させる。前述したように、人工ポテンシャルフィールド配列は、目的地に対する車両100の近さを表すセルの配列である。人工ポテンシャルフィールド配列の複数のセルの値は、目標位置または目的地からの車両100の現在位置の近接度の関数である。目的地は、中間目標でもよいし、最終目標でもよい。
【0064】
ステップ720において、目標スコア配列モジュール244は、プロセッサ110に、目標スコア配列を生成させる。目標スコア配列は、安全基準を満たした衝突確率配列のセルに対応する複数のセルを含むことができる。目標スコア配列のセルの値は、衝突確率配列と人工ポテンシャルフィールド配列の対応するセルの値に基づいている。たとえば、
図5Fを参照すると目標スコア配列505が示されており、目標スコア配列505は、衝突確率配列503および人工ポテンシャルフィールド配列504の対応するセルに基づく値を有するセルを含む。また、最も望ましい値を有すると決定された、セルによって表される場所506も示されている。最も望ましい値は、車両100が他の物体との衝突を回避するために移動すべき位置を表すが、同時に中間目標または最終目標に向かって移動すべき位置を表す。最も望ましい値は、高い値でもよいし、低い値でもよい。
【0065】
ステップ722において、車両制御モジュール245は、最高値を有する目標スコア配列内のセルを表す場所に車両運動コントローラ190が車両100を誘導するように、プロセッサ110に指示させる。たとえば、
図5Fおよび
図5Gを参照すると、車両運動コントローラ190は、車両100を、目標スコア配列505の最も望ましい値を表す場所506に誘導する。このように、目標指向型ナビゲーションシステム200は、衝突確率配列503(車両の安全性)および人工ポテンシャルフィールド配列504(車両が移動したい目的地)の両方を満たす目標に向かって車両100を操縦することができる。
【0066】
方法710が完了した後、方法700はステップ702に戻り、再び処理が開始される。この例では、方法700を完了した後に受信した目標位置は、新たな目標位置であってもよい。
【0067】
図8を参照すると、汎用ナビゲーション制御システムおよび目標指向型ナビゲーションシステムを有する車両のための別の方法800が示されている。方法800は、
図1の車両100および
図2の目標指向型ナビゲーションシステム200の観点から説明される。しかしながら、方法800は、
図1の車両100および/または
図2の目標指向型ナビゲーションシステム200によって必ずしも実行されるとは限らず、いくつかの異なる状況のうちの任意のひとつで実行されるように適合されてもよい。
【0068】
方法800は、
図6に示され、説明されたものと同様に、最終目標および一連の中間目標を利用するための方法を記述している。方法800はステップ802から始まり、目標更新モジュール246は、プロセッサ110に最終的な目標位置を受信させる。最終目標位置は、入力システム180を介して車両100の乗員により提供されてもよい。ステップ804において、目標更新モジュール246は、プロセッサ110に現在の車両位置を受信させる。現在の車両位置は、GNSS145によって提供されてもよい。
【0069】
ステップ806において、目標更新モジュール246は、プロセッサ110に、車両100が最終目標位置に到達したか否かを判定させる。車両100が最終目標位置に到達した場合、方法800は終了する。そうでなければ、方法はステップ808に進む。ステップ808において、目標更新モジュール246は、プロセッサ110に、現在の車両位置から最終目標位置への経路を決定させる。これは、最終目標、現在の車両位置、および地図データベース160からの地図を利用して、最終目標に到達するために車両100が走行するための経路を生成する経路計画システム150によって実行することができる。さらに、プロセッサ110は、ステップ810に示されるように、ひとつ以上の中間目標位置を決定することもできる。
【0070】
ステップ812において、受信モジュール241は、プロセッサ110に、目標位置に基づいて人工ポテンシャルフィールド配列を受信させる。目標位置は、中間目標位置であってもよいし、最終目標であってもよい。前述したように、人工ポテンシャルフィールド配列は、米国特許出願第16/502,602号に記載されているように生成することができ、この出願は、前述したように、その全体が参照により組み込まれる。
【0071】
ステップ814において、
図7の方法710が実行される。ただし、ステップ719に代えて、ステップ812を実行している。前述したように、
図7の方法710は、人工ポテンシャルフィールド配列と、車両100の汎用ナビゲーションシステム130の汎用知覚システム131からの情報を利用して、車両100を目標に誘導することができる。
【0072】
ステップ816において、車両100が中間目標位置に到達すると、中間目標位置は消去され、方法800はステップ804に戻り、現在の車両位置を決定して、車両が最終目標に到達したか否かを判定する(ステップ806)。前述したように、車両が最終目標に到達した場合、方法800は終了し、そうでない場合、方法800は、車両が最終目標に到達するまで継続する。
【0073】
図9を参照すると、汎用ナビゲーション制御システムおよび目標指向型ナビゲーションシステムを有する車両のための別の方法900が示されている。方法900は、
図1の車両100および
図2の目標指向型ナビゲーションシステム200の観点から説明される。しかしながら、方法900は、
図1の車両100および/または
図2の目標指向型ナビゲーションシステム200によって必ずしも実行されるとは限らず、いくつかの異なる状況のうちの任意のひとつで実行されるように適合されていてもよい。
【0074】
方法900は、
図8の方法800に幾分類似している。このように、前述の説明が方法900にも同様に適用可能であることを理解した上で、同様のステップを簡単に説明する。目標更新モジュール246は、ステップ902、904に示されるように、プロセッサ110に最終目標位置および現在の車両位置を受信させる。車両100が最終目標に到達した場合、方法900は終了する。
【0075】
しかしながら、ステップ906で判定されるように、最終目標にまだ到達していない場合、方法900は、ステップ908に進む。ステップ908において、ハンドオーバモジュール247は、プロセッサ110に、車両100の制御を、汎用ナビゲーションシステム130から目標指向型ナビゲーションシステム200に引き渡すべきか否か判定させる。たとえば、車両100が直線道路を走行している場合、方法900は、汎用ナビゲーションシステム130が車両100を道路に沿って操縦するのにより適切であると判断し、ステップ917に進む。
【0076】
しかしながら、ハンドオーバモジュール247が、プロセッサ110に、より複雑な操縦が車両100によって必要であると判断させる場合、方法900はステップ910に進み、車両100の制御が目標指向型ナビゲーションシステム200に引き渡され、中間目標位置が決定される。その後、ステップ912において、前述したようにステップ910の中間目標位置に基づいて人工ポテンシャルフィールド配列が生成され、次いでステップ914に示されるように方法710が実行される。方法710が実行された後、中間目標位置はステップ916に示されるように消去され、方法はステップ904に戻る。
【0077】
この明細書で説明されるシステムのいずれも、別個の集積回路、および/または、チップを用いて様々な構成によって構成できることが理解されるべきである。回路は接続パスを介して接続され、個別の回路間で信号を通信する。もちろん、別個の集積回路が論じられているが、様々な実施形態では、回路は、共通の集積回路基板に統合されてもよい。さらに、集積回路は、より少ない集積回路に組み合わせるか、またはより多くの集積回路に割することができる。
【0078】
別の実施形態では、説明された方法、および/または、それらの等価物は、コンピュータ実行可能命令で実装されてもよい。したがって、一実施形態では、非一時的なコンピュータ可読媒体は、格納されたコンピュータ実行可能命令とともに構成されている。格納されたコンピュータ実行可能命令は、機械(たとえば、プロセッサ、コンピュータなど)によって実行されると、機械、および/または、関連するコンポーネントに方法を実行させる。
【0079】
説明を簡単にするために、図に示されている方法論は一連のブロックとして示され説明されているが、いくつかのブロックは異なる順序で実行されることがあり、および/または、図示および説明から他のブロックと同時に実行されることがあり、方法論はブロックの順序によって制限されないことが理解されるべきである。さらに、例示されたブロックのすべてが、例示的な方法論を実装するために使用されてもよい。ブロックは、複数のコポーネントに結合、または、分離されることがある。さらに、追加の、および/または、代替の方法論は、図示されていない追加のブロックを使用することができる。
【0080】
この明細書では詳細な実施形態が開示されている。しかしながら、開示された実施形態は、例としてのみ意図されていることが理解されるべきである。したがって、この明細書に開示される特定の構造的および機能的詳細は、限定事項として解釈されるべきではなく単に請求項の基礎として、および、実質的に任意の適切な詳細な構造でこの明細書の態様をさまざまに使用することを当業者に教示するための代表的な基礎としてのみ解釈されるべきである。さらに、この明細書で使用される用語および語句は、限定することを意図するものではなく、可能な実装の理解可能な説明を提供することを意図している。
【0081】
図中のフローチャート、および、ブロック図は、様々な実施形態による、システム、方法、および、コンピュータプログラム製品の可能な実装のアーキテクチャ、機能、および、動作を示している。これに関して、フローチャート、または、ブロック図の各ブロックは、指定された論理機能を実装するためのひとつ以上の実行可能な命令を含むコードのモジュール、セグメント、または、部分を表すことができる。また、一部の代替実装では、ブロックに記載されている機能が、図に記載されている順序とは異なる順序で発生する場があることにも注意されるべきである。たとえば、連続して示されたふたつのブロックは、実際には実質的に同時実行されてもよいし、関係する機能に応じて、ブロックが逆の順序で実行されることもある。
【0082】
上記のシステム、コンポーネント、および/または、プロセスは、ハードウェア、または、ハードウェアとソフトウェアの組み合わせで実現でき、ひとつの処理システムで集中方式によって、または、複数の相互接続された処理システムに異なる要素が分散している分散方式によって実現することができる。この明細書に記載の方法を実行するように適合されたあらゆる種類の処理システム、または、別の装置が適している。ハードウェアとソフトウェアの組み合わせは、コンピュータで使用可能なプログラムコードを備えた処理システムであり、読み込まれて実行されると、ここで説明する方法を実行するように処理システムを制御する。システム、コンポーネント、および/または、処理は、たとえば、機械によって読み取り可能であって、ここに記述された処理、および、方法を実行するために機械によって実行可能な指令のプログラムに実体的に実装された、コンピュータプログラム製品の記憶装置、または、他のデータプログラムの記憶装置として、コンピュータによって読み取り可能な記憶装置に埋め込むことができる。これらの要素は、この明細書に記載の方法の実施を可能にし、処理システムにロードされたときにこれらの方法を実行できるすべての機能を含むアプリケーション製品に組み込むこともできる
【0083】
さらに、この明細書で説明された構成は、たとえば記憶されるなどして、実施されるコンピュータ可読プログラムコードを有するひとつ以上のコンピュータ可読媒体に具現化されるコンピュータプログラム製品の形をとることができる。ひとつ以上のコンピュータ可読媒体の任意の組み合わせが利用されてもよい。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体であり得る。「コンピュータ可読記憶媒体」という語句は、非一時的な記憶媒体を意味する。コンピュータ可読媒体は、限定されるものではないが、不揮発性媒体および揮発性媒体を含む、形態をとってもよい。不揮発性媒体には、たとえば、光ディスク、磁気ディスクなどが含まれる。揮発性媒体には、たとえば、半導体メモリ、ダイナミックメモリなどが含まれる。そのようなコンピュータ可読媒体の限定的ではない例には、フロッピーディスク、フレキシブルディスク、ハードディスク、磁気テープ、および、その他の磁気媒体、または、ASIC、または、グラフィックスプロセッシングユニット(GPU)、または、CD、および、その他の光学媒体、または、RAM、または、ROM、または、メモリチップ、または、メモリカード、または、メモリスティック、または、他の媒体を含むことができ、これらは、コンピュータ、プロセッ、または、他の電子デバイスが読み取り可能である。この明細書の文脈において、コンピュータ可読記憶媒体は、命令実行システム、装置、またはデバイスによって、またはそれに関連して使用するためのプログラムを含むか、または、記憶することができる任意の有形の媒体であり得る。
【0084】
以下の説明は、この明細書で使用される選択された用語の定義を含んでいる。定義には、用語の範囲に含まれ、さまざまな実装に使用できるコンポーネントのさまざまな例や形式が含まれている。例は、制限することを意図したものではない。用語の単数形と複数形の両方が定義内にある場合がある。
【0085】
「ひとつの実施形態」、「一実施形態」、「ひとつの例」、「一例」などへの言及は、そのように説明された実施形態、または、例が、特定の特徴、構造、特性、内部特性、要素、または、制限を含み得ることを示すが、それらの実施形態、または、例が、必須のものとして、特定の特徴、構造、特性、内部特性、要素、または、制限を含むことを示すものではない。さらに、「一実施形態では」という語句の繰り返しの使用は、同じ実施形態を指す場合があるが、必ずしもそうであるとは限らない。
【0086】
この明細書で使用される「モジュール」は、コンピュータ、または、電気ハードウェアコンポーネント、ファームウェア、命令を格納する非遷移的なコンピュータ可読媒体、および/または、これらのコンポーネントの組み合わせを含み、これらは、機能、または、アクションを実行するか、および/または、別のロジック、方法、および/または、システムに、機能、または、アクションを発揮させるように構成されている。モジュールは、アルゴリズムによって制御されるマイクロプロセッサ、多数の電気素子を含む論理回路(たとえば、ASIC)、アナログ回路、デジタル回路、プログラムされた論理デバイス、実行時にアルゴリズムを実行する命令を含むメモリデバイスなどを含むことができる。モジュールは、ひとつ以上の実施形態では、ひとつ以上のCMOSゲート、ゲートの組み合わせ、または他の回路構成要素を含む。複数のモジュールが説明される場合、ひとつ以上の実施形態は、複数のモジュールをひとつの物理モジュール構成要素に組み込むことを含む。同様に、単一のモジュールが説明される場合、ひとつ以上の実施形態は、複数の物理的構成要素に、単一のモジュールを分配することを含む。
【0087】
さらに、この明細書で使用されるモジュールには、タスクを実行したりデータ型を実装したりするルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。さらなる態様では、メモリは一般に、言及されたモジュールを格納する。モジュールに関連付けられたメモリは、プロセッサ、RAM、ROM、フラッシュメモリ、または、別の適切な電子記憶媒体内に埋め込まれたバッファ、または、キャッシュである場合ある。さらに別の態様では、この開示によって想定されるモジュールは、特定用途向け集積回路(ASIC)、システムオンチップ(SoC)のハードウェアコンポーネント、プログラマブルロジックアレイ(PLA)、グラフィックス処理装置(GPU)、または開示された機能を実行するための定義された構成セット(たとえば、命令)が組み込まれた別の適切なハードウェアコンポーネントとして実装される。
【0088】
ひとつ以上の構成では、この明細書で説明されるひとつ以上のモジュールは、人工知能要素、または、計算知能要素、たとえば、ニューラルネットワーク、ファジーロジック、または、他の機械学習アルゴリズムを含むことができる。さらに、ひとつ以上の構成では、ひとつ以上のモジュールを、この明細書で説明する複数のモジュール間で分散させることできる。ひとつ以上の構成では、この明細書で説明されているふたつ以上のモジュールを組み合わせて単一のモジュールにすることができる。
【0089】
コンピュータ可読媒体上で実施されるプログラムコードは、無線、有線、光ファイバ、ケーブル、RFなど、または、前述要素の任意の適切な組み合わせを含むがこれらに限定されない任意の適切な媒体を使用して送信することができる。この構成の態様の動作を実行するためのコンピュータプログラムコードは、Java(登録商標)、Smalltalk、C++などのオブジェクト指向プログラミング言語、および、Cプログラミング言語、同様のプログラミング言語などを含む従来の手続き型プログラミング言語を含むひとつ以上のプログラミング言語の任意の組み合わせで書くことができる。プログラムコードは、完全にユーザのコンピュータにおいて、一部はユーザのコンピュータにおいて、スタンドアロンソフトウェアパッケージとして、一部はユーザのコンピュータにおいて、残る一部はリモートコンピュータにおいて、または、完全にリモートコンピュータ、または、サーバーで実行することができる。後者のシナリオでは、リモートコンピュータは、ローカルエリアネットワーク(LAN)またはワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを介してユーザのコンピュータに接続されてもよく、または接続は、外部コンピュータ(たとえば、インターネットサービスプロバイダを使用してインターネットを介して)に接続されてもよい。
【0090】
この明細書で使用される要素の数は、ひとつ、または、ふたつ以上として定義される。この明細書で使用される「複数」という用語は、ふたつ、または、ふたつ以上として定義される。この明細書で使用される「別の」という用語は、少なくとも第2、または、それ以上として定義される。この明細書で使用される「含む」、および/または、「有する」という用語は、「備える」を意味し、すなわち、他の要素の存在を許容する用語として定義される。「・・・と・・・との少なくともひとつ」という表現は、関連付けて列挙された項目のひとつ、または、複数のありとあらゆる可能な組み合わせを指し、それらを包含するものとして解釈されるべきである。一例として、「A、B、および、Cのうちの少なくともひとつ」という語句は、Aのみ、Bのみ、Cのみ、またはそれらの任意の組み合わせ(たとえば、AB、AC、BC、または、ABC)を含む。
【0091】
この明細書の態様は、その精神、または、本質的な属性から逸脱することなく、他の形態で具体化することができる。したがって、この明細書の範囲を示すために、前述の明細書ではなく、以下の特許請求の範囲を参照する必要がある。
【0092】
この明細書には、上記実施形態によって、以下に列挙する複数の技術的思想が開示されていることが当業者に理解される。<技術的思想1>汎用ナビゲーションシステムを有する車両のための目標指向型ナビゲーションシステムであって、ひとつ以上のプロセッサと、ひとつ以上の前記プロセッサと通信するメモリと、を備え、前記メモリは、受信モジュールと、離散化モジュールと、衝突確率モジュールと、目標スコア配列モジュールと、車両制御モジュールとを格納しており、前記受信モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、前記車両の知覚システムから知覚データを受信させる命令を含み、前記離散化モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、前記知覚データを前記車両の現在位置に隣接し、複数の格子で構成される領域に離散化させる命令を含み、前記衝突確率モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、前記複数の格子に対応する複数のセルを有する衝突確率配列を生成させる命令を含み、前記衝突確率配列のセルは、前記衝突確率配列のセルによって表される領域に前記車両が移動した場合の衝突の可能性を示しており、前記衝突確率配列のどのセルが安全基準を満たすかを決定させる命令を含み、前記受信モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、前記衝突確率配列の複数のセルに対応する複数のセルを有する人工ポテンシャルフィールド配列を受信させる命令を含み、前記人工ポテンシャルフィールド配列の複数のセルの値は、目標位置からの前記車両の現在位置の近接度の関数であり、前記目標スコア配列モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、安全基準を満たす前記衝突確率配列のセルに対応する複数のセルを有する目標スコア配列を生成させる命令を含み、前記目標スコア配列のセルの値は、前記衝突確率配列と前記人工ポテンシャルフィールド配列の対応するセルの値に基づいており、前記車両制御モジュールは、ひとつ以上の前記プロセッサによって実行されると、最高値を有する前記目標スコア配列内のセルを表す場所に車両制御システムが前記車両を誘導するように、ひとつ以上の前記プロセッサに指示させる命令を有する、目標指向型ナビゲーションシステム。
【0093】
<技術的思想2>前記離散化モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、前記車両の現在位置に隣接する車両前方のK×Kの領域を、ふたつ以上の軸に沿って複数の格子を有するグリッドに分割する命令をさらに含む、技術的思想1に記載の目標指向型ナビゲーションシステム。<技術的思想3>前記衝突確率モジュールは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに、前記衝突確率配列のどのセルが前記安全基準を満たすかを決定するために、前記衝突確率配列の複数のセルの値を反転させる命令をさらに含む、技術的思想1に記載の目標指向型ナビゲーションシステム。<技術的思想4>前記目標スコア配列の複数のセルの値は、上記(1)式により表され、ここで、oiは前記目標スコア配列の複数のセルの値、φ’iは前記人工ポテンシャルフィールド配列の複数のセルの値、s’iは前記衝突確率配列の複数のセルの値で、βは、安全性の相対的な重要度を表す攻撃性係数である、技術的思想1に記載の目標指向型ナビゲーションシステム。<技術的思想5>前記目標スコア配列の中で最高値を有するセルが、上記(2)式により表される、技術的思想4に記載の目標指向型ナビゲーションシステム。
【0094】
<技術的思想6>前記メモリは、ひとつ以上の前記プロセッサによって実行されると、前記車両が前記目標位置に到達したときに、ひとつ以上の前記プロセッサに前記目標位置を新しい目標位置に更新させる命令を含む目標更新モジュールをさらに備える、技術的思想1に記載の目標指向型ナビゲーションシステム。<技術的思想7>前記新しい目標位置は、最終的な目標位置への経路に基づいて決定される、技術的思想6に記載の目標指向型ナビゲーションシステム。<技術的思想8>前記メモリは、ひとつ以上の前記プロセッサによって実行されると、ひとつ以上の前記プロセッサに以下を実行させる命令を含むハンドオーバ制御モジュールをさらに備え、前記ハンドオーバ制御モジュールがひとつ以上の前記プロセッサに実行させる命令は、経路に沿った前記車両の位置を決定し、ハンドオーバ制御システムにより、前記経路に沿った前記車両の位置に基づいて、前記目標指向型ナビゲーションシステムまたは前記汎用ナビゲーションシステムからのコマンドを利用するように前記車両制御システムに指示することである、技術的思想1に記載の目標指向型ナビゲーションシステム。
【0095】
<技術的思想9>汎用ナビゲーションシステムおよび目標指向型ナビゲーションシステムを有する車両を操作するための方法であって、前記車両の知覚システムから知覚データを受信するステップと、前記目標指向型ナビゲーションシステムによって、前記知覚データを、前記車両の現在位置に隣接し、複数の格子で構成される領域に離散化するステップと、前記目標指向型ナビゲーションシステムによって、前記複数の格子に対応する複数のセルを有する衝突確率配列を生成するステップと、前記目標指向型ナビゲーションシステムによって、前記衝突確率配列のどのセルが安全基準を満たすかを決定するステップと、前記目標指向型ナビゲーションシステムによって、前記衝突確率配列の複数のセルに対応する複数のセルを有する人工ポテンシャルフィールド配列を受信するステップと、前記目標指向型ナビゲーションシステムによって、前記安全基準を満たす前記衝突確率配列のセルに対応する複数のセルを有する目標スコア配列を生成するステップと、前記目標指向型ナビゲーションシステムによって、前記車両の車両制御システムに、最高値を有する前記目標スコア配列内のセルを表す場所に前記車両を誘導するように指示するステップと、を含み、前記衝突確率配列のセルは、前記衝突確率配列のセルによって表される領域に前記車両が移動した場合の衝突の可能性を示し、前記人工ポテンシャルフィールド配列の複数のセルの値は、目標位置からの前記車両の現在位置の近接度の関数であり、前記目標スコア配列のセルの値は、前記衝突確率配列と前記人工ポテンシャルフィールド配列の対応するセルの値に基づいている、方法。
【0096】
<技術的思想10>前記目標指向型ナビゲーションシステムによって、前記車両の現在位置に隣接する車両前方のK×Kの前記領域を、ふたつ以上の軸に沿って複数の格子を有するグリッドに分割するステップをさらに含む、技術的思想9に記載の方法。<技術的思想11>前記衝突確率配列のどのセルが前記安全基準を満たすかを決定するために、前記衝突確率配列の複数のセルの値を反転するステップをさらに含む、技術的思想9に記載の方法。<技術的思想12>前記目標スコア配列の複数のセルの値は、上記(1)式により表され、ここで、oiは前記目標スコア配列の複数のセルの値、φ’iは前記人工ポテンシャルフィールド配列の複数のセルの値、s’iは前記衝突確率配列の複数のセルの値で、βは、安全性の相対的な重要度を表す攻撃性係数である、技術的思想9に記載の方法。<技術的思想13>前記目標スコア配列の中で最高値を有するセルが、上記(2)式により表される、技術的思想12に記載の方法。
【0097】
<技術的思想14>前記車両が前記目標位置に到達したときに、前記目標位置を新しい目標位置に更新するステップをさらに含む、技術的思想9に記載の方法。<技術的思想15>前記新しい目標位置は、最終的な目標位置への経路に基づいて決定される、技術的思想14に記載の方法。<技術的思想16>経路に沿った前記車両の位置を決定するステップと、ハンドオーバ制御システムによって、前記経路に沿った前記車両の位置に基づいて、前記目標指向型ナビゲーションシステムまたは前記汎用ナビゲーションシステムからのコマンドを利用するように前記車両制御システムに指示するステップと、をさらに含む技術的思想9に記載の方法。
【0098】
<技術的思想17>汎用ナビゲーションシステムおよび目標指向型ナビゲーションシステムを有する車両を操作するための非一時的コンピュータ可読媒体であって、ひとつ以上のプロセッサによって実行されたときに、ひとつ以上の前記プロセッサに実行させる命令として、前記車両の知覚システムから知覚データを受信し、前記目標指向型ナビゲーションシステムによって、前記知覚データを、前記車両の現在位置に隣接し、複数の格子で構成される領域に離散化し、前記目標指向型ナビゲーションシステムによって、前記複数の格子に対応する複数のセルを有する衝突確率配列を生成し、前記目標指向型ナビゲーションシステムによって、前記衝突確率配列のどのセルが安全基準を満たすかを決定し、前記目標指向型ナビゲーションシステムによって、前記衝突確率配列の複数のセルに対応する複数のセルを有する人工ポテンシャルフィールド配列を受信し、前記目標指向型ナビゲーションシステムによって、前記安全基準を満たす前記衝突確率配列のセルに対応する複数のセルを有する目標スコア配列を生成し、前記目標指向型ナビゲーションシステムによって、前記車両の車両制御システムに、最高値を有する前記目標スコア配列内のセルを表す場所に前記車両を誘導するように指示すること、を含み、前記衝突確率配列のセルは、前記衝突確率配列のセルによって表される領域に前記車両が移動した場合の衝突の可能性を示し、前記人工ポテンシャルフィールド配列の複数のセルの値は、目標位置からの前記車両の現在位置の近接度の関数であり、前記目標スコア配列のセルの値は、前記衝突確率配列と前記人工ポテンシャルフィールド配列の対応するセルの値に基づいている、非一時的コンピュータ可読媒体。
【0099】
<技術的思想18>ひとつ以上の前記プロセッサによって実行されると、前記車両が前記目標位置に到達したときに、ひとつ以上の前記プロセッサに前記目標位置を新しい目標位置に更新させる命令をさらに含む、技術的思想17に記載の、非一時的コンピュータ可読媒体。<技術的思想19>前記新しい目標位置は、最終的な目標位置への経路に基づいて決定される、技術的思想18に記載の非一時的コンピュータ可読媒体。<技術的思想20>経路に沿った前記車両の位置を決定し、ハンドオーバ制御システムにより、前記経路に沿った前記車両の位置に基づいて、前記目標指向型ナビゲーションシステムまたは前記汎用ナビゲーションシステムからのコマンドを利用するように前記車両制御システムに指示する命令をさらに含む、技術的思想17に記載の非一時的コンピュータ可読媒体。
【符号の説明】
【0100】
100…車両、111…バス、110…プロセッサ、120…知覚センサ、121…LiDAR、122…カメラ、123…レーダ、124…ソナー、130…汎用ナビゲーションシステム、131…汎用知覚システム、132…汎用ナビゲーション意思決定システム、140…位置決めセンサ、145…GNSS、150…経路計画システム、160…地図データベース、180…入力システム、181…出力システム、185…アクチュエータコントローラ、190…車両運動コントローラ、195…ポテンシャルフィールド画像化システム、200…目標指向型ナビゲーションシステム、210…データストア、220…センサデータ、230…目標情報、240…メモリ、241…受信モジュール、242…離散化モジュール、243…衝突確率モジュール、244…目標スコア配列モジュール、245…車両制御モジュール、246…目標更新モジュール、247…ハンドオーバモジュール、300、400…システムフロー、501…知覚データ、502…格子、503…衝突確率配列、504…人工ポテンシャルフィールド配列、505…目標スコア配列、506…場所、602…出発位置、604…最終目標、606、608、610、612…中間目標