(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-01-11
(45)【発行日】2023-01-19
(54)【発明の名称】自律運転システムの支援を伴う自律運転モードから手動運転モードへの安全な移行
(51)【国際特許分類】
B60W 30/085 20120101AFI20230112BHJP
B60W 40/09 20120101ALI20230112BHJP
B60W 40/02 20060101ALI20230112BHJP
B60W 60/00 20200101ALI20230112BHJP
B60W 50/10 20120101ALI20230112BHJP
B60W 50/02 20120101ALI20230112BHJP
B60W 50/14 20200101ALI20230112BHJP
G08G 1/16 20060101ALI20230112BHJP
【FI】
B60W30/085
B60W40/09
B60W40/02
B60W60/00
B60W50/10
B60W50/02
B60W50/14
G08G1/16 A
(21)【出願番号】P 2020171226
(22)【出願日】2020-10-09
【審査請求日】2020-10-09
(32)【優先日】2019-10-09
(33)【優先権主張国・地域又は機関】US
【前置審査】
(73)【特許権者】
【識別番号】516357421
【氏名又は名称】バイドゥ ユーエスエイ エルエルシー
【氏名又は名称原語表記】Baidu USA LLC
(74)【代理人】
【識別番号】100118913
【氏名又は名称】上田 邦生
(72)【発明者】
【氏名】リウ, シャオドン
(72)【発明者】
【氏名】クー, ニン
【審査官】二之湯 正俊
(56)【参考文献】
【文献】国際公開第2018/092230(WO,A1)
【文献】特開2015-157604(JP,A)
【文献】国際公開第2018/221350(WO,A1)
【文献】特開2019-048603(JP,A)
【文献】特開2018-195246(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B60W 10/00-10/30
B60W 30/00-60/00
G08G 1/00-99/00
(57)【特許請求の範囲】
【請求項1】
自律運転車両(ADV)のための、自律運転(AD)モードから手動運転(MD)モードに移行するコンピュータ実装方法であって、
前記ADVの現在のロケーションにおいてADからMDへの移行が許容されるかどうかを判定するステップと、
現在の運転シナリオが前記ADからMDへの移行にとって安全かどうかを判定するステップと、
前記現在のロケーションにおいて前記ADからMDへの移行が許容され、かつ、前記現在の運転シナリオが前記ADからMDへの移行にとって安全であるとの判定に応答して、前記ADからMDへの移行を有効化するステップと、
前記ADからMDへの移行の要求があるかどうかを判定するステップと、
前記要求があるとの判定に応答して、前記ADVの現在の車両運動軌跡を計算するステップと、
前記現在の車両運動軌跡を、前記ADVのドライバーの入力から導出された運動軌跡と比較するステップと、
前記比較に基づいて、前記ADからMDへの移行を承認するべきかどうかを判定するステップと、
を含み、
前記現在の運転シナリオが前記ADからMDへの移行にとって安全かどうかを判定するステップが、
危険な車両応答およ
び交通状況を動的に判定して記憶するステップ
であって、前記危険な車両応答および交通状況が、追い越し操作、車線変更、及び交通量が多いエリアの近くでの高い車速を含むステップと、
危険な車両応答および交通状況がない場合、現在の運転シナリオが前記ADからMDへの移行にとって安全であると判定するステップと、
を含む方法。
【請求項2】
前記ADからMDへの移行が所定の時間フレームの範囲内で完了したかどうかを判定するステップと、
前記ADからMDへの移行が前記所定の時間フレームの範囲内で完了したとの判定に応答して、前記ADVをADモードからMDモードに移行するステップと、
を含む請求項1に記載の方法。
【請求項3】
前記ADVの前記現在のロケーションにおいて前記ADからMDへの移行が許容されるかどうかを判定する前に、
MPOI(map and point of interest)情報に基づいて、危険であると判定された、計画されたルートに沿った道路区間を識別するステップと、
前記ADVの前記現在のロケーションが危険な道路区間にあるかどうかを判定するステップと、
を含む請求項1に記載の方法。
【請求項4】
前記ADVの前記現在のロケーションにおいて前記ADからMDへの移行が許容されるかどうかを判定するステップが、前記ADVの前記現在のロケーションが前記危険な道路区間にあるとの判定に応答して、前記ADからMDへの移行が許容されないと判定するステップを含む請求項3に記載の方法。
【請求項5】
前記ADVによって検出されたリアルタイム交通情報およびリアルタイム局所環境データに基づいて、前記現在の運転シナリオが前記ADからMDへの移行にとって安全かどうかが判定される請求項1に記載の方法。
【請求項6】
前記ADからMDへの移行が前記所定の時間フレームの範囲内で完了したかどうかを判定する前に、移行タイマを始動するステップと、
前記ADからMDへの移行が前記所定の時間フレームの範囲内で完了しなかったとの判定に応答して、前記移行タイマが満了したかどうかを判定するステップと、
を含む請求項2に記載の方法。
【請求項7】
前記ADVが運用設計領域(ODD)の境界に近づいていることまたは予想外のシナリオに直面していることを検出するのに応答して、前記ADVのドライバーが前記ADVを制御することを許容するステップを含む請求項2に記載の方法。
【請求項8】
前記ドライバーによる前記ADVの前記制御が、時間切れになる前に承認されたかどうかを判定するステップと、
前記時間切れになるまで前記ADVの前記制御が承認されなかったとの判定に応答して、前記ADVに、安全な状態になるように指令するステップと、
を含む請求項7に記載の方法。
【請求項9】
前記ADからMDへの移行が前記所定の時間フレームの範囲内で完了したかどうかを判定する前に、移行タイマを始動するステップと、
前記ADからMDへの移行が前記所定の時間フレームの範囲内で完了しなかったとの判定に応答して、前記移行タイマが満了したかどうかを判定するステップと、
前記移行タイマが満了したとの判定に応答して、前記ADVに、安全な状態になるように指令するステップと、
を含む請求項7に記載の方法。
【請求項10】
前記ADVが故障動作モードで動作しているかどうかを判定するステップと、
前記ADVが故障動作モードで動作しているとの判定に応答して、前記ADVのドライバーが前記ADVを制御することを許容されるかどうかを判定するステップと、
前記ドライバーが前記ADVを制御することを許容されるとの判定に応答して、ドライバーへの引き継ぎ要求を送信するステップと、
を含む請求項2に記載の方法。
【請求項11】
ドライバー応答タイマを始動するステップと、
前記ドライバーへの引き継ぎ要求が、前記ドライバータイマが満了する前に承認されたかどうかを判定するステップと、
を含む請求項10に記載の方法。
【請求項12】
前記ADからMDへの移行を有効化した後に、前記ADからMDへの移行が有効になったことを示すメッセージを表示するステップと、
前記現在のロケーションにおいて前記ADからMDへの移行が許容されない、または前記現在の運転シナリオが前記ADからMDへの移行にとって安全ではないとの判定に応答して、前記ADからMDへの移行が有効化されないことを示すメッセージを表示するステップと、
を含む請求項1に記載の方法。
【請求項13】
前記現在の車両運動軌跡を前記ADVのドライバーの入力から導出された前記運動軌跡と比較するステップが、前記現在の車両運動軌跡が前記ドライバーの前記入力から導出された前記運動軌跡と合致するかどうかを判定するステップを含む請求項1に記載の方法。
【請求項14】
前記車両運動軌跡が前記ドライバーの前記入力から導出された前記運動軌跡と合致するとの判定に応答して、前記ADからMDへの移行が承認されて該ADからMDへの移行が進行中であることを示すメッセージを表示し、
そうでなければ、前記ADからMDへの移行が承認されていないことおよび現在のモードがADであることを示すメッセージを表示するステップを含む請求項13に記載の方法。
【請求項15】
プロセッサによって実行されたとき、該プロセッサに動作を実行させる命令を記憶した非一時的マシン可読媒体であって、前記動作が、
前記ADVの現在のロケーションにおいてADからMDへの移行が許容されるかどうかを判定するステップと、
現在の運転シナリオが前記ADからMDへの移行にとって安全かどうかを判定するステップと、
前記現在のロケーションにおいて前記ADからMDへの移行が許容され、かつ、前記現在の運転シナリオが前記ADからMDへの移行にとって安全であるとの判定に応答して、前記ADからMDへの移行を有効化するステップと、
前記ADからMDへの移行の要求があるかどうかを判定するステップと、
前記要求があるとの判定に応答して、前記ADVの現在の車両運動軌跡を計算するステップと、
前記現在の車両運動軌跡を、前記ADVのドライバーの入力から導出された運動軌跡と比較するステップと、
前記比較に基づいて、前記ADからMDへの移行を承認するべきかどうかを判定するステップと、
を含み、
前記現在の運転シナリオが前記ADからMDへの移行にとって安全かどうかを判定するステップが、
危険な車両応答およ
び交通状況を動的に判定して記憶するステップ
であって、前記危険な車両応答および交通状況が、追い越し操作、車線変更、及び交通量が多いエリアの近くでの高い車速を含むステップと、
危険な車両応答および交通状況がない場合、現在の運転シナリオが前記ADからMDへの移行にとって安全であると判定するステップと、
を含む非一時的マシン可読媒体。
【請求項16】
前記動作が、
前記ADからMDへの移行が所定の時間フレームの範囲内で完了したかどうかを判定するステップと、
前記ADからMDへの移行が前記所定の時間フレームの範囲内で完了したとの判定に応答して、前記ADVをADモードからMDモードに移行するステップと、
を含む請求項15に記載の非一時的マシン可読媒体。
【請求項17】
前記動作が、
前記ADVの前記現在のロケーションにおいて前記ADからMDへの移行が許容されるかどうかを判定する前に、
MPOI(map and point of interest)情報に基づいて、危険であると判定された、計画されたルートに沿った道路区間を識別するステップと、
前記ADVの前記現在のロケーションが危険な道路区間にあるかどうかを判定するステップと、
を含む請求項15に記載の非一時的マシン可読媒体。
【請求項18】
前記ADVの前記現在のロケーションにおいて前記ADからMDへの移行が許容されるかどうかを判定するステップが、前記ADVの前記現在のロケーションが前記危険な道路区間にあるとの判定に応答して、前記ADからMDへの移行が許容されないと判定するステップを含む、請求項17に記載の非一時的マシン可読媒体。
【請求項19】
前記ADVによって検出されたリアルタイム交通情報およびリアルタイム局所環境データに基づいて、前記現在の運転シナリオが前記ADからMDへの移行にとって安全かどうかが判定される請求項15に記載の非一時的マシン可読媒体。
【請求項20】
前記動作が、
前記ADからMDへの移行が前記所定の時間フレームの範囲内で完了したかどうかを判定する前に、移行タイマを始動するステップと、
前記ADからMDへの移行が前記所定の時間フレームの範囲内で完了しなかったとの判定に応答して、前記移行タイマが満了したかどうかを判定するステップと、
を含む、請求項16に記載の非一時的マシン可読媒体。
【請求項21】
前記動作が、前記ADVが運用設計領域(ODD)の境界に近づいていることまたは予想外のシナリオに直面していることを検出するのに応答して、前記ADVのドライバーが前記ADVを制御することを許容するステップを含む請求項16に記載の非一時的マシン可読媒体。
【請求項22】
前記動作が、
前記ドライバーによる前記ADVの前記制御が、時間切れになる前に承認されたかどうかを判定するステップと、
前記時間切れになるまで前記ADVの前記制御が承認されなかったとの判定に応答して、前記ADVに、安全な状態になるように指令するステップと、
を含む請求項21に記載の非一時的マシン可読媒体。
【請求項23】
前記動作が、
前記ADからMDへの移行が前記所定の時間フレームの範囲内で完了したかどうかを判定する前に、移行タイマを始動するステップと、
前記ADからMDへの移行が前記所定の時間フレームの範囲内で完了しなかったとの判定に応答して、前記移行タイマが満了したかどうかを判定するステップと、
前記移行タイマが満了したとの判定に応答して、前記ADVに、安全な状態になるように指令するステップと、
を含む請求項21に記載の非一時的マシン可読媒体。
【請求項24】
前記動作が、
前記ADVが故障動作モードで動作しているかどうかを判定するステップと、
前記ADVが故障動作モードで動作しているとの判定に応答して、前記ADVのドライバーが前記ADVを制御することを許容されるかどうかを判定するステップと、
前記ドライバーが前記ADVを制御することを許容されるとの判定に応答して、ドライバーへの引き継ぎ要求を送信するステップと、
を含む請求項16に記載の非一時的マシン可読媒体。
【請求項25】
前記動作が、
ドライバー応答タイマを始動するステップと、
前記ドライバーへの引き継ぎ要求が、前記ドライバータイマが満了する前に承認されたかどうかを判定するステップと、
を含む請求項24に記載の非一時的マシン可読媒体。
【請求項26】
前記動作が、
前記ADからMDへの移行を有効化した後に、前記ADからMDへの移行が有効になったことを示すメッセージを表示するステップと、
前記現在のロケーションにおいて前記ADからMDへの移行が許容されない、または前記現在の運転シナリオが前記ADからMDへの移行にとって安全ではないとの判定に応答して、前記ADからMDへの移行が有効化されないことを示すメッセージを表示するステップと、
を含む請求項15に記載の非一時的マシン可読媒体。
【請求項27】
前記現在の車両運動軌跡を前記ADVのドライバーの入力から導出された前記運動軌跡と比較するステップが、前記現在の車両運動軌跡が前記ドライバーの前記入力から導出された前記運動軌跡と合致するかどうかを判定するステップを含む請求項15に記載の非一時的マシン可読媒体。
【請求項28】
前記動作が、
前記車両運動軌跡が前記ドライバーの前記入力から導出された前記運動軌跡と合致するとの判定に応答して、前記ADからMDへの移行が承認されて該ADからMDへの移行が進行中であることを示すメッセージを表示し、
そうでなければ、前記ADからMDへの移行が承認されていないことおよび現在のモードがADであることを示すメッセージを表示するステップを含む請求項27に記載の非一時的マシン可読媒体。
【請求項29】
プロセッサと、
該プロセッサによって実行されたとき該プロセッサに動作を実行させる命令を記憶するために該プロセッサに接続されたメモリと、を備えるデータ処理システムであって、前記動作が、
前記ADVの現在のロケーションにおいてADからMDへの移行が許容されるかどうかを判定するステップと、
現在の運転シナリオが前記ADからMDへの移行にとって安全かどうかを判定するステップと、
前記現在のロケーションにおいて前記ADからMDへの移行が許容され、かつ、前記現在の運転シナリオが前記ADからMDへの移行にとって安全であるとの判定に応答して、前記ADからMDへの移行を有効化するステップと、
前記ADからMDへの移行の要求があるかどうかを判定するステップと、
前記要求があるとの判定に応答して、前記ADVの現在の車両運動軌跡を計算するステップと、
前記現在の車両運動軌跡を、前記ADVのドライバーの入力から導出された運動軌跡と比較するステップと、
前記比較に基づいて、前記ADからMDへの移行を承認するべきかどうかを判定するステップと、
を含み、
前記現在の運転シナリオが前記ADからMDへの移行にとって安全かどうかを判定するステップが、
危険な車両応答およ
び交通状況を動的に判定して記憶するステップ
であって、前記危険な車両応答および交通状況が、追い越し操作、車線変更、及び交通量が多いエリアの近くでの高い車速を含むステップと、
危険な車両応答および交通状況がない場合、現在の運転シナリオが前記ADからMDへの移行にとって安全であると判定するステップと、
を含むデータ処理システム。
【請求項30】
コンピュータ上で動作する際、前記コンピュータが請求項1から14のいずれか一項に記載の方法を実行するコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の実施形態は、一般に、自律車両を動作させることに関する。より具体的には、本開示の実施形態は、自律運転システムの支援を伴う自律運転(AD)モードから手動運転(MD)モードへの安全な移行に関する。
【背景技術】
【0002】
自律モード(例えば、無人)で動作している車両は、乗車者、特にドライバーを運転に関連した責任から解放することができる。自律モードで動作している場合、車両は、車載センサを用いて様々な場所へと航行でき、それによって最低限の人とのやりとりで、あるいは、場合によっては搭乗者なしに、車両が移動できるようになる。
【0003】
一般に、自律運転車両の配備については2つの手法がある。手法の1つは、特定の制御要素(例えばハンドル、アクセルペダル、ブレーキペダルなど)のない車両を配備するものである。別の手法はそのような制御要素を伴う車両を配備するものであり、それによってドライバーは車両の制御を引き継ぐ機会を得ることができる。前者については、ドライバーが関係しないので、ADからMDへの移行もMDからADへの移行も要因ではない。しかしながら、後者については、単に移行中の危険な制御動作によって車両が危険な状況に陥る可能性があるため、ADからMDへまたはMDからADへの移行は慎重に検討する必要がある。例えば、移行中に、ADと(人間のドライバーによる)MDとが制御をめぐって競合する可能性があり、それによって、荒い、可能性として危険な移行になる。別の例は、ADもMDも相手が制御していると想定してしまい、結局ADもMDも車両を制御しない可能性がある。
【0004】
自律運転車両はまだ生産されていないので、試験のために安全ドライバーが搭乗する修正された試作自律車両を除けば、ADからMDへまたはMDからADへの移行に対処するための研究は(あったとしても)ほんの少ししか実行または報告されていない。
【発明の概要】
【0005】
本開示の実施形態は、同様の参照符号が同様の要素を示す、添付の図面の図中に例として示されており、限定として示されていない。
【図面の簡単な説明】
【0006】
【
図1】一実施形態に係るネットワーク化システムを示すブロック図である。
【
図2】一実施形態に係る自律車両の例を示すブロック図である。
【
図3A】一実施形態に係る、自律運転車両(ADV)とともに使用される知覚プランニングシステムの例を示すブロック図である。
【
図3B】一実施形態に係る、自律運転車両(ADV)とともに使用される知覚プランニングシステムの例を示すブロック図である。
【
図4A】一実施形態に係るドライブバイワイヤシステムを示す図である。
【
図4B】一実施形態に係るドライブバイワイヤシステムを示す図である。
【
図5】一実施形態に係る自律運転(AD)から手動運転(MD)への移行を有効化するための方法の例を示す流れ図である。
【
図6】一実施形態に係るADからMDへの移行を承認するための方法の例を示す流れ図である。
【
図7】一実施形態に係るADからMDへの移行を監視するための方法の例を示す流れ図である。
【
図8】一実施形態に係る、ドライバーが開始する、ADモードからMDモードへの移行のための方法の例を示す流れ図である。
【
図9】一実施形態に係る、システムが開始する、ADモードからMDモードへの移行のための方法の例を示す流れ図である。
【
図10】一実施形態に係る、システムが開始する、ADモードからMDモードへの移行のための方法の別の例を示す流れ図である。
【
図11】一実施形態に係るデータ処理システムを示すブロック図である。
【発明を実施するための形態】
【0007】
本開示の様々な実施形態および態様が、以下で論じられる詳細を参照しながら説明され、添付の図面は様々な実施形態を示す。以下の説明および図面は、本開示を例示するものであり、本開示を限定するものとして解釈されるべきではない。本開示の様々な実施形態への完全な理解を与えるために、多数の具体的な詳細について説明する。しかしながら、いくつかの事例では、本開示の実施形態の簡潔な議論を提供するために、よく知られている、あるいは、従来の詳細については説明しない。
【0008】
本明細書における「一実施形態」または「実施形態」に対する言及は、実施形態に関して説明される特定の特徴、構造または特性が本開示の少なくとも1つの実施形態に含まれ得ることを意味する。本明細書中の様々な個所における「一実施形態では」というフレーズの出現は、必ずしも全てが同じ実施形態を指すとは限らない。
【0009】
いくつかの実施形態は、ドライバーがアクセルペダル、ブレーキペダル、およびハンドルなどの制御要素によって車両の前後方向の運動および横方向の運動を直接制御することのない自律性のドライブバイワイヤ(例えばステアリングバイワイヤ、ブレーキバイワイヤ、スロットルバイワイヤ、シフトバイワイヤなど)の車両を対象とする、ADからMDへの移行のための方法、装置、およびシステムに関する。ドライブバイワイヤ(xバイワイヤとも呼ばれる)は、伝統的に機構部品(またはリンク機構)によって達成されている車両機能を実行するための電気システムまたは電気機械システムの使用をいう。この技術は、従来の機械制御システムを、電気機械アクチュエータと、ペダルおよびステアリングの感覚エミュレータなどのヒューマンマシンインターフェースとを使用する電子制御システムで置換するものである。
【0010】
本開示の実施形態は、車両の自律運転システム(例えばセンサシステム、制御システム、知覚プランニングシステムなど)によってもたらされる情報(例えば、交通情報、道路情報、車両の応答、ドライバーの引き継ぎ要求からの前後方向/横方向の運動の意向など)を使用して、ADからMDへの移行の安全性を改善することに的を絞るものである。自律性のドライブバイワイヤ車両についてはドライバーが制御を直接引き継ぐことは考えられていないので、コマンドとしてのドライバーの意向は、車両を制御するための前後方向や横方向のコマンドに変換される。
【0011】
いくつかの実施形態によれば、自律運転車両(ADV)のための、自律運転(AD)モードから手動運転(MD)モードに移行するための方法およびシステムが説明される。一実施形態では、ADVの現在のロケーションにおいてADからMDへの移行が許容されるかどうかが判定される。現在の運転シナリオがADからMDへの移行にとって安全かどうかが判定される。現在のロケーションにおいてADからMDへの移行が許容され、かつ現在の運転シナリオがADからMDへの移行にとって安全であるとの判定に応答して、ADからMDへの移行が有効化される。ADからMDへの移行の要求があるかどうかが判定される。要求があるとの判定に応答して、ADVの現在の車両運動軌跡が計算される。現在の車両運動軌跡が、ADVのドライバーの入力から導出された運動軌跡と比較される。比較に基づいて、ADからMDへの移行を承認するべきかどうかが判定される。
【0012】
一実施形態では、ADからMDへの移行が所定の時間フレームの範囲内でうまく完了したかどうかが判定される。ADVは、ADからMDへの移行が所定の時間フレームの範囲内でうまく完了したとの判定に応答して、ADモードからMDモードに移行する。
【0013】
一実施形態では、ADVの現在のロケーションにおいてADからMDへの移行が許容されるかどうか判定する前に、MPOI(map and point of interest)情報に基づいて、計画されたルートに沿った、危険と判定される道路区間が識別される。ADVの現在のロケーションが危険な道路区間にあるかどうかが判定される。
【0014】
一実施形態では、ADVの現在のロケーションにおいてADからMDへの移行が許容されるかどうかを判定することは、ADVの現在のロケーションが危険な道路区間にあるとの判定に応答して、ADからMDへの移行が許容されないと判定することを含む。
【0015】
一実施形態では、ADVによって検出されたリアルタイム交通情報およびリアルタイム局所環境データに基づいて、現在の運転シナリオがADからMDへの移行にとって安全かどうかが判定される。
【0016】
一実施形態では、ADからMDへの移行が所定の時間フレームの範囲内でうまく完了したかどうかを判定する前に移行タイマが始動される。ADからMDへの移行が所定の時間フレームの範囲内でうまく完了しなかったとの判定に応答して、移行タイマが満了したかどうかが判定される。
【0017】
一実施形態では、ADVのドライバーは、ADVが運用設計領域(ODD)の境界に近づいていることまたは予想外のシナリオに直面していることを検出するのに応答して、ADVを制御することを許容される。
【0018】
一実施形態では、時間切れになる前にドライバーによるADVの制御が承認されたかどうかが判定される。時間切れになるまでADVの制御が承認されなかったとの判定に応答して、ADVは安全な状態になるように指令される。
【0019】
一実施形態では、ADVが故障動作モードで動作しているかどうかが判定される。ADVが故障動作モードで動作しているとの判定に応答して、ADVのドライバーがADVを制御することを許容されるかどうかが判定される。ドライバーがADVを制御することが許容されるとの判定に応答して、ドライバーへの引き継ぎ要求が送られる。
【0020】
一実施形態では、ドライバー応答タイマが始動され、このドライバータイマが満了するまでにドライバーへの引き継ぎ要求が承認されたかどうかが判定される。
【0021】
一実施形態では、ADからMDへの移行を有効化した後に、ADからMDへの移行が有効になったことを示すメッセージが表示される。現在のロケーションにおいてADからMDへの移行が許容されない、または現在の運転シナリオがADからMDへの移行にとって安全ではないとの判定に応答して、ADからMDへの移行が有効ではない(または無効化される)ことを示すメッセージが表示される。
【0022】
図1は、本開示の一実施形態に係る自律車両ネットワーク構成を示すブロック図である。
図1を参照すると、ネットワーク構成100は、ネットワーク102を介して1または複数のサーバ103~104に通信可能に接続され得る自律車両101を備えている。示されている1つの自律車両が示されているが、複数の自律車両が、ネットワーク102を介して互いに、および/または、サーバ103~104に接続されていてもよい。ネットワーク102は、ローカルエリアネットワーク(LAN)、インターネットなどのワイドエリアネットワーク(WAN)、セルラーネットワーク、衛星ネットワーク、またはこれらの組合せなど、有線または無線の任意のタイプのネットワークであり得る。サーバ103~104は、ウェブまたはクラウドサーバ、アプリケーションサーバ、バックエンドサーバ、またはそれらの組合せなど、任意の種類のサーバまたはサーバのクラスタであり得る。サーバ103~104は、データ解析サーバ、コンテンツサーバ、交通情報サーバ、MPOI(map and point of interest)サーバまたはロケーションサーバなどであり得る。
【0023】
自律車両とは、ドライバーからの入力が殆どまたは全くない環境下で車両が航行する自律モードにあるように構成され得る車両をいう。そのような自律車両は、車両が動作する環境についての情報を検出するように構成された1または複数のセンサを有するセンサシステムを備えることができる。車両およびこれに関連するコントローラは、検出された情報を使用して、この環境下で航行する。自律車両101は、手動モード、完全自律モードまたは部分自律モードで動作することができる。以下では「自律車両」および「自律運転車両」(ADV)という用語は区別なく使用され得る。
【0024】
一実施形態では、自律車両101は、これに限定されないが、知覚プランニングシステム110と、車両制御システム111と、ワイヤレス通信システム112と、ユーザインターフェースシステム113と、インフォテインメントシステム114と、センサシステム115とを備えている。自律車両101は、例えば、加速信号またはコマンド、減速信号またはコマンド、操舵信号またはコマンド、制動信号またはコマンドなど、様々な通信信号および/またはコマンドを使用して、車両制御システム111および/または知覚プランニングシステム110によって制御され得る、エンジン、ホイール、ステアリングホイール、トランスミッションなど、通常の車両中に備えられるいくつかの一般的な構成要素をさらに備えていてもよい。
【0025】
構成要素110~115は、相互接続、バス、ネットワークまたはこれらの組合せを介して互いに通信可能に接続され得る。例えば、構成要素110~115は、コントローラエリアネットワーク(CAN)バスを介して互いに通信可能に接続され得る。CANバスは、マイクロコントローラおよびデバイスが、ホストコンピュータなしにアプリケーション内で互いに通信することを可能にするように設計されたビークルバス規格である。CANバスは、元来は、自動車内の多重化電気配線のために設計されたメッセージベースのプロトコルであるが、多くの他の状況においても使用される。
【0026】
次に
図2を参照すると、一実施形態では、センサシステム115は、これに限定されないが、1または複数のカメラ211と、全地球測位システム(GPS)ユニット212と、慣性測定ユニット(IMU)213と、レーダーユニット214と、光検出および測距(LIDAR)ユニット215とを備えている。GPSシステム212は、自律車両の位置に関する情報を与えるように動作可能なトランシーバを備えていてもよい。IMUユニット213は、慣性加速度に基づいて自律車両の位置姿勢の変化を感知し得る。レーダーユニット214は、無線信号を利用して、自律車両の局所環境内の物体を感知するシステムであってもよい。いくつかの実施形態では、物体を感知することに加えて、レーダーユニット214は、さらに、物体の速度および/または進路を感知し得る。LIDARユニット215は、自律車両がレーザーを使用して位置される環境中の物体を感知し得る。LIDARユニット215は、いくつかあるシステム構成要素の中でも特に、1または複数のレーザー源、レーザースキャナおよび1または複数の検出器を備えることができる。カメラ211は、自律車両を囲む環境の画像を取得する1または複数のデバイスを備えていてもよい。カメラ211はスチールカメラおよび/またはビデオカメラであってもよい。カメラは、例えば、回転するおよび/または傾斜するプラットフォーム上にカメラを取り付けることによって、機械的に移動可能であってもよい。
【0027】
センサシステム115は、ソナーセンサ、赤外線センサ、操舵センサ、スロットルセンサ、制動センサおよびオーディオセンサ(例えば、マイクロフォン)など、他のセンサをさらに備えてもよい。オーディオセンサは、自律車両を囲む環境から音を取得するように構成されていてもよい。操舵センサは、車両のステアリングホイール、ホイールの操舵角またはこれらの組合せを感知するように構成されていてもよい。スロットルセンサおよび制動センサは、それぞれ、車両のスロットル位置および制動位置を感知する。いくつかの状況では、スロットルセンサおよび制動センサは一体型スロットル/制動センサとして一体化され得る。
【0028】
一実施形態では、車両制御システム111は、これに限定されないが、ステアリングユニット201、(加速ユニットとも呼ばれる)スロットルユニット202および制動ユニット203を備えている。ステアリングユニット201は、車両の方向または進路を調整するためのものである。スロットルユニット202は、車両の速度および加速度を順に制御するモーターまたはエンジンの速度を制御するためのものである。制動ユニット203は、摩擦を与えることによって車両を減速させ、車両のホイールまたはタイヤを遅くするためのものである。なお、
図2に示されている構成要素は、ハードウェア、ソフトウェアまたはこれらの組合せで実装されてもよい。
【0029】
再び
図1を参照すると、ワイヤレス通信システム112は、自律車両101と、デバイス、センサ、他の車両など、外部システムとの間の通信を可能にするためのものである。例えば、ワイヤレス通信システム112は、1または複数のデバイスと直接、またはネットワーク102上のサーバ103~104など、通信ネットワークを介して、ワイヤレスで通信することができる。ワイヤレス通信システム112は、任意のセルラー通信ネットワーク、または、例えば、WiFiを使用するワイヤレスローカルエリアネットワーク(WLAN)を使用して、別の構成要素またはシステムと通信することができる。ワイヤレス通信システム112は、例えば、赤外リンク、Bluetoothなどを使用して、デバイス(例えば、車両101内の搭乗者のモバイルデバイス、ディスプレイデバイス、スピーカ)と直接通信することができる。ユーザインターフェースシステム113は、例えば、キーボード、タッチスクリーンディスプレイデバイス、マイクロフォンおよびスピーカなどを含む、車両101内に実装された周辺デバイスの一部であり得る。
【0030】
自律車両101の機能のいくつかまたは全ては、特に、自律運転モードで動作しているとき、知覚プランニングシステム110によって制御または管理され得る。知覚プランニングシステム110は、センサシステム115、制御システム111、ワイヤレス通信システム112および/またはユーザインターフェースシステム113から情報を受信し、受信された情報を処理し、出発地点から目的地点までのルートまたは経路を計画し、次いで、プランニングおよび制御情報に基づいて車両101を走らせるために必要なハードウェア(例えば、プロセッサ、メモリ、ストレージ)およびソフトウェア(例えば、オペレーティングシステム、プランニングおよびルーティングプログラム)を備えている。あるいは、知覚プランニングシステム110が車両制御システム111と一体化されていてもよい。
【0031】
例えば、搭乗者としてのユーザは、例えば、ユーザインターフェースを介して、旅程の出発地および目的地を指定し得る。知覚プランニングシステム110は旅程関連データを取得する。例えば、知覚プランニングシステム110は、サーバ103~104の一部であり得るMPOIサーバから、ロケーションおよびルート情報を取得し得る。ロケーションサーバはロケーションサービスを提供し、MPOIサーバはマップサービスおよびいくつかのロケーションのPOIを提供する。あるいは、そのようなロケーションおよびMPOI情報は、知覚プランニングシステム110の永続性ストレージデバイス内にローカルでキャッシュされてもよい。
【0032】
自律車両101がルートに沿って移動している間、知覚プランニングシステム110はまた、交通情報システムまたはサーバ(TIS)からリアルタイム交通情報を取得し得る。なお、サーバ103~104は第三者エンティティによって動作させられてもよい。あるいは、サーバ103~104の機能は知覚プランニングシステム110と一体化されていてもよい。リアルタイム交通情報、MPOI情報およびロケーション情報、ならびにセンサシステム115によって検出または感知されたリアルタイムの局所環境データ(例えば、障害物、物体、近くの車両)に基づいて、知覚プランニングシステム110は、経路またはルートを計画し、指定された目的地に安全にかつ効率的に到達するために計画されたルートに従って、例えば、制御システム111を介して車両101を走らせることができる。
【0033】
サーバ103は、様々なクライアントのためにデータ解析サービスを実行するためのデータ解析システムであってもよい。一実施形態では、データ解析システム103はデータコレクタ121と機械学習エンジン122とを備えている。データコレクタ121は、自律車両でも人間のドライバーによって運転される通常の車両でも、様々な車両から運転統計123を収集する。運転統計123は、異なる時点において車両のセンサによって取得された、発行された運転コマンド(例えば、スロットル、制動、ステアリングコマンド)および車両の応答(例えば、速度、加速、減速、方向)を示す情報を含む。運転統計123は、例えば、ルート(出発地および目的地を含む)、MPOI、道路条件、天候条件など、異なる時点における運転環境を記述する情報をさらに含んでいてもよい。
【0034】
運転統計123に基づいて、機械学習エンジン122は、様々な目的で、ルール、アルゴリズムおよび/または予測モデルのセット124を生成するか、またはトレーニングする。一実施形態では、アルゴリズム124が含み得る経路アルゴリズムは、入力、制約およびコスト関数を受信し、経路に関連した快適レベルならびにレーン中心線の近くを保つとともに緩衝域を伴って障害物から離れるという経路の選好を考慮に入れて、ADVの経路を生成する。アルゴリズム124の一部として、経路プランニングのためのコスト関数も生成され得る。アルゴリズム124は、その後、自律運転中にリアルタイムで利用されるように、ADVにアップロードされ得る。
【0035】
図3Aおよび
図3Bは、一実施形態に係る、自律車両とともに使用される知覚プランニングシステムの一例を示すブロック図である。システム300は、これに限定されないが、知覚プランニングシステム110、制御システム111およびセンサシステム115を備える、
図1の自律車両101の一部として実装され得る。
図3A~
図3Bを参照して、知覚プランニングシステム110は、これに限定されないが、ローカライゼーションモジュール301、知覚モジュール302、予測モジュール303、決定モジュール304、プランニングモジュール305、制御モジュール306、ルーティングモジュール307、ADからMDへの移行イネーブラ308、ADからMDへの移行承認モジュール309およびADからMDへの移行モニタ310を備えている。
【0036】
モジュール301~310のいくつかまたは全ては、ソフトウェア、ハードウェアまたはこれらの組合せにおいて実装され得る。例えば、これらのモジュールは、永続性ストレージデバイス352内にインストールされ、メモリ351にロードされ、1または複数のプロセッサ(図示せず)によって実行され得る。なお、これらのモジュールのいくつかまたは全ては、
図2の車両制御システム111のいくつかまたは全てのモジュールに通信可能に接続され得るか、またはそれらのモジュールと一体化されてもよい。モジュール301~310のうちのいくつかは一体型モジュールとして一体化されてもよい。
【0037】
ローカライゼーションモジュール301は、(例えば、GPSユニット212を活用して)自律車両300の現在のロケーションを判定し、ユーザの旅程またはルートに関する任意のデータを管理する。(マップおよびルートモジュールとも呼ばれる)ローカライゼーションモジュール301は、ユーザの旅程またはルートに関する任意のデータを管理する。ユーザは、例えば、ユーザインターフェースを介して、ログインし、旅程の出発地および目的地を指定し得る。ローカライゼーションモジュール301は、旅程関連データを取得するために、マップおよびルート情報311など、自律車両300の他の構成要素と通信する。例えば、ローカライゼーションモジュール301は、ロケーションサーバおよびMPOI(マップおよびPOI)サーバからロケーションおよびルート情報を取得し得る。ロケーションサーバはロケーションサービスを与え、MPOIサーバは、マップおよびルート情報311の一部としてキャッシュされ得る、マップサービスおよびいくつかのロケーションのPOIを提供する。自律車両300がルートに沿って移動している間、ローカライゼーションモジュール301はまた、交通情報システムまたはサーバからリアルタイム交通情報を取得し得る。
【0038】
センサシステム115によって提供されたセンサデータ、およびローカライゼーションモジュール301によって取得されたローカライゼーション情報に基づいて、周囲環境の知覚が知覚モジュール302によって判定される。知覚情報は、通常のドライバーが、そのドライバーが運転している車両の周囲で知覚するであろうことを表し得る。知覚は、例えば、物体の形態の、車線構成、信号機信号、別の車両の相対位置、歩行者、建築物、横断歩道、または他の交通関係標識(例えば、停止標識、前方優先道路標識)などを含んでいてもよい。車線構成は、例えば、車線の形状(例えば、直線または湾曲)、車線の幅、道路にいくつの車線があるか、一方向車線か両方向車線か、合流車線か分割車線か、出車車線など、車線または複数の車線を記述する情報を含む。
【0039】
知覚モジュール302は、自律車両の環境における物体および/または特徴を識別するために1または複数のカメラによって取得された画像を処理し、分析するためのコンピュータ視覚システムまたはコンピュータ視覚システムの機能を含み得る。物体は、交通信号、車道境界、他の車両、歩行者および/または障害物などを含むことができる。コンピュータ視覚システムは、物体認識アルゴリズム、ビデオ追跡および他のコンピュータ視覚技法を使用し得る。いくつかの実施形態では、コンピュータ視覚システムは、環境をマッピングすること、物体を追跡すること、物体の速度を推定することなどが可能である。知覚モジュール302はまた、レーダーおよび/またはLIDARなど、他のセンサによって提供された他のセンサデータに基づいて物体を検出することができる。
【0040】
物体の各々について、予測モジュール303は、物体がそのような状況下でどのような挙動をするかを予測する。予測は、マップ/ルート情報311および交通ルール312のセットに鑑みて、その時点における運転環境を知覚する知覚データに基づいて実行される。例えば、物体が反対方向にある車両であり、現在の運転環境が交差点を含む場合、予測モジュール303は、車両が直進しそうなのか、または曲がりそうなのかを予測する。知覚データが、交差点に信号機がないことを示す場合、予測モジュール303は、車両が交差点に入る前に完全に停止しなければならないかもしれないことを予測し得る。知覚データが、車両が現在左折専用車線または右折専用車線にあることを示す場合、予測モジュール303は、それぞれ、車両が左折するまたは右折する可能性がより高いことを予測し得る。
【0041】
各々の物体について、決定モジュール304は、どのように物体を処理するかに関する決定を行う。例えば、特定の物体(例えば、交差するルートにある別の車両)ならびに物体を記述するその物体のメタデータ(例えば、速度、方向、転向角)について、決定モジュール304は、どのように物体に遭遇するか(例えば、追い越し、道を譲る、停止、通過)を決定する。決定モジュール304は、永続性ストレージデバイス352中に記憶され得る交通ルールまたは運転ルール312など、ルールのセットに従ってそのような決定を行い得る。
【0042】
ルーティングモジュール307は、出発地点から目的地点までの1または複数のルートまたは経路を提供するように構成される。例えば、ユーザから受信された出発地から目的地までの所与の旅程について、ルーティングモジュール307は、ルートおよびマップ情報311を取得し、目的地に到達するための出発地からの全ての可能なルートまたは経路を判定する。ルーティングモジュール307は、ルーティングモジュール307が判定した、目的地に到達するための出発地からのルートの各々について、地形図の形態の基準線を生成し得る。基準線とは、他の車両、障害物または交通条件など、他からの干渉がない理想的なルートまたは経路をいう。すなわち、道路上に他の車両、歩行者または障害物がない場合、ADVは基準線に正確にまたは厳密に従うべきである。地形図は、次いで、決定モジュール304および/またはプランニングモジュール305に与えられる。決定モジュール304および/またはプランニングモジュール305は、ローカライゼーションモジュール301からの交通条件、知覚モジュール302によって知覚された運転環境、および予測モジュール303によって予測された交通条件など、他のモジュールによって提供された他のデータに鑑みて、最適なルートのうちの1つを選択し、変更するために、全ての可能なルートを検査する。ADVを制御するための実際の経路またはルートは、その時点における特定の運転環境に依存してルーティングモジュール307によって提供された基準線に近くなり得るか、またはその基準線とは異なり得る。
【0043】
知覚された物体の各々についての決定に基づいて、プランニングモジュール305は、基礎としてルーティングモジュール307によって与えられた基準線を使用して、自律車両のための経路またはルートならびに運転パラメータ(例えば、距離、速度および/または転向角)を計画する。すなわち、所与の物体について、決定モジュール304は物体にどのように対処するかを決定し、一方、プランニングモジュール305はその対処をどのように行うかを判定する。例えば、所与の物体について、決定モジュール304は、物体を通過することを決定し得、一方、プランニングモジュール305は、物体の左側を通るのか、または右側を通るのかを判定し得る。車両300が次の移動サイクル(例えば、次のルート/経路セグメント)中にどのように移動するかを記述する情報を含む、プランニングおよび制御データがプランニングモジュール305によって生成される。例えば、プランニングおよび制御データは、時速30マイル(mph)の速度で10メートル移動し、次いで、25mphの速度で右側車線に変更するように車両300に命令し得る。
【0044】
プランニングおよび制御データに基づいて、制御モジュール306は、プランニングおよび制御データによって定義されたルートまたは経路に従って、車両制御システム111に適切なコマンドまたは信号を送ることによって、自律車両を制御し、運転する。プランニングおよび制御データは、経路またはルートに沿って異なる時点における適切な車両設定または運転パラメータ(例えば、スロットル、制動、ステアリングコマンド)を使用してルートまたは経路の第1のポイントから第2のポイントまで車両を運転するために十分な情報を含む。
【0045】
ADからMDへの移行は、自律車両の制御および運転の一部として、車両がADモードで動作している間に開始されてもよい。一実施形態では、ADからMDへの移行は車両の人間のドライバーによって開始され得る。別の実施形態では、ADからMDへの移行は、特定の運転シナリオ(例えば、車両が安全な停止のための準備をしている間に、車両が運用設計領域(ODD)の境界に近づいているとき、予想外のシナリオに直面したときなど)において車両の自律運転システム(例えば知覚プランニングシステム110)によって開始されてもよい。別の実施形態では、自動運転中に(すなわちADモードで動作中に)障害が生じると、ADからMDへの移行は、車両がシステム安全を維持する故障動作要件を満たしながら(すなわち、最小危険条件を満たすように故障動作の操作で進行しながら)車両の自律運転システムによって開始され得る。
【0046】
引き続き
図3Aを参照して、ADからMDへの移行イネーブラ308は、MPOI情報(またはマップおよびルート情報311)、ロケーション情報(例えば現在のロケーション)、および運転シナリオ(例えばリアルタイム交通情報、センサシステム115によって検出または感知されたリアルタイム局所環境データ、車両の応答(例えば速度、加速度、減速度、方向))に基づいて、ADからMDへの移行を有効化するかどうかを判定してもよい。
【0047】
ADからMDへの移行承認モジュール309は、ADからMDへの移行が有効になると、ADからMDへの移行の要求があるかどうかを判定する。前述のように、特定の運転シナリオでは、ADからMDへの移行は、人間のドライバーまたは車両の自律運転システムによって要求または開始され得る。モジュール309は、移行の要求を検出したとき、ドライバーの入力から導出された運動軌跡と比較するための境界として現在の運動軌跡(公差を含み得る)を使用してもよい。2つの軌跡が合致する(すなわち、ドライバーの意図した運動軌跡が現在の運動軌跡の定義された境界の範囲内にある)と、ADからMDへの移行が承認される。そうでなければ、軌跡が合致しない場合には、ADからMDへの移行は依然として有効化されているかもしれないが、ADからMDへの移行が承認されないので、モジュール309はADからMDへの移行承認を再試行してもよい。
【0048】
ADからMDへの移行が承認されたとき、移行の安全性を保証するために、ADからMDへの移行モニタ310が活性化され得る。例えば、モニタ310は、所定の時間フレームの範囲内で移行がうまく完了したと判定すると、自律運転車両をMDモードに移行させる。その一方で、自律運転システム(例えば知覚プランニングシステム110)はバックグラウンドで走り続け、必要に応じて車両をADモードに切り換えてもよい。他方では、モニタ310によって移行が不成功だったと判定された場合には、自律運転システムは、車両をADモードで動作させて、自律運転システム自体が計算した運動軌跡を進んでもよい。
【0049】
一実施形態では、プランニング段階は、例えば、100ミリ秒(ms)の時間間隔ごとなど、運転サイクルとも呼ばれるいくつかのプランニングサイクル中に実行される。プランニングサイクルまたは運転サイクルの各々について、1または複数の制御コマンドがプランニングおよび制御データに基づいて発行される。すなわち、100msごとに、プランニングモジュール305は、例えば、ターゲット位置、およびADVがターゲット位置に到達するために必要とされる時間を含む、次のルートセグメントまたは経路セグメントを計画する。あるいは、プランニングモジュール305は、特定の速度、方向および/または操舵角などをさらに指定し得る。一実施形態では、プランニングモジュール305は、5秒など、次の事前決定された時間期間のためにルートセグメントまたは経路セグメントを計画する。各プランニングサイクルについて、プランニングモジュール305は、前のサイクル中に計画されたターゲット位置に基づいて現在のサイクル(例えば、次の5秒)のためのターゲット位置を計画する。制御モジュール306は、次いで、現在のサイクルのプランニングおよび制御データに基づいて1または複数の制御コマンド(例えば、スロットル、ブレーキ、ステアリング制御コマンド)を生成する。
【0050】
なお、決定モジュール304およびプランニングモジュール305は一体型モジュールとして一体化されてもよい。決定モジュール304/プランニングモジュール305は、自律車両のための運転経路を判定するためのナビゲーションシステムまたはナビゲーションシステムの機能を含んでいてもよい。例えば、ナビゲーションシステムは、概して、最終目的地に至る車道ベースの経路に沿って自律車両を進めながら、知覚された障害物を実質的に回避する経路に沿って自律車両の動きに影響を及ぼすために、一連の速度および方向進路を判定し得る。目的地は、ユーザインターフェースシステム113を介してユーザ入力に従って設定され得る。ナビゲーションシステムは、自律車両が動作中である間、運転経路を動的に更新し得る。ナビゲーションシステムは、自律車両のための運転経路を判定するように、GPSシステムからのデータおよび1または複数のマップを組み込むことができる。
【0051】
図4A~
図4Bは、一実施形態に係るドライブバイワイヤシステムを示す図である。
図4Aを参照して、ステアリングバイワイヤ(xバイワイヤとも呼ばれる)システム400は自律運転車両(例えばADV 101)の一部でもよい。示されるように、システム400は、車両のホイール440a~440bのステアリングを制御するハンドル410を備え得る。例えば、ドライバーがハンドル410を回転させるとき、ステアリングエミュレータは、通信リンク420(有線でも無線でもよい)を介してアクチュエータ430a~430bにステアリング信号またはステアリングコマンドを通信し得る。アクチュエータ430a~430bは、ステアリング信号に基づいて、ホイール440a~440bをステアリング角に回転させ得る。一実施形態では、ステアリング信号は、ハンドル410またはホイール440a~440bのステアリング角の指示を含み得る。
図4Aには示されていないが、一実施形態では、システム400は、車両の加速度を制御するためのスロットルペダルおよび減速度を制御するためのブレーキペダルをさらに備え得る。一実施形態では、スロットルペダルおよびブレーキペダルは、通信リンク420およびアクチュエータ430a~430bを使用して、あるいはそれぞれの通信リンクおよびアクチュエータを使用して、車両を制御してもよい。
【0052】
引き続き
図4A~
図4Bを参照して、システム400は、車両のADからMDへの移行を制御するために、通信リンク420の間に、ADからMDへの移行コントローラ406も備えている。コントローラ406は、ドライバーがハンドル410への入力を介してホイール440a~440bを制御するのを許容するべきか否かを判定する「ゲートキーパー」と見なされ得る。
図4Bに示されるように、コントローラ406は、ADからMDへの移行イネーブラ308、承認モジュール309、およびモニタ310を備え得る。しかしながら、いくつかの実施形態では、モジュール308~310の各々がコントローラ406の一部ではなく個別のモジュールであってもよい。
【0053】
前述のように、ADからMDへの移行イネーブラ308は、MPOI情報(またはマップおよびルート情報311)、ロケーション情報(例えば現在のロケーション)、運転シナリオ(例えばリアルタイム交通情報、センサシステム115によって検出または感知されたリアルタイム局所環境データ)、車両の応答(例えば速度、加速度、減速度、方向)に基づいてADからMDへの移行を有効化するべきかどうかを判定してもよい。例えば、イネーブラ308は、MPOI情報および/またはロケーション情報を使用して、レーンの合流、交差点、(上り坂や下り坂の)著しい道路の傾斜、トンネルの入口/出口、ハイウェイの出入口、(事故統計値に基づく)交通事故が頻繁なエリアなど、ADからMDへの移行が危険と思われる(したがって許容されない)特定の道路区間を定義してもよい。一実施形態では、例えば、追い越し操作、車線変更、交通量が中程度または多いエリアの近くでの高い車速など車両の特定の応答(もしくは操作)および/または交通状況は、危険または不適切であると判定され得るので、ADからMDへの移行から除外されてもよい。それゆえに、入力されたルートもしくは計画されたルートの、または同ルートに沿った危険な道路区間は、ADからMDへの移行の無効化があらかじめ定義されてもよい。加えて、車両が入力経路に沿って進行するとき、危険な車両応答および/または交通状況も動的に判定されて、ADからMDへの移行を無効化するように記憶され得る。危険な状況(すなわち危険な道路区間、車両応答、交通状況など)が何もなければ、イネーブラ308は、ADからMDへの移行を許容するかまたは有効化してもよい。そうでなければ、イネーブラ308はADからMDへの移行を無効化してもよい。一実施形態では、ドライバーは、ユーザインターフェースシステム113のディスプレイデバイス(例えばタッチスクリーンディスプレイデバイス)を介してADからMDへの移行の有効/無効を通知され得る。
【0054】
モジュール309は、ADからMDへの移行が有効化された後に、ADからMDへの移行の要求があるかどうかを検査してもよい。一実施形態では、ドライバーがハンドル410を操作するかまたは切るとき、ADからMDへの移行要求が開始され得る。モジュール309は、要求を検出したとき、ドライバーの動作が安全かどうかを判定するために、(境界または限界として使用される)現在の運動軌跡をドライバーの入力から導出された運動軌跡と比較してもよい。軌跡が合致する(すなわち、ドライバーの意図した運動軌跡が境界の範囲内にある)場合には、モジュール309はADからMDへの移行を承認する。そうでなければ、ADからMDへの移行は承認されない。しかしながら、ADからMDへの移行が有効化されたままの状態の場合には、ドライバーは、ハンドル410を操作することまたは切ることを再試行してもよい。一実施形態では、ドライバーは、ユーザインターフェースシステム113のディスプレイデバイス(例えばタッチスクリーンディスプレイデバイス)を介してADからMDへの移行承認を通知され得る。
【0055】
ADからMDへの移行が承認されたとき、移行の安全性を保証するために、モニタ310が活性化され得る。その際、モニタ310は移行タイマを起動してもよい。移行が所定の時間フレームまたは期間の範囲内で完了した場合には、モニタ310は、車両をMDモードに移行させてもよく、ドライバーは車両を手動で動作させることまたは制御することができる。一実施形態では、ドライバーは、ユーザインターフェースシステム113のディスプレイデバイス(例えばタッチスクリーンディスプレイデバイス)を介して、車両がMDモードにあることを通知され得る。その一方で、自律運転システム(例えば知覚プランニングシステム110)はバックグラウンドで動作し続け、必要に応じて車両をADモードに切り換えてもよい。他方では、モニタ310によって移行が不成功だったと判定された場合には、自律運転システムは、車両をADモードで動作させて、自律運転システム自体が計算した運動軌跡を進んでもよい。この場合、ドライバーは、ユーザインターフェースシステム113のディスプレイデバイス(例えばタッチスクリーンディスプレイデバイス)を介して、車両がADモードにあることを通知され得る。
【0056】
図5は、一実施形態に係るADからMDへの移行を有効化するための方法の例を示す流れ図である。方法500は、ハードウェア、ソフトウェアまたは両方の組合せによって実行され得る。例えば、方法500は、
図3AのADからMDへの移行イネーブラ308によって実行され得る。
【0057】
図5を参照して、ブロック510では、現在のロケーションにおいてADからMDへの移行が許容されるかどうかが判定される。例えば、MPOI情報を使用して、レーンの合流、交差点、(上り坂や下り坂の)著しい道路の傾斜、トンネルの入口/出口、ハイウェイの出入口、(事故統計値に基づく)交通事故が頻繁なエリアなど、計画されたルートに沿った特定の道路区間が危険であると判定されてもよい。したがって、車両(例えばADV101)のロケーション情報に基づいて、車両の現在のロケーションが、計画されたルートの危険な道路区間にある場合には、ADからMDへの移行は許容されない。そうでなければ、現在のロケーションにおいてADからMDへの移行は許容される。ブロック520において、現在の運転シナリオがADからMDへの移行にとって安全かどうかが判定される。一実施形態では、現在の運転シナリオがADからMDへの移行にとって安全かどうかを判定するために、センサシステム115によって検出または感知されたリアルタイム交通情報およびリアルタイム局所環境データが解析されてもよい。例えば、リアルタイム交通情報がエリアにおける中程度または多くの交通量を示す場合および/またはリアルタイム環境データが領域に多数の障害物があることを示す場合には、現在の運転シナリオは危険であると判定されてもよい。加えて、現在の運転シナリオが安全かどうかを判定するために、車両応答(例えば速度、加速度、減速度、方向)も解析され得る。例えば、追い越し操作、車線変更、交通量が多いエリアの近くでの高い車速は、現在の運転シナリオが危険であることを示す可能性がある。そうでなければ、現在の運転シナリオは安全であると判定されるはずである。ブロック530では、現在のロケーションにおいてADからMDへの移行が許容され、かつ現在の運転シナリオがADからMDへの移行にとって安全であるとの判定に応答して、ADからMDへの移行が有効化される。一実施形態では、ADからMDへの移行が許容されたことは、ユーザインターフェースシステム(例えば
図1のシステム113)を介して車両のドライバー/ユーザに通信され得る。
【0058】
図6は、一実施形態に係るADからMDへの移行を承認するための方法の例を示す流れ図である。方法600は、ハードウェア、ソフトウェアまたは両方の組合せによって実行され得る。例えば、方法600は、
図3AのADからMDへの移行承認モジュール309によって実行され得る。
【0059】
図6を参照して、ブロック610において、ADからMDへの移行のための要求があるかどうかが判定される。一実施形態では、ADからMDへの移行は車両の人間のドライバーによって要求され得る。別の実施形態では、ADからMDへの移行は、特定の運転シナリオ(例えば、車両がODDの境界に近づいているとき、予想外のシナリオに直面したときなど)において車両の自律運転システム(例えば知覚プランニングシステム110)によって開始されてもよい。別の実施形態では、自動運転中に(すなわちADモードで動作中に)障害が生じると、ADからMDへの移行は、車両がシステム安全を維持する故障動作要件を満たしながら(すなわち、最小危険条件を満たすように故障動作の操作で進行しながら)車両の自律運転システムによって開始され得る。ブロック620において、ADからMDへの移行の要求があるとの判定に応答して、現在の車両運動軌跡が計算される。一実施形態では、センサシステム115によって検出されたセンサデータに基づいて現在の車両運動軌跡が計算される。ブロック630において、計算された現在の車両運動軌跡が、ドライバーの入力(例えば、ドライバーが車両を操作するとき感知されたステアリング角、スロットル位置、およびブレーキ位置)から導出された運動軌跡と比較される。ブロック640において、比較に基づいて、ADからMDへの移行を承認するかどうかが判定される。例えば、軌跡が合致する(すなわち、ドライバーの意図した運動軌跡が境界の範囲内にある)場合には、ADからMDへの移行が承認される。そうでなければ、ADからMDへの移行は承認されない。一実施形態では、ADからMDへの移行の承認は、ユーザインターフェースシステム(例えば
図1のシステム113)を介して車両のドライバー/ユーザに通信され得る。
【0060】
図7は、一実施形態に係るADからMDへの移行を監視するための方法の例を示す流れ図である。方法700は、ハードウェア、ソフトウェアまたは両方の組合せによって実行され得る。例えば、方法700は、
図3AのADからMDへの移行モニタ310によって実行され得る。
【0061】
図7を参照して、ブロック710において、所定の時間フレームの範囲内でADからMDへの移行がうまく完了したかどうかが判定される。例えば、ADからMDへの移行が承認されると(
図6に関して以前に説明されたように)、所定の時間フレームを測定するために移行タイマが始動され得る。ブロック720において、ADからMDへの移行が所定の時間フレームの範囲内でうまく完了したとの判定に応答して、車両(例えばADV101)はADモードからMDモードに移行し、ドライバーは車両を手動で操作または制御することができる。一実施形態では、車両の動作モード(例えばADモードまたはMDモード)は、ユーザインターフェースシステム113を介してドライバーに通信され得る。
【0062】
図8は、一実施形態に係る、ドライバーが開始する、ADモードからMDモードへの移行のための方法の例を示す流れ図である。方法800は、ハードウェア、ソフトウェアまたは両方の組合せによって実行され得る。例えば、方法800は、
図3Aのモジュール308~310の組合せによって実行され得る。
【0063】
図8を参照して、ブロック801において、例えば、
図3Aのマップおよびルート情報311によって供給される計画されたルートがマップにロードされて更新される。ブロック802において、ADからMDへの移行が許容されない、計画されたルートに沿った所定の地理的ロケーションが読み込まれる。ブロック803では、現在のロケーションにおいてADからMDへの移行が許容されるかどうかが判定される。現在のロケーションにおいてADからMDへの移行が許容される場合には、方法800はブロック804に進む。そうでなければ、方法800はブロック807に進み、ここで、ADからMDへの移行が有効化されない(または無効化される)ことを示すメッセージが、例えば
図1のユーザインターフェースシステム113を介して表示される。ブロック804において、前述のように、ADからMDへの移行のための現在の運転シナリオが適切または安全かどうかが判定され、簡単のために、再度説明されることはない。ブロック805において、ADからMDへの移行が許容されるかどうかが判定される。許容される場合には、方法800はブロック806に進み、ここで、ADからMDへの移行が有効であることを示すメッセージが、例えば
図1のユーザインターフェースシステム113を介して表示される。そうでなければ、方法800はブロック807に進む。ブロック808において、ドライバーへの引き継ぎの要求が受信されたかどうかが判定される。受信されていれば、方法800はブロック809に進む。受信されていなければ、方法800はブロック820に進む。ブロック809において、ドライバーの入力(例えば、ドライバーが車両を操作するとき感知されたステアリング角、スロットル位置およびブレーキ位置)から車両の運動軌跡が計算される。ブロック810において、ADの運動軌跡とMDの運動軌跡(すなわちドライバーの入力から計算された軌跡)とが合致するかどうかが判定される。合致する場合には、方法800はブロック811に進み、ここで、ADからMDへの移行の承認と、進行中の移行とが、例えば
図1のユーザインターフェースシステム113を介して表示される。合致しなければ、方法800はブロック812に進み、ここで、ADからMDへの移行が承認されていないこと、および現在のモードが「AD」であることを示すメッセージが、例えば
図1のシステム113を介して表示される。ブロック813において、例えば「引き継ぎ中は現在の車両経路を保ったまま再試行してください」というメッセージが、
図1のユーザインターフェースシステム113を介して表示される。ブロック814において、移行タイマが始動される。ブロック815において、ADからMDへの移行の車両運動軌跡の境界が定義され、ADからMDのモニタ(例えば
図3Aのモニタ310)が活性化される。ブロック816において、ADからMDへの移行がうまく完了したかどうかが判定される。うまく完了していれば、方法800はブロック819に進み、ここで、現在のモードが「MD」であることを示すメッセージが、例えば
図1のユーザインターフェースシステム113を介して表示される。うまく完了していなければ、方法800はブロック817に進み、移行タイマが時間切れになったかどうかが判定される。時間切れであれば、方法800はブロック818に進み、ここで、「ADからMDへの移行は失敗しました。再試行してください。現在のモードは「AD」です。」というメッセージが、例えば
図1のシステム113を介して表示される。そうでなければ、方法800はブロック820に進み、ここで、計画されたルートが完了したかどうかが判定される。完了していれば、方法800は終了する。完了していなければ、方法800はブロック801に戻る。
【0064】
図9は、一実施形態に係る、システムが開始する、ADモードからMDモードへの移行のための方法の例を示す流れ図である。方法900は、ハードウェア、ソフトウェアまたは両方の組合せによって実行され得る。例えば、方法900は、
図3Aのモジュール308~310の組合せによって実行され得る。
【0065】
図9を参照して、ブロック901において、例えば、
図3Aのマップおよびルート情報311によって供給される計画されたルートがマップにロードされて更新される。ブロック902において、ADからMDへの移行が許容されない、計画されたルートに沿った所定の地理的ロケーションが読み込まれる。ブロック903では、現在のロケーションにおいてADからMDへの移行が許容されるかどうかが判定される。現在のロケーションにおいてADからMDへの移行が許容される場合には、方法900はブロック904に進む。そうでなければ、方法900はブロック907に進み、ここで、ADからMDへの移行が有効化された(または無効化された)ことを示すメッセージが、例えば
図1のユーザインターフェースシステム113を介して表示される。ブロック904において、前述のように、ADからMDへの移行のための現在の運転シナリオが適切または安全かどうかが判定され、簡単のために、再度説明されることはない。ブロック905において、ADからMDへの移行が許容されるかどうかが判定される。許容される場合には、方法900はブロック906に進み、ここで、ADからMDへの移行が有効であることを示すメッセージが、例えば
図1のユーザインターフェースシステム113を介して表示される。そうでなければ、方法900はブロック907に進む。ブロック908において、例えば、ODDの境界または予想外の運転シナリオのために、安全な状態にすることまたはドライバーによる引き継ぎを許容することが判定される。ブロック909において、ドライバーが引き継ぐことを許容するかどうかが判定される。ドライバーが引き継ぐことを許容する場合には、方法900はブロック910に進む。そうでなければ、方法900はブロック919に進み、ADは安全な状態になるように指令される。ブロック910において、ドライバーの引き継ぎが時間切れの前に承認されたかどうかが判定される。ドライバーの引き継ぎが時間切れの前に承認された場合には、方法900はブロック911に進む。そうでなければ、方法900はブロック919に進む。ブロック911において、ADの運動軌跡がMDの運動軌跡(すなわちドライバーの入力から計算された軌跡)と合致するかどうかが判定される。合致する場合には、方法900はブロック912に進み、ここで、ADからMDへの移行の承認と、進行中の移行とが、例えば
図1のシステム113を介して表示される。合致しなければ、方法900はブロック913に進み、ここで、ADからMDへの移行が承認されていないことおよび現在のモードが「AD」であることを示すメッセージが、例えば
図1のシステム113を介して表示される。ブロック914において、移行タイマが始動される。ブロック915において、ADからMDへの移行の車両運動軌跡が定義され、ADからMDへの移行モニタ(例えば
図3Aのモニタ310)が活性化される。ブロック916において、ADからMDへの移行がうまく完了したかどうかが判定される。うまく完了していれば、方法900はブロック918に進み、ここで、現在のモードが「MD」であることを示すメッセージが、例えば
図1のシステム113を介して表示される。そうでなければ、方法900はブロック917に進む。ブロック917において、移行タイマが時間切れになったかどうかが判定される。時間切れであれば、方法900はブロック919に進む。そうでなければ、方法900はブロック920に進む。ブロック920において、計画されたルートが完了したかどうかが判定される。完了していれば、方法900は終了する。そうでなければ、方法900はブロック901に戻る。
【0066】
図10は、一実施形態に係る、システムが開始する、ADモードからMDモードへの移行のための方法の別の例を示す流れ図である。方法1000は、ハードウェア、ソフトウェアまたは両方の組合せによって実行され得る。例えば、方法1000は、
図3Aのモジュール308~310の組合せによって実行され得る。
【0067】
図10を参照して、ブロック1001において、例えば、
図3Aのマップおよびルート情報311によって供給される計画されたルートがマップにロードされて更新される。ブロック1002において、ADからMDへの移行が許容されない、計画されたルートに沿った所定の地理的ロケーションが読み込まれる。ブロック1003では、現在のロケーションにおいてADからMDへの移行が許容されるかどうかが判定される。現在のロケーションにおいてADからMDへの移行が許容される場合には、方法1000はブロック1004に進む。そうでなければ、方法1000はブロック1007に進み、ここで、ADからMDへの移行が有効化されない(または無効化される)ことを示すメッセージが、例えば
図1のユーザインターフェースシステム113を介して表示される。ブロック1004において、前述のように、ADからMDへの移行のための現在の運転シナリオが適切または安全かどうかが判定され、簡単のために、再度説明されることはない。ブロック1005において、ADからMDへの移行が許容されるかどうかが判定される。許容される場合には、方法1000はブロック1006に進み、ここで、ADからMDへの移行が有効であることを示すメッセージが、例えば
図1のユーザインターフェースシステム113を介して表示される。そうでなければ、方法1000はブロック1007に進む。ブロック1008において、車両(例えば
図1のADV101)が故障動作モードにあるかどうかが判定される。故障動作モードであれば、方法1000はブロック1009に進む。そうでなければ、方法1000はブロック1021に進む。ブロック1009において、ドライバーが引き継ぐことを許容するかどうかが判定される。許容する場合には、方法1000はブロック1010に進む。そうでなければ、方法1000はブロック1017に進み、ここで、ADが「故障動作状態」にあって車両が故障動作モードで動作を続けることを示すメッセージが、例えば
図1のシステム113を介して表示される。ブロック1010において、ドライバーの引き継ぎ要求が送られ、ドライバー応答タイマが始動される。ブロック1011において、ドライバー引き継ぎ要求が、ドライバー応答タイマが満了する(すなわち時間切れになる)前に承認されたかどうかが判定される。承認されていれば、方法1000はブロック1012に進む。そうでなければ、方法1000はブロック1017に進む。ブロック1012において、ドライバーの入力(例えば、ドライバーが車両を操作するとき感知されたステアリング角、スロットル位置、およびブレーキ位置)から車両の運動軌跡が計算される。ブロック1013において、ADの故障動作運動軌跡がMDの運動軌跡(すなわちドライバーの入力から計算された軌跡)と合致するかどうかが判定される。合致する場合には、方法1000はブロック1014に進み、ここで、ADからMDへの移行が承認されて移行が進行中であることが、例えば
図1のシステム113を介して表示される。合致しなければ、方法1000はブロック1015に進み、ここで、ADからMDへの移行が承認されていないことおよび現在のモードが「AD」であることを示すメッセージが表示される。ブロック1016において、ADからMDへの移行の車両運動軌跡の境界が定義され、ADからMDのモニタ(例えば
図3Aのモニタ310)が活性化される。ブロック1018において、ADからMDへの移行がうまく完了したかどうかが判定される。うまく完了していれば、方法1000はブロック1020に進み、ここで、現在のモードが「MD」であることが、例えば
図1のシステム113を介して表示される。そうでなければ、方法1000はブロック1019に進む。ブロック1019において、ADからMDへの移行が時間切れになったかどうかが判定される。時間切れであれば、方法1000はブロック1021に進む。時間切れでなくても、方法1000はブロック1021に進み、ここで、計画されたルートが完了したかどうかが判定される。完了していれば、方法1000は終了する。完了していなければ、方法1000はブロック1001に戻る。
【0068】
なお、上記で図示し、説明したような構成要素のいくつかのまたは全ては、ソフトウェア、ハードウェアまたはこれらの組合せにおいて実装されてもよい。例えば、そのような構成要素は、永続性ストレージデバイス中にインストールされ、記憶されるソフトウェアとして実装されてもよく、そのソフトウェアは、本出願全体にわたって説明されるプロセスまたは動作を実行するためのプロセッサ(図示せず)によってメモリにロードされ、実行されてもよい。あるいは、そのような構成要素は、アプリケーションから、対応するドライバおよび/またはオペレーティングシステムを介してアクセスされ得る集積回路(例えば、特定用途向けICまたはASIC)、デジタル信号プロセッサ(DSP)またはフィールドプログラマブルゲートアレイ(FPGA)など、専用のハードウェアにプログラムされるか、または埋め込まれる実行可能コードとして実装されてもよい。さらに、そのような構成要素は、1または複数の特定の命令を介してソフトウェア構成要素によってアクセス可能な命令セットの一部としてプロセッサまたはプロセッサコア中の特定のハードウェア論理として実装されてもよい。
【0069】
図11は、本開示の一実施形態とともに使用され得るデータ処理システムの例を示すブロック図である。例えば、システム1500は、上記で説明されたプロセスまたは方法のうちの任意のものを実行する、例えば、知覚プランニングシステム110または
図1のサーバ103~104のうちの任意のもの、および
図3AのADからMDへの移行モニタ310など、上記で説明されたデータ処理システムのうちの任意のものを表し得る。システム1500は多くの異なる構成要素を備えることができる。これらの構成要素は、集積回路(IC)、集積回路(IC)の部分、個別電子デバイス、またはコンピュータシステムのマザーボードまたはアドインカードなど、回路板に適応される他のモジュールとして、またはコンピュータシステムのシャーシ内に別段に組み込まれる構成要素として実装されてもよい。
【0070】
なお、システム1500は、コンピュータシステムの多くの構成要素の高レベルのビューを示すものである。しかしながら、追加の構成要素がいくつかの実装形態において存在してもよく、さらに、図示された構成要素の異なる構成が他の実装形態において行われてもよいことを理解されたい。システム1500は、デスクトップ、ラップトップ、タブレット、サーバ、モバイルフォン、メディアプレーヤ、パーソナルデジタルアシスタント(PDA)、スマートウォッチ、パーソナルコミュニケータ、ゲームデバイス、ネットワークルータまたはハブ、ワイヤレスアクセスポイント(AP)またはリピータ、セットトップボックスまたはそれらの組合せを表し得る。さらに、単一のマシンまたはシステムのみが示されているが、「マシン」または「システム」という用語は、本明細書で論じた方法のいずれか1つまたは複数を実行するための命令のセット(または複数のセット)を個々にまたは一緒に実行するマシンまたはシステムの任意の集合を含むようにも取られるものとする。
【0071】
一実施形態では、システム1500は、バスまたは相互接続1510を介して接続したプロセッサ1501、メモリ1503およびデバイス1505~1508を備える。プロセッサ1501は、プロセッサ中に含まれる単一のプロセッサコアまたは複数のプロセッサコアをもつ単一のプロセッサまたは複数のプロセッサを表し得る。プロセッサ1501は、マイクロプロセッサ、中央処理ユニット(CPU)など、1または複数の汎用プロセッサを表し得る。より詳細には、プロセッサ1501は、複合命令セットコンピューティング(CISC)マイクロプロセッサ、縮小命令セットコンピューティング(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、または他の命令セットを実装するプロセッサ、または命令セットの組合せを実装するプロセッサであり得る。プロセッサ1501はまた、特定用途向け集積回路(ASIC)、セルラーまたはベースバンドプロセッサ、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサ、グラフィックスプロセッサ、通信プロセッサ、暗号プロセッサ、コプロセッサ、埋込みプロセッサまたは命令を処理することが可能な任意の他のタイプの論理など、1または複数の専用プロセッサであってもよい。
【0072】
プロセッサ1501は、超低電圧プロセッサなど、低電力マルチコアプロセッサソケットであってもよく、システムの様々な構成要素との通信のための主要な処理ユニットおよび中央ハブとして働き得る。そのようなプロセッサはシステムオンチップ(SoC)として実装されてもよい。プロセッサ1501は、本明細書で論じた動作およびステップを実行するための命令を実行するように構成される。システム1500は、ディスプレイコントローラ、グラフィックスプロセッサ、および/またはディスプレイデバイスを含み得る随意のグラフィックスサブシステム1504と通信するグラフィックスインターフェースをさらに備えてもよい。
【0073】
プロセッサ1501は、一実施形態では、所与の量のシステムメモリを与えるための複数のメモリデバイスを介して実装され得るメモリ1503と通信してもよい。メモリ1503は、ランダムアクセスメモリ(RAM)、ダイナミックRAM(DRAM)、同期DRAM(SDRAM)、スタティックRAM(SRAM)または他のタイプのストレージデバイスなど、1または複数の揮発性ストレージ(またはメモリ)デバイスを含んでいてもよい。メモリ1503は、プロセッサ1501、または任意の他のデバイスによって実行される命令のシーケンスを含む情報を記憶してもよい。例えば、様々なオペレーティングシステムの実行可能コードおよび/またはデータ、デバイスドライバ、ファームウェア(例えば、入出力基本システムまたはBIOS)および/またはアプリケーションは、プロセッサ1501によってメモリ1503にロードされ、実行されてもよい。オペレーティングシステムは、例えば、ロボットオペレーティングシステム(ROS)、マイクロソフト(登録商標)製のWindows(登録商標)オペレーティングシステム、アップル製のMac OS(登録商標)/iOS(登録商標)、Google(登録商標)製のAndroid(登録商標)、LINUX、UNIX、または他のリアルタイムまたは埋込みオペレーティングシステムなど、任意の種類のオペレーティングシステムであってもよい。
【0074】
システム1500は、ネットワークインターフェースデバイス1505、随意の入力デバイス1506、および他の随意のIOデバイス1507を備える、デバイス1505~1508など、IOデバイスをさらに備えていてもよい。ネットワークインターフェースデバイス1505はワイヤレストランシーバおよび/またはネットワークインターフェースカード(NIC)を含み得る。ワイヤレストランシーバは、WiFiトランシーバ、赤外線トランシーバ、Bluetoothトランシーバ、WiMaxトランシーバ、ワイヤレスセルラーテレフォニートランシーバ、衛星トランシーバ(例えば、全地球測位システム(GPS)トランシーバ)、または他の無線周波数(RF)トランシーバ、またはそれらの組合せであり得る。NICはイーサネットカードであってもよい。
【0075】
入力デバイス1506は、マウス、タッチパッド、(ディスプレイデバイス1504と一体化され得る)タッチセンシティブスクリーン、スタイラスなどのポインタデバイスおよび/またはキーボード(例えば、物理キーボード、またはタッチセンシティブスクリーンの一部として表示される仮想キーボード)を備えていてもよい。例えば、入力デバイス1506は、タッチスクリーンに接続されたタッチスクリーンコントローラを含んでいてもよい。タッチスクリーンおよびタッチスクリーンコントローラは、限定はしないが、容量性、抵抗性、赤外、および表面弾性波技術、ならびに他の近接センサアレイ、またはタッチスクリーンとの1または複数の接触点を判定するための他の要素を含む、複数のタッチセンシティブ技術のいずれかを使用して、例えば、接触および動きまたはそれらの中断を検出することができる。
【0076】
IOデバイス1507はオーディオデバイスを備えていてもよい。オーディオデバイスは、音声認識、音声複製、デジタルレコーディング、および/またはテレフォニー機能など、音声対応機能を可能にするためのスピーカおよび/またはマイクロフォンを含んでいてもよい。他のIOデバイス1507は、ユニバーサルシリアルバス(USB)ポート、パラレルポート、シリアルポート、プリンタ、ネットワークインターフェース、バスブリッジ(例えば、PCI-PCIブリッジ)、センサ(例えば、加速度計、ジャイロスコープなどの動きセンサ、磁力計、光センサ、コンパス、近接センサなど)、またはそれらの組合せをさらに備えていてもよい。デバイス1507は、写真およびビデオクリップを記録するなど、カメラ機能を可能にするために利用される、電荷結合素子(CCD)または相補型金属酸化物半導体(CMOS)光センサなど、光センサを含み得る画像化処理サブシステム(例えば、カメラ)をさらに備えていてもよい。いくつかのセンサは、センサハブ(図示せず)を介して相互接続1510に接続され得るが、キーボードまたは熱センサなど、他のデバイスは、システム1500の固有の構成または設計に依存する埋込みコントローラ(図示せず)によって制御されてもよい。
【0077】
データ、アプリケーション、1または複数のオペレーティングシステムなど、情報の永続性記憶を可能にするために、大容量ストレージ(図示せず)もプロセッサ1501に接続してもよい。様々な実施形態では、より薄く、より軽いシステム設計を可能にするために、ならびにシステム反応性を改善するために、この大容量ストレージはソリッドステートデバイス(SSD)によって実装されてもよい。しかしながら、他の実施形態では、システムアクティビティの再開時に高速電源投入が行われ得るように、電源切断イベント中にコンテキスト状態および他のそのような情報の不揮発性記憶を可能にするために、大容量ストレージは、主に、SSDキャッシュとして働くためのより小さい量のSSDストレージをもつハードディスクドライブ(HDD)を使用して実装されてもよい。また、フラッシュデバイスは、例えば、シリアルペリフェラルインターフェース(SPI)を介してプロセッサ1501に接続されてもよい。このフラッシュデバイスは、BIOSならびにシステムの他のファームウェアを含むシステムソフトウェアの不揮発性記憶を可能にし得る。
【0078】
ストレージデバイス1508は、(マシン可読記憶媒体またはコンピュータ可読媒体としても知られる)コンピュータアクセス可能記憶媒体1509を備えてもよく、コンピュータアクセス可能記憶媒体1509上に、本明細書で説明した方法または機能のいずれか1つまたは複数を具現化する命令またはソフトウェアの1つまたは複数のセット(例えば、モジュール、ユニット、および/または論理1528)が記憶される。処理モジュール/処理ユニット/処理ロジック1528は、例えば、プランニングモジュール305、制御モジュール306、およびADからMDへの移行モニタ310など、上記で説明された構成要素のうちの任意のものを表し得る。処理モジュール/ユニット/論理1528はまた、データ処理システム1500による処理モジュール/ユニット/論理1528の実行中、メモリ1503内および/またはプロセッサ1501内に完全にまたは少なくとも部分的に常駐してもよく、メモリ1503およびプロセッサ1501はまた、マシンアクセス可能記憶媒体を構成する。処理モジュール/ユニット/論理1528は、さらに、ネットワークインターフェースデバイス1505を介してネットワーク上で送信または受信されてもよい。
【0079】
コンピュータ可読記憶媒体1509はまた、上記で説明したいくつかのソフトウェア機能を記憶するために永続的に使用されてもよい。コンピュータ可読記憶媒体1509は、例示的な実施形態では、単一の媒体として示されているが、「コンピュータ可読記憶媒体」という用語は、命令の1つまたは複数のセットを記憶する単一の媒体または複数の媒体(例えば、集中または分散データベース、および/または関連付けられたキャッシュおよびサーバ)を含むように取られるべきである。「コンピュータ可読記憶媒体」という用語はまた、マシンによる実行のための命令のセットを記憶することまたは符号化することが可能であり、本開示の方法のいずれか1つまたは複数をマシンに実行させる、任意の媒体を含むように取られるものとする。「コンピュータ可読記憶媒体」という用語は、したがって、限定はしないが、ソリッドステートメモリ、および光および磁気媒体、または任意の他の非一時的マシン可読媒体を含むように取られるものとする。
【0080】
本明細書で説明する処理モジュール/ユニット/論理1528、構成要素および他の特徴は、個別ハードウェア構成要素として実装されるか、またはASIC、FPGA、DSPまたは同様のデバイスなど、ハードウェア構成要素の機能に一体化されてもよい。加えて、処理モジュール/ユニット/論理1528は、ハードウェアデバイス内でファームウェアまたは機能回路として実装されてもよい。さらに、処理モジュール/ユニット/論理1528は、任意の組合せハードウェアデバイスおよびソフトウェア構成要素中に実装されてもよい。
【0081】
システム1500はデータ処理システムの様々な構成要素を用いて示されているが、システム1500は、構成要素を相互接続する任意の特定のアーキテクチャまたは様式を表すものではなく、したがって、詳細は本開示の実施形態に密接な関係がないことに留意されたい。また、より少ない構成要素、または場合によってはより多い構成要素を有するネットワークコンピュータ、ハンドヘルドコンピュータ、モバイルフォン、サーバおよび/または他のデータ処理システムも本開示の実施形態とともに使用され得ることが諒解されよう。
【0082】
コンピュータメモリ内のデータビットに対する動作のアルゴリズムおよび記号表現に関して、上記の詳細な説明のいくつかの部分を提示した。これらのアルゴリズムの説明および表現は、データ処理分野における当業者によって、それらの当業者の作業の要旨を最も効果的に他の当業者に伝達するために使用される方法である。アルゴリズムは、ここでは、一般に、所望の結果につながる動作の自己矛盾のないシーケンスとして想到される。動作は、物理量の物理的操作を必要とする動作である。
【0083】
しかしながら、全てのこれらの用語および同様の用語は適切な物理量に関連するものであり、これらの量に付される便宜上のラベルに過ぎないことに留意されたい。上記の説明から明らかなように、別段に明記されていない限り、説明全体にわたって、以下の特許請求の範囲に記載された用語などの用語を利用する議論は、コンピュータシステムのレジスタおよびメモリ内で物理(電子)量として表されるデータを操作し、コンピュータシステムメモリまたはレジスタまたは他のそのような情報ストレージ、送信またはディスプレイデバイス内で物理量として同様に表される他のデータに変換する、コンピュータシステムまたは同様の電子計算デバイスのアクションおよびプロセスを指すことを諒解されたい。
【0084】
本開示の実施形態は、本明細書における動作を実行するための装置にも関する。そのようなコンピュータプログラムは非一時的コンピュータ可読媒体に記憶されている。マシン可読媒体は、マシン(例えばコンピュータ)に可読の形態で情報を記憶するための任意の機構を含む。例えば、マシン可読(例えばコンピュータ可読)媒体は、マシン(例えばコンピュータ)可読記憶媒体(例えば読み取り専用メモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリ素子)を含む。
【0085】
上記の図に示されたプロセスまたは方法は、ハードウェア(例えば回路、専用論理など)、(例えば、非一時的コンピュータ可読媒体上で具現化される)ファームウェア、ソフトウェア、または両方の組合せを備える処理ロジックによって実行され得る。プロセスまたは方法について、いくつかの逐次動作に関して上記で説明したが、説明した動作のうちのいくつかは異なる順序で実行され得ることを諒解されたい。その上、いくつかの動作は連続的にではなく並行して実行され得る。
【0086】
本開示の実施形態は、何らかの特定のプログラム言語を基準として説明されているわけではない。本明細書で説明されたような本開示の実施形態の教示を実装するために、種々のプログラム言語が使用され得ることが理解されよう。
【0087】
上記の明細書では、本開示の実施形態について、本発明の特定の例示的な実施形態を参照しながら説明した。以下の特許請求の範囲に記載されているように、本開示のより広い趣旨および範囲から逸脱することなく本開示の実施形態に様々な変更が行われ得ることが明らかになろう。明細書および図面は、したがって、限定的な意味ではなく、例示的な意味であると見なされるべきである。