(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023012435
(43)【公開日】2023-01-25
(54)【発明の名称】自律車両のためのバッチ制御
(51)【国際特許分類】
G08G 1/123 20060101AFI20230118BHJP
G08G 1/09 20060101ALI20230118BHJP
G08G 1/00 20060101ALI20230118BHJP
G08G 1/0962 20060101ALI20230118BHJP
G01C 21/26 20060101ALI20230118BHJP
G08G 1/01 20060101ALI20230118BHJP
B60W 30/10 20060101ALI20230118BHJP
B60W 40/02 20060101ALI20230118BHJP
G01S 17/931 20200101ALI20230118BHJP
【FI】
G08G1/123 A
G08G1/09 F
G08G1/09 V
G08G1/00 X
G08G1/0962
G01C21/26 B
G08G1/01 A
B60W30/10
B60W40/02
G01S17/931
【審査請求】未請求
【請求項の数】20
【出願形態】OL
【外国語出願】
(21)【出願番号】P 2022105569
(22)【出願日】2022-06-30
(31)【優先権主張番号】17/374,855
(32)【優先日】2021-07-13
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】521265955
【氏名又は名称】トゥーシンプル, インコーポレイテッド
(74)【代理人】
【識別番号】100078282
【弁理士】
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【弁理士】
【氏名又は名称】森下 夏樹
(74)【代理人】
【識別番号】100181674
【弁理士】
【氏名又は名称】飯田 貴敏
(74)【代理人】
【識別番号】100181641
【弁理士】
【氏名又は名称】石川 大輔
(74)【代理人】
【識別番号】230113332
【弁護士】
【氏名又は名称】山本 健策
(72)【発明者】
【氏名】ジョイス タム
【テーマコード(参考)】
2F129
3D241
5H181
5J084
【Fターム(参考)】
2F129AA03
2F129BB03
2F129BB20
2F129BB22
2F129CC15
2F129CC16
2F129CC17
2F129CC18
2F129CC19
2F129CC20
2F129CC35
2F129DD20
2F129DD24
2F129DD29
2F129DD53
2F129DD57
2F129EE02
2F129EE52
2F129EE62
2F129EE78
2F129EE79
2F129EE80
2F129EE81
2F129EE82
2F129EE95
2F129EE96
2F129FF02
2F129FF12
2F129FF15
2F129FF20
2F129FF41
2F129FF51
2F129FF52
2F129FF57
2F129FF59
2F129FF62
2F129FF63
2F129FF64
2F129FF65
2F129FF66
2F129FF71
2F129FF72
2F129GG03
2F129GG04
2F129GG05
2F129GG06
2F129GG07
2F129GG17
2F129GG18
3D241BA11
3D241CE04
3D241CE06
3D241DB00Z
3D241DC31Z
3D241DC33Z
3D241DC39Z
3D241DC41Z
5H181AA01
5H181AA07
5H181AA27
5H181BB04
5H181BB05
5H181BB18
5H181BB20
5H181CC02
5H181CC03
5H181CC04
5H181CC12
5H181CC14
5H181EE12
5H181EE13
5H181EE15
5H181FF04
5H181FF10
5H181FF12
5H181FF13
5H181FF17
5H181FF27
5H181FF32
5H181LL01
5H181LL02
5H181LL04
5H181LL09
5J084AA01
5J084AA04
5J084AA07
5J084AB01
5J084AB07
5J084AB20
5J084AC02
5J084EA29
(57)【要約】
【課題】自律車両のためのバッチ制御の提供
【解決手段】自律車両(AV)に、最小限のリスク条件操縦を実施するように命令するためのシステムは、AVのフリートと、監督サーバとを備える。監督サーバは、フリートのうちの複数のAVに該当する、マクロ情報を受信する。監督サーバは、マクロ情報に基づいて、バッチコマンドを生成する。バッチコマンドは、1つまたはそれを上回る条件と関連付けられる。監督サーバは、各AVが1つまたはそれを上回る条件を満たすかどうかを決定する。監督サーバが、AVが1つまたはそれを上回る条件を満たすことを決定する場合、監督サーバは、バッチコマンドをAVに送信する。バッチコマンドは、最小限のリスク条件操縦を実施するための命令を含む。
【選択図】
図1
【特許請求の範囲】
【請求項1】
自律車両に最小限のリスク条件操縦を実施するように命令するためのシステムであって、前記システムは、
2つまたはそれを上回る自律車両を備えるフリートと、
前記フリートの各自律車両と通信するように構成される監督サーバと
を備え、
前記フリート内の各自律車両は、
車両センササブシステムであって、
車両健全性データを提供するように構成される少なくとも1つのセンサと、
車両場所データを提供するGPSユニットと
を備える、車両センササブシステムと、
車両駆動サブシステムと、
車両制御サブシステムと、
ネットワーク通信サブシステムを備える車載制御コンピュータと
を備え、
前記監督サーバは、
前記フリートのうちの複数の自律車両に該当するマクロ情報を受信することと、
少なくとも部分的に、前記マクロ情報に基づいて、バッチコマンドを生成することであって、前記バッチコマンドは、1つまたはそれを上回る条件と関連付けられる、ことと、
前記フリートのうちの自律車両毎に、
前記自律車両が前記1つまたはそれを上回る条件を満たすかどうかを決定することと、
前記自律車両が前記1つまたはそれを上回る条件を満たすことを決定することに応答して、前記バッチコマンドを前記自律車両に送信することであって、前記バッチコマンドは、最小限のリスク条件操縦を実施するための命令を備える、ことと
を行うように構成される、システム。
【請求項2】
前記バッチコマンドはさらに、前記バッチコマンドを前記フリート内の1つまたはそれを上回る他の自律車両に提供するための命令を備える、請求項1に記載のシステム。
【請求項3】
前記最小限のリスク条件操縦は、
前記自律車両を前記自律車両が現在進行している車線内で減速させることと、
前記自律車両を前記自律車両が現在進行している道路の片側のエリアに寄せさせることと、
前記自律車両を前記自律車両が現在進行している高速道路または車道から出させ、さらなる命令を受信するまで、運転を中止させることと
のうちの少なくとも1つを含む、請求項1に記載のシステム。
【請求項4】
前記監督サーバは、ユーザインターフェース上で選択された1つまたはそれを上回る条件を受け取るように構成される、請求項1に記載のシステム。
【請求項5】
前記監督サーバはさらに、
前記フリート内の各自律車両から前記車両健全性データおよび前記車両場所データを受け取ることと、
各自律車両によって提供される車両健全性データと、
各自律車両によって提供される車両場所データと、
各自律車両が進行しているエリアに関する天候データと、
各自律車両が進行しているエリアに関する交通データと
のうちの少なくとも1つに基づいて、前記フリートの自律車両が前記1つまたはそれを上回る条件を充足していることを決定することと
を行うように構成される、請求項1に記載のシステム。
【請求項6】
前記フリートの少なくとも1つの自律車両は、
前記自律車両と関連付けられる前記車載制御コンピュータを介して、前記バッチコマンドを前記監督サーバから受け取ることと、
前記自律車両と関連付けられるサブシステムによって集められ、かつ生成されたセンサデータおよび制御命令を利用することによって、前記バッチコマンドを実行することと
を行うように構成される、請求項1に記載のシステム。
【請求項7】
前記自律車両は、前記バッチコマンドを前記1つまたはそれを上回る他の自律車両に送信するように構成される、請求項2に記載のシステム。
【請求項8】
自律車両に最小限のリスク条件操縦を実施するように命令するための方法であって、前記方法は、
自律車両のフリートのうちの複数の自律車両に該当するマクロ情報を受信することと、
少なくとも部分的に、前記マクロ情報に基づいて、バッチコマンドを生成することであって、前記バッチコマンドは、1つまたはそれを上回る条件と関連付けられる、ことと、
前記フリートのうちの自律車両毎に、
前記自律車両が前記1つまたはそれを上回る条件を満たすかどうかを決定することと、
前記自律車両が前記1つまたはそれを上回る条件を満たすことを決定することに応答して、前記バッチコマンドを前記自律車両に送信することであって、前記バッチコマンドは、最小限のリスク条件操縦を実施するための命令を備える、ことと
を含む、方法。
【請求項9】
前記マクロ情報は、
前記複数の自律車両が進行している特定のエリア内の天候データと、
前記特定のエリアと関連付けられる交通データと、
前記自律車両と関連付けられる車載制御コンピュータ上にインストールされるソフトウェアアプリケーションのバージョン上で検出された潜在的セキュリティ脆弱性と、
前記特定のエリアと関連付けられる政府経路指定規制の変更と、
前記複数の自律車両上に配設されるコンポーネントにおける欠陥と、
前記複数の自律車両と関連付けられる健全性データにおける劣化と
のうちの少なくとも1つを含む、請求項8に記載の方法。
【請求項10】
前記1つまたはそれを上回る条件は、前記1つまたはそれを上回る条件が、具体的時間範囲において前記自律車両に関して照合されるようにスケジュールされるように、時間帯ベースである、請求項8に記載の方法。
【請求項11】
前記1つまたはそれを上回る条件は、前記1つまたはそれを上回る条件が、前記自律車両があるゾーン境界の中で運転しているとき、前記自律車両に関して照合されるように、場所ベースである、請求項8に記載の方法。
【請求項12】
前記1つまたはそれを上回る条件は、監督サーバが、前記監督サーバが前記マクロ情報を受信するにつれて、前記自律車両が前記1つまたはそれを上回る条件を満たすかどうかを決定するように、即座である、請求項8に記載の方法。
【請求項13】
前記1つまたはそれを上回る条件は、
前記自律車両が、高速道路、オン/オフランプ、多重車線道路、単一車線道路、または側道を備えるあるタイプの道路上を進行しているかどうかを決定することと、
前記自律車両が、道路上で特定の方向に進行しているかどうかを決定することと、
特定のタイプの工事ゾーンが前記自律車両からの閾値距離内にあるかどうかを検出することと、
前記自律車両が、特定のマイルマーカによって指定される道路のセクション上を進行しているかどうかを決定することと、
前記自律車両が、ゾーン境界を示すジオフェンス内を進行しているかどうかを決定することと、
前記自律車両と具体的場所との間の距離が特定の距離であるかどうかを決定することと、
前記自律車両上にインストールされるソフトウェアアプリケーションバージョンが、特定のバージョンであるかどうかを決定することと、
前記自律車両が、具体的天候条件下を進行しているかどうかを決定することと、
前記自律車両が、具体的交通条件下を進行しているかどうかを決定することと
のうちの少なくとも1つを含む、請求項8に記載の方法。
【請求項14】
前記マクロ情報は、ライブニュース報告、ライブ交通報告、ライブ天気予報、または法執行機関を備える第三者ソースから受信される、請求項8に記載の方法。
【請求項15】
非一過性コンピュータ可読媒体内に記憶される実行可能命令を備えるコンピュータプログラムであって、前記実行可能命令は、1つまたはそれを上回るプロセッサによって実行されると、前記1つまたはそれを上回るプロセッサに、
自律車両のフリートのうちの複数の自律車両に該当するマクロ情報を受信することと、
少なくとも部分的に、前記マクロ情報に基づいて、バッチコマンドを生成することであって、前記バッチコマンドは、1つまたはそれを上回る条件と関連付けられる、ことと、
前記フリートのうちの自律車両毎に、
前記自律車両が前記1つまたはそれを上回る条件を満たすかどうかを決定することと、
前記自律車両が前記1つまたはそれを上回る条件を満たすことを決定することに応答して、前記バッチコマンドを前記自律車両に送信することであって、前記バッチコマンドは、最小限のリスク条件操縦を実施するための命令を備える、ことと
を行わせる、コンピュータプログラム。
【請求項16】
前記1つまたはそれを上回る条件のうちの少なくとも1つの条件は、前記自律車両によって検出され、
前記少なくとも1つの条件は、
前記自律車両の健全性を潜在的に劣化させる故障コードが検出されるかどうかを決定することと、
前記自律車両内に配設される物理的コンポーネントにおける欠陥が検出されるかどうかを決定することと
を含む、請求項15に記載のコンピュータプログラム。
【請求項17】
前記命令は、前記1つまたはそれを上回るプロセッサによって実行されると、さらに、前記1つまたはそれを上回るプロセッサに、前記自律車両から、前記自律車両が前記最小限のリスク条件操縦を実施したことの確認メッセージを受信させる、請求項15に記載のコンピュータプログラム。
【請求項18】
前記命令は、前記1つまたはそれを上回るプロセッサによって実行されると、さらに、前記1つまたはそれを上回るプロセッサに、
少なくとも部分的に、センサデータに基づいて、前記自律車両によって進行される道路上の物体を検出することと、
前記物体が、第1のタイムスタンプにおいて、前記最小限のリスク条件操縦を実施することを邪魔するかどうかを決定することと、
前記物体が、前記第1のタイムスタンプにおいて、前記最小限のリスク条件操縦を実施することを邪魔することを決定することに応答して、
前記自律車両が前記物体を通過するまで、運転を継続することと、
第2のタイムスタンプにおいて、前記最小限のリスク条件操縦を実施することと
を行わせる、請求項15に記載のコンピュータプログラム。
【請求項19】
前記自律車両は、少なくとも1つのセンサを備え、前記少なくとも1つのセンサは、カメラ、光検出および測距(LiDAR)センサ、運動センサ、または赤外線センサを備える、請求項15に記載のコンピュータプログラム。
【請求項20】
前記自律車両は、トレーラに取り付けられるトラクタユニットである、請求項15に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、概して、自律車両に関する。より具体的には、本開示は、自律車両のためのバッチ制御に関連する。
【背景技術】
【0002】
自律車両技術の1つの目標は、目的地に向かって安全にナビゲートし得る、車両を提供することである。ある場合には、遷移中の自律車両のフリートは、交通、深刻な天候、および/または他のイベントによって影響され得る。例えば、深刻な天候条件または交通事故が、複数の自律車両に先立って、道路上で観察され得る。現在の自律車両技術は、複数の自律車両に、複数の自律車両に該当する、観察された情報に基づいて、安全性操縦を実施するように命令するように構成されていない。
【発明の概要】
【課題を解決するための手段】
【0003】
現在の自律車両技術は、複数の自律車両に、複数の自律車両に該当する、観察される情報に基づいて、安全性操縦を実施するように命令するように構成されていない。本開示は、コマンドを自律車両(AV)に通信することに関連する、種々の問題およびこれまで満たされていない必要性を認識する。本開示のある実施形態は、バッチコマンドを複数のAVに通信し、最小限のリスク条件(MRC)操縦を実施するために、上記に説明されるそれらの問題を含む、ユニークな技術的ソリューションを現在の自律車両技術の技術的問題に提供する。
【0004】
一実施形態では、AVに安全性操縦を実施するように命令するためのシステムは、監督サーバと通信可能に結合される、AVのフリートを備える。AVのフリートは、2つまたはそれを上回るAVを備える。監督サーバは、無線で、かつ遠隔で、フリートの各AVと通信するように構成される。
【0005】
フリート内の各AVは、車両センササブシステムと、車両駆動サブシステムと、車両制御サブシステムと、車載制御コンピュータとを備える。車両センササブシステムは、車両健全性データを提供するように構成される、少なくとも1つのセンサと、車両場所データを提供する、全地球測位システム(GPS)ユニットとを備える。車載制御コンピュータは、ネットワーク通信サブシステムを備える。
【0006】
監督サーバは、フリートのうちの複数のAVに該当する、マクロ情報を受信するように構成される。例えば、マクロ情報は、複数のAVが進行しているエリアに関連する、交通データ、天候データ、および/または任意の他の情報を含んでもよい。別の実施例では、マクロ情報は、複数のAV上にインストールされる、欠陥のあるハードウェアおよび/またはソフトウェアモジュール、特定のソフトウェアアプリケーション内で検出される、セキュリティ脆弱性等、複数のAVについての情報を含んでもよい。
【0007】
監督サーバは、少なくとも部分的に、マクロ情報に基づいて、バッチコマンドを生成する。バッチコマンドは、1つまたはそれを上回る条件と関連付けられる。1つまたはそれを上回る条件は、特定のエリア、特定の時間周期、特定のソフトウェアアプリケーションバージョン、または複数のAVのハードウェアおよび/またはハードウェアモジュールと関連付けられる、故障コードに関連し得る。
【0008】
フリートのうちのAV毎に、監督サーバは、AVが1つまたはそれを上回る条件を満たすかどうかを決定する。AVが1つまたはそれを上回る条件を満たすことを決定することに応答して、監督サーバは、バッチコマンドをAVに送信する。バッチコマンドは、最小限のリスク条件(MRC)操縦を実施するための命令を含む。例えば、MRC操縦は、AVに、AVが進行している道路の片側に寄せさせることを含んでもよい。別の実施例では、MRC操縦は、AVに、減速させることを含んでもよい。別の実施例では、MRC操縦は、AVに、再経路指定させ、それが現在進行している高速道路から出させることを含んでもよい。
【0009】
開示されるシステムは、いくつかの実践的用途および技術的利点を提供し、これは、1)複数のAVに該当する、マクロ情報を検出する、技術であって、マクロ情報は、交通データ、天候データ、複数のAV上にインストールされる、欠陥のあるハードウェアおよび/またはソフトウェアモジュール等の複数のAVについての情報等に関連し得る、技術と、2)マクロ情報に基づいて、バッチコマンドを生成する、技術であって、バッチコマンドは、特定のエリア、特定の時間周期、特定のソフトウェアアプリケーションバージョン、および/または複数のAVのハードウェアおよび/またはソフトウェアモジュールと関連付けられる、故障コードに関連する、1つまたはそれを上回る条件と関連付けられる、技術と、3)1つまたはそれを上回る条件を定義するためのユーザインターフェースを提供する技術と、4)AVのフリート内の各AVが、車両場所データ、車両健全性データ、AVによって進行される道路と関連付けられる、天候データ、およびAVによって進行される道路と関連付けられる、交通データに基づいて、1つまたはそれを上回る条件を満たすかどうかを決定する、技術と、5)フリート内の各AVが1つまたはそれを上回る条件を満たすことを決定することに応答して、バッチコマンドをAVのフリート内の各AVに送信する、技術とを含む。
【0010】
したがって、本開示に説明されるシステムは、AVのフリートに該当する、マクロ情報を考慮し、フリート内の各AVが1つまたはそれを上回る条件を満たすことを決定することに応答して、バッチコマンドをAVのフリートに発行するためのAVのフリートのためのより効率的、安全、かつ信頼性があるナビゲーションソリューションを決定する、実践的用途の中に統合されてもよい。
【0011】
さらに、本開示に説明されるシステムは、マクロ情報がAVのセンサによって観察されない場合でも、マクロ情報によって影響されるAVのためのより効率的、安全、および信頼性があるナビゲーションソリューションを決定する、付加的実践的用途の中に統合されてもよい。例えば、マクロ情報は、ライブニュース報告、ライブ交通報告、ライブ天気予報、法執行機関等を含む、第三者から受信されてもよい。故に、開示されるシステムは、現在の自律車両技術を改良し得る。
【0012】
さらに、開示されるシステムは、情報セキュリティおよびデータ損失防止技術を改良する、付加的実践的用途の中に統合されてもよい。例えば、複数のAV上にインストールされる、特定のソフトウェアアプリケーションバージョンにおけるセキュリティ脆弱性を検出し、セキュリティパッチをバッチコマンド内で送信することによって、AVの車載制御コンピュータシステムのメモリ内に記憶されるデータは、非認可アクセスから、したがって、データ抽出、操作、破壊、および搾取からセキュアに保たれる。これは、ひいては、車載制御コンピュータシステムの下層動作を改良する、付加的実践的用途を提供する。例えば、車載制御コンピュータシステムのメモリ内に記憶されるデータを保護することによって、AVの処理およびメモリリソースは、より効率的に利用されることができ、AVは、より精度を伴って、ナビゲートされることができる。
【0013】
本開示のある実施形態は、これらの利点のうちのいくつか、全てを含む、または全く含まなくてもよい。これらの利点および他の特徴は、付随の図面および請求項と関連して検討される、以下の詳細な説明からより明確に理解されるであろう。
本発明は、例えば、以下の項目を提供する。
(項目1)
自律車両に最小限のリスク条件操縦を実施するように命令するためのシステムであって、上記システムは、
2つまたはそれを上回る自律車両を備えるフリートと、
上記フリートの各自律車両と通信するように構成される監督サーバと
を備え、
上記フリート内の各自律車両は、
車両センササブシステムであって、
車両健全性データを提供するように構成される少なくとも1つのセンサと、
車両場所データを提供するGPSユニットと
を備える、車両センササブシステムと、
車両駆動サブシステムと、
車両制御サブシステムと、
ネットワーク通信サブシステムを備える車載制御コンピュータと
を備え、
上記監督サーバは、
上記フリートのうちの複数の自律車両に該当するマクロ情報を受信することと、
少なくとも部分的に、上記マクロ情報に基づいて、バッチコマンドを生成することであって、上記バッチコマンドは、1つまたはそれを上回る条件と関連付けられる、ことと、
上記フリートのうちの自律車両毎に、
上記自律車両が上記1つまたはそれを上回る条件を満たすかどうかを決定することと、
上記自律車両が上記1つまたはそれを上回る条件を満たすことを決定することに応答して、上記バッチコマンドを上記自律車両に送信することであって、上記バッチコマンドは、最小限のリスク条件操縦を実施するための命令を備える、ことと
を行うように構成される、システム。
(項目2)
上記バッチコマンドはさらに、上記バッチコマンドを上記フリート内の1つまたはそれを上回る他の自律車両に提供するための命令を備える、上記項目に記載のシステム。
(項目3)
上記最小限のリスク条件操縦は、
上記自律車両を上記自律車両が現在進行している車線内で減速させることと、
上記自律車両を上記自律車両が現在進行している道路の片側のエリアに寄せさせることと、
上記自律車両を上記自律車両が現在進行している高速道路または車道から出させ、さらなる命令を受信するまで、運転を中止させることと
のうちの少なくとも1つを含む、上記項目のいずれか1項に記載のシステム。
(項目4)
上記監督サーバは、ユーザインターフェース上で選択された1つまたはそれを上回る条件を受け取るように構成される、上記項目のいずれか1項に記載のシステム。
(項目5)
上記監督サーバはさらに、
上記フリート内の各自律車両から上記車両健全性データおよび上記車両場所データを受け取ることと、
各自律車両によって提供される車両健全性データと、
各自律車両によって提供される車両場所データと、
各自律車両が進行しているエリアに関する天候データと、
各自律車両が進行しているエリアに関する交通データと
のうちの少なくとも1つに基づいて、上記フリートの自律車両が上記1つまたはそれを上回る条件を充足していることを決定することと
を行うように構成される、上記項目のいずれか1項に記載のシステム。
(項目6)
上記フリートの少なくとも1つの自律車両は、
上記自律車両と関連付けられる上記車載制御コンピュータを介して、上記バッチコマンドを上記監督サーバから受け取ることと、
上記自律車両と関連付けられるサブシステムによって集められ、かつ生成されたセンサデータおよび制御命令を利用することによって、上記バッチコマンドを実行することと
を行うように構成される、上記項目のいずれか1項に記載のシステム。
(項目7)
上記自律車両は、上記バッチコマンドを上記1つまたはそれを上回る他の自律車両に送信するように構成される、上記項目のいずれか1項に記載のシステム。
(項目8)
自律車両に最小限のリスク条件操縦を実施するように命令するための方法であって、上記方法は、
自律車両のフリートのうちの複数の自律車両に該当するマクロ情報を受信することと、
少なくとも部分的に、上記マクロ情報に基づいて、バッチコマンドを生成することであって、上記バッチコマンドは、1つまたはそれを上回る条件と関連付けられる、ことと、
上記フリートのうちの自律車両毎に、
上記自律車両が上記1つまたはそれを上回る条件を満たすかどうかを決定することと、
上記自律車両が上記1つまたはそれを上回る条件を満たすことを決定することに応答して、上記バッチコマンドを上記自律車両に送信することであって、上記バッチコマンドは、最小限のリスク条件操縦を実施するための命令を備える、ことと
を含む、方法。
(項目9)
上記マクロ情報は、
上記複数の自律車両が進行している特定のエリア内の天候データと、
上記特定のエリアと関連付けられる交通データと、
上記自律車両と関連付けられる車載制御コンピュータ上にインストールされるソフトウェアアプリケーションのバージョン上で検出された潜在的セキュリティ脆弱性と、
上記特定のエリアと関連付けられる政府経路指定規制の変更と、
上記複数の自律車両上に配設されるコンポーネントにおける欠陥と、
上記複数の自律車両と関連付けられる健全性データにおける劣化と
のうちの少なくとも1つを含む、上記項目のいずれか1項に記載の方法。
(項目10)
上記1つまたはそれを上回る条件は、上記1つまたはそれを上回る条件が、具体的時間範囲において上記自律車両に関して照合されるようにスケジュールされるように、時間帯ベースである、上記項目のいずれか1項に記載の方法。
(項目11)
上記1つまたはそれを上回る条件は、上記1つまたはそれを上回る条件が、上記自律車両があるゾーン境界の中で運転しているとき、上記自律車両に関して照合されるように、場所ベースである、上記項目のいずれか1項に記載の方法。
(項目12)
上記1つまたはそれを上回る条件は、監督サーバが、上記監督サーバが上記マクロ情報を受信するにつれて、上記自律車両が上記1つまたはそれを上回る条件を満たすかどうかを決定するように、即座である、上記項目のいずれか1項に記載の方法。
(項目13)
上記1つまたはそれを上回る条件は、
上記自律車両が、高速道路、オン/オフランプ、多重車線道路、単一車線道路、または側道を備えるあるタイプの道路上を進行しているかどうかを決定することと、
上記自律車両が、道路上で特定の方向に進行しているかどうかを決定することと、
特定のタイプの工事ゾーンが上記自律車両からの閾値距離内にあるかどうかを検出することと、
上記自律車両が、特定のマイルマーカによって指定される道路のセクション上を進行しているかどうかを決定することと、
上記自律車両が、ゾーン境界を示すジオフェンス内を進行しているかどうかを決定することと、
上記自律車両と具体的場所との間の距離が特定の距離であるかどうかを決定することと、
上記自律車両上にインストールされるソフトウェアアプリケーションバージョンが、特定のバージョンであるかどうかを決定することと、
上記自律車両が、具体的天候条件下を進行しているかどうかを決定することと、
上記自律車両が、具体的交通条件下を進行しているかどうかを決定することと
のうちの少なくとも1つを含む、上記項目のいずれか1項に記載の方法。
(項目14)
上記マクロ情報は、ライブニュース報告、ライブ交通報告、ライブ天気予報、または法執行機関を備える第三者ソースから受信される、上記項目のいずれか1項に記載の方法。
(項目15)
非一過性コンピュータ可読媒体内に記憶される実行可能命令を備えるコンピュータプログラムであって、上記実行可能命令は、1つまたはそれを上回るプロセッサによって実行されると、上記1つまたはそれを上回るプロセッサに、
自律車両のフリートのうちの複数の自律車両に該当するマクロ情報を受信することと、
少なくとも部分的に、上記マクロ情報に基づいて、バッチコマンドを生成することであって、上記バッチコマンドは、1つまたはそれを上回る条件と関連付けられる、ことと、
上記フリートのうちの自律車両毎に、
上記自律車両が上記1つまたはそれを上回る条件を満たすかどうかを決定することと、
上記自律車両が上記1つまたはそれを上回る条件を満たすことを決定することに応答して、上記バッチコマンドを上記自律車両に送信することであって、上記バッチコマンドは、最小限のリスク条件操縦を実施するための命令を備える、ことと
を行わせる、コンピュータプログラム。
(項目16)
上記1つまたはそれを上回る条件のうちの少なくとも1つの条件は、上記自律車両によって検出され、
上記少なくとも1つの条件は、
上記自律車両の健全性を潜在的に劣化させる故障コードが検出されるかどうかを決定することと、
上記自律車両内に配設される物理的コンポーネントにおける欠陥が検出されるかどうかを決定することと
を含む、上記項目のいずれか1項に記載のコンピュータプログラム。
(項目17)
上記命令は、上記1つまたはそれを上回るプロセッサによって実行されると、さらに、上記1つまたはそれを上回るプロセッサに、上記自律車両から、上記自律車両が上記最小限のリスク条件操縦を実施したことの確認メッセージを受信させる、上記項目のいずれか1項に記載のコンピュータプログラム。
(項目18)
上記命令は、上記1つまたはそれを上回るプロセッサによって実行されると、さらに、上記1つまたはそれを上回るプロセッサに、
少なくとも部分的に、センサデータに基づいて、上記自律車両によって進行される道路上の物体を検出することと、
上記物体が、第1のタイムスタンプにおいて、上記最小限のリスク条件操縦を実施することを邪魔するかどうかを決定することと、
上記物体が、上記第1のタイムスタンプにおいて、上記最小限のリスク条件操縦を実施することを邪魔することを決定することに応答して、
上記自律車両が上記物体を通過するまで、運転を継続することと、
第2のタイムスタンプにおいて、上記最小限のリスク条件操縦を実施することと
を行わせる、上記項目のいずれか1項に記載のコンピュータプログラム。
(項目19)
上記自律車両は、少なくとも1つのセンサを備え、上記少なくとも1つのセンサは、カメラ、光検出および測距(LiDAR)センサ、運動センサ、または赤外線センサを備える、上記項目のいずれか1項に記載のコンピュータプログラム。
(項目20)
上記自律車両は、トレーラに取り付けられるトラクタユニットである、上記項目のいずれか1項に記載のコンピュータプログラム。
(摘要)
自律車両(AV)に、最小限のリスク条件操縦を実施するように命令するためのシステムは、AVのフリートと、監督サーバとを備える。監督サーバは、フリートのうちの複数のAVに該当する、マクロ情報を受信する。監督サーバは、マクロ情報に基づいて、バッチコマンドを生成する。バッチコマンドは、1つまたはそれを上回る条件と関連付けられる。監督サーバは、各AVが1つまたはそれを上回る条件を満たすかどうかを決定する。監督サーバが、AVが1つまたはそれを上回る条件を満たすことを決定する場合、監督サーバは、バッチコマンドをAVに送信する。バッチコマンドは、最小限のリスク条件操縦を実施するための命令を含む。
【図面の簡単な説明】
【0014】
本開示のより完全な理解のために、ここで、付随の図面および発明を実施するための形態に関連して検討される、以下の説明が参照され、同様の参照番号は、同様の部分を表す。
【0015】
【
図1】
図1は、バッチコマンドを複数の自律車両(AV)に通信するように構成される、システムの実施形態を図示する。
【0016】
【
図2】
図2は、AV監視アプリケーションの例示的スクリーンショットを図示する。
【0017】
【
図3】
図3および4は、オペレータがバッチコマンドを複数のAVに発行するための条件を定義している間の、AV監視アプリケーションの例示的スクリーンショットを図示する。
【
図4】
図3および4は、オペレータがバッチコマンドを複数のAVに発行するための条件を定義している間の、AV監視アプリケーションの例示的スクリーンショットを図示する。
【0018】
【
図5】
図5は、バッチコマンドを複数のAVに通信するための方法の例示的フローチャートを図示する。
【0019】
【
図6】
図6は、自律運転動作を実装するように構成される、例示的自律車両のブロック図を図示する。
【0020】
【
図7】
図7は、
図6のAVによって使用される、自律運転動作を提供するための例示的システムを図示する。
【0021】
【
図8】
図8は、
図6のAV内に含まれる、車載制御コンピュータのブロック図を図示する。
【発明を実施するための形態】
【0022】
詳細な説明
上記に説明されるように、以前の技術は、バッチコマンドを複数の自律車両(AV)に通信するための効率的であって、信頼性があって、安全なソリューションを提供することに失敗している。本開示は、以下の目的、すなわち、1)バッチコマンドを複数のAVに通信する、2)複数のAVのナビゲーションを改良する、4)複数のAVの追跡を改良する、5)複数のAVの自律動作の監視を改良する、および6)AV、他の車両、および歩行者のための安全運転体験を提供することのうちの1つまたはそれを上回るものを達成するための種々のシステム、方法、およびデバイスを提供する。一実施形態では、バッチコマンドを複数のAVに通信するためのシステム100が、
図1に関して説明される。一実施形態では、AVのステータスを監視し、バッチコマンドを発行するための条件を定義し、AVがバッチコマンド内の命令を実施する進行度を精査するための例示的シナリオが、それぞれ、
図2-4に関して説明される。一実施形態では、バッチコマンドを複数のAVに通信するための方法500が、
図5に関して説明される。一実施形態では、例示的AVおよびAVによる自律運転動作を実装するためのその種々のシステムおよびデバイスが、
図6-8に関して本明細書に説明される。
バッチコマンドを複数のAVに通信するための例示的システム
【0023】
図1は、バッチコマンド132を複数のAV602に通信するためのシステム100の実施形態を図示する。
図1はさらに、AV602a、602b、および602cを含む、複数のAV602によって進行される、道路102簡略化された概略図を図示する。一実施形態では、システム100は、AV602のフリートと、監督サーバ120とを備える(AV602のさらなる説明に関しては、
図6参照)。AV602のフリートは、2つまたはそれを上回るAV602を備える。監督サーバ120は、無線で、かつ遠隔で、各AV602と通信するように構成される。いくつかの実施形態では、システム100はさらに、ネットワーク110と、アプリケーションサーバ160と、遠隔オペレータ162とを備える。ネットワーク110は、システム100のコンポーネント間の通信を提供する。システム100は、示されるように、または任意の他の好適な構成において構成されてもよい。
【0024】
一般に、システム100は、(監督サーバ120において)AV602のフリートのうちの複数のAV602に該当する、マクロ情報130を受信する。監督サーバ120は、マクロ情報130に基づいて、バッチコマンド132を生成する。バッチコマンド132は、最小リスク条件または最小限のリスク条件(MRC)操縦134を実施するための命令を備える。換言すると、バッチコマンド132は、MRC操縦命令134を含んでもよい。例えば、バッチコマンド132は、そうすることが安全であるとき、AV602が現在進行している道路102の片側のエリアに寄せるためのMRC操縦命令134を含んでもよい。別の実施例では、バッチコマンド132は、そうすることが安全であるとき、再経路指定し、道路102から出るためのMRC操縦命令134を含んでもよい。別の実施例では、バッチコマンド132は、そうすることが安全であるとき、AV602をその現在の車線において減速させるためのMRC操縦命令134を含んでもよい。バッチコマンド132の他の実施例は、下記にさらに説明される。バッチコマンド132は、1つまたはそれを上回る条件136と関連付けられる。1つまたはそれを上回る条件136のいずれかは、場所ベース、時間ゾーンベース、または即座であってもよい。条件136の実施例は、下記にさらに説明される。AV602のフリートのうちの自律車両602毎に、監督サーバ120は、AV602が1つまたはそれを上回る条件136を満たすかどうかを決定する。AV602が1つまたはそれを上回る条件136を満たすことを決定することに応答して、監督サーバ120は、バッチコマンド132をAV602に送信する。
システムコンポーネント
【0025】
ネットワーク110は、限定ではないが、インターネット、イントラネット、プライベートネットワーク、パブリックネットワーク、ピアツーピアネットワーク、公衆交換電話網、セルラーネットワーク、ローカルエリアネットワーク(LAN)、都市規模ネットワーク(MAN)、広域ネットワーク(WAN)、および衛星ネットワークの全部または一部を含む、任意の好適なタイプの無線および/または有線ネットワークであってもよい。ネットワーク110は、当業者によって理解されるであろうように、任意の好適なタイプの通信プロトコルをサポートするように構成されてもよい。
【0026】
監督サーバ120は、概して、AV602の動作を監督するように構成される。監督サーバ120は、プロセッサ122と、ネットワークインターフェース124と、ユーザインターフェース126と、メモリ128とを備える。監督サーバ120のコンポーネントは、相互に動作可能に結合される。
【0027】
プロセッサ122は、本明細書に説明されるような種々の機能を実施する、1つまたはそれを上回る処理ユニットを含んでもよい。メモリ128は、プロセッサ122によってその機能を実施するために使用される、任意のデータおよび/または命令を記憶する。例えば、メモリ128は、プロセッサ122によって実行されると、監督サーバ120に、1つまたはそれを上回る本明細書に説明される機能を実施させる、ソフトウェア命令138を記憶する。
【0028】
監督サーバ120は、各AV602およびそのコンポーネントと信号通信する。監督サーバ120はさらに、センサデータ148および/またはマップデータ142を分析することによって、道路102上およびその周囲の物体を検出するように構成されてもよい。例えば、監督サーバ120は、物体検出機械学習モジュール140を実装することによって、道路102上およびその周囲の物体を検出してもよい。物体検出機械学習モジュール140は、物体を画像、ビデオ、赤外線画像、点群、レーダデータ等から検出するために、ニューラルネットワークおよび/または機械学習アルゴリズムを使用して実装されてもよい。物体検出機械学習モジュール140は、下記でさらにより詳細に説明される。
【0029】
一実施形態では、AV602は、貨物または積荷を1つの場所から別の場所に輸送するためにトレーラに取り付けられる、半トラックトラクタユニットを含んでもよい(
図6参照)。AV602は、
図6-8に詳細に説明される、複数のコンポーネントによってナビゲートされる。AV602の動作は、
図6により詳細に説明される。下記の対応する説明は、AV602のあるコンポーネントの簡単な説明を含む。要するに、AV602は、車載制御コンピュータ650を含み、これは、AV602の自律運転を促進するように動作される。本開示では、車載制御コンピュータ650は、同義的に、制御デバイス650と称され得る。
【0030】
図1の実施例では、第1のAV602aは、制御デバイス650aおよびセンサ646-1と関連付けられ、第2のAV602bは、制御デバイス650bおよびセンサ646-2と関連付けられ、第3のAV602cは、制御デバイス650cおよびセンサ646-3と関連付けられる。制御デバイス650a、650b、および650cはそれぞれ、
図6に説明される制御デバイス650のインスタンスである。センサ646-1、646-2、および6463はそれぞれ、
図6に説明されるセンサ646のインスタンスである。
【0031】
制御デバイス650は、概して、AV602およびそのコンポーネントの動作を制御するように構成される。制御デバイス650はさらに、進行するために安全であって、物体/障害物がない、AV602の正面の経路を決定し、AV602をその経路内を進行するようにナビゲートするように構成される。本プロセスは、
図6-8にさらに詳細に説明される。制御デバイス650は、概して、AV602の他のコンポーネントと信号通信する、1つまたはそれを上回るコンピューティングデバイスを含む(
図6参照)。制御デバイス650は、センサデータ148を、AV602上に位置付けられる、センサ646から受信し、進行するための安全経路を決定する。センサデータ148は、センサ646によって捕捉されたデータを含む。センサ646は、とりわけ、目印、車線区分線、車線境界、道路境界、車両、歩行者、道路/交通標識等、その検出ゾーンまたは視野内の任意の物体を捕捉するように構成される。センサ646は、カメラ、LiDARセンサ、運動センサ、赤外線センサ、レーダ、位置センサ、および同等物を含んでもよい。一実施形態では、センサ646は、AV602の周囲に位置付けられ、AV602を囲繞する、環境を捕捉してもよい。
【0032】
図1の実施例では、第1のAV602aと関連付けられる、センサ646-1は、センサデータ148aを監督サーバ120に送信し、第2のAV602bと関連付けられる、センサ646-2は、センサデータ148bを監督サーバ120に送信し、第3のAV602cと関連付けられる、センサ646-3は、センサデータ148cを監督サーバ120に送信する。
【0033】
制御デバイス650は、監督サーバ120と信号通信する。制御デバイス650は、例えば、ネットワーク110を介して、センサデータ148を監督サーバ120に通信するように構成される。制御デバイス650は、周期的に(例えば、毎分、数分毎、または任意の他の好適なインターバルで)、持続的に、および/またはセンサデータ148を送信するための監督サーバ120からの要求の受信に応じて、センサデータ148を監督サーバ120に通信してもよい。センサデータ148は、画像フィード、ビデオフィード、LiDARデータフィード、およびセンサ646の視野から捕捉された他のデータ等、AV602を囲繞する環境を説明する、データを含んでもよい。センサデータ148はさらに、AV602の場所座標を含んでもよい。制御デバイス650のさらなる説明に関しては、
図6の対応する説明を参照されたい。
例示的マクロ情報
【0034】
マクロ情報130は、概して、複数のAV602に該当する、任意の情報である。ある場合には、マクロ情報130は、1つのAV602に該当してもよい。マクロ情報130は、とりわけ、AV602、AV602のコンポーネント、AV602によって進行される道路102、交通データおよび天候データ等、AV602が進行している、または向かっている、エリアと関連付けられる、環境データについての情報を含んでもよい。
【0035】
監督サーバ120は、マクロ情報130を、ライブニュース報告、ライブ交通報告、ライブ天気予報、法執行機関等を含む、第三者ソースから受信してもよい。例えば、マクロ情報130は、複数のAV602が進行している、特定のエリア(例えば、道路102)内の天候データを含んでもよい。天候データは、複数のAV602が進行している、または向かっている、領域またはエリアの天候情報を含んでもよい。例えば、天候データは、天候予想サーバ、ライブ天気予報等からアクセスされてもよい。別の実施例では、マクロ情報130は、複数のAV602が進行している、特定のエリア(例えば、道路102)と関連付けられる、交通データを含んでもよい。交通データは、複数のAV602によって進行される、特定のエリアの条件についての情報を提供する。別の実施例では、マクロ情報130は、複数のAV602の自律運転に影響を及ぼすであろう、特定のエリア(例えば、道路102)内の報告された交通事故を含んでもよい。別の実施例では、マクロ情報130は、道路安全性調整データ、道路閉鎖、工事ゾーン、および/または複数のAV602によって進行される道路についての任意の他の情報を含んでもよい。別の実施例では、マクロ情報130は、複数のAV602の制御デバイス650上にインストールされたソフトウェアアプリケーションの特定のバージョン上で検出される、潜在的セキュリティ脆弱性を含んでもよい。別の実施例では、マクロ情報130は、AV602内の欠陥のあるソフトウェアおよび/またはハードウェアコンポーネントを示してもよい。別の実施例では、マクロ情報130は、特定のエリア(例えば、道路102)と関連付けられる、政府経路指定規制の変更を含んでもよい。別の実施例では、マクロ情報130は、健全性データが、例えば、AV602の最適性能の70%、60%未満等、および/またはAV602の最適機能性の70%、60%未満等、閾値パーセンテージ未満である、点までの、AV602と関連付けられる、健全性データにおける劣化を含んでもよい。ある場合には、条件136は、AV602によって検出されてもよい。そのような場合、条件136は、AV602の健全性を潜在的に劣化させる、故障コードが、検出されるかどうかを決定し、AV602のソフトウェアおよび/またはハードウェアコンポーネント内の欠陥が、検出されるかどうかを決定することを含んでもよい。
【0036】
図1の実施例における1つのシナリオでは、監督サーバ120は、複数のAV602に該当し得る、マクロ情報を受信する。例えば、マクロ情報130が、セキュリティ脆弱性がAV602内にインストールされるソフトウェアアプリケーションの特定のバージョン内で検出されることを示すと仮定する。
【0037】
それに応答して、監督サーバ120は、AV602a、602b、および602cのそれぞれが、1つまたはそれを上回る条件136を満たすかどうかを決定する。本実施例では、条件136は、ソフトウェアアプリケーションの特定のバージョンが、AV602a、602b、および602cのいずれか内にインストールされているかどうかを決定することであってもよい。監督サーバ120は、ソフトウェアアプリケーションの特定のバージョンが、AV602a、602b、および602cのいずれか内にインストールされているかどうかを決定する。監督サーバ120は、ソフトウェアアプリケーションの特定のバージョンが、それぞれ、第1のAV602aおよび第2のAV602bと関連付けられる、制御デバイス650aおよび650b内にインストールされていることを決定することに応答して、条件136が第1のAV602aおよび第2のAV602bによって満たされていることを決定する。本実施例では、監督サーバ120は、条件136は、ソフトウェアアプリケーションの特定のバージョンが制御デバイス650c上にインストールされていないため、第3のAV602cによって満たされていないことを決定する。
【0038】
図1の実施例における別のシナリオでは、マクロ情報130が、道路事故が特定の場所における道路102上で報告されていることを示すと仮定する。それに応答して、監督サーバ120は、AV602a、602b、および602cのそれぞれが、1つまたはそれを上回る条件136を満たすかどうかを決定する。本実施例では、条件136は、道路102上のAV602a、602b、および602cのいずれかが、報告された道路事故の場所に向かっているかどうか、またはAV602a、602b、および602cのいずれかと、報告された道路事故の場所との間の距離が、減少しているかどうかを決定することであってもよい。監督サーバ120は、第1のAV602aおよび第2のAV602bが、センサデータ148aおよび148b内に含まれる、その車両場所データに基づいて、報告された道路事故に向かっていることを決定し、センサデータ148aは、第1のAV602aと報告された道路事故の場所との間の距離が減少していることを示し得、センサデータ148bは、第2のAV602bと報告された道路事故の場所との間の距離が減少していることを示し得る。それに応答して、監督サーバ120は、条件136は、AV602aおよび602bによって満たされることを決定する。本実施例では、監督サーバ120は、条件136が、センサデータ148c内に含まれる車両場所データが、第3のAV602cが報告された道路事故から離れるように運転していることを示すため、第3のAV602cによって満たされないことを決定する。
【0039】
他のシナリオでは、監督サーバ120は、1つまたはそれを上回る条件136が、AV602の任意の数および組み合わせに該当することを決定し得る。ある場合には、マクロ情報130は、1つのAV602に該当し得る。したがって、監督サーバ120は、1つまたはそれを上回る条件136が、1つのAV602に該当することを決定し、1つのAV602のためのバッチコマンド132を生成してもよい。
例示的バッチコマンド
【0040】
バッチコマンド132は、概して、最小限のリスク条件(MRC)操縦134を実施するための1つまたはそれを上回る命令を含む、コマンドメッセージである。監督サーバ120は、複数のAV602のうちの各AV602が、1つまたはそれを上回る条件136を満たすまたは充足することを決定することに応答して、バッチコマンド132を複数のAV602に送信する。
【0041】
一実施例では、MRC操縦134は、AV602に、AV602が現在進行している道路102の片側のエリアに寄せさせることを含んでもよい。
図1の実施例では、監督サーバ120がAV602aに送信する、バッチコマンド132は、道路102の片側のエリアに寄せるための命令を含む。
【0042】
別の実施例では、MRC操縦命令134は、AV602をAV602が現在進行している高速道路または車道から出させ、さらなる命令を受信するまで、運転を中止させることを含んでもよい。
図1の実施例では、監督サーバ120がAV602bに送信する、バッチコマンド132は、出口104から出て、さらなる命令を受信するまで、運転を中止するための命令、または道路102の片側のエリアに寄せるための命令を含んでもよい。
【0043】
別の実施例では、MRC操縦命令134は、AV602をAV602が現在進行している車線内で減速させることを含んでもよい。
【0044】
ある場合には、バッチコマンド132は、AV602の現在のステータスおよび場所に依存し得る。例えば、高速道路上の第1のセットのAV602に関しては、高速道路から出るための命令を含み得る、第1のバッチコマンド132が、送信されてもよく、市街地の通りまたは道路102上の第2のセットのAV602に関しては、道路102の片側に寄せるための命令を含み得る、第2のバッチコマンド132が、送信されてもよい。
【0045】
バッチコマンド132の受信に応答して、AV602は、センサデータ148を分析し、MRC操縦命令134を行うのための障害物のない経路が存在することを決定することによって、MRC操縦命令134を行うために安全であるときを決定してもよい。
例示的条件
【0046】
条件136は、概して、複数のAV602に該当し得る、任意の条件を含む。例えば、条件136は、AV602が、高速道路、オン/オフランプ、多重車線道路、単一車線道路、または側道を備える、あるタイプの道路102上を進行しているかどうかを決定することを含んでもよい。別の実施例では、条件136は、AV602が、道路102上で特定の方向に向かって進行しているかどうかを決定することを含んでもよい。別の実施例では、条件136は、特定のタイプの工事ゾーンが、AV602からの閾値距離内にあるかどうかを検出することを含んでもよい。別の実施例では、条件136は、AV602が、特定のマイルマーカによって指定される道路102のセクション上を進行しているかどうかを決定することを含んでもよい。別の実施例では、条件136は、AV602が、ゾーン境界を示す、ジオフェンス内を進行しているかどうかを決定することを含んでもよい。別の実施例では、条件136は、AV602の具体的場所までの距離が特定の距離であるかどうかを決定することを含んでもよい。別の実施例では、条件136は、AV602の制御デバイス650上にインストールされる、ソフトウェアアプリケーションバージョンが、特定のソフトウェアアプリケーションバージョンであるかどうかを決定することを含んでもよい。別の実施例では、条件136は、AV602が、具体的天候条件下で進行しているかどうかを決定することを含んでもよい。別の実施例では、条件136は、AV602が、具体的交通条件下で進行しているかどうかを決定することを含んでもよい。
【0047】
条件136は、遠隔オペレータ162および/または監督サーバ120によって定義されてもよい。条件136を定義するプロセスは、
図2-4に説明される。条件136は、AV監視アプリケーション150を使用して、定義されてもよい。AV監視アプリケーション150は、AV602が遷移中であるかどうか、AV602を監視するためのインターフェースをユーザに提供するように構成される、ソフトウェア、モバイル、および/またはウェブアプリケーション150であってもよい。
【0048】
AV監視アプリケーション150は、プロセッサ122がソフトウェア命令138を実行することによって実装されてもよい。遠隔オペレータ162は、ユーザインターフェース126を使用することによって、監督サーバ120から、および/またはアプリケーションサーバ160から、AV監視アプリケーション150にアクセスしてもよい。
条件をAV監視アプリケーションから定義する
【0049】
図2を参照すると、AV監視アプリケーション150と関連付けられる、AV監視インターフェース210のスクリーンショット200が、図示される。
図2の実施例では、AV監視インターフェース210は、マップ212を表示するための第1の部分202と、AV214のステータスを表示するための第2の部分204とを含む。AV監視インターフェース210はまた、アクティブ化に応じて、
図3に図示される、バッチアクションインターフェースページ310を開く、ボタン216を含んでもよい。
【0050】
図3を参照すると、バッチアクションインターフェースページ310のスクリーンショット300が、図示される。
図3の実施例では、バッチアクションインターフェースページ310は、条件136を選択および定義するためのフィルタリングオプションを表示する、第1の部分302と、バッチコマンド132を実施する各AV602の進行度を表示する、第2の部分304とを含む。
【0051】
遠隔オペレータ162は、条件136を定義するための1つまたはそれを上回るオプションを選択してもよい。例えば、遠隔オペレータ162は、場所、ソフトウェアアプリケーションバージョン、AV602のコンポーネントの健全性データのインジケータ、ある場所からの距離範囲、時間範囲を選択する、および/またはゾーン境界312をマップ212上に引く(
図4参照)ことによって、条件136を定義してもよい。バッチコマンド132を実施する各AV602の進行度は、バッチアクションインターフェースページ310上の第2の部分304に表示される。ゾーン境界312をマップ上に定義する実施例は、
図4に説明される。
【0052】
図4を参照すると、ゾーン境界312を定義する間のAV監視アプリケーション150のスクリーンショット400が、図示される。ゾーン境界312は、例えば、マップ212上のカーソルによって、任意の形状で定義されてもよい。ゾーン境界312は、地理的ジオフェンスと関連付けられてもよい。ゾーン境界312はさらに、特定の時間範囲314と関連付けられてもよい。例えば、条件136は、ゾーン境界312によって定義されてもよく、バッチコマンド132は、AV602がそのゾーン境界312内にある、ある時間範囲314の間のみ、AV602に伝送される。
【0053】
別の実施例では、条件136は、条件136がAV602に該当するかどうかを決定することが、ゾーン境界312内を進行している、AV602のためにスケジュールされた時間範囲314の間に実施されるように定義されてもよい。本実施例では、時間条件136および場所条件136が、AV602によって満たされる場合、バッチコマンド132のそれらのAV602への伝送は、遠隔オペレータ162からの直接制御を伴わずに実行される。
【0054】
このように、バッチコマンド132の伝送は、時間条件136(例えば、時間範囲314の間)および場所条件136(例えば、AV602が、ゾーン境界312内にあることが検出されるとき)が満たされるとき、スケジュールされてもよい。
【0055】
図2に戻って参照すると、特定の実施例では、定義された条件136は、午前8時~午前9時の間、特定の道路102上を進行しており、マイルマーカ10と15との間を東向きに、60マイル/時(mph)の平均速度で進行している、特定のソフトウェアアプリケーションバージョンを伴う、AV602が、MRC操縦134、例えば、路肩に寄せることを実施すべきであることを示し得る。
【0056】
監督サーバ120は、バッチアクションインターフェースページ310上で選択および定義される、条件136を受け取ってもよい。
監督サーバ
【0057】
図1に戻って参照すると、監督サーバ120の実施形態の側面が、上記に説明され、付加的側面が、下記に提供される。監督サーバ120は、少なくとも1つのプロセッサ122と、少なくとも1つのネットワークインターフェース124と、少なくとも1つのユーザインターフェース126と、少なくとも1つのメモリ128とを含む。監督サーバ120は、示されるように、または任意の他の好適な構成において構成されてもよい。
【0058】
一実施形態では、監督サーバ120は、AV602の動作を監督する役割を果たし得る、コンピューティングデバイスのクラスタによって実装されてもよい。例えば、監督サーバ120は、分散型コンピューティングおよび/またはクラウドコンピューティングシステムを使用して、複数のコンピューティングデバイスによって実装されてもよい。別の実施例では、監督サーバ120は、1つまたはそれを上回るデータセンタ内の複数のコンピューティングデバイスによって実装されてもよい。したがって、一実施形態では、監督サーバ120は、制御デバイス650より多くの処理電力を含んでもよい。監督サーバ120は、1つまたはそれを上回るAV602およびそのコンポーネント(例えば、制御デバイス650)と信号通信する。一実施形態では、監督サーバ120は、AV602のための特定の経路指定計画144を決定するように構成される。例えば、監督サーバ120は、そのAV602の目的地に到達するために、低減された運転時間およびより安全な運転体験につながる、AV602のための特定の経路指定計画144を決定してもよい。
【0059】
一実施形態では、AV602のためのナビゲーションソリューションまたは経路指定計画144が、1つのAV602と別のもの等の車車間(V2V)通信から決定されてもよい。一実施形態では、AV602のためのナビゲーションソリューションまたは経路指定計画144は、AV602と監督サーバ120等の車両/クラウド(V2C)通信から決定されてもよい。
【0060】
一実施形態では、AV602のためのバッチコマンド132、ナビゲーションソリューション、および/または経路指定計画144は、車両/クラウド/人間(V2C2H)、車両/人間(V2H)、車両/クラウド/車両(V2C2V)、車両/人間/車両(V2H2V)、および/またはクラウド/クラウド/車両(C2C2V)通信によって実装されてもよく、人間の介入は、AV602のためのナビゲーションソリューションを決定する際に組み込まれる。例えば、遠隔オペレータ162は、マクロ情報130、バッチコマンド132、条件136、マップデータ142、センサデータ148、および/またはユーザインターフェース126からの他のデータを精査し、AV602のための条件136およびバッチコマンド132を確認、修正、および/またはオーバーライドしてもよい。遠隔オペレータ162は、AV602のナビゲーション計画を決定する際に、制御デバイス650および/または監督サーバ120がそうでなければ提供し得ない、人間の視点を追加してもよい。いくつかのインスタンスでは、人間の視点は、機械の視点と比較して、安全性、燃料節約等の観点から、好ましい。
【0061】
一実施形態では、AV602のためのバッチコマンド132は、通信のタイプの中でもとりわけ、V2V、V2C、V2C2H、V2H、V2C2V、V2H2V、C2C2V通信の任意の組み合わせによって実装されてもよい。
【0062】
図1に図示されるように、遠隔オペレータ162は、通信経路164を介して、アプリケーションサーバ160にアクセスし、同様に、通信経路166を介して、監督サーバ120にアクセスすることができる。一実施形態では、監督サーバ120は、マクロ情報130、バッチコマンド132、条件136、センサデータ148、および/または任意の他のデータ/命令を、例えば、ネットワーク110を通して無線で、および/または有線通信を介して、遠隔オペレータ162によって精査されるために、アプリケーションサーバ160に送信してもよい。したがって、一実施形態では、遠隔オペレータ162は、アプリケーションサーバ160を介して、監督サーバ120に遠隔でアクセスすることができる。
【0063】
一実施形態では、監督サーバ120は、複数のAV602に該当する、マクロ情報130を受信してもよい。例えば、監督サーバ120は、マクロ情報130を、とりわけ、ライブニュース報告、ライブ天気予報、ライブ交通報告、クラウドソース交通データ、法執行機関等の第三者ソースから受信してもよい。一実施形態では、遠隔オペレータ162は、例えば、ユーザインターフェース126を使用して、監督サーバ120から、および/またはアプリケーションサーバ160から、マクロ情報130にアクセスすることによって、受信されたマクロ情報130を精査および確認してもよい。マクロ情報130の受信に応答して、監督サーバ120は、各AV602が、1つまたはそれを上回る条件136を満たす、または充足するかどうかを評価してもよい。複数のAV602のうちのAV602が、1つまたはそれを上回る条件136を満たす、または充足することを決定することに応答して、監督サーバ120は、バッチコマンド132をそのAV602に送信する。
【0064】
プロセッサ122は、メモリ128に動作可能に結合される、1つまたはそれを上回るプロセッサを備える。プロセッサ122は、限定ではないが、状態機械、1つまたはそれを上回る中央処理ユニット(CPU)チップ、論理ユニット、コア(例えば、マルチコアプロセッサ)、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、またはデジタル信号プロセッサ(DSP)を含む、任意の電子回路網である。プロセッサ122は、プログラマブル論理デバイス、マイクロコントローラ、マイクロプロセッサ、または前述の任意の好適な組み合わせであってもよい。プロセッサ122は、ネットワークインターフェース124、ユーザインターフェース126、メモリ128に通信可能に結合され、それと信号通信する。1つまたはそれを上回るプロセッサは、データを処理するように構成され、ハードウェアまたはソフトウェア内に実装されてもよい。例えば、プロセッサ122は、8ビット、16ビット、32ビット、64ビット、または任意の他の好適なアーキテクチャであってもよい。プロセッサ122は、算術および論理演算を実施するための算術論理ユニット(ALU)と、オペランドをALUに供給し、ALU演算の結果を記憶する、プロセッサレジスタと、ALU、レジスタ、および他のコンポーネントの協調動作を指示することによって、命令をメモリからフェッチし、それらを実行する、制御ユニットとを含んでもよい。1つまたはそれを上回るプロセッサは、種々の命令を実装するように構成される。例えば、1つまたはそれを上回るプロセッサは、
図1-8に関して説明されるもののいくつかまたは全て等の本明細書に開示される機能を実装するためのソフトウェア命令138を実行するように構成される。いくつかの実施形態では、本明細書に説明される機能は、論理ユニット、FPGA、ASIC、DSP、または任意の他の好適なハードウェアまたは電子回路網を使用して実装される。
【0065】
ネットワークインターフェース124は、有線および/または無線通信を有効にするように構成される。ネットワークインターフェース124は、監督サーバ120と他のネットワークデバイス、システム、またはドメインとの間でデータを通信するように構成される。例えば、ネットワークインターフェース124は、WIFIインターフェース、ローカルエリアネットワーク(LAN)インターフェース、広域ネットワーク(WAN)インターフェース、モデム、スイッチ、またはルータを備えてもよい。プロセッサ122は、ネットワークインターフェース124を使用して、データを送信および受信するように構成される。ネットワークインターフェース124は、任意の好適なタイプの通信プロトコルを使用するように構成されてもよい。
【0066】
ユーザインターフェース126は、遠隔オペレータ162等のユーザと相互作用するように構成される、1つまたはそれを上回るユーザインターフェースを含んでもよい。遠隔オペレータ162は、通信経路164を介して、監督サーバ120にアクセスしてもよい。ユーザインターフェース126は、モニタ、キーボード、マウス、トラックパッド、タッチパッド等の監督サーバ120の周辺機器を含んでもよい。遠隔オペレータ162は、ユーザインターフェース126を使用して、メモリ128にアクセスし、センサデータ148、マクロ情報130、バッチコマンド132、条件136、およびメモリ128内に記憶される他のデータを精査してもよい。
【0067】
メモリ128は、
図1-8に説明される情報のいずれかを、プロセッサ122によって実行されると、本明細書に説明される機能を実装するように動作可能である、任意の他のデータ、命令、論理、ルール、またはコードとともに記憶する。例えば、メモリ128は、マクロ情報130、バッチコマンド132、条件136、ソフトウェア命令138、物体検出機械学習モジュール140、マップデータ142、経路指定計画144、運転命令146、センサデータ148、AV監視アプリケーション150、および/または任意の他のデータ/命令を記憶してもよい。ソフトウェア命令138は、プロセッサ122によって実行されると、監督サーバ120に、
図1-8に説明されるもののいくつかまたは全て等の本明細書に説明される機能を実施させる、コードを含む。メモリ128は、1つまたはそれを上回るディスク、テープドライブ、またはソリッドステートドライブを備え、オーバーフローデータ記憶デバイスとして使用され、そのようなプログラムが実行のために選択されると、プログラムを記憶し、プログラム実行の間に読み取られる、命令およびデータを記憶してもよい。メモリ128は、揮発性または不揮発性であってもよく、読取専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、ターナリコンテンツアドレス指定可能メモリ(TCAM)、動的ランダムアクセスメモリ(DRAM)、および静的ランダムアクセスメモリ(SRAM)を備えてもよい。メモリ128は、ローカルデータベース、クラウドデータベース、ネットワーク接続記憶装置(NAS)等のうちの1つまたはそれを上回るものを含んでもよい。
【0068】
物体検出機械学習モジュール140は、プロセッサ122が、ソフトウェア命令138を実行することによって実装され、概して、センサデータ148からの道路閉鎖および工事ゾーンを含む、物体および障害物を検出するように構成されてもよい。物体検出機械学習モジュール140は、画像、ビデオ、赤外線画像、点群、レーダデータ等の任意のデータタイプから物体を検出するために、ニューラルネットワークおよび/または機械学習アルゴリズムを使用して実装されてもよい。
【0069】
一実施形態では、物体検出機械学習モジュール140は、サポートベクトルマシン(SVM)、単純ベイズ、ロジスティック回帰、k-最近傍、決定木、または同等物等の機械学習アルゴリズムを使用して実装されてもよい。一実施形態では、物体検出機械学習モジュール140は、複数のニューラルネットワーク層、畳み込みニューラルネットワーク層、および/または同等物を利用してもよく、その中で、これらの層の加重およびバイアスが、物体検出機械学習モジュール140の訓練プロセスにおいて最適化される。物体検出機械学習モジュール140は、1つまたはそれを上回る物体で標識されたデータタイプのサンプルを各サンプル内に含む、訓練データセットによって、訓練されてもよい。例えば、訓練データセットは、物体で標識された物体(例えば、車両、車線区分線、歩行者、道路標識、障害物等)のサンプル画像を各サンプル画像内に含んでもよい。同様に、訓練データセットは、物体で標識されたビデオ、赤外線画像、点群、レーダデータ等の他のデータタイプのサンプルを各サンプルデータ内に含んでもよい。物体検出機械学習モジュール140は、訓練データセットおよびセンサデータ148によって、訓練、試験、および精緻化されてもよい。物体検出機械学習モジュール140は、センサデータ148(物体で標識されていない)を使用して、物体を検出する際のその予測正確度を増加させる。例えば、教師ありおよび/または教師なし機械学習アルゴリズムが、センサデータ148内の物体を検出する際に物体検出機械学習モジュール140の予測を検証するために使用されてもよい。物体検出機械学習モジュール140はまた、車載制御コンピュータ650または自律制御ユニット648e上等、自律車両(AV)602上に実装されてもよい(
図6参照)。
【0070】
マップデータ142は、道路102を含む、都市またはエリアの仮想マップを含んでもよい。いくつかの実施例では、マップデータ142は、マップ758と、マップデータベース736とを含んでもよい(マップ758およびマップデータベース736の説明に関しては、
図7参照)。マップデータ142は、道路102、経路、高速道路等の運転可能エリアと、地形(占有グリッドモジュール760によって決定される(占有グリッドモジュール760の説明に関しては、
図7参照))等の運転不可能エリアとを含んでもよい。マップデータ142は、道路標識、車線、車線区分線、車線境界、道路境界、交通信号灯、障害物等の場所座標を規定してもよい。
【0071】
経路指定計画144は、開始場所(例えば、第1のAV出発点/到着点)から目的地(例えば、第2のAV出発点/到着点)まで進行するための計画である。例えば、経路指定計画144は、開始場所から目的地までの具体的順序において、1つまたはそれを上回る通り、道路、および高速道路の組み合わせを規定してもよい。経路指定計画144は、第1の段階(例えば、開始場所から外に移動する)と、複数の中間段階(例えば、1つまたはそれを上回る特定の通り/道路/高速道路の特定の車線に沿って進行する)と、最後の段階(例えば、目的地に進入する)とを含む、段階を規定してもよい。経路指定計画144は、その経路指定計画144内の道路/交通標識等の開始位置から目的地までのルートについての他の情報を含んでもよい。
【0072】
運転命令146は、計画モジュール762(
図7における計画モジュール762の説明参照)によって実装されてもよい。運転命令146は、経路指定計画144の各段階の運転ルールに従って、AV602の自律運転を適合させるための命令およびルールを含んでもよい。例えば、運転命令146は、AV602によって進行される道路102の速度範囲内に留まる、センサ646の検出ゾーン内の周囲車両および物体の速度等のセンサ646によって観察される変化に対してAV602の速度を適合させる等のための命令を含んでもよい。
【0073】
マクロ情報130は、マップデータ142内の道路/通り/高速道路の交通データを含んでもよい。監督サーバ120は、ドローン等の1つまたはそれを上回るマッピング車両によって集められたマクロ情報130を使用してもよい。監督サーバ120は、外部ソース、例えば、Waze(登録商標)およびGoogleマップ(登録商標)、ライブ交通報告等から捕捉されたクラウドソースの交通データ等、任意のソースから捕捉されたマクロ情報130を使用してもよい。
アプリケーションサーバ
【0074】
アプリケーションサーバ160は、概して、ネットワーク110を介して、他のサーバ(例えば、監督サーバ120)、AV602、データベース等の他のデバイスと通信するように構成される、任意のコンピューティングデバイスである。アプリケーションサーバ160は、本明細書に説明される機能を実施し、例えば、通信経路164を介して、そのユーザインターフェースを使用して、遠隔オペレータ162と相互作用するように構成される。アプリケーションサーバ160の実施例は、限定ではないが、デスクトップコンピュータ、ラップトップコンピュータ、サーバ等を含む。一実施例では、アプリケーションサーバ160は、提示層として作用してもよく、そこから遠隔オペレータ162は、監督サーバ120にアクセスする。したがって、監督サーバ120は、センサデータ148、マクロ情報130、バッチコマンド132、条件136、および/または任意の他のデータ/命令を、例えば、ネットワーク110を介して、アプリケーションサーバ160に送信してもよい。遠隔オペレータ162は、アプリケーションサーバ160との通信経路164を確立後、受信されたデータを精査し、下記に説明されるように、バッチコマンド132および/または条件136を確認、修正、および/またはオーバーライドしてもよい。
動作フロー
マクロ情報を受信する
【0075】
一実施形態では、システム100の動作フローは、監督サーバ120が、複数のAV602に該当する、マクロ情報130を受信すると、開始する。監督サーバ120は、マクロ情報130を、ライブニュース報告、ライブ交通報告、ライブ天気予報、法執行機関等を含む、第三者ソースから受信してもよい。例えば、監督サーバ120は、複数のAV602の自律運転に影響を及ぼし得る、複数のAV602が進行しているエリアと関連付けられる、天候データおよび交通データを受信してもよい。
【0076】
監督サーバ120はまた、マクロ情報130を1つまたはそれを上回るAV602から受信してもよい。例えば、AV602と関連付けられる、制御デバイス650は、AV602の車両健全性データが、AV602(またはAV602のコンポーネント)の健全性パーセンテージが70%、60%未満等の閾値パーセンテージ未満であることを示すことを検出し得る。マクロ情報130の他の実施例は、上記に説明される。
バッチコマンドを生成する
【0077】
監督サーバ120は、マクロ情報130に基づいて、バッチコマンド132を生成する。監督サーバ120は、プロセッサ122がソフトウェア命令138を実行すると、バッチコマンド132を生成する。バッチコマンド132は、1つまたはそれを上回る条件136と関連付けられる。
【0078】
1つまたはそれを上回る条件136は、
図2-4に説明されるものに類似する、AV監視アプリケーション150を使用して、遠隔オペレータ162によって定義され得る。
【0079】
監督サーバ120は、AV監視アプリケーション150上で選択される、1つまたはそれを上回る条件136を受け取り得る。1つまたはそれを上回る条件136のうちの条件136は、条件136が、具体的時刻において、または特定の時間範囲、例えば、時間範囲314(
図4参照)内において、AV602毎に照合されるようにスケジュールされるように、時間帯ベースであってもよい(例えば、時間に敏感である、またはスケジュールベースである)。1つまたはそれを上回る条件136のうちの条件136は、条件136が、AV602が、あるゾーン境界、例えば、ゾーン境界312(
図4参照)の中で運転しているとき、AV602毎に照合されるように、場所ベースであってもよい。1つまたはそれを上回る条件136のうちの条件136は、例えば、条件136が、AV602上にインストールされるソフトウェアアプリケーションのバージョンが特定のバージョンであるかどうかを決定する場合、監督サーバ120がマクロ情報130を受信するにつれて、監督サーバ120が、AV602が条件136を満たすかどうかを決定するように、即座であってもよい(例えば、条件に対する各AVのステータスが、直ちにクエリされる)。
【0080】
バッチコマンド132は、上記に説明されるものに類似する、MRC操縦命令134を含む。バッチコマンド132はさらに、バッチコマンド132を1つまたはそれを上回る他のAV602に提供または転送するための命令を含んでもよい。
AVが1つまたはそれを上回る条件を満たすかどうかを決定する
【0081】
監督サーバ120は、AV602のフリートのうちのAV602毎に、下記に説明される動作を実施してもよい。
図1の実施例では、監督サーバ120は、AV602a、602b、および602cに関して、これらの動作を実施してもよい。
【0082】
監督サーバ120は、AV602が1つまたはそれを上回る条件136を満たすかどうかを決定する。本プロセスでは、監督サーバ120は、センサデータ148をAV602から受信する、または受け取る。センサデータ148は、車両健全性データと、車両場所データとを含んでもよい。各AV602は、少なくとも1つのセンサ646を備え、車両健全性データを提供するように構成される、車両センササブシステム644(
図6参照)と、車両場所データを提供するように構成される、全地球測位システム(GPS)ユニット646g(
図6参照)とを含んでもよい。受信されたセンサデータ148に基づいて、監督サーバ120は、AV602の健全性データ(例えば、健全性パーセンテージ)および場所座標を決定する。
【0083】
監督サーバ120は、AV602の健全性データと健全性関連条件136を比較する。例えば、健全性関連条件136が、AV602の健全性が、AV602の最適性能の閾値(例えば、70%、60%等)未満である、および/またはAV602の最適機能性の70%、60%等未満であるかどうかであると仮定すると、監督サーバ120は、AV602の健全性が閾値未満であるかどうかを決定することによって、AV602が健全性関連条件136を満たすかどうかを決定する。
【0084】
監督サーバ120はまた、AV602の場所座標と場所関連条件136を比較する。例えば、場所関連条件136が、AV602が、特定のエリア、都市、郵便番号、ゾーン境界312(
図4参照)内を進行しているかどうかであると仮定すると、監督サーバ120は、AV602が、場所関連条件136に定義される、特定のエリア、都市、郵便番号、ゾーン境界312(
図4参照)内を進行しているかどうかを決定することによって、AV602が場所関連条件136を満たすかどうかを決定する。
【0085】
一実施形態では、監督サーバ120は、AV602のフリートのうちのAV602が、AV602の車両健全性データ、AV602の車両場所データ、AV602が進行しているエリアに関する天候データ、およびAV602が進行しているエリアに関する交通データに基づいて、1つまたはそれを上回る条件136を充足しているときを決定する。AV602が条件136を満たすことを決定することに応答して、監督サーバ120は、バッチコマンド132をAV602に送信する。AV602は、その制御デバイス650を介して、バッチコマンド132を監督サーバ120から受け取る。
種々のマクロ情報に基づく異なるバッチコマンドの例示的シナリオ
【0086】
マクロ情報130が、制御デバイス650上にインストールされる特定のソフトウェアアプリケーションバージョン内のセキュリティ脆弱性を示す、実施例では、条件136は、特定のソフトウェアアプリケーションバージョンがAV602上にインストールされているかどうかである。バッチコマンド132は、セキュリティパッチをダウンロードする、および/またはソフトウェアアプリケーションを更新することを含んでもよい。
【0087】
交通事故を検出する実施例では、条件136は、AV602が交通事故の方向に進行しているかどうかである。バッチコマンド132は、路肩に寄せる、再経路指定する、またはAV602を減速させるための命令を含んでもよい。
【0088】
深刻な天候を検出する実施例では、条件136は、AV602が深刻な天候の方向に進行しているかどうかである。バッチコマンド132は、路肩に寄せる、再経路指定する、またはAV602を減速させるための命令を含んでもよい。
【0089】
AV602の低健全性を検出する実施例では、条件136は、AV602の健全性データがAV602の健全性インジケータが閾値を下回ることを示すかどうかである。バッチコマンド132は、路肩に寄せる、またはAV602が技術者によって診断および修理され得る、AV到着点まで再経路指定するための命令を含んでもよい。
【0090】
ルート(例えば、道路102)上の政府規制の変更を検出する実施例では、条件136は、AV602が政府規制が変更される方向に進行しているかどうかである。バッチコマンド132は、路肩に寄せる、再経路指定する、または新しい規制に従うための命令を含む。
【0091】
欠陥のあるコンポーネント(ハードウェアおよび/またはソフトウェアモジュール)を検出する実施例では、条件136は、欠陥のあるコンポーネントがAV602内にインストールされているかどうかである。バッチコマンド132は、路肩に寄せる、またはAV到着点まで再経路指定するための命令を含んでもよい。
【0092】
AV602は、そのサブシステム640(
図6参照)によって集められた、および生成された、センサデータ148および制御命令を利用することによって、バッチコマンド132を実行する。AV602は、AV602と関連付けられる制御デバイス650が、バッチコマンド132を実行することが安全であることを決定すると、バッチコマンド132を実行する。
【0093】
制御デバイス650は、道路102上およびその周囲の物体の場所を含む、センサデータ148を分析することに基づいて、バッチコマンド132を実行することが安全であることを決定する。例えば、制御デバイス650が、センサデータ148を分析することに基づいて、MRC操縦134を実施するための経路に障害物がないことを決定すると、AV602は、バッチコマンド132を実行する。AV602は、MRC操縦134を実施するための経路障害物がなくなるまで、待機してもよい。
【0094】
例えば、AV602は、センサデータ148に基づいて、特定の場所における道路102上の物体を検出してもよい。AV602は、物体が、第1のタイムスタンプにおいて、MRC操縦134を実施することを邪魔または妨害するかどうかを決定する。物体が、第1のタイムスタンプにおいて、MRC操縦134を実施することを邪魔または妨害することを決定することに応答して、AV602は、AV602が物体を通過するまで、運転を継続する。次いで、AV602は、MRC操縦134を実施するための経路に障害物がないことを決定することに応答して、第2のタイムスタンプにおいて、MRC操縦134を実施する。AV602は、バッチコマンド132の実施完了を示す、確認メッセージを監督サーバ120に送信してもよい。監督サーバ120は、引き換えに、確認メッセージをAV602から受信する。
【0095】
図1は、複数のAV602に対する実施形態を説明するが、当業者は、他の実施形態も認識するであろう。例えば、マクロ情報130は、1つのAV602に該当してもよい。したがって、監督サーバ120は、上記に説明されるものに類似する、マクロ情報130に基づいて、そのAV602のためのバッチコマンド132を生成し、バッチコマンド132をAV602に送信してもよい。したがって、本明細書に説明されるシステムおよび方法は、1つのAV602と、1つの監督サーバ120(随意に、遠隔オペレータ162)とを伴う、システムに適用され得る。
AV監視アプリケーションの例示的スクリーンショット
【0096】
図2は、AV監視アプリケーション150と関連付けられる、AV監視インターフェース210のスクリーンショット200を図示する。上記に説明されるように、AV監視インターフェース210は、マップ212を表示するための第1の部分202と、AV214のステータスを表示するための第2の部分204とを含む。マップ212上には、道路102上を進行する、AV602が、図示される。
【0097】
第2の部分204上には、名称、車両モデル、現在のステータス(例えば、遷移中、停止中等)、識別子番号、任務番号、開始位置、開始時間、目的地、推定される到着時間、走行時間、速度、検出された故障コード(該当する場合)、および/またはAV602およびそのルートに関連する任意の他の情報等の各AV602についての情報が、表示される。
【0098】
図3は、バッチアクションインターフェースページ310のスクリーンショット300を図示する。上記に説明されるように、バッチアクションインターフェースページ310は、条件136を選択および定義するためのフィルタリングオプションを表示する、第1の部分302と、バッチコマンド132を実施する各AV602の進行度を表示する、第2の部分304とを含む。バッチアクションインターフェースページ310の側面は、
図1に関して上記に説明される。
【0099】
図4は、1つまたはそれを上回る条件136のためのゾーン境界312および時間範囲314を定義する、スクリーンショット400を図示する。ゾーン境界312は、マップ212上のカーソルによって、任意の形状で定義されてもよい。時間範囲314は、月曜日の午前8時~午前9時、特定の時間から開始する2時間にわたって等、任意の時間周期であってもよい。
バッチコマンドを複数のAVに通信するための例示的方法
【0100】
図5は、バッチコマンド132を複数のAV602に通信するための例示的方法フローチャート500を図示する。修正、追加、または省略が、方法500に行われてもよい。方法500は、より多い、より少ない、または他のステップを含んでもよい。例えば、ステップは、並行して、または任意の好適な順序において、実施されてもよい。随時、AV602、監督サーバ120、制御デバイス650、またはそのいずれかのコンポーネントが、ステップを実施するように議論されるが、任意の好適なシステムまたはシステムのコンポーネントが、方法500の1つまたはそれを上回るステップを実施してもよい。例えば、方法500の1つまたはそれを上回るステップは、少なくとも部分的に、1つまたはそれを上回るプロセッサ(例えば、それぞれ、
図1、6、および8からのプロセッサ122、670、804)によって起動されると、1つまたはそれを上回るプロセッサに、ステップ502-512を実施させ得る、非一過性有形機械可読媒体(例えば、それぞれ、
図1、6、および8からのメモリ128、690、および802)上に記憶される、それぞれ、
図1および6からのソフトウェア命令138および処理命令680の形態において、実装されてもよい。
【0101】
方法500は、監督サーバ120が、AV602のフリートのうちの複数のAV602に該当する、マクロ情報130を受信する、ステップ502から開始する。監督サーバ120は、マクロ情報130を、ライブニュース報告、ライブ天気予報、ライブ交通報告、クラウドソース交通データ、法執行機関等を含む、第三者ソースから受信してもよい。例えば、マクロ情報130は、特定のエリアおよび/または特定の時間周期に関連し得る。別の実施例では、マクロ情報130は、AV602上にインストールされる、ソフトウェアモジュールおよび/またはハードウェアモジュールに関連し得る。マクロ情報130の実施例は、
図1に説明される。
【0102】
ステップ504では、監督サーバ120は、マクロ情報130に基づいて、バッチコマンド132を生成し、バッチコマンド132は、1つまたはそれを上回る条件136と関連付けられる。監督サーバ120は、プロセッサ122がソフトウェア命令138を実行すると、バッチコマンド132を生成してもよい。バッチコマンド132は、MRC操縦134を実施するための命令を含んでもよい。MRC操縦134の実施例は、
図1に示されるシステムに関して上記に説明される。1つまたはそれを上回る条件136の実施例はまた、
図1に関して上記に説明される。1つまたはそれを上回る条件136は、
図2-4に説明されるものに類似する、AV監視アプリケーション150を使用して、遠隔オペレータ162によって定義される。
【0103】
ステップ506では、監督サーバ120は、AV602のフリートのうちのAV602を選択する。監督サーバ120は、さらなるAV602が評価のために残っていない状態になるまで、AV602を反復的に選択する。
【0104】
ステップ508では、監督サーバ120は、AV602が1つまたはそれを上回る条件136を満たすかどうかを決定する。例えば、監督サーバ120は、AV602の車両場所データと、車両健全性データとを含む、センサデータ148を受信し、センサデータ148、AV602によって進行される道路102の天候データ、およびAV602によって進行される道路102の交通データに基づいて、監督サーバ120は、
図1に説明されるものに類似する、AV602が1つまたはそれを上回る条件136を満たすかどうかを決定する。監督サーバ120が、AV602が1つまたはそれを上回る条件136を満たすことを決定する場合、方法500は、ステップ510に進む。そうでなければ、方法500は、ステップ512に進む。
【0105】
ステップ510では、監督サーバ120は、バッチコマンド132をAV602に送信する。例えば、監督サーバ120は、V2C通信を使用して、バッチコマンド132を送信してもよい。
【0106】
ステップ512では、監督サーバ120は、別のAV602を選択するかどうかを決定する。監督サーバ120は、少なくとも1つのAV602が評価のために残っていることを決定する場合、別のAV602を選択する。監督サーバ120が、別のAV602を選択することを決定する場合、方法500は、ステップ506に戻る。そうでなければ、方法500は、終了する。
例示的AVおよびその動作
【0107】
図6は、その中で自律運転動作が決定され得る、例示的車両エコシステム600のブロック図を示す。
図6に示されるように、AV602は、半トレーラトラックであってもよい。車両エコシステム600は、情報/データおよび関連サービスの1つまたはそれを上回るソースを生成し、および/またはAV602内に位置し得る、車載制御コンピュータ650に送達し得る、いくつかのシステムおよびコンポーネントを含む。車載制御コンピュータ650は、複数の車両サブシステム640とデータ通信することができ、その全ては、AV602内に常駐することができる。車両サブシステムインターフェース660は、車載制御コンピュータ650と複数の車両サブシステム640との間のデータ通信を促進するために提供される。いくつかの実施形態では、車両サブシステムインターフェース660は、コントローラエリアネットワーク(CAN)コントローラを含み、車両サブシステム640内のデバイスと通信することができる。
【0108】
AV602は、AV602の動作をサポートする、種々の車両サブシステムを含んでもよい。車両サブシステム640は、車両運転サブシステム642、車両センササブシステム644、車両制御サブシステム648、および/またはネットワーク通信サブシステム692を含んでもよい。
図6に示される、車両運転サブシステム642、車両センササブシステム644、および車両制御サブシステム648のコンポーネントまたはデバイスは、実施例である。AV602は、示されるように、または任意の他の構成として構成されてもよい。
【0109】
車両運転サブシステム642は、AV602のための動力運動を提供するように動作可能である、コンポーネントを含んでもよい。例示的実施形態では、車両運転サブシステム642は、エンジン/モータ642aと、車輪/タイヤ642bと、トランスミッション642cと、電気サブシステム642dと、電源642eとを含んでもよい。
【0110】
車両センササブシステム644は、AV602の環境または条件についての情報を感知するように構成される、いくつかのセンサ646を含んでもよい。車両センササブシステム644は、1つまたはそれを上回るカメラ646aまたは画像捕捉デバイス、レーダユニット646b、1つまたはそれを上回る温度センサ646c、無線通信ユニット646d(例えば、セルラー通信送受信機)、慣性測定ユニット(IMU)646e、レーザ距離計/LiDARユニット646f、全地球測位システム(GPS)送受信機646g、および/またはワイパ制御システム646hを含んでもよい。車両センササブシステム644はまた、AV602の内部システム(例えば、O2モニタ、燃料ゲージ、エンジンオイル温度等)を監視するように構成される、センサを含んでもよい。
【0111】
IMU646eは、慣性加速に基づいて、AV602の位置および配向変化を感知するように構成される、センサ(例えば、加速度計およびジャイロスコープ)の任意の組み合わせを含んでもよい。GPS送受信機646gは、AV602の地理的場所を推定するように構成される、任意のセンサであってもよい。本目的のために、GPS送受信機646gは、地球に対するAV602の位置に関する情報を提供するように動作可能である、受信機/伝送機を含んでもよい。レーダユニット646bは、無線信号を利用して、AV602のローカル環境内の物体を感知する、システムを表し得る。いくつかの実施形態では、物体の感知に加え、レーダユニット646bは、加えて、AV602に近接する物体の速度および進行方向を感知するように構成されてもよい。レーザ距離計またはLiDARユニット646fは、レーザを使用して、その中にAV602が位置する、環境内の物体を感知するように構成される、任意のセンサであってもよい。カメラ646aは、AV602の環境の複数の画像を捕捉するように構成される、1つまたはそれを上回るデバイスを含んでもよい。カメラ646aは、静止画像カメラまたは動画ビデオカメラであってもよい。
【0112】
車両制御サブシステム648は、AV602およびそのコンポーネントの動作を制御するように構成されてもよい。故に、車両制御サブシステム648は、スロットルおよびギヤセレクタ648a、ブレーキユニット648b、ナビゲーションユニット648c、操向システム648d、および/または自律制御ユニット648e等の種々の要素を含んでもよい。スロットルおよびギヤセレクタ648aは、例えば、エンジンの動作速度を制御し、ひいては、AV602の速度を制御するように構成されてもよい。スロットルおよびギヤセレクタ648aは、トランスミッションのギヤ選択を制御するように構成されてもよい。ブレーキユニット648bは、AV602を減速させるように構成される、機構の任意の組み合わせを含むことができる。ブレーキユニット648bは、車輪を減速させるための摩擦またはエンジンブレーキを使用することを含む、標準的様式において、AVを減速させることができる。ブレーキユニット648bは、ブレーキが適用されると、ブレーキがロックしないように邪魔し得る、アンチロックブレーキシステム(ABS)を含んでもよい。ナビゲーションユニット648cは、AV602のための運転経路またはルートを決定するように構成される、任意のシステムであってもよい。ナビゲーションユニット648cは、加えて、AV602が動作中の間、運転経路を動的に更新するように構成されてもよい。いくつかの実施形態では、ナビゲーションユニット648cは、AV602のための運転経路(例えば、
図1の道路102に沿って)を決定するように、GPS送受信機646gからのデータと、1つまたはそれを上回る所定のマップとを組み込むように構成されてもよい。操向システム648dは、自律モードまたは運転者制御モードにおいて、AV602の進行方向を調節するように動作可能であり得る、機構の任意の組み合わせを表し得る。
【0113】
自律制御ユニット648eは、AV602の環境内の潜在的障害物または障害物を識別、評価、および回避する、または別様に通り抜けるように構成される、制御システムを表し得る。一般に、自律制御ユニット648eは、運転者を伴わない動作のためにAV602を制御する、またはAV602を制御する際に運転者補助を提供するように構成されてもよい。いくつかの実施形態では、自律制御ユニット648eは、GPS送受信機646g、レーダユニット646b、LiDARユニット646f、カメラ646a、および/または他の車両サブシステムからのデータを組み込み、AV602のための運転経路または軌道を決定するように構成されてもよい。
【0114】
ネットワーク通信サブシステム692は、ルータ、スイッチ、モデム、および/または同等物等のネットワークインターフェースを備えてもよい。ネットワーク通信サブシステム692は、AV602と、
図1の監督サーバ120を含む、他のシステムとの間の通信を確立するように構成される。ネットワーク通信サブシステム692はさらに、データを他のシステムに送信し、そこから受信するように構成される。例えば、ネットワーク通信サブシステム692は、バッチコマンド132(
図1参照)を監督サーバ120(
図1参照)から受信し、センサデータ148(
図1参照)を監督サーバ120(
図1参照)に送信するように構成されてもよい。
【0115】
AV602の機能の多くまたは全ては、車載制御コンピュータ650によって制御されることができる。車載制御コンピュータ650は、データ記憶デバイス690またはメモリ等の非一過性コンピュータ可読媒体内に記憶される、処理命令680を実行する、少なくとも1つのデータプロセッサ670(少なくとも1つのマイクロプロセッサを含むことができる)を含んでもよい。車載制御コンピュータ650はまた、分散型方式において、AV602の個々のコンポーネントまたはサブシステムを制御する役割を果たし得る、複数のコンピューティングデバイスを表し得る。いくつかの実施形態では、データ記憶デバイス690は、データプロセッサ670によって実行可能な処理命令680(例えば、プログラム論理)を含有し、
図1-8に関して説明されるものを含む、AV602の種々の方法および/または機能を実施してもよい。
【0116】
データ記憶デバイス690は、同様に、車両運転サブシステム642、車両センササブシステム644、および車両制御サブシステム648のうちの1つまたはそれを上回るものに、データを伝送する、そこからデータを受信する、それと相互作用する、またはそれを制御するための命令を含む、付加的命令を含有してもよい。車載制御コンピュータ650は、データプロセッサ670と、データ記憶デバイス690とを含むように構成されることができる。車載制御コンピュータ650は、種々の車両サブシステム(例えば、車両運転サブシステム642、車両センササブシステム644、および車両制御サブシステム648)から受信された入力に基づいて、AV602の機能を制御してもよい。
【0117】
図7は、精密な自律運転動作を提供するための例示的システム700を示す。本システム700は、
図6に説明されるように、車載制御コンピュータ650内で動作し得る、いくつかのモジュールを含む。車載制御コンピュータ650は、
図7の左上角に示される、センサ融合モジュール702を含み、センサ融合モジュール702は、少なくとも4つの画像または信号処理動作を実施してもよい。センサ融合モジュール702は、画像を自律車両上に位置するカメラから取得し、画像セグメント化704を実施し、自律車両の周囲に位置する、移動物体(例えば、他の車両、歩行者等)および/または静的障害物(例えば、停止標識、減速バンプ、地形等)の存在を検出することができる。センサ融合モジュール702は、LiDAR点群データアイテムを自律車両上に位置するLiDARセンサから取得し、LiDARセグメント化706を実施し、自律車両の周囲に位置する、物体および/または障害物の存在を検出することができる。
【0118】
センサ融合モジュール702は、インスタンスセグメント化708を画像および/または点群データアイテム上で実施し、自律車両の周囲に位置する、物体および/または障害物の周囲の輪郭(例えば、ボックス)を識別することができる。センサ融合モジュール702は、1つの画像および/または点群データアイテムの1つのフレームからの物体および/または障害物が、時間的に続いて受信された1つまたはそれを上回る画像またはフレームからの物体および/または障害物と相関または関連付けられる、時間的融合710を実施することができる。
【0119】
センサ融合モジュール702は、カメラから取得される画像および/またはLiDARセンサから取得される点群データアイテムからの物体および/または障害物を融合させることができる。例えば、センサ融合モジュール702は、2つのカメラの場所に基づいて、自律車両の正面に位置する車両の1/2を備える、カメラのうちの1つからの画像が、別のカメラによって捕捉されて位置する車両と同一であることを決定し得る。センサ融合モジュール702は、融合された物体情報を推定モジュール746に、融合された障害物情報を占有グリッドモジュール760に送信する。車載制御コンピュータは、占有グリッドモジュール760を含み、これは、目印を車載制御コンピュータ内に記憶されるマップデータベース758から読み出すことができる。占有グリッドモジュール760は、センサ融合モジュール702から取得される融合された障害物およびマップデータベース758内に記憶される目印から、運転可能エリアおよび/または障害物を決定することができる。例えば、占有グリッドモジュール760は、運転可能エリアが減速バンプ障害物を含み得ることを決定することができる。
【0120】
センサ融合モジュール702の下層に、車載制御コンピュータ650は、自律車両上に位置するLiDARセンサ714から取得される点群データアイテムに基づいて、物体検出716を実施し得る、LiDARベース物体検出モジュール712を含む。物体検出716技法は、点群データアイテムからの物体の場所(例えば、3D世界座標内の)を提供することができる。LiDARベース物体検出モジュール712の下層に、車載制御コンピュータは、自律車両上に位置するカメラ720から取得される画像に基づいて、物体検出724を実施し得る、画像ベース物体検出モジュール718を含む。物体検出718技法は、深層機械学習技法724を採用し、カメラ720によって提供される画像から物体の場所(例えば、3D世界座標内の)を提供することができる。
【0121】
自律車両上のレーダ756は、自律車両の正面のエリアまたはそれに向かって自律車両が運転されるエリアを走査することができる。レーダデータは、レーダデータを使用して、レーダ756によって検出された物体および/または障害物とLiDAR点群データアイテムおよびカメラ画像の両方から検出された物体および/または障害物を相関させ得る、センサ融合モジュール702に送信される。レーダデータはまた、さらに下記に説明されるように、データ処理をレーダデータ上で実施し、物体追跡モジュール748によって物体を追跡し得るように、推定モジュール746に送信される。
【0122】
車載制御コンピュータは、点群からの物体および画像からの物体およびセンサ融合モジュール702からの融合された物体の場所を受信する、推定モジュール746を含む。推定モジュール746また、レーダデータを受信し、それを用いて推定モジュール746は、物体追跡モジュール748によって、ある時間インスタンスにおいて取得される1つの点群データアイテムおよび1つの画像から別の後続時間インスタンスにおいて取得される別の(または次の)点群データアイテムおよび別の画像へと物体を追跡することができる。
【0123】
推定モジュール746は、物体属性推定750を実施し、画像または点群データアイテム内で検出された物体の1つまたはそれを上回る属性を推定してもよい。物体の1つまたはそれを上回る属性は、物体のタイプ(例えば、歩行者、車、またはトラック等)を含んでもよい。推定モジュール746は、挙動予測752を実施し、画像および/または点群内で検出された物体の運動パターンを推定または予測してもよい。挙動予測752は、異なる時点において受信された画像のセット(例えば、シーケンシャル画像)または異なる時点において受信された点群データアイテムのセット(例えば、シーケンシャル点群データアイテム)内の物体の場所を検出するように実施されることができる。いくつかの実施形態では、挙動予測752は、カメラから受信された画像および/またはLiDARセンサから受信された点群データアイテム毎に、実施されることができる。いくつかの実施形態では、推定モジュール746は、1つおきまたは所定の数のカメラから受信された画像またはLiDARセンサから受信された点群データアイテムおき(例えば、2つの画像おきまたは3つの点群データアイテムおき)に挙動予測752を実施することによって、算出負荷を低減させるように実施(例えば、起動または実行)されることができる。
【0124】
挙動予測752特徴は、レーダデータから、自律車両を囲繞する、物体の速度および方向を決定し得、速度および方向情報は、物体の運動パターンを予測または決定するために使用されることができる。運動パターンは、画像がカメラから受信された後の将来的な所定の長さの時間にわたって、物体の予測される軌道情報を含んでもよい。予測される運動パターンに基づいて、推定モジュール746は、運動パターン状況タグを物体に割り当ててもよい(例えば、「座標(x,y)に位置する」、「停車されている」、「50mphで運転中」、「加速中」、または「減速中」)。状況タグは、物体の運動パターンを説明することができる。推定モジュール746は、1つまたはそれを上回る物体属性(例えば、物体のタイプ)および運動パターン状況タグを計画モジュール762に送信する。推定モジュール746は、システム700および任意の数のコンポーネントおよびそのコンポーネントの組み合わせによって入手された任意の情報を使用して、環境分析754を実施してもよい。
【0125】
車載制御コンピュータは、推定モジュール746からの物体属性および運動パターン状況タグ、運転可能エリアおよび/または障害物、および融合位置特定モジュール726からの車両場所および姿勢情報を受信する、計画モジュール762を含む(下記でさらに説明される)。
【0126】
計画モジュール762は、ナビゲーション計画764を実施し、その上で自律車両が運転され得る、軌道のセットを決定することができる。軌道のセットは、運転可能エリア情報、物体の1つまたはそれを上回る物体属性、物体の運動パターン状況タグ、障害物の場所、および運転可能エリア情報に基づいて決定されることができる。いくつかの実施形態では、ナビゲーション計画764は、緊急事態の場合、自律車両が安全に駐車され得る、道路に隣接するエリアを決定することを含んでもよい。計画モジュール762は、道路上の変化する条件(例えば、交通信号灯が、黄色に変わった、または自律車両が、別の車両が自律車両の正面に割り込み、自律車両の場所から所定の安全距離内の領域に入ったため、非安全運転条件下にある)の決定に応答して、運転アクション(例えば、操向、制動、スロットル)を決定するための挙動意思決定766を含んでもよい。計画モジュール762は、軌道生成768を実施し、軌道をナビゲーション計画動作764によって決定された軌道のセットから選択する。選択された軌道情報は、計画モジュール762によって制御モジュール770に送信される。
【0127】
車載制御コンピュータは、提案される軌道を計画モジュール762から、自律車両場所および姿勢を融合位置特定モジュール726から受信する、制御モジュール770を含む。制御モジュール770は、システム識別子772を含む。制御モジュール770は、モデルベースの軌道精緻化774を実施し、提案される軌道を精緻化することができる。例えば、制御モジュール770は、フィルタリング(例えば、カルマンフィルタ)を適用し、提案される軌道データを平滑にし、および/または雑音を最小限にすることができる。制御モジュール770は、精緻化された提案される軌道情報および自律車両の現在の場所および/または姿勢に基づいて、適用するためのブレーキ圧の量、操向角度、車両の速度を制御するためのスロットル量、および/またはトランスミッションギヤを決定することによって、ロバスト制御776を実施してもよい。制御モジュール770は、決定されたブレーキ圧、操向角度、スロットル量、および/またはトランスミッションギヤを自律車両内の1つまたはそれを上回るデバイスに送信し、自律車両の精密な運転動作を制御および促進することができる。
【0128】
画像ベース物体検出モジュール718によって実施される深層画像ベースの物体検出724もまた、道路(例えば、
図1の道路102)上の目印(例えば、停止標識、減速バンプ等)を検出するために使用されることができる。車載制御コンピュータは、画像から検出された目印、車載制御コンピュータ上に記憶されるマップデータベース736から取得された目印、LiDARベース物体検出モジュール712によって点群データアイテムから検出された目印、オドメータセンサ744からの速度および変位、および自律車両上または内に位置するGPS/IMUセンサ738(すなわち、GPSセンサ740およびIMUセンサ742)からの自律車両の推定される場所を取得する、融合位置特定モジュール726を含む。本情報に基づいて、融合位置特定モジュール726は、位置特定動作728を実施し、自律車両の場所を決定することができ、これは、計画モジュール762および制御モジュール770に送信されることができる。
【0129】
融合位置特定モジュール726は、GPSおよび/またはIMUセンサ738に基づいて、自律車両の姿勢730を推定することができる。自律車両の姿勢は、計画モジュール762および制御モジュール770に送信されることができる。融合位置特定モジュール726はまた、例えば、IMUセンサ742によって提供される情報(例えば、角速度および/または線形速度)に基づいて、トレーラユニットのステータス(例えば、場所、可能性として考えられる移動角度)を推定することができる(例えば、トレーラステータス推定734)。融合位置特定モジュール726はまた、マップコンテンツ732をチェックしてもよい。
【0130】
図8は、自律AV602内に含まれる、車載制御コンピュータ650の例示的ブロック図を示す。車載制御コンピュータ650は、少なくとも1つのプロセッサ804と、その上に記憶される命令(例えば、それぞれ、
図1および6における、ソフトウェア命令138および処理命令680)を有する、メモリ802とを含む。命令は、プロセッサ804による実行に応じて、車載制御コンピュータ650および/または車載制御コンピュータ650の種々のモジュールを構成し、
図1-7に説明される動作を実施する。伝送機806は、情報またはデータを自律車両内の1つまたはそれを上回るデバイスに伝送または送信する。例えば、伝送機806は、ステアリングホイールの1つまたはそれを上回るモータに、自律車両を操向するための命令を送信することができる。受信機808は、1つまたはそれを上回るデバイスによって伝送または送信される、情報またはデータを受信する。例えば、受信機808は、現在の速度のステータスをオドメータセンサから、または現在のトランスミッションギヤをトランスミッションから受信する。伝送機806および受信機808はまた、
図6-7に関して上記に説明される複数の車両サブシステム640および車載制御コンピュータ650と通信するように構成される。
いくつかの実施形態が、本開示内に提供されたが、開示されるシステムおよび方法は、本開示の精神または範囲から逸脱することなく、多くの他の具体的形態で具現化され得ることを理解されたい。本実施例は、制限的ではなく、例証的と見なされるものとし、その意図は、本明細書に与えられる詳細に限定されないものとする。例えば、種々の要素またはコンポーネントは、組み合わせられる、または別のシステム内に統合されてもよい、またはある特徴は、省略される、または実装されなくてもよい。
【0131】
加えて、離散または別個のものとして、種々の実施形態に説明および図示される技法、システム、サブシステム、および方法は、本開示の範囲から逸脱することなく、他のシステム、モジュール、技法、または方法と組み合わせられる、または統合されてもよい。結合される、または直接結合される、または相互に通信するものとして示される、または議論される、他のアイテムは、電気的に、機械的に、または別様にかどうかにかかわらず、いくつかのインターフェース、デバイス、または中間コンポーネントを通して、間接的に結合される、または通信してもよい。変更、代用、および改変の他の実施例は、当業者によって解明可能であって、本明細書に開示される精神および範囲から逸脱することなく、行われ得る。
【0132】
本明細書に添付の請求項を解釈する際、特許庁および本願で発行された任意の特許の任意の読者の理解を補助するために、本出願人は、単語「means for(~ための手段)」または「step for(~ためのステップ)」が特定の請求項において明示的に使用されない限り、本願の申請日時点で存在するという理由から、添付の請求項のいずれも米国特許法第112条(f)項(35U.S.C.§112(f))を発動することを意図するものではないことを強調しておく。
【0133】
本開示の実装は、以下の付記の観点から説明され得、その特徴は、任意の合理的様式において組み合わせられ得る。
付記1.自律車両に最小限のリスク条件操縦を実施するように命令するためのシステムであって、
2つまたはそれを上回る自律車両を備える、フリートと、
フリートの各自律車両と通信するように構成される、監督サーバと、
を備え、
フリート内の各自律車両は、
車両健全性データを提供するように構成される、少なくとも1つのセンサと、
車両場所データを提供する、GPSユニットと、
を備える、車両センササブシステムと、
車両駆動サブシステムと、
車両制御サブシステムと、
ネットワーク通信サブシステムを備える、車載制御コンピュータと、
を備え、
監督サーバは、
フリートのうちの複数の自律車両に該当する、マクロ情報を受信し、
少なくとも部分的に、マクロ情報に基づいて、バッチコマンドを生成し、バッチコマンドは、1つまたはそれを上回る条件と関連付けられ、
フリートのうちの自律車両毎に、
自律車両が1つまたはそれを上回る条件を満たすかどうかを決定し、
自律車両が1つまたはそれを上回る条件を満たすことを決定することに応答して、バッチコマンドを自律車両に送信し、バッチコマンドは、最小限のリスク条件操縦を実施するための命令を備える、
ように構成される、
システム。
【0134】
付記2.バッチコマンドはさらに、バッチコマンドをフリート内の1つまたはそれを上回る他の自律車両に提供するための命令を備える、付記1に記載のシステム。
【0135】
付記3.最小限のリスク条件操縦は、
自律車両を自律車両が現在進行している車線内で減速させることと、
自律車両を自律車両が現在進行している道路の片側のエリアに寄せさせることと、
自律車両を自律車両が現在進行している高速道路または車道から出させ、さらなる命令を受信するまで、運転を中止させることと、
のうちの少なくとも1つを含む、付記1に記載のシステム。
【0136】
付記4.監督サーバは、ユーザインターフェース上で選択された1つまたはそれを上回る条件を受け取るように構成される、付記1に記載のシステム。
【0137】
付記5.監督サーバはさらに、
フリート内の各自律車両から車両健全性データおよび車両場所データを受け取り、
各自律車両によって提供される、車両健全性データと、
各自律車両によって提供される、車両場所データと、
各自律車両が進行している、エリアに関する天候データと、
各自律車両が進行している、エリアに関する交通データと、
のうちの少なくとも1つに基づいて、フリートの自律車両が1つまたはそれを上回る条件を充足していることを決定する、
ように構成される、付記1に記載のシステム。
【0138】
付記6.フリートの少なくとも1つの自律車両は、
自律車両と関連付けられる、車載制御コンピュータを介して、バッチコマンドを監督サーバから受け取り、
自律車両と関連付けられる、サブシステムによって集められた、および生成された、センサデータおよび制御命令を利用することによって、バッチコマンドを実行する、
ように構成される、付記1に記載のシステム。
【0139】
付記7.自律車両は、バッチコマンドを1つまたはそれを上回る他の自律車両に送信するように構成される、付記2に記載のシステム。
付記8.自律車両に最小限のリスク条件操縦を実施するように命令するための方法であって、
【0140】
自律車両のフリートのうちの複数の自律車両に該当する、マクロ情報を受信することと、
少なくとも部分的に、マクロ情報に基づいて、バッチコマンドを生成することであって、バッチコマンドは、1つまたはそれを上回る条件と関連付けられる、ことと、
フリートのうちの自律車両毎に、
自律車両が1つまたはそれを上回る条件を満たすかどうかを決定することと、
自律車両が1つまたはそれを上回る条件を満たすことを決定することに応答して、バッチコマンドを自律車両に送信することであって、バッチコマンドは、最小限のリスク条件操縦を実施するための命令を備える、ことと、
を含む、方法。
【0141】
付記9.マクロ情報は、
複数の自律車両が進行している、特定のエリア内の天候データと、
特定のエリアと関連付けられる、交通データと、
自律車両と関連付けられる車載制御コンピュータ上にインストールされる、ソフトウェアアプリケーションのバージョン上で検出された潜在的セキュリティ脆弱性と、
特定のエリアと関連付けられる、政府経路指定規制の変更と、
複数の自律車両上に配設される、コンポーネントにおける欠陥と、
複数の自律車両と関連付けられる、健全性データにおける劣化と、
のうちの少なくとも1つを含む、付記8に記載の方法。
【0142】
付記10.1つまたはそれを上回る条件は、1つまたはそれを上回る条件が、具体的時間範囲において自律車両に関して照合されるようにスケジュールされるように、時間帯ベースである、付記8に記載の方法。
【0143】
付記11.1つまたはそれを上回る条件は、1つまたはそれを上回る条件が、自律車両があるゾーン境界の中で運転しているとき、自律車両に関して照合されるように、場所ベースである、付記8に記載の方法。
【0144】
付記12.1つまたはそれを上回る条件は、監督サーバが、監督サーバがマクロ情報を受信するにつれて、自律車両が1つまたはそれを上回る条件を満たすかどうかを決定するように、即座である、付記8に記載の方法。
【0145】
付記13.1つまたはそれを上回る条件は、
自律車両が、高速道路、オン/オフランプ、多重車線道路、単一車線道路、または側道を備える、あるタイプの道路上を進行しているかどうかを決定することと、
自律車両が、道路上で特定の方向に進行しているかどうかを決定することと、
特定のタイプの工事ゾーンが自律車両からの閾値距離内にあるかどうかを検出することと、
自律車両が、特定のマイルマーカによって指定される道路のセクション上を進行しているかどうかを決定することと、
自律車両が、ゾーン境界を示す、ジオフェンス内を進行しているかどうかを決定することと、
自律車両と具体的場所との間の距離が特定の距離であるかどうかを決定することと、
自律車両上にインストールされる、ソフトウェアアプリケーションバージョンが、特定のバージョンであるかどうかを決定することと、
自律車両が、具体的天候条件下を進行しているかどうかを決定することと、
自律車両が、具体的交通条件下を進行しているかどうかを決定することと、
のうちの少なくとも1つを含む、付記8に記載の方法。
【0146】
付記14.マクロ情報は、ライブニュース報告、ライブ交通報告、ライブ天気予報、または法執行機関を備える、第三者ソースから受信される、付記8に記載の方法。
【0147】
付記15.コンピュータプログラムであって、1つまたはそれを上回るプロセッサによって実行されると、1つまたはそれを上回るプロセッサに、
自律車両のフリートのうちの複数の自律車両に該当する、マクロ情報を受信させ、
少なくとも部分的に、マクロ情報に基づいて、バッチコマンドを生成させ、バッチコマンドは、1つまたはそれを上回る条件と関連付けられ、
フリートのうちの自律車両毎に、
自律車両が1つまたはそれを上回る条件を満たすかどうかを決定させ、
自律車両が1つまたはそれを上回る条件を満たすことを決定することに応答して、バッチコマンドを自律車両に送信させ、バッチコマンドは、最小限のリスク条件操縦を実施するための命令を備える、
非一過性コンピュータ可読媒体内に記憶される、実行可能命令を備える、コンピュータプログラム。
【0148】
付記16.
1つまたはそれを上回る条件のうちの少なくとも1つの条件は、自律車両によって検出され、
少なくとも1つの条件は、
自律車両の健全性を潜在的に劣化させる、故障コードが、検出されるかどうかを決定することと、
自律車両内に配設される、物理的コンポーネントにおける欠陥が、検出されるかどうかを決定することと、
を備える、付記15に記載のコンピュータプログラム。
【0149】
付記17.命令は、1つまたはそれを上回るプロセッサによって実行されると、さらに1つまたはそれを上回るプロセッサに、自律車両から、自律車両が最小限のリスク条件操縦を実施したことの確認メッセージを受信させる、付記15に記載のコンピュータプログラム。
【0150】
付記18.命令は、1つまたはそれを上回るプロセッサによって実行されると、さらに1つまたはそれを上回るプロセッサに、
少なくとも部分的に、センサデータに基づいて、自律車両によって進行される道路上の物体を検出させ、
物体が、第1のタイムスタンプにおいて、最小限のリスク条件操縦を実施することを邪魔するかどうかを決定させ、
物体が、第1のタイムスタンプにおいて、最小限のリスク条件操縦を実施することを邪魔することを決定することに応答して、
自律車両が物体を通過するまで、運転を継続させ、
第2のタイムスタンプにおいて、最小限のリスク条件操縦を実施させる、
付記15に記載のコンピュータプログラム。
【0151】
付記19.自律車両は、少なくとも1つのセンサを備え、少なくとも1つのセンサは、カメラ、光検出および測距(LiDAR)センサ、運動センサ、または赤外線センサを備える、付記15に記載のコンピュータプログラム。
【0152】
付記20.自律車両は、トレーラに取り付けられる、トラクタユニットである、付記15に記載のコンピュータプログラム。
【外国語明細書】