(58)【調査した分野】(Int.Cl.,DB名)
1つ又は複数のルートセグメントと、推定入り時刻とを含むルートセグメント情報をネットワークを介して第1自律走行車から受信し、各推定入り時刻が前記ルートセグメントのうちの1つのルートセグメントに関連付けられ、且つ前記第1自律走行車が該ルートセグメントに入る時刻を表すステップと、
特定のルートセグメントに関連付けられた入り時刻及び前記第1自律走行車の現在位置に基づき、前記第1自律走行車が前記特定のルートセグメント内にあるかどうかを決定するステップと、
前記第1自律走行車が前記特定のルートセグメント内にある場合、前記第1自律走行車の車両群への参加を誘う旨の要求を送信するステップであって、前記車両群は、前記特定のルートセグメントに関連付けられた1つ又は複数の車両を含む車両群であり、前記車両群は、複数の自律走行車から受信されたルートセグメント情報に基づいて決定される複数の車両群のうちの1つの車両群であり、前記1つの車両群は少なくとも第2自律走行車を含み、且つ前記第1自律走行車及び前記第2自律走行車は同じルートセグメント内にある、ステップと、
前記ネットワークを介して前記第1自律走行車の第1乗客からメッセージを受信するステップと、
前記ネットワークを介して前記メッセージを前記第2自律走行車の第2乗客に転送するステップと、を含む自律走行車を管理するためのコンピュータ実現方法。
プロセッサにより実行されると、前記プロセッサに自律走行車の車両群を形成するための操作を実行させる命令が記憶された非一時的な機械可読媒体であって、前記操作は、
1つ又は複数のルートセグメントと、推定入り時刻とを含むルートセグメント情報をネットワークを介して第1自律走行車から受信し、各推定入り時刻が前記ルートセグメントのうちの1つのルートセグメントに関連付けられ、且つ前記第1自律走行車が該ルートセグメントに入る時刻を表すステップと、
特定のルートセグメントに関連付けられた入り時刻及び前記第1自律走行車の現在位置に基づき、前記第1自律走行車が前記特定のルートセグメント内にあるかどうかを決定するステップと、
前記第1自律走行車が前記特定のルートセグメント内にある場合、前記第1自律走行車の車両群への参加を誘う旨の要求を送信するステップであって、前記車両群は、前記特定のルートセグメントに関連付けられた1つ又は複数の車両を含む車両群であり、前記車両群は、複数の自律走行車から受信されたルートセグメント情報に基づいて決定される複数の車両群のうちの1つの車両群であり、前記1つの車両群は少なくとも第2自律走行車を含み、且つ前記第1自律走行車及び前記第2自律走行車は同じルートセグメント内にある、ステップと、
前記ネットワークを介して前記第1自律走行車の第1乗客からメッセージを受信するステップと、
前記ネットワークを介して前記メッセージを第2自律走行車の第2乗客に転送するステップと、を含む命令が記憶された非一時的な機械可読媒体。
前記遠隔サーバから媒体コンテンツを受信し、前記車両群に対応するルートセグメントに関連付けられた関心ポイントに基づいて、前記遠隔サーバによって前記媒体コンテンツを識別して表示するステップと、
前記媒体コンテンツを前記自律走行車の乗客に表示するステップとをさらに含む請求項13に記載の方法。
【発明を実施するための形態】
【0010】
以下、説明の詳細を参照しながら、本発明の様々な実施形態及び方法を説明し、図面は、前記様々な実施形態を示す。以下の説明及び図面は、本出願を説明するためのものであり、本出願を限定するものではない。本出願の様々な実施形態を完全に把握するために、多数の特定の詳細を説明する。なお、いくつかの例では、本発明の実施形態に対する簡単な説明を提供するために、周知又は従来技術の詳細について説明していない。
【0011】
本明細書では「一つの実施形態」又は「実施形態」とは、当該実施形態について組み合わせて説明された特定特徴、構造又は特性が、本出願の少なくとも一つの実施形態に含まれてもよい。語句「一つの実施形態では」は、本明細書全体において同一実施形態を指すとは限らない。
【0012】
いくつかの実施形態によれば、システムは各自律走行車の旅程に基づいて1つ又は複数の自律走行車を組み合わせる。旅程は起点から目的地までのルートを含む。該ルートは1つ又は複数のルートセグメント及び1つ又は複数の関心ポイント(例えば、地元の企業、観光スポット、学校、教会等)を含む。自律走行車をグループ化することにより、システムは旅程において少なくとも1つの共同ルートセグメント上を走行している車両に乗った乗客間の関係を構築する。乗客は、例えば車両群により提供される社会コミュニティーを通じて、旅行の関連情報を共有するために、互いにインタラクションすることができる。
【0013】
一実施形態において、ルートセグメント情報はネットワークを介して第1自律走行車から受信される。ルートセグメント情報は1つ又は複数のルートセグメントと、推定入り時刻とを含み、各推定入り時刻が、ルートセグメントのうちの1つのルートセグメントに関連付けられ且つ第1自律走行車が該ルートセグメントに入る時刻を表す。特定のルートセグメントに関連付けられた入り時刻及び第1自律走行車の現在位置に基づいて第1自律走行車が特定のルートセグメント内にあるか否かを決定する。第1自律走行車が特定のルートセグメント内にある場合、第1自律走行車の、特定のルートセグメントに関連付けられた1つ又は複数の車両の車両群への参加を誘う旨の要求を送信する。車両群は複数の自律走行車から受信されたルートセグメント情報に基づいて決定される1つ又は複数の車両群であり、各車両群は特定のルートセグメントに関連付けられる。
【0014】
一実施形態において、入力目的地に応答して旅程を取得する。旅程は入力目的地までのルートを含む。該ルートは複数の関心ポイントを有する。関心ポイント、位置及び地図情報に基づいて、ルートは複数のルートセグメントに区画される。ルートセグメント情報はネットワークを介して遠隔サーバに送信される。遠隔サーバはネットワークを介して複数の自律走行車からルートセグメント情報を受信する。遠隔サーバから1つ又は複数の周辺車両の群を識別する車両群の識別子(ID)は受信される。遠隔サーバは複数の自律走行車から受信されるルートセグメント情報に基づいて複数の車両群を決定する。車両群の識別子に応答し、1つ又は複数の周辺車両の群が接続されて、周辺車両の乗客が相互に通信することを許可する。
【0015】
図1は本発明に係る一実施形態に係る自律走行車のネットワーク配置を示すブロック図である。
図1を参照して、ネットワーク配置100はネットワーク102によって1つ以上のサーバ103〜104に通信可能に接続することができる自律走行車101を含む。1つの自律走行車を示すが、ネットワーク102によって複数の自律走行車は互いに接続され、及び/又はサーバ103〜104に接続されることができる。ネットワーク102は、有線又は無線の任意のタイプのネットワーク、例えばローカルエリアネットワーク(LAN)、例えばインターネットの広域ネットワーク(WAN)、セルラーネットワーク、衛星ネットワーク又はその組み合わせであってもよい。サーバ103〜104は任意のタイプのサーバ又はサーバクラスタ、例えばWebサーバ又はクラウドサーバ、アプリケーションサーバ、バックエンドサーバ又はその組み合わせであってもよい。サーバ103〜104は、データ分析サーバ、内容サーバ、交通情報サーバ、地図(マップ)及び関心ポイント(MPOI)サーバ又は位置サーバ等であってもよい。
【0016】
自律走行車とは、自律モードになるように配置できる車両を指し、前記自律モードで車両が運転者からの入力が非常に少ない又はない環境でナビゲーションして走行する。このような自律走行車は、センサシステムを含んでもよく、前記センサシステムは車両走行環境に関連する情報を検出するように配置される1つ以上のセンサを有する。前記車両及びその関連するコントローラが、検出された情報を使用して環境でナビゲーションして走行する。自律走行車101は、手動モード、完全自律モード又は部分自律モードで運行することができる。
【0017】
一実施形態において、自律走行車101は、感知及び計画システム110と、車両制御システム111と、無線通信システム112と、ユーザインターフェースシステム113と、センサシステム114とを含むが、これらに制限されない。自律走行車101は、通常の車両に含まれるある一般的な構成要素、例えばエンジン、車輪、ハンドル、変速器等をさらに含んでもよく、前記構成要素は、車両制御システム111及び/又は感知及び計画システム110により各種の通信信号及び/又は命令(例えば加速信号又は命令、減速信号又は命令、ステアリング信号又は命令、ブレーキ信号又は命令等)を使用して制御することができる。
【0018】
構成要素110〜114は、相互接続部材、バス、ネットワーク又はそれらの組み合わせを介して互いに通信可能に接続することができる。例えば、構成要素110〜114は、コントローラエリアネットワーク(CAN)バスを介して互いに通信可能に接続することができる。CANバスは、マイクロコントローラ及び装置がホストコンピューターのない応用において互いに通信することを許可するような車両バス標準として設計される。それはメッセージに基づくプロトコルであり、最初に自動車内における複数の電線のために設計されたが、数多くのその他の環境(状況)にも用いられる。
【0019】
現在、
図2を参照して、一実施形態において、センサシステム114は、1つ以上のカメラ211と、全地球測位システム(GPS)ユニット212と、慣性計測ユニット(IMU)213と、レーダーユニット214と、LIDAR(レーザー画像検出と測距)ユニット215とを含むが、これらに制限されない。GPSユニット212は、送受信機を含んでもよく、前記送受信機は、自律走行車の位置に関する情報を提供するように動作することができる。IMU213は、慣性加速度に基づいて自律走行車の位置及び方向変化を感知することができる。レーダーユニット214は、無線信号を利用して自律走行車のローカル環境内の対象を感知するシステムを示すことができる。いくつかの実施形態において、対象を感知する以外、レーダーユニット214は、さらに対象の速度及び/又は進行方向を感知することができる。LIDARユニット215はレーザを使用して自律走行車の所在する環境における対象を感知することができる。LIDARユニット215は1つ以上のレーザ光源、レーザースキャナ、1つ以上の検出器及びその他のシステム構成要素を含んでもよい。カメラ211は、自律走行車の周辺環境の画像をキャプチャするための1つ以上の装置を含んでもよい。カメラ211は、スチルカメラ及び/又はビデオカメラであってもよい。カメラは、例えば回転及び/又は傾斜のプラットフォームに取り付けられる、機械的に移動可能なものであってもよい。
【0020】
センサシステム114は、その他のセンサ、例えばソナーセンサ、赤外線センサ、ステアリングセンサ、スロットルセンサ、ブレーキセンサ、及びオーディオセンサ(例えばマイクロフォン)をさらに含んでもよい。オーディオセンサは、自律走行車周辺の環境から音をキャプチャするように配置されてもよい。ステアリングセンサは、車両のハンドル、車両の車輪又はその組み合わせのステアリング角を感知するように配置できる。スロットルセンサ及びブレーキセンサは、それぞれ車両のスロットル位置及びブレーキ位置を感知する。いくつかの場合、スロットルセンサ及びブレーキセンサは、集積型スロットル/ブレーキセンサに一体化されてもよい。
【0021】
一実施形態において、車両制御システム111は、ステアリングユニット201と、スロットルユニット202(加速ユニットとも呼ばれる)と、ブレーキユニット203とを含むが、これらに制限されない。ステアリングユニット201は、車両の方向又は進行方向を調整することに用いられる。スロットルユニット202は、モーター又はエンジンの速度を制御して、続いて車両の速度及び加速度を制御することに用いられる。ブレーキユニット203は、摩擦を提供することによって車両の車輪又はタイヤをスローダウンして車両を減速させることに用いられる。注意すべきなのは、
図2に示すような構成要素はハードウェア、ソフトウェア又はその組み合わせで実現されることができる。
【0022】
図1を再び参照して、無線通信システム112は、自律走行車101と、例えば装置、センサ、その他の車両等の外部システムとの間に通信することを実現する。例えば、無線通信システム112は、1つ以上の装置に直接に又は通信ネットワークを介して無線通信し、例えばネットワーク102によってサーバ103〜104に通信できる。無線通信システム112は、任意のセルラー通信ネットワーク又は例えばWiFiの無線ローカルエリアネットワーク(WLAN)を使用して他の構成要素やシステムに通信できる。無線通信システム112は、例えば赤外線リンク、ブルートゥース(登録商標)等を使用して装置(例えば、乗客の移動装置、車両101内の表示装置、車両101内のスピーカー)に直接に通信できる。ユーザインターフェースシステム113は、車両101内で実行される周辺装置の一部であってもよく、例えばキーボード、タッチスクリーンディスプレイ装置、マイクロフォン、及びスピーカー等を含む。
【0023】
自律走行車101の一部又は全ての機能は、特に自律運転モードで操作する場合、感知及び計画システム110により制御したり管理したりすることができる。感知及び計画システム110は、必要なハードウェア(例えば、プロセッサ、メモリ、ストレージ)、及びソフトウェア(例えば、オペレーティングシステム、計画及びルーティングプログラム)を含み、センサシステム114、車両制御システム111、無線通信システム112、及び/又はユーザインターフェースシステム113から情報を受信し、受信された情報を処理し、出発地から目的地までのルートや経路を計画し、そして計画及び制御情報に基づいて車両101を運転させる。あるいは、感知及び計画システム110と車両制御システム111とは一体化されてもよい。
【0024】
例えば、乗客であるユーザとして、例えばユーザインターフェースによって旅程の出発位置及び目的位置を指定することができる。感知及び計画システム110は旅関連データを取得する。例えば、感知及び計画システム110は、MPOIサーバから位置及びルート情報を取得することができ、前記MPOIサーバはサーバ103〜104の一部であってもよい。位置サーバは、位置サービスを提供し、かつMPOIサーバはマップサービス及びある位置のPOIを提供する。あるいは、このような位置及びMPOI情報は、感知及び計画システム110の永続記憶装置にローカルでキャッシュされることができる。
【0025】
自律走行車101がルートに沿って走行する期間に、感知及び計画システム110は、さらに交通情報システムやサーバ(TIS)からリアルタイム交通情報を取得できる。注意すべきなのは、サーバ103〜104は、第三者エンティティにより動作されることができる。あるいは、サーバ103〜104の機能は、感知及び計画システム110と一体化されてもよい。リアルタイム交通情報、MPOI情報、位置情報、及びセンサシステム114が検出又は感知したリアルタイムなローカル環境データ(例えば、障害物、対象、付近車両)に基づいて、感知及び計画システム110は、安全で効果的に指定した目的地に到達するように、最適なルートを計画し、かつ計画したルートにより例えば車両制御システム111を介して車両101を運転することができる。
【0026】
一実施形態によれば、
図1に示すとおり、サーバ103はインテリジェントディスパッチャー121及び車両管理器122を含む。インテリジェントディスパッチャー121は自律走行車を1つ又は複数の車両群に割り当てるか否かを決定する。車両管理器122は1つ又は複数の車両群及びその関連する車両を管理する。
【0027】
一実施形態において、インテリジェントディスパッチャー121はルートセグメント情報及び自律走行車の現在位置に基づいて車両がルート内の特定のルートセグメント内にあるか否かを決定してもよい。車両がルート内の特定のルートセグメント内にあると決定すると、インテリジェントディスパッチャー121は、車両の、特定のルートセグメントに関連付けられた車両群への参加を誘う旨の要求を送信することができる。しかしながら、車両は特定のルートセグメント内にあったことがあり且つ離脱した場合、インテリジェントディスパッチャー121は車両を車両群から取り除くように要求してもよい。
【0028】
一実施形態において、自律走行車の乗客が招待を受け入れて特定の車両群に参加すると、車両管理器122は車両を特定の車両群に入れる。一方、例えばインテリジェントディスパッチャー121からの要求があれば、車両管理器122は車両群から車両を取り除いてもよい。
【0029】
図3は、本発明の一実施形態に係る自律走行車と共に使用される感知及び計画システムの例を示すブロック図である。システム300は、
図1の自律走行車101の一部(感知及び計画システム110、車両制御システム111及びセンサシステム114を含むが、これらに制限されない)となるように実現されることができる。
図3を参照し、感知及び計画システム110は、位置決めモジュール301と、感知モジュール302と、決定モジュール303と、計画モジュール304と、制御モジュール305と、旅程計画モジュール306とを含むが、これらに制限されない。
【0030】
モジュール301〜306における一部又は全部は、ソフトウェア、ハードウェア又はその組み合わせで実現されてもよい。例えば、これらのモジュールは、永続記憶装置352に取り付けられ、メモリ351にロードされ、かつ1つ以上のプロセッサ(図示せず)により実行されてもよい。注意すべきなのは、これらのモジュールにおける一部又は全部は、
図2の車両制御システム111の一部又は全部のモジュールに通信可能に接続されてもよく、一体化されてもよい。モジュール301〜306における一部は、一緒に集積モジュールとして一体化されてもよい。
【0031】
位置決めモジュール301(地図及びルーティングモジュールとも言われる)は、ユーザの旅程又はルートに関連する任意のデータを管理する。ユーザは、例えばユーザインターフェースを介してログインするとともに旅程の出発位置及び目的位置を指定してもい。位置決めモジュール301は、旅程に関連するデータを取得するように、自律走行車300(システム)のその他の構成要素(例えば地図及びルート情報311)と通信する。例えば、位置決めモジュール301は、位置サーバと、地図及びPOI(MPOI)サーバから位置及びルート情報を取得することができる。位置サーバは、位置サービスを提供し、かつMPOIサーバは、地図及びルート情報311の一部としてキャッシュされてもよい地図サービスと特定な位置のPOIとを提供する。システム300がルートに沿って走行する期間に、位置決めモジュール301は、さらに交通情報システムやサーバからリアルタイム交通情報を取得することができる。
【0032】
センサシステム114により提供されたセンサデータ、及び位置決めモジュール301により得られた位置決め情報に基づいて、感知モジュール302は周辺環境に対する感知を確定する。感知情報は、普通の運転者が自分で運転している車両周辺から感知したもの(状況)を示すことができる。感知情報は、車線配置(例えば、ストレート又はカーブ)、トラフィック信号、他の車両の相対位置、歩行者、建築物、横断歩道又はその他の例えば対象形式で現される交通関連標識(例えば、停止標識、譲り標識)などを含んでもよい。
【0033】
感知モジュール302は、コンピュータビジョンシステム又はコンピュータビジョンシステムの機能を含んでもよく、自律走行車環境における対象及び/又は特徴を認識するように、1つ以上のカメラによりキャプチャされた画像を処理及び分析することに用いられる。前記対象は交通信号、車道の境界線、他の車両、歩行者及び/又は障害物等を含んでもよい。コンピュータビジョンシステムは、対象認識アルゴリズム、ビデオトラッキング及びその他のコンピュータビジョン技術を使用することができる。いくつかの実施形態において、コンピュータビジョンシステムは、環境をマッピングし、対象を追跡し、かつ対象の速度を推定することなどができる。感知モジュール302は、その他のセンサ(例えばレーダー及び/又はLIDAR)により提供されたその他のセンサデータに基づいて対象を検出することもできる。
【0034】
それぞれの対象に対して、決定モジュール303は、如何に対象を処理する決定をする。例えば、特定な対象(例えば、交差ルートにおける他の車両)及び対象を記述するメタデータ(例えば、速度、方向、ステアリング角)に対して、決定モジュール303は、遇う対象に如何に対応する(例えば、追い越し、道譲り、停止、通過)ことを決定する。決定モジュール303は、永続記憶装置352(図示せず)に記憶されてもよい1セットのルール(例えば交通ルール)に基づいてこのような決定をすることができる。
【0035】
感知したそれぞれ対象に対する決定に基づいて、計画モジュール304は、自律走行車のためにルート又は経路及び運転パラメータ(例えば、距離、速度及び/又はステアリング角)を計画する。すなわち、所定対象に対して、決定モジュール303は前記対象に対して如何に対応するかを決定し、計画モジュール304は如何に実行するかを確定する。例えば、所定対象に対して、決定モジュール303は、前記対象を追い越すことを決定することができ、計画モジュール304は、前記対象の左側に追い越すか、右側に追い越すかを確定することができる。計画モジュール304は、計画及び制御データを生成し、車両300が次の移動周期(例えば、次のルート/経路セグメント)に如何に移動するかを記述する情報を含む。例えば、計画及び制御データは車両300が毎時間30マイル(mph)の速度で10メートル移動し、次に25mphの速度で右車線まで変わることを指示することができる。
【0036】
計画及び制御データに基づいて、制御モジュール305は計画及び制御データにより定義されたルート又は経路に基づいて、車両制御システム111へ適切な命令又は信号を送信することによって自律走行車を制御及び運転する。前記ルート又は経路に沿って違う時間点で適時に適切な車両設置又は駆動パラメータ(例えば、スロットル、ブレーキ及びステアリング命令)を使用して車両を第1点から第2点まで運転するように、計画及び制御データは十分な情報を含む。
【0037】
注意すべきなのは、決定モジュール303及び計画モジュール304は、集積モジュールに一体化されてもよい。決定モジュール303/計画モジュール304は、自律走行車の運転経路を確定するために、ナビゲーションシステム又はナビゲーションシステムの機能を含んでもよい。例えば、ナビゲーションシステムは、自律走行車が以下の経路に沿って移動することを実現するための一連の速度及びディレクショナ進行方向を確定することができ、前記経路は、自律走行車を総体的に最終目的位置を向けて通じる車線経路に進ませると同時に、基本的に感知された障害物を避けることができる。目的地はユーザインターフェースシステム113により実現されたユーザ入力に基づいて設置できる。ナビゲーションシステムは、自律走行車が走行していると同時に走行経路を動的に更新することができる。ナビゲーションシステムは、自律走行車用の走行経路を確定するように、GPSシステム及び1つ以上の地図からのデータを合併することができる。
【0038】
決定モジュール303/計画モジュール304は、自律走行車環境における潜在障害物を、認識・評価・回避又はその他の方式で迂回するために、衝突回避システム又は衝突回避システムの機能をさらに含んでもよい。例えば、衝突回避システムは、以下の方式によって自律走行車のナビゲーションにおける変更を実現することができ、車両制御システム111の中の1つ以上のサブシステムを動作してターン操縦、ステアリング操縦、ブレーキ操縦等を採る。衝突回避システムは、周辺の交通モード、道路状況等に基づいて障害物を回避可能な操縦を自動的に確定することができる。衝突回避システムは、その他のセンサシステムは、自律走行車がターンして入ろうとする隣接領域における車両、建築障害物等を検出する際にターン操縦を採らないように配置できる。衝突回避システムは、使用可能でありかつ自律走行車の乗員の安全性を最大化させる操縦を自動的に選択することができる。衝突回避システムは、自律走行車の乗員室内で最小の加速度を出現させることが予測された回避操縦を選択することができる。
【0039】
旅程計画モジュール306は旅行の旅程を分析する。例えば、ユーザ又は乗客はユーザインターフェースシステム113のようなユーザインターフェースを介して旅行の出発地及び/又は目的地を指定する。位置特定モジュール301は、指定された出発地及び/又は目的地を使用して、指定された目的地までのルートを有する旅程を形成する。旅程計画モジュール306は、位置特定モジュール301から旅程を取得し、ルートをルートセグメントに分割またはセグメント化し、各ルートセグメントを評価する。評価されたルートセグメントはルートセグメント情報としてネットワーク102のようなネットワークを介して遠隔サーバ(例えば、サーバ103)に送信されて、例えばインテリジェントディスパッチャー121での処理に用いられる。いくつかの実施形態において、出発地は、ユーザによって指定される代わりに、例えばGPSユニット212により提供される現在位置に基づいて、自動的に提供されるか、又は構成されてもよい。いくつかの実施形態において、ルートは複数の関心ポイント、例えば地元の企業、観光スポット、学校、教会等を含んでもよい。
【0040】
図4は、本発明の一実施形態に係る1つ又は複数の自律走行車の車両群の一例を示す図である。
図4に示すとおり、自律走行車101A−Eは、例えばネットワーク102を介して情報をサーバ103に送信し及びサーバ103から受信するために、サーバ103に通信可能に接続されている。自律走行車101A−Eのそれぞれは、例えば、現在位置及びルートセグメント情報をサーバ103に送信し、且つ該情報に基づいて、車両はサーバ103から特定の車両群に参加する要求を受信する。
図4の一例では、サーバ103は、現在位置及びルートセグメント情報に基づいて自律走行車101A−Cが特定の時間帯に共通又は同一ルートセグメント上を走行していると決定する。従って、サーバ103は、自律走行車101A−Cのそれぞれに対して、第1車両群401への参加を誘う旨の要求を送信してもよい。招待を受け取ると、自律走行車101A−Cは第1車両群401に割り当てられる。以上は
図4に示された第2車両群402に対応する自律走行車101D−Eにも同様に適用できる。
【0041】
図5は本発明の一実施形態に係る自律走行車の管理の一例を示すブロック図である。
図5では、自律走行車101の乗客又はユーザは、エンジンを始動して、旅行の出発地及び/又は目的地を入力してもよい。出発地及び目的地に基づき、自律走行車101は位置決めモジュール301を介して目的地までのルートを含む旅程を作成してもよくて、ルートは複数の関心ポイントを含む。
【0042】
旅程計画モジュール306は位置決めモジュール301から旅程を受信し、関心ポイント、位置及び地図情報(例えば、MPOIサーバにより提供される)に基づいてルート(例えば、地
図APIを使用して)を1つ又は複数のルートセグメント501に区画してもよい。いくつかの実施形態において、各ルートセグメント501について、旅程計画モジュール306は自律走行車101がルートセグメントに入る時刻を表す推定入り時刻を計算又は推算する。推定入り時刻は、例えば現在の時間及び自律走行車101の現在位置及び速度に基づいて計算することができる。その後、ルートセグメント情報及びそれに関連する入り時刻をルートセグメント情報として、例えばネットワーク102を介してインテリジェントディスパッチャー121に転送する。
【0043】
インテリジェントディスパッチャー121はルートセグメント情報を受信し、該情報を遠隔サーバ等の記憶装置に記憶する。特定のルートセグメントに関連付けられた推定入り時刻及び自律走行車101の現在位置に基づいて、インテリジェントディスパッチャー121は、例えば自律走行車101が特定のルートセグメント内で走行しているか否かを定期的に決定することができる。特定のルートセグメント内で走行していると、インテリジェントディスパッチャー121は、自律走行車101の、特定のルートセグメントに関連付けられた車両群(例えば、車両群502a、502b又は502c)への参加を誘う旨の要求を送信してもよい。該要求は感知及び計画システム110又は乗客のモバイル装置(例えば、スマートフォン、タブレットPC)により受信されることができる。乗客は例えばユーザインターフェースシステム113又はモバイル装置により要求を受け入れることができる。招待を受け入れると、インテリジェントディスパッチャー121は車両管理器122へ要求又はメッセージ(例えば、「参加」要求)を送信して、自律走行車101を車両群に割り当てる。他方、車両がすでに離脱し又は特定のルートセグメント内にないと決定すると、インテリジェントディスパッチャー121は自律走行車101を車両群から取り除くように要求(例えば、「離脱」要求)を送信することができる。
【0044】
車両管理器122は複数の車両群502a−c及びそれに関連する自律走行車を管理・監視する。車両管理器122は例えば車両を車両群に割り当てる要求メッセージを受信すると、自律走行車101を車両群502a−cのうちの1つに配置又は割り当ててもよい。一方では、車両管理器は、車両群から車両を取り除く要求メッセージを受信すると、車両群から自律走行車101を取り除いてもよい。いくつかの実施形態において、現在、特定のルートセグメントに関連付けられた車両群がないと、車両管理器122は車両群を作成又は構築することができる。いくつかの実施形態において、現在、車両群に関連付けられた自律走行車がないと、車両管理器122は車両群を終了又は解体することができる。
【0045】
車両群502a−cのそれぞれは車両群内の1つ又は複数の自律走行車の乗客を接続するために、ソーシャルメディアの特徴を有する社会コミュニティーを提供することができる。いくつかの実施形態において、車両群は、車両群内の自律走行車の乗客がコンテンツ(例えば、テキストのスレ又はコメント、デジタル写真、ビデオ)を生成して相互に情報を共有するリアルタイム通信チャネル(例えば、チャット)を提供することができる。例えば、第1自律走行車の乗客はユーザインターフェースシステム113又はモバイル装置によりメッセージを構成して送信することによって、例えば道路及び交通状況、関心ポイント及び/又は彼/彼女の目的地等の様々な話題を共有し又はコメントすることができる。メッセージは遠隔サーバ(例えば、サーバ103)により第1自律走行車からネットワーク102等のネットワークを介して受信されてもよい。遠隔サーバはメッセージを第2自律走行車の乗客に転送することができ、ここで、第2自律走行車のユーザインターフェースシステム113又は第2自律走行車の乗客のモバイル装置を使用してメッセージを表示してもよい。いくつかの実施形態において、メッセージが攻撃的メッセージ、例えば下品、卑猥又は虚偽の情報を有するメッセージと決定されると、車両管理器122は該メッセージを作成する第1自律走行車の乗客を車両群から取り除く。
【0046】
いくつかの実施形態において、車両群は、乗客が遠隔サーバ(例えば、車両管理器122)により維持されるユーザプロファイルを作成することを可能にする。他の実施形態において、車両群は、乗客がFacebook(登録商標)、Twitter(登録商標)、LinkedIn(登録商標)、Pinterest(登録商標)等のソーシャルネットワーキングサイトよりそれらのユーザプロファイルを導入し又は組み込むことを許可する。ユーザプロファイルは、例えば、車両群内の1人の乗客を他人の乗客と関連させることに用いられ得る。いくつかの実施形態において、車両群は乗客にソーシャルゲームを提供する。例えば、乗客は遠隔サーバから1つ又は複数のビデオゲームをダウンロードし、スタンドアロンプレーヤ又はオンラインプレーヤ(例えば、他の乗客と対戦する)としてビデオゲームをプレイする。各種の実施形態において、ソーシャルメディアの特徴により企業がマーケティングリサーチ、通信、販売促進及び/又は関係開発に携わることができる。例えば、感知及び計画システム110は該群車両に対応するルートセグメントに関連付けられた関心ポイント(例えば、地元の企業)に基づいて遠隔サーバから媒体コンテンツ(例えば、ポンサードコンテンツ又は広告)を受信することができる。媒体コンテンツは遠隔サーバにより識別されて表示され、ユーザインターフェースシステム113等のユーザインターフェース又は乗客のモバイル装置により自律走行車の乗客に表示することができる。
【0047】
図6は本発明の一実施形態に係る自律走行車を動作させるプロセスを示すフロー図である。プロセス600はソフトウェア、ハードウェア又はそれらの組み合わせを含む処理ロジックにより実行されてもよい。例えば、プロセス600は
図1の感知及び計画システム110により実行されてもよい。
【0048】
図6に示すとおり、ブロック601において、処理ロジックは入力目的地に基づいて自律走行車の旅程を取得する。ブロック602において、処理ロジックは車両群データ(例えば、関心ポイント、位置及び地図情報)に基づいて旅程を1つ又は複数のルートセグメントに区画する。ブロック603において、各ルートセグメントについて、処理ロジックは自律走行車がルートセグメントに入る入り時刻を計算する。ブロック604において、処理ロジックは遠隔サーバ(例えば、サーバ103)にルートセグメント及びルートセグメントの入り時刻を含むルートセグメント情報を転送する。ブロック605において、処理ロジックは遠隔サーバから1つ又は複数の周辺車両の群を識別する車両群の識別子(ID)を受信する。ブロック606において、処理ロジックは車両群の車両の乗客と通信するために車両群に参加する。
【0049】
図7は本発明の一実施形態に係る自律走行車を管理するプロセスを示すフロー図である。プロセス700はソフトウェア、ハードウェア又はそれらの組み合わせを含む処理ロジックにより実行されてもよい。例えば、プロセス700は
図1のサーバ103により実行されてもよい。
【0050】
図7に示すとおり、ブロック701において、処理ロジックは複数の自律走行車からルートセグメント情報(例えば、ルートセグメント、ルートセグメント入り時刻)を受信する。ルートセグメント情報は車両のルートの1つ又は複数のルートセグメントを説明することができる。ブロック702において、処理ロジックはルートセグメント情報に基づいてルートセグメントに関連付けられた1つの群又は複数群の車両を決定する。ブロック703において、処理ロジックは自律走行車に関連付けられた特定のルートセグメント情報(例えば、時間及び位置)に基づいて、特定の自律走行車が特定の群に関連付けられるか否かを決定する。ブロック704において、処理ロジックは、自律走行車の、特定の車両群への参加を誘う旨の招待を自律走行車に送信する。
【0051】
図8は本発明の一実施形態に係る自律走行車を管理する別のプロセスを示すフロー図である。プロセス800はソフトウェア、ハードウェア又はそれらの組み合わせを含む処理ロジックにより実行されてもよい。例えば、プロセス800は
図1のサーバ103により実行されてもよい。
【0052】
図8に示すとおり、ブロック801において、現在、特定のルートセグメントに関連付けられた車両群がないと、処理ロジックは特定のルートセグメントに関連付けられた1つ又は複数の自律走行車の車両群を作成する。ブロック802において、自律走行車が車両群に参加すると、処理ロジックは自律走行車を車両群に加える。ブロック803において、自律走行車が特定のルートセグメントを離脱した場合、処理ロジックは車両群から自律走行車を取り除く。ブロック804において、現在、車両群に関連付けられた自律走行車がないと、処理ロジックは車両群を終了させる。
【0053】
注意すべきなのは、前記の示されたとともに記述された一部又は全部の構成要素は、ソフトウェア、ハードウェア又はその組み合わせで実現されることができる。例えば、このような構成要素は、永続記憶装置にインストールされるとともに記憶されたソフトウェアとして実現されてもよく、前記ソフトウェアは、本出願にわたって記載の手順又は動作を実施するように、プロセッサ(図示せず)でメモリにロードして実行されてもよい。あるいは、このような構成要素は、集積回路(例えば特定用途向けIC又はASIC)、デジタル信号プロセッサ(DSP)、又はフィールドプログラマブルゲートアレイ(FPGA))にプログラミングされ又は嵌め込みされた専用ハードウェアにおける実行可能なコードとして実現されてもよく、前記実行可能なコードは、アプリケーションからの対応するドライバープログラム及び/又はオペレーティングシステムによってアクセスされてもよい。なお、このような構成要素は、プロセッサ又はプロセッサコアにおける特定のハードウェアロジックとして実現されてもよく、ソフトウェア構成要素が1つ以上の特定命令によってアクセス可能な命令セットの一部とする。
【0054】
図9は、本出願の一実施形態に使用できるデータ処理システムの一例を示すブロック図である。例えば、システム900は、上記プロセス又は方法のいずれか(例えば、感知及び計画システム110、及び
図1のサーバ103〜104のいずれか)を実行する上記任意のデータ処理システムを示してもよい。システム900は、多数の異なる構成要素を含んでもよい。これらの構成要素は、集積回路(IC)、集積回路の一部、分散型電子装置又は例えばコンピュータシステムのマザーボード又はアドインカードの回路基板に適用された他のモジュール、又は他の構成要素でコンピュータシステムのハウジングに組み込まれた構成要素として実現されることができる。
【0055】
さらに、システム900は、コンピュータシステムの多数の構成要素の高レベルビューを示すことを目的とする。しかしながら、いくつかの実現形態では、付加的構成要素が存在する場合があることを理解すべきである。また、他の実現形態において示される構成要素が異なる配置を有してもよい。システム900は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、サーバ、携帯電話、メディアプレーヤー、パーソナルディジタルアシスタント(PDA)、スマート腕時計、パーソナルコミュニケーター、ゲーム装置、ネットワークルータ又はハブ、無線アクセスポイント(AP)又はリピーター、セットトップボックス、又はそれらの組合せを示してもよい。また、単一の機器又はシステムのみを示したが、用語「機器」又は「システム」は、さらに、独立又は共同で1つ(又は複数)の命令セットを実行することにより本明細書に説明される任意の1種又は複数種の方法を実行する機器又はシステムの任意のセットを含むことを理解すべきである。
【0056】
一実施形態において、システム900は、バス又は相互接続部材910によって接続されたプロセッサ901、メモリ903及び装置905〜908を備える。プロセッサ901は、単一のプロセッサコア又は複数のプロセッサコアを含む単一のプロセッサ又は複数のプロセッサであってもよい。プロセッサ901は、マイクロプロセッサ、中央処理装置(CPU)等のような1つ又は複数の汎用プロセッサであってもよい。より具体的には、プロセッサ901は、複雑命令セット計算(CISC)マイクロプロセッサ、縮小命令セットコンピュータ(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、又は他の命令セットを実現するプロセッサ、又は命令セットの組合せを実現するプロセッサであってもよい。プロセッサ901は、さらに、専用集積回路(ASIC)、セルラ又はベースバンドプロセッサ、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサ、グラフィックプロセッサ、通信プロセッサ、暗号プロセッサ、コプロセッサ、組み込みプロセッサのような1つ又は複数の専用プロセッサ、あるいは命令処理可能な任意の他のタイプのロジックであってもよい。
【0057】
プロセッサ901(超低電圧プロセッサのような低電力マルチコアプロセッサソケットであってもよい)は、前記システムの各種構成要素と通信するための主処理ユニット及び中央ハブとして用いられてもよい。このようなプロセッサは、システムオンチップ(SoC)として実現されることができる。プロセッサ901は、命令を実行することにより本明細書に説明される動作及びステップを実行するための命令を実行するように構成される。また、システム900は、選択可能なグラフィックサブシステム904と通信するグラフィックインターフェースをさらに含み、グラフィックサブシステム904は、表示コントローラ、グラフィックプロセッサ及び/又は表示装置をさらに備えてもよい。
【0058】
プロセッサ901は、メモリ903と通信してもよく、メモリ903は、一実施形態において複数のメモリによって所定量のシステムメモリを提供する。メモリ903は、ランダムアクセスメモリ(RAM)、動的RAM(DRAM)、シンクロナスDRAM(SDRAM)、静的RAM(SRAM)又は他のタイプのメモリのような1つ又は複数の揮発性記憶装置(又はメモリ)を備えてもよい。メモリ903は、プロセッサ901又は任意の他の装置により実行される命令列を含む情報を記憶できる。例えば、複数種のオペレーティングシステム、装置ドライバー、ファームウェア(例えば、基本入出力システム又はBIOS)及び/又はアプリケーションの実行可能なコード及び/又はデータはメモリ903にロードされてもよく、プロセッサ901により実行される。オペレーティングシステムは、ロボットオペレーティングシステム(ROS)、Microsoft(登録商標)会社からのWindows(登録商標)オペレーティングシステム、アップル会社からのMac OS(登録商標)/iOS(登録商標)、Google(登録商標)会社からのAndroid(登録商標)、Linux(登録商標)、Unix又は他のリアルタイム又は組み込みオペレーティングシステムのような任意のタイプのオペレーティングシステムであってもよい。
【0059】
システム900は、IO装置、例えば装置905〜908をさらに備えてもよく、ネットワークインターフェース装置905、選択可能な入力装置906及び他の選択可能なIO装置907を備える。ネットワークインターフェース装置905は、無線送受信機及び/又はネットワークインターフェースカード(NIC)を備えてもよい。前記無線送受信機は、WiFi送受信機、赤外送受信機、ブルートゥース(登録商標)送受信機、WiMax送受信機、無線セルラーホン送受信機、衛星送受信機(例えば、全地球測位システム(GPS)送受信機)又は他の無線周波数(RF)送受信機又はそれらの組合せであってもよい。NICはイーサネット(登録商標)カードであってもよい。
【0060】
入力装置906は、マウス、タッチパッド、タッチスクリーン(それは表示装置904と一体化されてもよい)、ポインタデバイス(例えばスタイラス)及び/又はキーボード(例えば、物理キーボード又はタッチスクリーンの一部として表示された仮想キーボード)を備えてもよい。例えば、入力装置906は、タッチスクリーンに接続されるタッチスクリーンコントローラを含んでもよい。タッチスクリーン及びタッチスクリーンコントローラは、例えば複数種のタッチ感度技術(容量、抵抗、赤外及び表面音波の技術を含むが、それらに限定されない)のいずれか、及びタッチスクリーンの1つ又は複数の接触点を決定するための他の近接センサアレイ又は他の素子を用いてそのタッチ点及び移動又は断続を検出することができる。
【0061】
IO装置907は音声装置を備えてもよい。音声装置は、スピーカ及び/又はマイクロホンを含んでもよく、それにより音声認識、音声コピー、デジタル記録及び/又は電話機能のような音声サポートの機能を促進する。他のIO装置907は、汎用シリアルバス(USB)ポート、パラレルポート、シリアルポート、印刷機、ネットワークインターフェース、バスブリッジ(例えば、PCI−PCIブリッジ)、センサ(例えば、加速度計、ジャイロスコープ、磁力計、光センサ、コンパス、近接センサ等のような動きセンサ)又はそれらの組合せをさらに備えてもよい。装置907は、結像処理サブシステム(例えば、カメラ)をさらに備えてもよく、前記結像処理サブシステムは、カメラ機能(例えば、写真及びビデオ断片の記録)を促進するための電荷カップリング装置(CCD)又は相補型金属酸化物半導体(CMOS)光学センサのような光学センサを備えてもよい。あるセンサは、センサハブ(図示せず)によって相互接続部材910に接続されてもよく、キーボード又は熱センサのような他の装置は、組み込みコントローラ(図示せず)により制御されてもよく、これはシステム900の特定配置又は設計により決められる。
【0062】
データ、アプリケーション、1つ又は複数のオペレーティングシステム等のような情報の永続記憶を提供するために、大容量メモリ(図示せず)は、プロセッサ901に接続されてもよい。様々な実施形態において、薄型化と軽量化のシステム設計を実現しかつシステムの応答能力を向上させるために、このような大容量メモリは、ソリッドステート装置(SSD)によって実現されることができる。なお、他の実施形態において、大容量メモリは、主にハードディスクドライブ(HDD)で実現されてもよく、少量のSSD記憶量は、SSDキャッシュとして停電イベント期間にコンテキスト状態及び他のこのような情報の不揮発性記憶を実現し、それによりシステム動作が再開する時に通電を速く実現することができる。さらに、フラッシュデバイスは、例えばシリアルペリフェラルインターフェース(SPI)によってプロセッサ901に接続されてもよい。このようなフラッシュデバイスは、システムソフトウェアの不揮発性記憶に用いられてもよく、前記システムソフトウェアは、前記システムのBIOS及び他のファームウェアを備える。
【0063】
記憶装置908は、任意の1種又は複数種の本明細書に記載の方法又は機能を体現する1つ又は複数の命令セット又はソフトウェア(例えば、モジュール、ユニット及び/又はロジック928)が記憶されるコンピュータアクセス可能な記憶媒体909(機械可読記憶媒体又はコンピュータ可読媒体とも呼ばれる)を備えてもよい。処理モジュール/ユニット/ロジック928は、例えば、計画モジュール304、制御モジュール305又は旅程計画モジュール306のような上記構成要素のいずれかを示してもよい。処理モジュール/ユニット/ロジック928は、さらにデータ処理システム900により実行される期間にメモリ903内及び/又はプロセッサ901内に完全又は少なくとも部分的に存在してもよく、ここで、メモリ903及びプロセッサ901も、機器アクセス可能な記憶媒体を構成する。処理モジュール/ユニット/ロジック928は、さらにネットワークによってネットワークインターフェース装置905を経由して送受信されてもよい。
【0064】
コンピュータ可読記憶媒体909は、以上に説明されたいくつかのソフトウェア機能の一部を永続的に記憶してもよい。コンピュータ可読記憶媒体909は、例示的な実施形態において単一の媒体として示されたが、用語「コンピュータ可読記憶媒体」は、前記1つ又は複数の命令セットが記憶される単一の媒体又は複数の媒体(例えば、集中型又は分散型データベース、及び/又は関連するキャッシュ及びサーバ)を備えることを理解すべきである。用語「コンピュータ可読記憶媒体」は、さらに命令セットを記憶又はコーディング可能な任意の媒体を備えることを理解すべきであり、前記命令セットは、機器により実行されかつ前記機器に本発明の任意の1種又は複数種の方法を実行させる。従って、用語「コンピュータ可読記憶媒体」は、ソリッドステートメモリ及び光学媒体と磁気媒体又は任意の他の非一時的機械可読媒体を備えるが、それらに限定されないことを理解すべきである。
【0065】
本明細書に記載の処理モジュール/ユニット/ロジック928、構成要素及び他の特徴は、ディスクリートハードウェアコンポーネントとして実現されてもよく、又はハードウェアコンポーネント(例えばASICs、FPGA、DSP又は類似装置)の機能に統合されてもよい。さらに、処理モジュール/ユニット/ロジック928は、ハードウェア装置内のファームウェア又は機能回路として実現されてもよい。また、処理モジュール/ユニット/ロジック928は、ハードウェア装置及びソフトウェアコンポーネントの任意の組合せで実現されてもよい。
【0066】
なお、システム900は、データ処理システムの各種の構成要素を有するように示されているが、構成要素に相互接続させる任意の具体的な構造又は方式を限定するものではないことに注意すべき、それは、このような詳細が本発明の実施形態に密接な関係がないためである。また、より少ない構成要素又はより多くの構成要素を有するネットワークコンピュータ、ハンドヘルドコンピュータ、携帯電話、サーバ及び/又は他のデータ処理システムは、本発明の実施形態と共に使用されてもよい。
【0067】
上記詳細な説明の一部は、コンピュータメモリにおけるデータビットに対する演算のアルゴリズム及び記号表現で示される。これらのアルゴリズムの説明及び表現は、認知と計画分野における当業者によって使用される、それらの作業実質を所属分野の他の当業者に最も効果的に伝達する方法である。ここで、アルゴリズムは、通常、所望の結果につながる首尾一貫した動作列(sequence of operations)と考えられる。これらの動作とは、物理量に対して物理的動作を行う必要となるステップを指す。
【0068】
ただし、これらの全ての及び類似の用語は、いずれも適切な物理量に関連付けられ、かつただこれらの量に適用される適切なラベルであることに注意すべきである。特に断らない限り、本出願の全体にわたって用語(例えば、添付している特許請求の範囲に説明された用語)による説明とは、コンピュータシステム又は類似の電子計算装置の動作及び処理であり、前記コンピュータシステム又は電子計算装置は、コンピュータシステムのレジスタ及びメモリに物理(例えば、電子)量としてデータを示し、かつ前記データをコンピュータシステムメモリ又はレジスタ又は他のこのような情報メモリ、伝送又は表示装置内において類似に物理量として示される他のデータに変換する。
【0069】
本発明の実施形態は、さらに本明細書における動作を実行するためのコンピュータプログラムに関する。このようなコンピュータプログラムは、非一時的コンピュータ可読媒体に記憶される。機器可読媒体は、機器(例えば、コンピュータ)可読な形態で情報を記憶する任意の機構を備える。例えば、機器可読(例えば、コンピュータ可読)媒体は、機器(例えば、コンピュータ)可読記憶媒体(例えば、読み出し専用メモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリメモリ)を備える。
【0070】
上記図面に示される手順又は方法は、ハードウェア(例えば、回路、専用ロジック等)、ソフトウェア(例えば、非一時的コンピュータ可読媒体に具現化される)、又は両方の組合せを含む処理ロジックにより実行されてもよい。前記手順又は方法は、本明細書において特定の順序に応じて説明されるが、説明された動作の一部は、異なる順序に応じて実行されてもよい。また、いくつかの動作は、順番ではなく並行に実行されてもよい。
【0071】
本発明の実施形態は、いずれかの特定のプログラミング言語を参照して説明されていないが、複数種のプログラミング言語で本明細書に記載の本発明の実施形態の教示を実現できることを理解すべきである。
【0072】
以上の明細書では、本発明の具体的な例示的な実施形態を参照してその実施形態を説明した。明らかなように、添付している特許請求の範囲に記載の本発明のより広い趣旨及び範囲を逸脱しない限り、様々な変形が可能である。従って、限定的なものではなく例示的なものとして本明細書及び図面を理解すべきである。