(57)【要約】【課題】自律ロボットの動きをコンピュータによって制御する。【解決手段】ロボットを用いて、１組の建物を含む建物または構内の一時的な状態および一時的な状態の位置を記述する動的な建物データを受信する工程２０２と、ロボットを用いて、動的な建物データから、一時的な状態の記述に基づいて、一時的な状態の位置に対応する地図レイヤの一部分の走行のコストの増加を計算することによって、地図の複数の地図レイヤのうちの１つの地図レイヤを更新する工程２０４と、ロボットを用いて、原点位置および目的地位置を有するタスクを受信した際２０６、地図の複数の地図レイヤから、一時的な状態の位置に対応する地図レイヤの一部分にわたるロボットの予想速度を計算するグラフ探索アルゴリズムを用いて、原点位置から目的地位置までの最速ルートを決定する工程２０８と、ロボットを用いて、原点位置から目的地位置までの最速ルートを移動する工程２１０とを含む。【選択図】図２
2019003602.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータによって実施される、自律ロボットの動きを制御する方法において、
複数の保護された内部通路と少なくとも１つの保護されていない外部通路とを含む１組の１以上の建物の一時的な状態および該一時的な状態の位置の記述を含む、デジタル的に格納されている動的な建物データを取得する工程と、
前記動的な建物データから、前記一時的な状態の前記記述に基づいて、前記一時的な状態の前記位置と関連づけられた走行のコストの増加を計算することによって、デジタル地図の１以上の特徴物と関連づけられたデジタルコストデータを更新する工程と、
目的地位置と関連づけられたタスクを受信したことに応答して、前記デジタル地図を用いて、前記一時的な状態の前記位置および前記コストの増加に部分的に基づいて、前記少なくとも１つの保護されていない外部通路を含まない前記目的地位置までの前記ロボットのルートを決定する工程と、
前記ロボットに、前記少なくとも１つの保護されていない外部通路を用いずに前記目的地位置まで移動させる工程と
を含むことを特徴とする方法。
【請求項２】
前記一時的な状態の前記位置に対応する前記地図のレイヤの一部分にわたる前記ロボットの予想速度を計算することによって、前記ルートを前記ロボットの現在位置から前記目的地位置までの最速ルートとして決定する工程を更に含む、請求項１記載の方法。
【請求項３】
それぞれ異なる推定到着時間（ＥＴＡ）値を有する複数の異なるルートであって、各異なるルートが前記少なくとも１つの保護されていない外部通路を用いない複数の異なるルートを計算することによって、前記ルートを前記ロボットの現在位置から前記目的地位置までの最短ルートとして決定する工程を更に含む、請求項１記載の方法。
【請求項４】
前記ルートを、前記少なくとも１つの保護されていない外部通路を用いずに、人員が配置される可能性が高い前記１組の建物の人員の数が最少である位置を移動する、前記現在位置から前記目的地位置までの最適化されたルートとして決定する工程を更に含む、請求項１記載の方法。
【請求項５】
前記動的な建物データが、リモートコンピュータから受信された気象データを含み、前記一時的な状態が気象状態である、請求項１記載の方法。
【請求項６】
前記動的な建物データが、前記１組の１以上の建物内にある別のロボットによって収集されたデータを含む、請求項１記載の方法。
【請求項７】
前記動的な建物データが、前記１組の１以上の建物内にあるセンサによって検出されたデータを含む、請求項１記載の方法。
【請求項８】
前記動的な建物データが、予定されている行事または設置物に関する施設データを含む、請求項１記載の方法。
【請求項９】
前記一時的な状態が、大群衆、建設現場、または仮設物を含む予定されている行事である、請求項１記載の方法。
【請求項１０】
前記最速ルートを移動する前記工程が、前記最速ルートから推定到着時間を決定し、該推定到着時間をオペレータに通信する工程を含む、請求項２記載の方法。
【請求項１１】
１以上のプロセッサと、
前記１以上のプロセッサに結合された非一過性のコンピュータ可読媒体と
を含むロボットにおいて、
前記非一過性のコンピュータ可読媒体がプログラム指示の１以上のシーケンスを格納しており、該指示が前記１以上のプロセッサによって実行された際に、該１以上のプロセッサに、
複数の保護された内部通路と少なくとも１つの保護されていない外部通路とを含む１組の１以上の建物の一時的な状態および該一時的な状態の位置の記述を含む、デジタル的に格納されている動的な建物データを取得する工程と、
前記動的な建物データから、前記一時的な状態の前記記述に基づいて、前記一時的な状態の前記位置と関連づけられた走行のコストの増加を計算することによって、デジタル地図の１以上の特徴物と関連づけられたデジタルコストデータを更新する工程と、
目的地位置と関連づけられたタスクを受信したことに応答して、前記デジタル地図を用いて、前記一時的な状態の前記位置および前記コストの増加に部分的に基づいて、前記少なくとも１つの保護されていない外部通路を含まない前記目的地位置までの前記ロボットのルートを決定する工程と、
前記ロボットに、前記少なくとも１つの保護されていない外部通路を用いずに前記目的地位置まで移動させる工程と
を行わせることを特徴とするロボット。
【請求項１２】
指示が実行された際に、前記一時的な状態の前記位置に対応する前記地図のレイヤの一部分にわたる前記ロボットの予想速度を計算することによって、前記ルートを前記ロボットの現在位置から前記目的地位置までの最速ルートとして決定する工程を行わせる指示を更に含む、請求項１１記載のロボット。
【請求項１３】
指示が実行された際に、それぞれ異なる推定到着時間（ＥＴＡ）値を有する複数の異なるルートであって、各異なるルートが前記少なくとも１つの保護されていない外部通路を用いない複数の異なるルートを計算することによって、前記ルートを前記ロボットの現在位置から前記目的地位置までの最短ルートとして決定する工程を行わせる指示を更に含む、請求項１１記載のロボット。
【請求項１４】
指示が実行された際に、前記ルートを、前記少なくとも１つの保護されていない外部通路を用いずに、人員が配置される可能性が高い前記１組の建物の人員の数が最少である位置を移動する、前記現在位置から前記目的地位置までの最適化されたルートとして決定する工程を行わせる指示を更に含む、請求項１１記載のロボット。
【請求項１５】
前記動的な建物データが、リモートコンピュータから受信された気象データを含み、前記一時的な状態が気象状態である、請求項１１記載のロボット。
【請求項１６】
前記動的な建物データが、前記１組の１以上の建物内にある別のロボットによって収集されたデータを含む、請求項１１記載のロボット。
【請求項１７】
前記動的な建物データが、前記１組の１以上の建物内にあるセンサによって検出されたデータを含む、請求項１１記載のロボット。
【請求項１８】
前記動的な建物データが、予定されている行事または設置物に関する施設データを含む、請求項１１記載のロボット。
【請求項１９】
前記一時的な状態が、大群衆、建設現場、または仮設物を含む予定されている行事である、請求項１１記載のロボット。
【請求項２０】
ロボットにおいて、
温度、湿度、または降水量のうちの任意のものを含む環境条件の１以上のデジタル電子センサと、
前記１以上のセンサに結合された１以上のプロセッサと、
前記１以上のプロセッサに結合された非一過性のコンピュータ可読媒体と
を含み、
前記コンピュータ可読媒体がプログラム指示の１以上のシーケンスを格納しており、該指示が前記１以上のプロセッサによって実行された際に、該１以上のプロセッサに、
複数の保護された内部通路と少なくとも１つの保護されていない外部通路とを含む１組の１以上の建物の一時的な状態および該一時的な状態の位置の記述を含む、デジタル的に格納されている動的な建物データを取得する工程と、
前記１以上のセンサから温度値、湿度値、または降水量値のうちの１以上を含むローカルな環境データを取得して、該ローカルな環境データに基づいて前記動的な建物データを更新する工程と、
前記動的な建物データから、前記一時的な状態の前記記述に基づいて、前記一時的な状態の前記位置と関連づけられた走行のコストの増加を計算することによって、デジタル地図の１以上の特徴物と関連づけられたデジタルコストデータを更新する工程と、
目的地位置と関連づけられたタスクを受信したことに応答して、前記デジタル地図を用いて、前記一時的な状態の前記位置および前記コストの増加に部分的に基づいて、前記少なくとも１つの保護されていない外部通路を含まない前記目的地位置までの前記ロボットのルートを決定する工程であって、
前記一時的な状態の前記位置に対応する前記地図のレイヤの一部分にわたる前記ロボットの予想速度を計算することによって、前記ルートを前記ロボットの現在位置から前記目的地位置までの最速ルートとして決定すること、
それぞれ異なる推定到着時間（ＥＴＡ）値を有する複数の異なるルートであって、各異なるルートが前記少なくとも１つの保護されていない外部通路を用いない複数の異なるルートを計算することによって、前記ルートを前記ロボットの現在位置から前記目的地位置までの最短ルートとして決定すること、および、
前記ルートを、前記少なくとも１つの保護されていない外部通路を用いずに、人員が配置される可能性が高い前記１組の建物の人員の数が最少である位置を移動する、前記現在位置から前記目的地位置までの最適化されたルートとして決定すること
のうちの任意のものを含み、
前記動的な建物データが、リモートコンピュータから受信された気象データ、前記１組の１以上の建物内にある別のロボットによって収集されたデータ、前記１組の１以上の建物内の他のセンサによって検出されたデータ、予定されている行事または前記１組の１以上の建物の設置物に関する施設データのうちの任意の１以上を含み、
前記一時的な状態が、気象、大群衆、建設現場、または仮設物を含む予定されている行事のうちの任意のものを含む、
前記ルートを決定する工程と、
前記ロボットに、前記少なくとも１つの保護されていない外部通路を用いずに前記目的地位置まで移動させる工程と
を行わせることを特徴とするロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、モバイルデジタルコンピュータによって制御される、境界された領域を自律的に走行するロボットに関し、より具体的には、コンピュータによって実施される、自律モバイルロボットの走行のために境界された領域を定義する技術に関する。
【背景技術】
【０００２】
この項で説明される手法は、追求され得る手法であるが、必ずしも以前に想到または追求された手法ではない。従って、特に明記しない限り、この項で説明される手法のいずれも、単にこの項に含まれているという理由で、従来技術であるとされるべきではない。
【０００３】
ロボットは、もはや、製造のみにおいて用いられるものではない。ロボットは、接待、医療、および物品の輸送において用いられることが増えている。例えば、米国カリフォルニア州サンノゼに所在するＳａｖｉｏｋｅ社によって設計および製造されているような一部のロボットは、構内（例えば、ホテルまたは病院等）において物品を輸送する車輪付き装置である。これらのロボットは、コンピュータまたは人間のオペレータによって、例えば、客室に熱いタオルを届ける等のタスクを完了するために配置される。特定のロボットは、配置されると、その現在位置から目的地まで、建物または１組の建物を通って走行し得る。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ロボットは、目的地まで走行するために、構内または環境のレイアウトを定義したデータを用いる。このデータは、構内、建物、または建物内のフロアのデジタル地図の形態で格納され得る。しかし、環境を静的に定義することには、建築、解体、セキュリティ上の変更、または他の運営上のポリシーの結果として環境が変化したときに、ロボットのデータストレージまたはメモリの更新が必要になるという大きな短所がある。ロボット工学の分野において、ロボットが動作する環境を、静的手段以外の手段を用いてデジタル的に定義する必要性がある。
【課題を解決するための手段】
【０００５】
添付の特許請求の範囲が、本発明の要約の役割をする。本明細書において開示される技術の説明的な例を以下に示す。これらの技術の実施形態は、以下に記載される例の少なくともいずれか１つ、および任意の組合せを含み得る。
【０００６】
例１において、自律ロボットの動きを制御する方法は、複数の保護された内部通路と少なくとも１つの保護されていない外部通路とを含む１組の１以上の建物の一時的な状態および該一時的な状態の位置の記述を含む、デジタル的に格納されている動的な建物データを取得する工程と、動的な建物データから、一時的な状態の記述に基づいて、一時的な状態の位置と関連づけられた走行のコストの増加を計算することによって、デジタル地図の１以上の特徴物と関連づけられたデジタルコストデータを更新する工程と、目的地位置と関連づけられたタスクを受信したことに応答して、デジタル地図を用いて、一時的な状態の位置およびコストの増加に部分的に基づいて、少なくとも１つの保護されていない外部通路を含まない目的地位置までのロボットのルートを決定する工程と、ロボットに、少なくとも１つの保護されていない外部通路を用いずに目的地位置まで移動させる工程とを含む。
【０００７】
例２は、例１の主題を含み、一時的な状態の位置に対応する地図レイヤの一部分にわたるロボットの予想速度を計算することによって、ルートをロボットの現在位置から目的地位置までの最速ルートとして決定する工程を含む。
【０００８】
例３は、例１または例２の主題を含み、それぞれ異なる推定到着時間（ＥＴＡ）値を有する複数の異なるルートであって、各異なるルートが少なくとも１つの保護されていない外部通路を用いない複数の異なるルートを計算することによって、ルートをロボットの現在位置から目的地位置までの最短ルートとして決定する工程を含む。
【０００９】
例４は、例１〜３のいずれかの主題を含み、ルートを、少なくとも１つの保護されていない外部通路を用いずに、人員が配置される可能性が高い１組の建物の人員の数が最少である位置を移動する、現在位置から目的地位置までの最適化されたルートとして決定する工程を含む。
【００１０】
例５は、例１〜４のいずれかの主題を含み、動的な建物データは、リモートコンピュータから受信された気象データを含み、一時的な状態は気象状態である。
【００１１】
例６は、例１〜５のいずれかの主題を含み、動的な建物データが、１組の１以上の建物内にある別のロボットによって収集されたデータを含む。
【００１２】
例７は、例１〜６のいずれかの主題を含み、動的な建物データが、１組の１以上の建物内にあるセンサによって検出されたデータを含む。
【００１３】
例８は、例の１〜７いずれかの主題を含み、動的な建物データが、予定されている行事または設置物に関する施設データを含む。
【００１４】
例９は、例１〜８のいずれかの主題を含み、一時的な状態が、大群衆、建設現場、または仮設物を含む予定されている行事である。
【００１５】
例１０は、例１〜９のいずれかの主題を含み、最速ルートを移動する工程が、最速ルートから推定到着時間を決定し、該推定到着時間をオペレータに通信する工程を含む。
【００１６】
例１１において、ロボットは、１以上のプロセッサと、１以上のプロセッサに結合された非一過性のコンピュータ可読媒体とを含み、非一過性のコンピュータ可読媒体がプログラム指示の１以上のシーケンスを格納しており、該指示が１以上のプロセッサによって実行された際に、該１以上のプロセッサに、複数の保護された内部通路と少なくとも１つの保護されていない外部通路とを含む１組の１以上の建物の一時的な状態および該一時的な状態の位置の記述を含む、デジタル的に格納されている動的な建物データを取得する工程と、動的な建物データから、一時的な状態の記述に基づいて、一時的な状態の位置と関連づけられた走行のコストの増加を計算することによって、デジタル地図の１以上の特徴物と関連づけられたデジタルコストデータを更新する工程と、目的地位置と関連づけられたタスクを受信したことに応答して、デジタル地図を用いて、一時的な状態の位置およびコストの増加に部分的に基づいて、少なくとも１つの保護されていない外部通路を含まない目的地位置までのロボットのルートを決定する工程と、ロボットに、少なくとも１つの保護されていない外部通路を用いずに目的地位置まで移動させる工程とを行わせる。
【００１７】
例１２は、例１１の主題を含み、指示が、１以上のプロセッサによって実行された際に、該１以上のプロセッサに、一時的な状態の位置に対応する地図レイヤの一部分にわたるロボットの予想速度を計算することによって、ルートをロボットの現在位置から目的地位置までの最速ルートとして決定する工程を含む処理を行わせる。
【００１８】
例１３は、例１１および例１２の主題を含み、指示が、１以上のプロセッサによって実行された際に、該１以上のプロセッサに、それぞれ異なる推定到着時間（ＥＴＡ）値を有する複数の異なるルートであって、各異なるルートが少なくとも１つの保護されていない外部通路を用いない複数の異なるルートを計算することによって、ルートをロボットの現在位置から目的地位置までの最短ルートとして決定する工程を含む処理を行わせる。
【００１９】
例１４は、例１１〜１３のいずれかの主題を含み、指示が、１以上のプロセッサによって実行された際に、該１以上のプロセッサに、ルートを、少なくとも１つの保護されていない外部通路を用いずに、人員が配置される可能性が高い１組の建物の人員の数が最少である位置を移動する、現在位置から目的地位置までの最適化されたルートとして決定する工程を含む処理を行わせる。
【００２０】
例１５は、例１１〜１４のいずれかの主題を含み、動的な建物データは、リモートコンピュータから受信された気象データを含み、一時的な状態は気象状態である。
【００２１】
例１６は、例１１〜１５のいずれかの主題を含み、動的な建物データが、１組の１以上の建物内にある別のロボットによって収集されたデータを含む。
【００２２】
例１７は、例１１〜１６のいずれかの主題を含み、動的な建物データが、１組の１以上の建物内にあるセンサによって検出されたデータを含む。
【００２３】
例１８は、例１１〜１７のいずれかの主題を含み、動的な建物データが、予定されている行事または設置物に関する施設データを含む。
【００２４】
例１９は、例１１〜１８のいずれかの主題を含み、一時的な状態が、大群衆、建設現場、または仮設物を含む予定されている行事である。
【００２５】
例２０において、ロボットは、温度、湿度、または降水量のうちの任意のものを含む環境条件の１以上のデジタル電子センサと、１以上のセンサに結合された１以上のプロセッサと、１以上のプロセッサに結合された非一過性のコンピュータ可読媒体とを含み、コンピュータ可読媒体がプログラム指示の１以上のシーケンスを格納しており、指示が１以上のプロセッサによって実行された際に、該１以上のプロセッサに、複数の保護された内部通路と少なくとも１つの保護されていない外部通路とを含む１組の１以上の建物の一時的な状態および該一時的な状態の位置の記述を含む、デジタル的に格納されている動的な建物データを取得する工程と、１以上のセンサから温度値、湿度値、または降水量値のうちの１以上を含むローカルな環境データを取得して、該ローカルな環境データに基づいて動的な建物データを更新する工程と、動的な建物データから、一時的な状態の記述に基づいて、一時的な状態の位置と関連づけられた走行のコストの増加を計算することによって、デジタル地図の１以上の特徴物と関連づけられたデジタルコストデータを更新する工程と、目的地位置と関連づけられたタスクを受信したことに応答して、デジタル地図を用いて、一時的な状態の位置およびコストの増加に部分的に基づいて、少なくとも１つの保護されていない外部通路を含まない目的地位置までのロボットのルートを決定する工程であって、一時的な状態の位置に対応する地図レイヤの一部分にわたるロボットの予想速度を計算することによって、ルートをロボットの現在位置から目的地位置までの最速ルートとして決定すること、それぞれ異なる推定到着時間（ＥＴＡ）値を有する複数の異なるルートであって、各異なるルートが少なくとも１つの保護されていない外部通路を用いない複数の異なるルートを計算することによって、ルートをロボットの現在位置から目的地位置までの最短ルートとして決定すること、および、ルートを、少なくとも１つの保護されていない外部通路を用いずに、人員が配置される可能性が高い１組の建物の人員の数が最少である位置を移動する、現在位置から目的地位置までの最適化されたルートとして決定することのうちの任意のものを含み、動的な建物データが、リモートコンピュータから受信された気象データ、１組の１以上の建物内にある別のロボットによって収集されたデータ、１組の１以上の建物内の他のセンサによって検出されたデータ、予定されている行事または１組の１以上の建物の設置物に関する施設データのうちの任意の１以上を含み、一時的な状態が、気象、大群衆、建設現場、または仮設物を含む予定されている行事のうちの任意のものを含む、ルートを決定する工程と、ロボットに、少なくとも１つの保護されていない外部通路を用いずに目的地位置まで移動させる工程とを行わせる。
【図面の簡単な説明】
【００２６】
【図１】様々な実施形態による、ロボットが動作し得るネットワーク化された環境の図
【図２】一部の実施形態による、動的なデータを用いて、ロボットがとるルートを計画するための例示的な処理のフローチャート
【図３】様々な実施形態による、第１の条件下においてロボットが生成した地図の画素レベルの図の一部分
【図４】様々な実施形態による、第２の条件下においてロボットが生成した地図の画素レベルの図の一部分
【図５】様々な実施形態による、ロボットが生成した建物内のフロアの地図の一例
【図６】様々な実施形態による、予測されるルートおよび推定到着時間を記述する例示的なユーザインターフェース
【図７】本発明の実施形態が実装され得るコンピュータシステムを示すブロック図
【発明を実施するための形態】
【００２７】
以下の記載において、本発明の完全な理解を提供するために、説明の目的で多くの具体的な詳細が述べられる。しかし、本発明はこれらの具体的な詳細を含まずに実施され得ることは自明である。他の例では、本発明を不必要に不明瞭にすることを避けるために、周知の構造および装置はブロック図の形態で示されている。
【００２８】
１．概観
一実施形態において、デジタルコンピュータ制御される電気機械的自律ロボットは、人々または複数の位置の間において品物を輸送するために、例えば、建物内、建物間、または構内に配置され得る。例えば、ホテルでは、ロボットは、ハウスキーピングエリアまたはフロントデスクから客室まで、温かいタオルを輸送するようプログラムされ得る。品物を目的地に届けるために、ロボットは、デジタル的に格納された建物の地図を用いて、ルートを決定し、廊下、エレベータ、およびその環境の他の特徴物を通って走行する。実際の建物と建物の設計図との間には小さな違いがあることから、ロボットは、典型的には、特定のタスクに対して配置される前に、その建物を網羅的に通って走行することにより、実際の物理的な建物のロボット可読デジタル地図を生成する。このデジタル地図データは、特定のタスクを行うためのロボットの移動ルートを決定するために用いられ得る。一部のケースでは、ルートは、１つの建物、または通廊、空中渡り廊下、もしくは他の構造物によってつながった複数の建物内の屋内空間のみの移動を含んでもよく、他のケースでは、最良のルートは、ロボットが、目的地に到達するために、一時的に屋内環境から出て屋外を移動することを必要とし得る。
【００２９】
更に、建物の構造、環境、および条件は、様々な原因に起因して変化し得る。これらの原因は、例えば、荒天、大群衆を惹きつける大きい行事、一時的な装飾および設置物、模様替えおよび修理のための工事区域、センサ（例えば、煙検出器または水分センサ等）をトリガする事象、並びに、保守事象（例えば、芝生の水やり、カーペットのクリーニング等）を含み得る。例として、降雨時には、ロボットが１以上の建物間の覆いのない外部通路を移動するのは望ましくない場合があり、降雪時には、外部通路はロボットが通過不能な状態になり得る。ロボットは、電子センサシステム、情報フィード、ネットワーク化されたオンラインサービス（例えば、気象サービスまたはコンピュータ、外部のスケジューリングシステム、緊急サービスデータ等）、および他のソースから、変化するデータ（これは、動的な建物記述データ、または単に動的な建物データと称され得る）を受信し得る。動的な建物データは、ＨＴＴＰを介して送信されるＡＰＩ呼び出し、プログラムによる呼び出し、または他の手段を介して、ロボット、またはロボットを管理するサーバコンピュータにおいて受信され得る。
【００３０】
複数の実施形態は、特に、外部の通路を特徴とする建物または複数の組の建物に対する適用可能性を有する。その例としては、Ｌ字状の、Ｕ字状の、湾曲した、または別様で長方形ではない全体の設計図を有する単一の建物が上げられ、或る地点から別の地点までの最短または最速の経路が、外部の空間、経路、道路、または屋根付き通路を移動することを含み得る。１組の１以上の建物はそのような外部の移動を特徴とする場合があり、これは最短または最速の経路の計算には有用であるが、妨害もしくは障害物、悪天候、または他の条件の影響を受け得る。
【００３１】
ロボットは、サービスの提供を可能にするローカルに格納された情報を用いて動作するものであり、これらのリソースには、使用可能な通路、通廊もしくは廊下、エレベータ、道路、または他の移動面、並びに、固定された障害物および予め定義された場所を定義する、１以上の論理的データレイヤを含むデジタル的に格納された地図が存在する。サービスを届ける際のロボットのパフォーマンスは、変化する環境条件によって影響され得るため、ロボットは、ルートを移動しているとき、またはタスクを行っているときに、ロボット搭載センサ、即ちローカルセンサと、格納されているプログラムロジックとを用いて、格納されている情報とは異なる環境条件に適応し得る。例えば、適応は、新たに遭遇した静止しているおよび移動している障害物を安全に迂回して走行することを含み得る。静止している障害物の一例は、客室の外の廊下にあるルームサービスのトレーである。移動している障害物の一例は、第１のロボットに向かってまたはその周囲を移動している人または第２のロボットである。
【００３２】
改善された、拡張されたサービスを提供するために、ロボットは、動的な建物データを用いて、リモートデータベースおよびロボットに対して外部のリアルタイムセンサを含むデータソースからの様々な非ローカルに格納されたリアルタイムの情報を含める。一例として、現在の気象状態に関する情報は、装置が、構内に位置する建物間を、地下の通廊を通って、空中ブリッジを渡って、および他の手段を用いて、安全且つ効果的に移動できる（またはできない）ことを確認することによって、屋内ベースのサービスロボットの自然な拡張を可能にし得る。過度に暑い、または濃霧、降雨、および積雪のような荒天に対して開放された屋外空間を移動することには、固有の課題がある。屋外走行に伴う課題の一部としては、赤外線放射によってロボット搭載ナビゲーションセンサが効かなくなること、降雨および水たまりに起因する水の浸入、センサ上への水分の付着、および機動性に影響する積雪がある。
【００３３】
動的な建物情報は、屋外センサから受信され得る。例えば、一実施形態において、デジタル温度センサ、雨量計もしくは他の水分センサ、および周囲光センサが、ロボットにデジタルデータ値を供給する。これらのセンサは、ロボット上に配置されてもよく、またはローカルな動作環境内に配置されてもよい。センサがロボットから離れている場合には、センサは、無線ネットワーキングインターフェースを介してホストコンピュータに結合され得るものであり、ホストコンピュータは、センサを周期的にポーリングして、またはセンサからのデータ更新を周期的に受信して、動的な建物データを構成してロボットに送信する。別の実施形態では、動的な建物データは、プログラムの制御下で、クラウドホスティングおよびオープンインターネットプロトコルを用いて通信するネットワーク化されたデータソース（例えば、国立気象局等）に対して、気象データを周期的に要求することに基づいて、構成される。
【００３４】
非ローカルな環境情報は、屋内で行われるロボットサービスを最適化するためにも非常に有用である。例えば、建物状態データは、予定されているまたは繰り返し発生する妨害または障害物と関連づけられた指定されている期間に、デジタル地図または走行コスト地図を修正し得る。デジタル的に格納された動的な建物データによって表され得る予定されている条件の例としては、カーペットクリーニング、ロボットが移動する際に通る廊下または他の領域の改装、移動通路が或る時間間隔にわたって人で混雑することが予測される人間の社交行事、宴会行事注文（ＢＥＯ）において指定されている宴会テーブル、バー、演台、椅子、カート、および他の品物、または定められた数の週にわたって静的な障害物を生じる季節の装飾が挙げられる。建物のインフラシステム、宴会部門のコンピュータ、またはネットワーク化された分散型センサから、時間値と関連づけられた障害物に関する情報が受信され得る。例えば、水分検出器または湿度検出器は、特定の領域内のカーペットが最近クリーニングされ、ロボットが移動するには湿り過ぎていることを示すと解釈され得る信号を生成し得る。
【００３５】
一実施形態において、ローカル気象データに基づく動的な建物データは、プログラムの制御下でロボットによって処理され、それにより、幾つかの可能な応答アクションのうちのいずれかが選択される。一実施形態において、応答アクションは、建物間の移動を自動的に制限するものであり得る。例えば、積雪、降雨、または他の荒天時には、建物間におけるサービスは、自動的に利用不可にされ得る。建物間の移動を利用不可にすることは、例えば、建物または構内のデジタル地図におけるデジタル通路データと関連づけられたコスト値または重み値を変更することを含み得る。別の実施形態では、応答アクションは、単独で、またはデジタル地図のコスト値もしくは重み値を修正することに関係して、気象警報、メッセージ、または他の通知を生成して送信することを含み得る。例えば、メッセージまたは通知が送信、生成、または表示され、デジタル地図を用いてルートまたは経路を生成することがスキップまたは終了され得る。一例として、唯一の使用可能な経路が、雪で覆われている屋外空間を移動することを要する場合には、経路を生成しても役に立たない場合がある。別の実施形態では、応答アクションは、管理者コンソールまたはオペレータセンターにおいて計算および／または表示される推定到着時間を調節することを含む。別の実施形態では、応答アクションは、計画されている配達または移動を行うことを拒否することを含み得る。
【００３６】
メッセージまたは通知は、ロボットのディスプレイ、管理者コンソール、またはオペレータセンターを用いて、生成され、送信または表示され得る。オペレータは、気象警報を無視するための管理者権限を有することが必要となり得る。一部の実施形態では、経路計画アルゴリズムは、気象データおよび他のデータソースを考慮して、データ値に基づく変更されたまたは異なる経路またはルートの出力を供給する。例えば、気象が良好である場合には、ロボットは、建物間または構造物間にある外部の保護されていない空間を移動するより短い経路を用い、悪天候の日には、ロボットは、屋外を避けるために、より長い経路をとり得る。
【００３７】
一実施形態において、配達が遅れる場合、または配達できない場合には、オペレータに通知され、送信者および／または受信者に知らされる。一実施形態では、目的地までの走行前または走行中に、動的な建物データの値に基づいて、１以上の新たなＥＴＡ推定値が生成され、通知において提供され得る。この情報は、同じ構内またはその近くに配置されたロボット間で通信されてもよく、他のロボットは、それに従って、それぞれのルートを計画し得る。
【００３８】
これらの技術を用いて、ロボット自体が動的な建物データを受信して用いることで、ロボットの機能が改善される。ロボットが、変化する条件に照らしてその挙動を修正しない場合には、ロボットは、そこから走行できない場所にいることを見出し得るか、水分によって損傷され得るか、大群衆を通り抜けてまたは他の危険から移動できなくなり得る。ルートを現在の条件に適応させることにより、ロボットは、ルートの走行を完了すること、ルートの走行を回避すること、および／または、タスクを行うことができる。
【００３９】
２．ネットワーク化された環境
図１は、様々な実施形態による、ロボットが動作し得る例示的なネットワーク化された環境の図である。
【００４０】
図１のネットワーク化された環境１００は、ロボット１０２をサポートするため、ロボット１０２が建物の特徴物（例えば、ロックされた扉またはエレベータ等）に入るのを可能にするため、および、オペレータがロボット１０２と直接通信するのを可能にするための、特定のコンピューティングインフラを提供する。ネットワーク化された環境１００は、ロボットと、ロボットが配置される建物または構内に対してローカルな１以上のコンピュータとを含む。一部の実施形態では、ネットワーク化された環境１００にはリモートコンピュータが含まれ得る。ネットワーク化された環境１００内のローカルコンピュータは、建物内に物理的に存在し得る。
【００４１】
この例では、ロボット１０２は、ロボットに収容されているプログラムされたデジタルコンピュータの制御下にある、自律型の車輪付きの電池式の電気機械的ロボットである。ロボット１０２は、格納されているプログラムの制御下で動作する駆動機構に結合された、ロボットの底部にある１組の車輪を用いて移動する。ロボット１０２は、その環境に適した速度（典型的には、人間の歩行速度、またはそれより速い、もしくは遅い速度）で移動し得る。一部の実施形態では、人間の活動が少ない領域（例えば、モーションセンサが最近作動されていないために照明がオフになっている廊下）では、ロボット１０２はより高速で移動し得る。ロボット１０２の車輪は、屋内および屋外のタイル、カーペット、およびコンクリートを含む様々な表面上における性能のために選択され得る。一実施形態において、ロボット１０２は、米国カリフォルニア州サンノゼに所在するＳＡＶＩＯＫＥ社から市販されているＲＥＬＡＹロボットを含み得るが、本開示において記載されるプログラム的特徴および機能的特徴を有する。
【００４２】
一部の実施形態では、ロボット１０２は少なくとも１つの収納用区画を含み、収納用区画は、原点位置または目的地にいるオペレータまたは人間が内部にアクセスするために、プログラムの制御下でロボットによって電子的に開くことができる。収納用区画は、環境に合わせた適切な品物を保持するサイズであり得る。例えば、接待用途では、収納用区画は、リネン、バスルームの備品、薬、雑誌および読み物、遺失物（例えば、財布、鍵、パーソナル電子デバイス等）のうちの任意のものの搬送を可能にし得る。
【００４３】
収納用区画は、プログラムの制御下でロボット１０２によって操作可能な電子ロックを有し得る。一部の実施形態では、ロボット１０２は、目的地に到着したら、または、目的地に到達したときの指示もしくはセンサに応答して、収納用区画を開くようプログラムされる。指示は、例えば、パスコード、目的地における人の識別情報の確認、配達を受ける人のパーソナル電子デバイスとの（例えば、ＲＦＩＤまたはＢｌｕｅｔｏｏｔｈ（登録商標）を介した）電子通信を含み得る。収納用区画は、品物が収納用区画に配置されたことまたは取り出されたことを検出するための量り、圧力スイッチ、または他の機構を含み得るものであり、品物が区画内に配置されると、量りが押し込まれ、またはスイッチがトリガされ、品物が区画から取り出されると、量りまたはスイッチが解除されるようになっている。デジタルインターフェースは、量りまたはスイッチからの信号をゲートまたはラッチして、ロボット内のコンピュータに、品物が区画に配置されたこと、または区画から取り出されたこと指示する。
【００４４】
一部の実施形態では、ロボット１０２は、人間にメッセージを通信するためのグラフィカルユーザインターフェース（ＧＵＩ）を提供するタッチスクリーンまたは他のデジタルコンピュータディスプレイ装置を含む。ロボット１０２は、タッチスクリーンを介して受信した入力に応答して、指示を受信するようプログラムされ得る。例えば、指示は、収納用区画を開く指示、自律地図作成処理中のロボットによって示された、情報を求める要求に対する応答、収納用区画内に品物または正しい品物がありそれが配達されることの確認を含み得る。一部の実施形態では、ロボット１０２は、例えば、キーボード、ボタン、スイッチ、または音声コマンド用の音声センサ等の他の入力機構を含み得る。
【００４５】
一実施形態において、ロボット１０２は、建物および建物内におけるロボットの位置に関するデータを受信するための複数のセンサを含む。これらのセンサは、例えば、レーザセンサ、ライダー（ＬＩＤＡＲ）位置またはモーションセンサ、３Ｄカメラ、カラーカメラ、気圧計、高度計、加速度計等を含み得る。一実施形態において、センサは、ロボット１０２の動作環境に関するデータを収集し、それらのデータは、メモリ内において、環境および環境の物理的属性（例えば、妨害または物体、特徴物（例えば、部屋、廊下、扉、および窓等）の寸法、階段、エレベータ、出入り口、標識、および印を含む特徴物の識別情報等）のデジタルモデルを構成するために、プログラムの制御下で変換され得る。特徴物の識別情報は、一時的な特徴物または可動物（例えば、ルームサービスのトレー、カート、または他の車輪付き装置等）、および、一般的に、人間の活動の結果として動作環境内に出現または配置され得る任意の物体も含み得る。一実施形態において、気圧計は、周囲大気圧の読取値をデジタル的に変換することに基づいてロボット１０２の高度を検出し、例えば、高層の環境である場合に、ロボット１０２が現在位置するフロアを識別するために用いられ得るデータを提供する。一実施形態において、加速度計は、単独でまたはデジタルコンパスとの組合せで、ロボット１０２の動きの速度および／または方向に関するデータを提供する。
【００４６】
一実施形態において、ロボット１０２は、ネットワーク化された環境１００内のコンピュータと通信する１以上のネットワークインターフェースを含む。ネットワークインターフェースは、ワイヤレス・フィディリティー（ＷＩＦＩ）、３Ｇおよび／もしくは４Ｇモデム、「Ｂｌｕｅｔｏｏｔｈ」、赤外線、並びに低帯域無線を介して通信するインターフェースを含み得る。一部の実施形態では、ロボット１０２は、全地球測位システム（ＧＰＳ）受信器およびプログラム制御を用いて、その地理的な位置を決定する。一部の実施形態では、ロボット１０２は、１以上のネットワークインターフェースを用いて建物の特徴物と通信し得る。例えば、ロボット１０２は、エレベータのかごの扉を開くため、または、エレベータのかごを呼んで向かわせるために、無線ネットワーキングメッセージを用いて、建物内のエレベータ制御システムの互換インターフェースと通信し得る。
【００４７】
一実施形態において、ロボット１０２は、デジタル地図作成ソフトウェアを実行し、メモリに格納されている動作環境のデジタル地図を維持する。地図作成ソフトウェアは、実行された際に、ロボット１０２に、その位置および／または目的地までのルートのロボット可読地図を生成させる。一実施形態において、地図作成ソフトウェアは、ロボット１０２に、ロボット搭載センサを用いてその環境を移動または探索するよう指示する。一実施形態では、移動に基づいて、地図作成ソフトウェアは、フロアまたは他の環境の地図を生成する。一実施形態において、環境内における位置、物体、または障害物を表すデータは、コスト値または重み値と関連づけられて格納され得る。
【００４８】
一実施形態において、環境は、ロボットポートコンピュータを有するロボットポートを含む。ロボットポートは、その中またはその隣に不使用時のロボット１０２が戻る装置である。一実施形態において、ロボットポートは、ロボット１０２が自動的に接続可能な、ロボット１０２の電池を充電する接続を含み得る。例えば、ロボットおよびポートは、ロボットがポートに到達または機械的に係合したときに、ロボットが自動的に電力接続に接触するのを可能にする構造を有し得る。
【００４９】
一実施形態において、ポートは、ロボットがポート内にあるときにロボット１０２が自動的に接続または係合し得るデータインターフェースおよびデータコネクタを更に含む。または、ロボットが近くのアクセスポイントに対する無線ネットワーク接続を確立して、データをアップロードまたはダウンロードするためにホストコンピュータに接続するのを可能にするために、ロボット１０２は、ロボットのＣＰＵおよび適切なソフトウェアにインターフェースされる内部無線ネットワーキング回路を有し得る。別の構成では、ロボットは、一般的な無線ネットワークキャリアを介して、ＬＴＥまたは３Ｇネットワークを介してクラウド機器と通信し得る。一実施形態では、ロボットポートコンピュータ１０４は、ポートのデータインターフェースまたは無線インターフェースを用いて、ロボット１０２から、配達リスト、ロボットの履歴、ロボットと他のコンピュータとの間の通信、またはＧＵＩを介して受信される通信を含むデータをダウンロードし得る。一部の例では、ロボットポートコンピュータ１０４またはホストコンピュータは、例えば、ソフトウェアの更新、地図または施設の更新、および、建物に固有の特徴物（例えば、扉等）を識別するために用いられるデータを含むデータをロボット１０２にアップロードし得る。一部の実施形態では、ポートコンピュータ１０４または別のホストコンピュータは、ネットワークを介して、ロボット１０２が配置されている環境以外の環境についての環境データ（他の環境で動作していた他のロボットから取得された移動データを含む）を取得するようプログラムされる。他の環境は、ローカルな環境に極めて類似しているものであってもよく、または異なるものであってもよい。例えば、ローカルな環境が、他の位置にある他の類似の建物を建築するために複製された設計図に従って構築された建築構造である場合には、地理的に遠いところにある他のロボットから取得される移動データは、ローカルな環境における妨害物または特徴物を通る移動を解決することに関わるものであり得る。更に、ロボットポートコンピュータ１０４は、建物内または構内に配置されたロボット１０２間でデータを通信するための媒介としての役割をし得る。
【００５０】
一実施形態において、施設アクセスコンピュータ１０６は、ロボット１０２を収容する建物の特徴物へのアクセスを提供する。施設アクセスコンピュータ１０６はアプリケーションプログラミングインターフェース（ＡＰＩ）を提供してもよく、ロボット１０２は、施設アクセスコンピュータに、エレベータを操作させ、電子扉の動作を要求させ、またはセキュリティセンサを制御させるよう構成された指示およびデータを用いて、ＡＰＩを呼び出すようプログラムされる。一実施形態において、施設アクセスコンピュータ１０６は、建物内の電子システム（例えば、エレベータ、扉ロック、扉開放システム、セキュリティセンサ等）と通信する。
【００５１】
一実施形態において、施設コンピュータ１０８は、１以上のロボット１０２に対する監督機能を有するようプログラムされ、オペレータがロボットと通信するためのインターフェースを提供する。施設コンピュータ１０８は、自律地図作成中にロボット１０２によって行われた要求に応答するようプログラムされ得る。施設コンピュータ１０８は、受け取り、配達、または他のタスクに対してロボット１０２を配置し得る。
【００５２】
一部の実施形態では、施設コンピュータ１０８は、環境内にある一時的な障害物の位置に関するデータを提供し得る。例としては、祭日の装飾、大群衆、および仮設物が挙げられる。一部の実施形態では、施設コンピュータ１０８は、建物または構内の周囲のセンサ（例えば、水分センサ、煙検出器、セキュリティカメラ等を含む）からデータを受信するようプログラムされる。それに加えて、施設コンピュータ１０８は、予定されている行事（例えば、カーペットクリーニング、灌漑スケジュール、および進行中の建設等）の時間および位置を記述するデータに対するアクセスを有し得る。データは、永続的なメモリまたはデータベース内に維持され、予測される有効期限の日付および／または時間と関連づけられ得る。データは、無線通信を介してまたはロボットポートコンピュータ１０４を用いてロボット１０２に直接通信され得る。
【００５３】
一実施形態において、図１のリモートコンピュータ１１０は、ロボット１０２に対してローカルでなく、ロボット１０２が配置されている建物内または構内に配置されていないコンピュータを含む。一実施形態において、リモートコンピュータ１０２は、例えば、気象データ、ニュースおよび一般の関心事の記事、ロボット１０２によって用いられるデータを提供する他のソース等といったデータをロボット１０２に通信し得る。一部の例では、リモートコンピュータ１１０は、配達を手配した人間のユーザのパーソナル電子デバイスであるか、またはパーソナル電子デバイスと通信し得る。そのような例では、リモートコンピュータ１１０は、ショートメッセージサービス（ＳＭＳ）サーバ、マルチメディアメッセージサービス（ＭＭＳ）サーバ、ウェブサーバ、またはアプリケーションサーバであり得る。
【００５４】
３．ルート計画処理
図２は、一部の実施形態による、建物のフロアの地図を自律的に作成するための例示的な処理のフローチャートである。
【００５５】
一実施形態において、図２に見られる処理２００は、ロボットが走行可能な通路によって接続された１組の建物を有する建物または構内を通るルートを計画する際に用いられるフロア地図を生成するために、ロボット１０２によって行われ得る。図２、および本開示における他の各フロー図は、ロボット１０２のための、または図１の環境の他のコンピューティング要素のための１以上のコンピュータプログラムを準備する基礎として用いられ得るアルゴリズムまたは機能的処理を説明することを意図したものである。更に、図２は、本開示が関係する技術分野の当業者が、後で図１の環境のロボット１０２または他のコンピューティング要素のプログラミングの具体的なコード、指示、または他の詳細を定めるために用いることができる概要計画、仕様、およびアルゴリズムを当業者間で通信するためおよび理解するために典型的に用いるのと同程度に詳しく表されている。
【００５６】
工程２０２において、ロボット１０２は動的な建物データを取得または受信する。動的な建物データは、施設コンピュータ１０８、リモートコンピュータ１１０、または他のロボット１０２から、無線でまたはロボットポートコンピュータ１０４を介して受信され得る。一実施形態において、これらのコンピュータのうちの１以上は、動的な建物データの解析およびデジタル地図作成における使用のために、プッシュ通知または他の積極的なメッセージングシステムを用いて、動的な建物データをロボット１０２に送信し得る。別の実施形態では、ロボット１０２は、上述のコンピュータのうちの任意のものに、その時の動的な建物データを要求する１以上のポーリングメッセージを周期的に送信し得る。更に別の実施形態では、ロボット１０２は、リモートに位置するコンピュータ（これは、公衆インターネット、または、建物、構内、もしくはローカルな動作環境の他の態様と関連づけられたネットワーク化されたコンピュータにも結合されている）のデータサービスを直接呼び出すために十分なパラメータ化ＵＲＬまたは他のペイロードを含む無線ネットワークメッセージを用いて、プログラムマチックＡＰＩに対する１以上の呼び出しを自律的に周期的に開始し得る。例えば、ロボット１０２は、内部で、パラメータ化ＵＲＬをペイロードとして含むＨＴＴＰ要求を構成するようプログラムされ、このＨＴＴＰ要求は、リモートの気象データサービスコンピュータを呼び出して、ロボットのローカルな動作環境と関連づけられたその時の気象状態を要求するよう構成される。ロボットは、ローカルな気象状態を記述する構造化データを含む応答メッセージを受信し、その値（例えば、現在の降水量、予報されている降水量、または、ローカルな環境におけるロボットの動作に影響し得る他の現在のもしくは予報されている条件等）を抽出するようプログラムされ得る。これと同じ要求応答処理が、ローカルな建物情報、ローカルな環境情報、または同じ動作環境内もしくはその近くにある他のロボットによって感知され報告されたデータと関連づけられた、またはそれらを格納してサーブするよう構成された他のデータソース（例えば、施設コンピュータ１０８、リモートコンピュータ１１０、デジタル気象ステーション、または他のコンピュータ等）についても用いられ得る。
【００５７】
上述のデータソース（例えば、施設コンピュータ１０８およびリモートコンピュータ１１０等）のうちの任意のものから受信され得る例示的な動的な建物データとしては、建物予定データ（例えば、カーペットクリーニング予定等）、建物領域（例えば、廊下または部屋等）に対して予定されている改装、或る時間間隔にわたって混雑が予測される予定されている行事、或る時間間隔にわたって一時的な障害物、ＢＥＯ物品（例えば、テーブル、椅子、またはバー等）、装飾、または他の品物が配置される予定されている行事、および、定められた数の週にわたって静的な障害物を生じる季節の装飾が挙げられる。動的な建物データは、障害物の位置および／または障害物と関連づけられた期間についての経緯度値および／または部屋の指定を含み得る。
【００５８】
それに加えて、またはその代わりに、動的な建物データは、例えば、降水量、風向および風速、並びに屋外温度等のローカル気象データを含み得る。
【００５９】
他のロボット１０２から受信されるデータは、構内または建物内における位置と関連づけられたリアルタイムのセンサデータを含み得る。センサデータは、大群衆、溢流、実際の気象状態等を示すデータを含み得る。
【００６０】
工程２０４において、ロボット１０２は、動的な建物データに基づいてロボット可読デジタル地図を更新する。工程２０４は、デジタル地理的地図データとは別に維持されるコストテーブルまたはコスト地図を更新することを含み得る。一実施形態において、ロボット可読地図は、物理的特徴物を表す特徴項目を含む格納されたデジタルデータを含み、各特徴項目はコストと関連づけられており、コスト値は、地理的地図データ内に直接、または別のコストテーブルもしくはコスト地図内に維持される。様々な実施形態で用いられる具体的なデータ構造は重要ではなく、ロボット１０２が、動作環境内の特徴物についてのコストに関係するデータを、特徴物の物理的もしくは地理的場所または位置を示す位置データへの何らかの形態のリンクと共に、またはそれらと関連づけて格納する限り、他の構造が用いられてよい。一部の特徴項目は静止したコストを有する。例えば、壁に対応する特徴項目は、永久的な固定されたコストを有し得る。
【００６１】
他の特徴項目は、受信された動的な建物データに従って調節または修正される可変コストを有し得る。例えば、動的な建物データが、特定の領域における混雑の増加を生じる予定されている行事を示すものとする。動的な建物データに基づいて、特定の領域に対応する１以上の特徴項目と関連づけられたコストが、その特徴項目と関連づけられた位置を走行することの困難の増加を反映するために増加され得る。障害物が取り除かれた場合には、動的な建物データによる影響を受けている特定の画素と関連づけられたコストは、その特徴項目と関連づけられた位置を走行することの困難の減少を反映するために、下げられ得る。
【００６２】
一実施形態において、動的な建物データと関連づけられた各障害物と関連づけられた新たなコストを決定するために、地図の複数のレイヤが生成され、各レイヤは、動的な建物データの異なるソースから生成され、各特徴項目と関連づけられたそれぞれ異なるコストを有する。例えば、気象データから生成されたレイヤは、屋外領域に対応する特徴項目については可変コストを有し、壁および他の永久的な障害物については０のコストを有し得る。可変コストは、気象状態に基づき得る。例えば、軽風は、どしゃ降りの雨よりも低いコストと関連づけられる。
【００６３】
地図の全てのレイヤにわたって特定の画素と関連づけられたコストを計算するために、各画素と関連づけられたコストが合計される。各画素について、画素と関連づけられたコストは、
Ｃｐ＝Σ（Ｃｏ，Ｃａ，Ｃｂ，…）
であり、式中、Ｃｐはその画素と関連づけられた合計コストであり、Ｃｏは動的な建物データを考慮しないその画素と関連づけられたコストであり、Ｃａは第１の動的な建物データと関連づけられたコストであり、Ｃｂは第２の動的な建物データと関連づけられたコストである。ロボット１０２が更なる動的な建物データを受信すると、この合計に更なる動的な建物データが加算され得る。
【００６４】
一部の実施形態では、地図は、グリッド状の画素、またはエッジによって接続されたノードのグラフを含み得る。コストは、上述の技術を用いてノードおよび／またはエッジと関連づけられる。
【００６５】
工程２０６において、ロボット１０２が、人間またはコンピュータのオペレータからタスクを受信したか否かを決定する。タスクは、構内または建物内のどこか他の場所に配達される品物の受け取り、または、別の位置への品物の配達であり得る。タスクは、ＷＩＦＩまたは別の通信ネットワークを介して受信され得る。タスクは、その原点位置および目的地位置の識別情報を含む。タスクが受信されていない場合には、処理２００は工程２０２に戻る。
【００６６】
タスクが受信された場合には、工程２０８において、ロボット１０２は、ルートおよび推定到着時間（ＥＴＡ）を決定する。配達については、ＥＴＡは、原点位置から目的地位置まで行くために要する時間の量に基づく。受け取りタスクについては、原点位置は現在位置であり、目的地位置は受け取り位置である。配達タスクについては、原点位置は配達された品物の現在位置（例えば、フロントデスクまたは貯蔵室）である。
【００６７】
ルートおよびＥＴＡは、ロボットによって、グラフ探索アルゴリズムを用いて、決定される。グリッドまたはノードネットワーク地図と共に用いられ得るグラフ探索アルゴリズムの例としては、Ｄｉｊｋｓｔｒａ、Ａ−Ｓｔａｒ（Ａ＊）、Ｄ−Ｓｔａｒ、およびＤ−Ｓｔａｒ Ｌｉｔｅが挙げられるが、それらに限定されない。これらのアルゴリズムは、複数の可能なルートを用いて、様々な通路にわたる速度を計算することによって、移動時間を決定する。それに加えて、ＥＴＡ値は、複数の異なる利用可能なルートをソートして、最良のルートを選択するために用いられてもよく、または、ロボット１０２のタッチスクリーンディスプレイを用いて表示されてもよい。アルゴリズムは、角速度および線形速度を計算し、ルートの各部分にわたる速度は、複数の画素と関連づけられた合計コストに基づいて変化する。一実施形態において、ロボット１０２は、最短移動時間と関連づけられたルート、即ち最速ルートをとる。別の実施形態では、ルートは、人員が配置される可能性が高い建物内または構内における人員の数が最少である位置を移動する、現在位置から目的地位置までの最適化されたルートとして決定され、この手法は、ロボットが人員と干渉することを最小限にし、および／または、ロボットのルートの移動が乱れるリスクを低減する。
【００６８】
工程２１０において、ロボットは、受け取りまたは配達タスクを完了するために、選択されたルートを移動する。工程２１０の後、処理２００は工程２０２に戻る。一部の実施形態では、ロボット１０２は、工程２０８、２１０を行いながら、工程２０２および２０４を継続的に行ってもよい。
【００６９】
従って、一実施形態において、本開示は、コンピュータによって実施される、ロボットの動きをガイドする方法を提供し、本方法は、１組の建物を含む建物または構内の一時的な状態および該一時的な状態の位置を記述する、デジタル的に格納された動的な建物データを受信する工程と、動的な建物データから、一時的な状態の記述に基づいて、一時的な状態の位置に対応する地図の一部分の走行のコストの増加を計算することによって、デジタル地図の複数の地図レイヤのうちの１以上の地図レイヤを更新する工程と、目的地位置と関連づけられたタスクを受信したことに応答して、地図の複数の地図レイヤから、グラフ探索アルゴリズムを用いて、一時的な状態の位置およびコストの増加に部分的に基づいて、ロボットの現在位置から目的地位置までのルートを決定する工程と、ロボットに、現在位置から目的地位置までのルートを移動させる工程とを含む。他の実施形態は、他の工程、機能、および動作を含み得る。
【００７０】
これらの技術を用いて、現在働いている条件、気象、物体、妨害物、または障害物に関するデジタルな動的な建物データ（これらは全て、ロボットの動作環境に対する何らかの関係性または関連性を有する）が、ロボットによって取得され、コストデータに変換されて、ルートを修正し、走行または移動を終了させ、タスクを修正し、および／または、どこか他の場所にデジタル的に送信される通知メッセージを構成するようプログラムされたアルゴリズムにおいて用いられ得る。ロボットの物理的動作は、動的な建物データに応答して、変換およびアルゴリズムに基づいて、ロボットが異なるルートを移動するように、全く移動しないように、または他の応答アクションをとるように修正され得る。複数の実施形態は、保護された建物内部の環境内において用いられるために構築されプログラムされたロボットのケースにおいて、特定の価値および有用性を有するが、悪天候が移動を損ない得るときに、構内の建物間の保護されていない外部のルートまたは通路を移動することが必要となり得る。そのようなケースでは、動的な建物データを取得して処理した結果、ロボットのルートが、保護された内部通路のみを用いるルートに決定され得る、移動が停止され得る、またはＥＴＡ値が更新され得る。複数の実施形態は、環境内に周期的に一時的な障害物が持ち込まれる動作環境（例えば、ホテル、病院、および学校等）において、特定の価値および有用性を有する。そのケースでは、動的な建物データを取得して処理した結果、ロボットのルートが、障害物がない通路または限られた人間の活動が予想される通路のみを用いるルートに決定され得る、移動が停止され得る、またはＥＴＡ値が更新され得る。
【００７１】
４．地図
図３は、様々な実施形態による、第１の条件下においてロボットが生成した地図の画素レベルの図の一部分である。図３００は、各画素に走行のためのコストが割り当てられた画素のグリッドを含む。白い画素は、走行のためのコストが０であることを示しており、その位置が、開けた空間に対応することを意味する。暗いグレーの画素は、走行のためのコストが無限大であることを示しており、その位置が、壁または禁止されている領域に対応することを示す。中程度のグレーの画素は、増加しているが無限ではない走行のためのコストを有する領域に対応しており、出入り口または走行が困難であり得る小さい領域に対応する。図３において、扉３０２は、閉じているときには、高いコストと関連づけられる。ロボット１０２は、施設アクセスコンピュータ１０６に、扉３０２を開くよう指示して、影響を受けている画素と関連づけられたコストを低くし得る。領域３０４は、扉３０２の向こう側の屋外領域であり得る。図示されるように、領域３０４を移動することと関連づけられたコストは、例えば、天候が快晴で無風である場合には、非常に低いコストを有する。
【００７２】
図４は、様々な実施形態による、第２の条件下においてロボットが生成した地図の画素レベルの図の一部分である。図４００は、各画素に走行のためのコストが割り当てられた画素のグリッドを含む。白い画素は、走行のためのコストが０であることを示しており、その位置が、開けた空間に対応することを意味する。暗いグレーの画素は、走行のためのコストが無限大であることを示しており、その位置が、壁または禁止されている領域に対応することを示す。中程度のグレーの画素は、増加しているが無限ではない走行のためのコストを有する領域に対応しており、出入り口または走行が困難であり得る小さい領域に対応する。図４において、扉４０２は、閉じているときには、高いコストと関連づけられる。ロボット１０２は、施設アクセスコンピュータ１０６に、扉４０２を開くよう指示して、影響を受けている画素と関連づけられたコストを低くし得る。領域４０４は、扉４０２の向こう側の屋外領域であり得る。図示されるように、領域４０４を移動することと関連づけられたコストは、例えば、天候が降雨または荒天である場合には、非常に高いコストを有する。
【００７３】
図５は、様々な実施形態による、建物内のフロアのロボットが生成した地図５００の一例である。地図５００は、地図が生成された建物のフロアの注釈５０２を含む。白い領域５０４は、ロボットによって走行可能な空間に対応し、廊下およびより大きい部屋を含む。グレーの領域５０６は、走行するにはより高いコストを有するものの、ロボットが内部を走行可能な領域を含む。これらの領域は、例えば、浴室、小部屋もしくは角、または雑然とした領域を含み得る。黒い線５０８は、内壁または外壁に対応する。エレベータ５０８は、ロボット１０２がフロア間を走行するために用いられ得る。
【００７４】
ロボットが生成した地図は、動的な建物データに基づいて更新され得る。影響を受けている領域に対応する画素は、走行コストの増加または減少を示すために修正され得る。一実施形態において、ロボットが生成した地図は、１以上のレイヤを含む。地図５００上に、動的な建物データを反映する更なるレイヤが重ねられ得る。動的な建物データが受信されると、動的な建物データに基づいてレイヤが生成され得る。その動的な建物データが終了時間または特定の期間と関連づけられている場合には、そのレイヤは、指定されている時間に除去され得る。
【００７５】
５．ユーザインターフェース
図６は、様々な実施形態による、予測されるルートおよび推定到着時間を記述する例示的なユーザインターフェースの一部分である。ユーザインターフェース６００は、ロボット１０２上のまたはロボット１０２に接続されたタッチスクリーンまたは他のディスプレイ装置を用いて、ユーザに対して表示され得る。他の実施形態では、ユーザインターフェース６００は、施設コンピュータ１０８によって実行されるアプリケーションまたはウェブアプリケーション内でユーザに対して呈示され得る。一部の実施形態では、ユーザインターフェース６００は、ユーザ装置に送信されるハイパーテキストマークアップ言語（ＨＴＭＬ）電子メールメッセージまたは他の電子メッセージの一部であり得る。ユーザインターフェース６００は、ロボット１０２によって、ロボット１０２の状況をユーザと通信するために生成され得る。例えば、ユーザインターフェース６００は、オペレータに対してＥＴＡを示すために生成され得る。図示されている例では、ユーザインターフェース６００は、「タスクを受信しました。部屋３１４に７分以内に到着します。天候により屋根付き通路は濡れていて通れないため、３分の遅れが見込まれます。代わりにサービス用通廊に沿って移動します」というメッセージを含んでいる。
【００７６】
６．ハードウェアの概観
一実施形態によれば、本明細書に記載される技術は１以上の専用コンピューティング装置によって実装される。専用コンピューティング装置は、本技術を行うよう配線されたものであってもよく、本技術を行うよう永続的にプログラムされたデジタル電子装置（例えば、１以上の特定用途向け集積回路（ＡＳＩＣ）もしくはフィールドプログラマブルゲートアレイ（ＦＰＧＡ）等）を含んでもよく、ファームウェア、メモリ、他のストレージ内のプログラム指示に従って本技術を行うようプログラムされた１以上の汎用ハードウェアプロセッサを含んでもよく、または、それらの組合せであってもよい。そのような専用コンピューティング装置は、本技術を達成するために、カスタムハードワイヤードロジック、ＡＳＩＣ、またはＦＰＧＡを、カスタムプログラミングと組わせてもよい。専用コンピューティング装置は、デスクトップコンピュータシステム、ポータブルコンピュータシステム、携帯装置、ネットワーキング装置、または本技術を実装するためにハードワイヤードロジックおよび／またはプログラムロジックを組み込んだ他の任意の装置であり得る。
【００７７】
例えば、図７は、本発明の実施形態が実装され得るコンピュータシステム７００を示すブロック図である。コンピュータシステム７００は、情報を通信するためのバス７０２または他の通信機構と、情報を処理するための、バス７０２と結合されたハードウェアプロセッサ７０４とを含む。ハードウェアプロセッサ７０４は、例えば、汎用マイクロプロセッサであり得る。
【００７８】
コンピュータシステム７００は、情報およびプロセッサ７０４によって実行される指示を格納するための、バス７０２に結合された主メモリ７０６（例えば、ランダムアクセスメモリ（ＲＡＭ）または他の動的なストレージ装置等）も含む。主メモリ７０６は、プロセッサ７０４によって実行される指示の実行中に、一時的変数または他の中間情報を格納するためにも用いられ得る。そのような指示は、プロセッサ７０４がアクセス可能な非一過性のストレージ媒体に格納されている場合、コンピュータシステム７００を、指示において指定されている動作を行うようカスタマイズされた専用機にする。
【００７９】
コンピュータシステム７００は、プロセッサ７０４のための静的な情報および指示を格納するための、バス７０２に結合された読み出し専用メモリ（ＲＯＭ）７０８または他の静的なストレージ装置を更に含む。情報および指示を格納するために、例えば、磁気ディスク、光ディスク、またはソリッドステートドライブ等のストレージ装置７１０が設けられ、バス７０２に結合される。
【００８０】
コンピュータシステム７００は、バス７０２を介して、コンピュータのユーザに対して情報を表示するためのディスプレイ７１２（例えば、陰極線管（ＣＲＴ）または液晶ディスプレイ（ＬＣＤ）等）に結合され得る。プロセッサ７０４に情報およびコマンド選択を通信するために、英数字キーおよび他のキーを含む入力装置７１４がバス７０２に結合される。別のタイプのユーザ入力装置は、プロセッサ７０４に方向情報およびコマンド選択を通信するため、並びに、ディスプレイ７１２上におけるカーソルの動きを制御するためのカーソル制御７１６（例えば、マウス、トラックボール、またはカーソル方向キー等）である。この入力装置は、典型的には、第１の軸（例えば、ｘ）および第２の軸（例えば、ｙ）の２つの軸における２自由度を有し、装置が平面図における位置を指定するのを可能にする。ディスプレイ７１２は、ジェスチャ、タッチ操作、および他のユーザ操作をプロセッサ７０４に通信するために、タッチ操作可能であってもよい。
【００８１】
コンピュータシステム７００は、コンピュータシステムと組み合わせたときに、コンピュータシステム７００を専用機として動作させるまたはプログラムする、カスタマイズされたハードワイヤードロジック、１以上のＡＳＩＣもしくはＦＰＧＡ、ファームウェア、および／またはプログラムロジックを用いて、本明細書に記載された技術を実行し得る。一実施形態によれば、本明細書の技術は、主メモリ７０６に収容されている１以上の指示の１以上のシーケンスをプロセッサ７０４が実行することに応答して、コンピュータシステム７００によって行われる。そのような指示は、例えばストレージ装置７１０等の別のストレージ媒体から主メモリ７０６に読み込まれ得る。主メモリ７０６に収容されている指示のシーケンスを実行することは、プロセッサ７０４に、本明細書に記載された処理工程を行わせる。別の実施形態では、ソフトウェア指示の代わりに、またはそれらと組み合わせて、ハードワイヤード回路が用いられ得る。
【００８２】
本明細書において用いられる「ストレージ媒体」という用語は、装置を特定の方法で動作させるデータおよび／または指示を格納する任意の非一過性の媒体を指す。そのようなストレージ媒体は、不揮発性媒体および／または揮発性媒体を含み得る。不揮発性媒体は、例えば、光ディスク、磁気ディスク、またはソリッドステートドライブ（例えば、ストレージ装置７１０等）を含む。揮発性媒体は、動的なメモリ（例えば、主メモリ７０６等）を含む。ストレージ媒体の一般的な形態は、例えば、フロッピーディスク（登録商標）、フレキシブルディスク、ハードディスク、ソリッドステートドライブ、磁気テープ、もしくは他の任意の磁気データストレージ媒体、ＣＤ−ＲＯＭ、他の任意の光データストレージ媒体、穴のパターンを有する任意の物理的媒体、ＲＡＭ、ＰＲＯＭ、およびＥＰＲＯＭ、ＦＬＡＳＨ−ＥＰＲＯＭ、ＮＶＲＡＭ、他の任意のメモリチップもしくはメモリカートリッジを含む。
【００８３】
ストレージ媒体は、伝送媒体とは異なるが、伝送媒体と関係して用いられ得る。伝送媒体は、ストレージ媒体間での情報の転送に関与する。例えば、伝送媒体は、同軸ケーブル、銅線、および光ファイバ（バス７０２を構成するワイヤを含む）を含む。伝送媒体は、例えば、電波データ通信および赤外線データ通信中に生成されるような音響波または光波の形態もとり得る。
【００８４】
１以上の指示の１以上のシーケンスを実行のためにプロセッサ７０４に搬送することには、様々な形態の媒体が関与し得る。例えば、指示は、まず、リモートコンピュータの磁気ディスクまたはソリッドステートドライブ上に担持され得る。リモートコンピュータは、その動的なメモリに指示をロードして、モデムを用いて電話回線を介して指示を送信し得る。コンピュータシステム７００に対してローカルなモデムは、電話回線上のデータを受信し、赤外線送信器を用いてデータを赤外線信号に変換し得る。赤外線検出器は、赤外線信号に担持されているデータを受信し、適切な回路が、そのデータをバス７０２上に配置し得る。バス７０２はデータを主メモリ７０６に搬送し、そこから、プロセッサ７０４が指示を取り出して実行する。主メモリ７０６が受信した指示は、プロセッサ７０４による実行の前または後に、必要に応じてストレージ装置７１０に格納され得る。
【００８５】
コンピュータシステム７００は、バス７０２に結合された通信インターフェース７１８も含む。通信インターフェース７１８は、ローカルネットワーク７２２に接続されたネットワークリンク７２０に結合する二方向データ通信を提供する。例えば、通信インターフェース７１８は、対応するタイプの電話回線へのデータ通信接続を提供する統合サービスデジタルネットワーク（ＩＳＤＮ）カード、ケーブルモデム、衛星モデム、またはモデムであり得る。別の例として、通信インターフェース７１８は、互換ＬＡＮへのデータ通信接続を提供するローカルエリアネットワーク（ＬＡＮ）カードであり得る。無線リンクも実装され得る。そのような任意の実装例において、通信インターフェース７１８は、様々なタイプの情報を表すデジタルデータストリームを搬送する電気信号、電磁信号、または光信号を送受信する。無線通信のためにＷｉＦｉまたはＬＴＥが用いられ得る。
【００８６】
ネットワークリンク７２０は、典型的には、１以上のネットワークを介した他のデータ装置へのデータ通信を提供する。例えば、ネットワークリンク７２０は、ローカルネットワーク７２２を介した、ホストコンピュータ７２４への、またはインターネットサービスプロバイダ（ＩＳＰ）７２６によって運営されているデータ設備への接続を提供し得る。ＩＳＰ７２６は、現在では一般的に「インターネット」７２８と称されているワールドワイドパケットデータ通信ネットワークを介したデータ通信サービスを提供する。ローカルネットワーク７２２およびインターネット７２８はどちらも、デジタルデータストリームを搬送する電気信号、電磁信号、または光信号を用いる。コンピュータシステム７００へとまたはコンピュータシステム７００からデジタルデータを搬送する、通信インターフェース７１８を介して様々なネットワークを通る信号およびネットワークリンク７２０上の信号は、伝送媒体の例示的な形態である。
【００８７】
コンピュータシステム７００は、ネットワーク、ネットワークリンク７２０、および通信インターフェース７１８を介して、メッセージを送信し、プログラムコードを含むデータを受信し得る。インターネットの例では、サーバ７３０は、インターネット７２８、ＩＳＰ７２６、ローカルネットワーク７２２、および通信インターフェース７１８を介して、アプリケーションプログラム用の要求されたコードを送信し得る。
【００８８】
受信されたコードは、受信された際にプロセッサ７０４によって実行され、および／または、後で実行するためにストレージ装置７１０、または他の不揮発性ストレージに格納され得る。
【００８９】
上記の明細書において、本発明の実施形態を、実装例毎に様々であり得る多くの具体的な詳細を参照して説明した。従って、本明細書および図面は、限定するものではなく、事例的なものであると見なされるべきである。本発明の範囲、および、本出願人によって本発明の範囲であると意図されるものの唯一かつ排他的な指標は、後で行われ得る補正を含む、本願に由来する１組の請求項が由来する具体的な形態における、請求項の文言およびその等価の範囲である。
【符号の説明】
【００９０】
１００  ネットワーク化された環境
１０２  ロボット
１０４  ロボットポートコンピュータ
１０６  施設アクセスコンピュータ
１０８  施設コンピュータ
１１０  リモートコンピュータ
【図１】
2019003602.tif 000003
【図２】
2019003602.tif 000004
【図３】
2019003602.tif 000005
【図４】
2019003602.tif 000006
【図５】
2019003602.tif 000007
【図６】
2019003602.tif 000008
【図７】
2019003602.tif 000009
【外国語明細書】
2019003602000001.pdf