【0143】
下記は、本願の出願当初に記載の発明である。
<請求項1>
ロボット制御システムにおける動作方法であって、
環境内で動作する第1のロボットについて複数のエッジによって接続された複数のノードをそれぞれ含む複数の計画グラフを決定するステップであって、各ノードは前記第1のロボットのそれぞれの状態を特徴付ける変数を暗黙的または明示的に表し、各エッジは前記第1のロボットの状態のそれぞれのペアの間の遷移を表し、状態のそれぞれのペアは、それぞれの計画グラフ内のそれぞれのエッジによって結合されたノードのペアのそれぞれの1つによって表される、該ステップと、
各計画グラフのエッジの少なくとも2つ以上について、それぞれのエッジによって結合されるそれぞれのノードによって表される状態間を遷移する際に、前記第1のロボットの少なくとも一部によって掃引される体積を表すそれぞれのエッジ情報のセットを生成するステップと、
複数の前記計画グラフおよび前記エッジ情報のセットを少なくとも1つの非一時的プロセッサ読取可能記憶装置に記憶するステップと、
第1の時間に第1の物理的寸法のセットを有する前記第1のロボットの少なくとも一部分に基づいて、少なくとも1つのプロセッサに前記計画グラフのうちの第1のものに対する前記エッジ情報のセットを提供するステップと、
第2の時間に第2の物理的寸法のセットを有する前記第1のロボットの少なくとも一部分に基づいて、少なくとも1つのプロセッサに前記計画グラフのうちの第2のものに対する前記エッジ情報のセットを提供するステップを有し、
第2の物理的寸法のセットのうちの少なくとも1つの寸法が前記第1のセットの前記寸法のうちの対応する1つと相違する、方法。
<請求項2>
前記第1のロボットは前記第1のロボットが動作する環境に対して移動するように選択的に動作可能な少なくとも第1の付属肢を有し、前記第1のロボットは前記第1の付属肢に取り付けられた第1のエンドエフェクタを有し、前記第1のエンドエフェクタは、少なくとも第1のエンドエフェクタ配置と第2のエンドエフェクタ配置との間で移動するように選択的に動作可能であり、
前記方法は、
前記第1の付属肢に取り付けられた前記第1のエンドエフェクタが第1のエンドエフェクタ配置にあることを決定するステップをさらに有し、
前記第1の物理的寸法のセットは前記第1のエンドエフェクタ配置における前記第1のエンドエフェクタの寸法のセットを表し、
少なくとも1つのプロセッサに前記計画グラフのうちの第1のものに対する前記エッジ情報のセットを提供するステップは、前記第1の付属肢に取り付けられた前記第1のエンドエフェクタが前記第1のエンドエフェクタ配置にあることの決定に応答する、請求項1に記載の方法。
<請求項3>
前記第1の付属肢に取り付けられた第1のエンドエフェクタが第2のエンドエフェクタ配置にあると判定するステップをさらに有し、
前記第2の物理的寸法のセットは前記第2のエンドエフェクタ配置における前記第1のエンドエフェクタの寸法のセットを表し、
少なくとも1つのプロセッサに前記計画グラフのうちの第2のものに対する前記エッジ情報のセットを提供するステップは、前記第1の付属肢に取り付けられた前記第1のエンドエフェクタが前記第2のエンドエフェクタ配置にあることの決定に応答する、請求項2に記載の方法。
<請求項4>
前記第1のロボットは前記第1のロボットが動作する環境に対して移動するように選択的に動作可能な少なくとも第1の付属肢と、前記第1の付属肢に取り付けられた第1のエンドエフェクタとを有し、前記第1のエンドエフェクタは少なくとも把持していない配置と把持している配置との間で移動するように選択的に動作可能であり、前記把持している配置において前記第1のエンドエフェクタによって占められる体積のサイズまたは形状のうちの少なくとも1つは、前記把持していない配置において前記第1のエンドエフェクタによって占められる体積のサイズまたは形状のうちの少なくとも1つとは相違し、
前記方法は、
前記第1の付属肢に取り付けられた前記第1のエンドエフェクタが把持していない配置にあると決定するステップであって、少なくとも1つのプロセッサに前記計画グラフのうちの第1のものに対する前記エッジ情報のセットを提供するステップは、前記第1の付属肢に取り付けられた前記第1のエンドエフェクタが把持していない配置にあるという決定に応答する、該ステップと、
前記第1の付属肢に取り付けられた前記第1のエンドエフェクタが把持している配置にあると決定するステップであって、少なくとも1つのプロセッサに前記計画グラフのうちの第2のものに対する前記エッジ情報のセットを提供するステップは、前記第1の付属肢に取り付けられた前記第1のエンドエフェクタが把持している配置にあるという決定に応答する、該ステップ
をさらに有する、請求項1に記載の方法。
<請求項5>
前記第1のロボットは、前記第1のロボットが動作する環境に対して移動するように選択的に動作可能な少なくとも第1の付属肢を有し、
前記方法は、
前記第1のロボットが前記第1の付属肢に取り付けられた第1のエンドエフェクタを有すると決定するステップをさらに有し、
前記第1の物理的寸法のセットが前記第1の付属肢に取り付けられた前記第1のエンドエフェクタの寸法のセットを表し、
少なくとも1つのプロセッサに前記計画グラフのうちの第1のものに対する前記エッジ情報のセットを提供するステップは、前記第1のロボットが前記第1の付属肢に取り付けられた第1のエンドエフェクタを有するという決定に応答する、請求項1に記載の方法。
<請求項6>
前記第1のロボットが前記第1の付属肢に取り付けられた第2のエンドエフェクタを有すると決定するステップをさらに有し、
前記第2のエンドエフェクタが前記第1のエンドエフェクタとは少なくとも1つの形状またはサイズで相違し、
前記第2の物理的寸法のセットが前記第1の付属肢に取り付けられた前記第2のエンドエフェクタの寸法のセットを表し、
少なくとも1つのプロセッサに前記計画グラフのうちの第2のものに対する前記エッジ情報のセットを提供するステップが、前記第1のロボットが前記第1の付属肢に取り付けられた第2のエンドエフェクタを有するという決定に応答する、請求項5記載の方法。
<請求項7>
前記第1のロボットは自律車両または半自律車両のうちの少なくとも1つであり、第1の物理的状態にある前記自律車両または半自律車両のうちの少なくとも1つによって占有される体積のサイズまたは形状のうちの少なくとも1つは、第2の物理的状態にある前記自律車両または半自律車両のうちの少なくとも1つによって占有される体積のサイズまたは形状のうちの少なくとも1つと相違し(例えば、例えば、燃料の消費によって重量が変化し得るために速度が変化し、移動距離が変化し得る)、
前記方法は、
前記自律車両または半自律車両のうちの少なくとも1つが第1の物理的状態にあると判定するステップであって、少なくとも1つのプロセッサに前記計画グラフのうちの第1のものに対する前記エッジ情報のセットを提供するステップは、前記自律車両または半自律車両のうちの少なくとも1つが前記第1の物理的状態にあるという決定に応答する、該ステップと、
前記自律車両または半自律車両のうちの少なくとも1つが第2の物理的状態にあると決定するステップであって、少なくとも1つのプロセッサに前記計画グラフのうちの第2のものに対する前記エッジ情報のセットを提供するステップは、自律車両または半自律車両のうちの少なくとも1つが第2の物理的状態にあるという決定に応答する、該ステップ
をさらに有する、請求項1に記載の方法。
<請求項8>
少なくとも1つのプロセッサに前記計画グラフのうちの第1のものに対する前記エッジ情報のセットを提供するステップは、前記エッジのうちの1つに対する前記エッジ情報を前記少なくとも1つのプロセッサの複数の回路の各々に適用して、どのエッジが前記ロボットが動作する環境内の障害物によって占有される単位体積と衝突するかを決定するステップを含む、請求項1〜7のいずれかに記載の方法。
<請求項9>
少なくとも1つのプロセッサに前記計画グラフのうちの第1のものに対する前記エッジ情報のセットを提供するステップは、前記エッジのうちの1つに対する前記エッジ情報を、前記少なくとも1つのプロセッサの複数の回路のそれぞれに並列に適用するステップを含む、請求項1〜7のいずれかに記載の方法。
<請求項10>
それぞれのエッジによって結合されるそれぞれのノードによって表される状態間を遷移する際に、前記第1のロボットの少なくとも一部によって掃引される体積を表すそれぞれのエッジ情報のセットを生成するステップは、それぞれのエッジによって結合されるそれぞれのノードによって表される状態間を遷移する際に、前記第1のロボットの少なくとも一部によって掃引される体積をボクセルで表すエッジ情報のそれぞれのセットを生成するステップを含む、請求項1〜7のいずれかに記載の方法。
<請求項11>
それぞれのエッジによって結合されるそれぞれのノードによって表される状態間を遷移する際に、前記第1のロボットの少なくとも一部によって掃引される体積を表すそれぞれのエッジ情報のセットを生成するステップは、それぞれのエッジによって結合されるそれぞれのノードによって表される状態間を遷移する際に、前記第1のロボットの少なくとも一部によって掃引される体積を2つ以上のボクセルをカバーする体積の単位で表すそれぞれのエッジ情報のセットを生成するステップを含む、請求項1〜7のいずれかに記載の方法。
<請求項12>
それぞれのエッジによって結合されるそれぞれのノードによって表される状態間を遷移する際に、前記第1のロボットの少なくとも一部によって掃引される体積を表すそれぞれのエッジ情報のセットを生成するステップは、それぞれのエッジによって結合されるそれぞれのノードによって表される状態間を遷移する際に、前記第1のロボットの少なくとも一部によって掃引される体積を矩形プリズム(直方体)で表すそれぞれのエッジ情報のセットを生成するステップを含む、請求項1〜7のいずれかに記載の方法。
<請求項13>
それぞれのエッジによって結合されるそれぞれのノードによって表される状態間を遷移する際に、前記第1のロボットの少なくとも一部によって掃引される体積を矩形プリズム(直方体)で表すそれぞれのエッジ情報のセットを生成するステップは、前記矩形プリズムの各々に対して、それぞれの矩形プリズムの体積を完全に規定する三次元座標のセットを格納するステップを含む、請求項12に記載の方法。
<請求項14>
複数の計画グラフを決定するステップと、それぞれのエッジ情報のセットを生成するステップが、実行前期間中に実行される、請求項1〜7のいずれかに記載の方法。
<請求項15>
少なくとも1つのプロセッサに前記計画グラフのうちの第2のものに対する前記エッジ情報のセットを提供するステップは、実行時期間中に実行される、請求項1〜7のいずれかに記載の方法。
<請求項16>
プロセッサベースのロボット制御システムであって、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサによって実行されるときに、前記少なくとも1つのプロセッサに、
環境内で動作する第1のロボットについて複数のエッジによって接続された複数のノードをそれぞれ含む複数の計画グラフを決定するステップであって、各ノードは前記第1のロボットのそれぞれの状態を特徴付ける変数を暗黙的または明示的に表し、各エッジは前記第1のロボットの状態のそれぞれのペアの間の遷移を表し、状態のそれぞれのペアは、それぞれの計画グラフ内のそれぞれのエッジによって結合されたノードのペアのそれぞれの1つによって表される、該ステップと、
各計画グラフのエッジの少なくとも2つ以上について、それぞれのエッジによって結合されるそれぞれのノードによって表される状態間を遷移する際に、前記第1のロボットの少なくとも一部によって掃引される体積を表すそれぞれのエッジ情報のセットを生成するステップと、
複数の前記計画グラフおよび前記エッジ情報のセットを少なくとも1つの非一時的プロセッサ読取可能記憶装置に記憶するステップと、
第1の時間に第1の物理的寸法のセットを有する前記第1のロボットの少なくとも一部分に基づいて、少なくとも1つのプロセッサに前記計画グラフのうちの第1のものに対する前記エッジ情報のセットを提供するステップと、
第2の時間に第2の物理的寸法のセットを有する前記第1のロボットの少なくとも一部分に基づいて、少なくとも1つのプロセッサに前記計画グラフのうちの第2のものに対する前記エッジ情報のセットを提供するステップ
を実行させる、プロセッサ実行可能命令またはデータのうちの少なくとも1つを記憶する、少なくとも1つの非一時的プロセッサ可読媒体を有し、
前記第2の物理的寸法のセットのうちの少なくとも1つの寸法が前記第1のセットの前記寸法のうちの対応する1つと相違する、プロセッサベースのロボット制御システム。
<請求項17>
前記少なくとも1つのプロセッサによって実行されるとき、前記少なくとも1つのプロセッサ実行可能命令またはデータは前記少なくとも1つのプロセッサに、請求項2から15の方法のいずれかを実行させる、請求項16に記載のプロセッサベースのシステム。
<請求項18>
ロボット制御システムにおける動作方法であって、
少なくとも第1のロボットが動作する1つ以上の障害物によって占有される環境の第1の離散化された表現に対して、少なくとも1つのプロセッサに前記環境の第1の離散化された表現の少なくとも一部を供給するステップと、
前記少なくとも1つのプロセッサに対するメモリに記憶された複数の計画グラフのうちの第1の計画グラフの各エッジについて、前記少なくとも1つのプロセッサにエッジ情報のそれぞれのセットを提供するステップであって、前記複数の計画グラフの各計画グラフが前記第1のロボットの異なる物理的寸法のセットに関連付けられ、前記エッジ情報のそれぞれのセットは前記第1のロボットの状態のペアの間を遷移する際に前記第1のロボットの少なくとも一部によって掃引される体積を表し、前記第1のロボットの状態のペアのそれぞれは、前記第1の計画グラフのノードのペアのそれぞれによって表され、
前記ノードのペアのそれぞれは前記第1の計画グラフのそれぞれのエッジによって接続され、前記それぞれのエッジは前記第1のロボットの状態のそれぞれのペアの間の遷移を表す、該ステップと、
対応する遷移が前記ロボットの少なくとも一部と前記環境内の1つまたは複数の障害物の少なくとも一部との間の衝突をもたらす前記第1の計画グラフのエッジのいずれかを特定するステップを有する、方法。
<請求項19>
前記少なくとも1つのプロセッサにエッジ情報のそれぞれのセットを提供するステップは、前記エッジのうちの1つについての前記エッジ情報を、前記少なくとも1つのプロセッサの複数の回路のそれぞれに並列に適用するステップを含む、請求項18に記載の方法。
<請求項20>
前記少なくとも1つのプロセッサにエッジ情報のそれぞれのセットを提供するステップは、各エッジについて、前記少なくとも1つのプロセッサの複数の回路のそれぞれに前記それぞれのエッジについての前記エッジ情報を並列に適用するステップを含む、請求項18に記載の方法。
<請求項21>
前記少なくとも1つのプロセッサにエッジ情報のそれぞれのセットを提供するステップは、各エッジについて、前記少なくとも1つのプロセッサの回路に、前記それぞれのエッジによって結合される前記それぞれのノードによって表される状態間を遷移する際に、前記第1のロボットの少なくとも一部によって掃引される体積をボクセルで表すエッジ情報のそれぞれのセットを適用するステップを含む、請求項18に記載の方法。
<請求項22>
前記少なくとも1つのプロセッサにエッジ情報のそれぞれのセットを提供するステップは、それぞれのエッジについて、前記少なくとも1つのプロセッサの回路に、前記それぞれのエッジによって結合される前記それぞれのノードによって表される状態間で遷移する際に、前記第1のロボットの少なくとも一部によって掃引される体積を体積単位で表すエッジ情報のそれぞれのセットを適用するステップを含み、前記体積単位はそれぞれ2つ以上のボクセルをカバーする、請求項18に記載の方法。
<請求項23>
前記少なくとも1つのプロセッサにエッジ情報のそれぞれのセットを提供するステップは、それぞれのエッジについて、前記少なくとも1つのプロセッサの回路に、前記それぞれのエッジによって結合される前記それぞれのノードによって表される状態間で遷移する際に、前記第1のロボットの少なくとも一部によって掃引される体積を矩形プリズムで表すエッジ情報のそれぞれのセットを適用するステップを含み、前記体積単位はそれぞれ2つ以上のボクセルをカバーする、請求項18に記載の方法。
<請求項24>
前記少なくとも1つのプロセッサの回路に、前記それぞれのエッジによって結合される前記それぞれのノードによって表される状態間で遷移する際に、前記第1のロボットの少なくとも一部によって掃引される体積を矩形プリズムで表すエッジ情報のそれぞれのセットを適用するステップが、前記矩形プリズムのそれぞれについて、それぞれの前記矩形プリズムの体積を完全に定義する3次元座標のペアを格納するステップを含む、請求項23に記載の方法。
<請求項25>
前記第1のロボットが第1の配置から第2の配置に変更されるかまたは変更されたことを決定するステップであって、前記第2の配置は前記第1の配置とは相違する、該ステップと、
複数の前記計画グラフの第2の計画グラフの各エッジについて、前記少なくとも1つのプロセッサにエッジ情報のそれぞれのセットを提供するステップであって、前記エッジ情報のそれぞれのセットは前記第1のロボットの状態のペアの間で遷移する際に、前記第1のロボットの少なくとも一部により掃引される体積を表し、前記第1のロボットの状態のペアは前記第2の計画グラフのノードのペアのそれぞれの1つによって表され、前記ノードのそれぞれのペアは前記第2の計画グラフのそれぞれのエッジによって結合され、前記それぞれのエッジは前記第1のロボットの状態のそれぞれのペアの間の遷移を表し、前記第2の計画グラフは第1の計画グラフと相違する、該ステップと、
対応する遷移が前記ロボットの少なくとも一部と環境内の1つまたは複数の障害物の少なくとも一部との間の衝突をもたらす前記第2の計画グラフの前記エッジのいずれかを特定するステップ
を有する、請求項18の方法。
<請求項26>
前記第1のロボットが前記第1のロボットが動作する環境に対して移動するように選択的に動作可能な第1の付属肢を含み、前記第1のロボットが第1の配置から第2の配置に変更されるかまたは変更されたことを決定するステップが、第2のエンドエフェクタが第1のエンドエフェクタの代わりに前記第1の付属肢に取り付けられるかまたは取り付けられていることを決定するステップを含む、請求項25に記載の方法。
<請求項27>
前記第1のロボットが前記第1のロボットが動作する環境に対して移動するように選択的に動作可能な第1の付属肢と、前記第1の付属肢に取り付けられた第1のエンドエフェクタとを含み、前記第1のエンドエフェクタは少なくとも把持していない配置と把持している配置との間で移動するように選択的に動作可能であり、前記把持している配置において前記第1のエンドエフェクタによって占められる体積のサイズまたは形状のうちの少なくとも1つは前記把持していない配置において前記第1のエンドエフェクタによって占められる体積のサイズまたは形状のうちの少なくとも1つとは相違し、前記第1のロボットが第1の配置から第2の配置に変更されるかまたは変更されたことを決定するステップは、前記第1の付属肢に取り付けられた前記第1のエンドエフェクタが把持配置を変化させたかまたは変化させていることを決定するステップを含む、請求項25に記載の方法。
<請求項28>
前記第1の付属肢に取り付けられた前記第1のエンドエフェクタが把持配置を変化させたかまたは変化させていることを決定するステップは、前記第1のエンドエフェクタが把持していない配置と把持している配置との間で遷移しているかまたは遷移したことを決定するステップを含む、請求項27に記載の方法。
<請求項29>
前記第1のロボットは自律車両または半自律車両のうちの少なくとも1つであり、第1の配置にある前記自律車両または半自律車両のうちの少なくとも1つによって占有される体積のサイズまたは形状のうちの少なくとも1つは、第2の配置にある前記自律車両または半自律車両のうちの少なくとも1つによって占有される体積のサイズまたは形状のうちの少なくとも1つと相違し、
前記第1のロボットが第1の配置から第2の配置に変更されるかまたは変更されたことを決定するステップは、前記自律車両または半自律車両のうちの少なくとも1つが、前記自律車両または半自律車両のうちの少なくとも1つの前記第1及び第2の配置間で遷移しているかまたは遷移したことを決定するステップを含む、請求項25に記載の方法。
<請求項30>
前記少なくとも1つのプロセッサに前記第1の計画グラフの各エッジのエッジ情報のそれぞれのセットを提供するステップは実行期間中に前記エッジ情報のそれぞれのセットを非一時的記憶装置から取り出すステップを含み、前記エッジ情報のそれぞれのセットは実行前期間中に前記非一時的記憶装置に記憶される、請求項18から29のいずれかに記載の方法。
<請求項31>
前記少なくとも1つのプロセッサはフィールドプログラマブルゲートアレイまたは特定用途向け集積回路のうちの少なくとも1つであり、少なくとも1つのプロセッサにエッジ情報のそれぞれのセットを提供するステップは、フィールドプログラマブルゲートアレイまたは特定用途向け集積回路のうちの少なくとも1つに実装された前記少なくとも1つのプロセッサの複数の回路のそれぞれに前記エッジのうちの1つのためのエッジ情報を適用するステップを含む、請求項30に記載の方法。
<請求項32>
前記少なくとも1つのプロセッサ上のメモリに前記環境の第1の離散化された表現を記憶するステップと、
前記少なくとも1つのプロセッサ上のメモリに前記環境の第1の離散化された表現を記憶した後、前記少なくとも1つのプロセッサとは別個の記憶装置から前記少なくとも1つのプロセッサによって前記エッジ情報のセットを受信するステップ
を含む、請求項18記載の方法
<請求項33>
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサによって実行されるときに、前記少なくとも1つのプロセッサに、
少なくとも第1のロボットが動作する1つまたは複数の障害物によって占有される環境の第1の離散化された表現に対して、環境の第1の離散化された表現の少なくとも一部を少なくとも1つのプロセッサに供給するステップと、
少なくとも1つのプロセッサに対するメモリに記憶された複数の計画グラフのうちの第1の計画グラフの各エッジについて、エッジ情報のそれぞれのセットを少なくとも1つのプロセッサに提供するステップであって、前記複数の計画グラフのうちの第1の計画グラフの各エッジは第1のロボットの物理的寸法の異なるセットに関連付けられ、前記エッジ情報のそれぞれのセットは前記第1のロボットの状態のペアの間で遷移する際に前記第1のロボットの少なくとも一部によって掃引される体積を表し、前記第1のロボットの状態のペアのそれぞれは前記第1の計画グラフのノードのペアのそれぞれの1つによって表され、前記ノードのペアのそれぞれは前記第1の計画グラフのエッジのそれぞれにより結合され、前記エッジのそれぞれは前記第1のロボットの状態のペアのそれぞれの間の遷移を表す、該ステップと、
対応する遷移が前記ロボットの少なくとも一部と、前記環境内の1つまたは複数の障害物の少なくとも一部の間の衝突をもたらすことになる前記第1の計画グラフの前記エッジのいずれかを特定するステップ
を実行させる、プロセッサ実行可能命令またはデータのうちの少なくとも1つを記憶する少なくとも1つの非一時的プロセッサ可読媒体を有するプロセッサベースのロボット制御システム。
<請求項34>
前記少なくとも1つのプロセッサによって実行されるとき、前記少なくとも1つのプロセッサ実行可能命令またはデータは前記少なくとも1つのプロセッサに、請求項19から32の方法のいずれかを実行させる、請求項33に記載のプロセッサベースのシステム。
<請求項35>
ロボットのモーションプラニングを容易にするためのシステムにおける動作方法であって、前記方法は、
タスクおよび環境の複数のペアのセットを含む少なくとも第1のシナリオについて、
前記少なくとも第1のシナリオのタスクおよび環境の前記ペアのそれぞれについて、
複数の反復のそれぞれについて、
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップであって、それぞれの離散化のうちの少なくとも2つはボクセルのそれぞれのセットを含み、前記それぞれの離散化のうちの少なくとも2つの前記ボクセルは前記それぞれの離散化におけるサイズおよび形状のうちの少なくとも1つにおいて不均一であり、前記それぞれの離散化のうちの少なくとも2つの前記ボクセルのそれぞれの不均一性の分布は互いに相違する、該ステップと、
前記ロボットが動作する環境の表現の生成されたそれぞれの離散化の有効性を評価するステップと、
少なくとも1つの非一時的プロセッサ可読媒体に、少なくとも第1のシナリオに対して最も有効であると評価される、前記ロボットが動作する環境の表現の生成されたそれぞれの離散化を少なくとも記憶するステップを有する、方法。
<請求項36>
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップが、前記ロボットの前方の少なくとも1つの領域の複数の前記ボクセルのそれぞれが、前記ロボットの後方の少なくとも1つの領域の複数の前記ボクセルのそれぞれの体積のそれぞれと比較して比較的小さい体積を有する、第1のそれぞれの離散化を生成するステップを含む、請求項35に記載の方法。
<請求項37>
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップは、前記ロボットの前方の第1の領域の複数の前記ボクセルのそれぞれが第1の体積を有し、前記ロボットの前方の第2の領域の複数の前記ボクセルが第2の体積を有し、前記第2の体積が前記第1の体積と相違する、第1のそれぞれの離散化を生成するステップを含む、請求項35に記載の方法。
<請求項38>
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップは、ロボットの前方の第1の領域の複数のボクセルの各々が第1の体積を有し、ロボットの前方の第2の領域の複数のボクセルが第2の体積を有し、ロボットの前方の第3の領域の複数のボクセルが第3の体積を有し、第3の体積が第2の体積と相違する、第1のそれぞれの離散化を生成するステップを含む、請求項35に記載の方法。
<請求項39>
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップは、前記ロボットの前方の第1の領域の複数の前記ボクセルのそれぞれが第1の体積を有し、前記ロボットの前方の第2の領域の複数の前記ボクセルが第2の体積を有し、前記ロボットの前方の第3の領域の複数の前記ボクセルが第3の体積を有し、前記第2の体積は前記第1の体積とは相違し、前記第3の体積が前記第2の体積と相違する、第1のそれぞれの離散化を生成するステップを含む、請求項35に記載の方法。
<請求項40>
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップは、前記ロボットの直前の第1の領域内の複数の前記ボクセルのそれぞれが第1の形状を有し、前記ロボットの前方における前記ロボットに関して前記第1の領域から相対的に外側に離間した第2の領域内の複数の前記ボクセルのそれぞれが第2の形状を有し、前記ロボットの前方における前記ロボットに関して前記第2の領域から相対的に外側に離間した第3の領域内の複数の前記ボクセルのそれぞれが第3の形状を有し、前記第2の体積が前記第1の体積と相違し、前記第3の体積が前記第2の体積と相違する、第1のそれぞれの離散化を生成するステップを含む、請求項35に記載の方法。
<請求項41>
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップが、前記ロボットの前方の少なくとも1つの領域内の複数の前記ボクセルの各々の形状が、前記ロボットの後方の少なくとも1つの領域の複数の前記ボクセルの各々の形状と相違する、第1のそれぞれの離散化を生成するステップを含む、請求項35に記載の方法。
<請求項42>
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップが、前記ロボットの前方の第1の領域内の複数の前記ボクセルのそれぞれが第1の形状を有し、前記ロボットの前方の第2の領域内の複数の前記ボクセルが第2の形状を有し、前記第2の形状が前記第1の形状と相違する、第1のそれぞれの離散化を生成するステップを含む、請求項35に記載の方法。
<請求項43>
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップは、前記ロボットの前方の第1の領域内の複数の前記ボクセルのそれぞれが第1の形状を有し、前記ロボットの前方の第2の領域内の複数の前記ボクセルが第2の形状を有し、前記ロボットの前方の第3の領域内の複数の前記ボクセルが第3の形状を有し、前記第3の形状が前記第2の形状と相違する、第1のそれぞれの離散化を生成するステップを含む、請求項35に記載の方法。
<請求項44>
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップは、前記ロボットの前方の第1の領域内の複数の前記ボクセルのそれぞれが第1の形状を有し、前記ロボットの前方の第2の領域内の複数の前記ボクセルが第2の形状を有し、前記ロボットの前方の第3の領域内の複数の前記ボクセルが第3の形状を有し、前記第2の形状が前記第1の形状と相違し、前記第3の形状が前記第2の形状と相違する、第1の離散化を生成するステップを含む、請求項35に記載の方法。
<請求項45>
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップは、前記ロボットの直前の第1の領域内の複数の前記ボクセルのそれぞれが第1の形状を有し、前記ロボットの前方における前記ロボットに関して前記第1の領域から相対的に外側に離間した複数の前記ボクセルが第2の形状を有し、前記ロボットの前方における前記ロボットに関して前記第2の領域から相対的に外側に離間した複数の前記ボクセルが第3の形状を有し、前記第2の形状は前記第1の形状とは相違し、前記第3の形状は第2の形状とは相違する、第1の離散化を生成するステップを含む、請求項35に記載の方法。
<請求項46>
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップは、前記ロボットの前方の少なくとも1つの領域内の複数の前記ボクセルのそれぞれの形状および体積の両方が前記ロボットの後方の少なくとも1つの領域の複数の前記ボクセルのそれぞれの形状および体積の両方と相違する、第1のそれぞれの離散化を生成するステップを含む、請求項35に記載の方法。
<請求項47>
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップが、前記ロボットの前方の少なくとも1つの領域内の複数の前記ボクセルのそれぞれの形状および体積の両方が前記ロボットの後方の少なくとも1つの領域の複数の前記ボクセルのそれぞれの形状および体積の両方とは相違し、形状のうちの少なくとも1つが非立方体である、第1のそれぞれの離散化を生成するステップを含む、請求項35に記載の方法。
<請求項48>
前記ロボットが動作する環境の表現の生成されたそれぞれの離散化の有効性を評価するステップは、前記ロボットが動作する環境の表現の生成されたそれぞれの離散化のうちのどれが、衝突のない経路をもたらす可能性が最も高いかを決定するステップを含む、請求項35に記載の方法。
<請求項49>
前記ロボットが動作する環境の表現の生成されたそれぞれの離散化の有効性を評価するステップは、前記ロボットが動作する環境の表現の生成されたそれぞれの離散化のうちのどれが、衝突の確率が最も低い経路をもたらす可能性が最も高いかを決定するステップを含む、請求項35に記載の方法。
<請求項50>
前記ロボットが動作する環境の表現の生成されたそれぞれの離散化の有効性を評価するステップは、前記ロボットが動作する環境の表現の生成されたそれぞれの離散化のうちのどれが、最も低コストの衝突のない経路をもたらす可能性が最も高いかを決定するステップを含む、請求項35に記載の方法。
<請求項51>
少なくとも1つの非一時的プロセッサ可読媒体に、少なくとも第1のシナリオに対して最も有効であると評価される、前記ロボットが動作する環境の表現の生成されたそれぞれの離散化を少なくとも記憶するステップは、複数のシナリオの各々に対して少なくとも1つの生成されたそれぞれの離散化を、生成されたそれぞれの離散化のうちのどれが複数のシナリオの各々に対して使用されるべきかの指示と共に記憶するステップを含む、請求項35に記載の方法。
<請求項52>
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサによって実行されるときに、前記少なくとも1つのプロセッサに、
タスクおよび環境の複数のペアのセットを含む少なくとも第1のシナリオについて、
前記少なくとも第1のシナリオのタスクおよび環境の前記ペアのそれぞれについて、
複数の反復のそれぞれについて、
少なくとも1つのプロセッサによってロボットが動作する環境の表現のそれぞれの離散化を生成するステップであって、それぞれの離散化のうちの少なくとも2つはボクセルのそれぞれのセットを含み、前記それぞれの離散化のうちの少なくとも2つの前記ボクセルは前記それぞれの離散化におけるサイズおよび形状のうちの少なくとも1つにおいて不均一であり、前記それぞれの離散化のうちの少なくとも2つの前記ボクセルのそれぞれの不均一性の分布は互いに相違する、該ステップと、
前記ロボットが動作する環境の表現の生成されたそれぞれの離散化の有効性を評価するステップと、
少なくとも1つの非一時的プロセッサ可読媒体に、少なくとも第1のシナリオに対して最も有効であると評価される、前記ロボットが動作する環境の表現の生成されたそれぞれの離散化を少なくとも記憶するステップ
を実行させる、プロセッサ実行可能命令またはデータのうちの少なくとも1つを記憶する、少なくとも1つの非一時的プロセッサ可読媒体
を有するモーションプラニングを容易にするためのプロセッサベースのシステム。
<請求項53>
前記少なくとも1つのプロセッサによって実行されるとき、前記少なくとも1つのプロセッサ実行可能命令またはデータは前記少なくとも1つのプロセッサに、請求項36から51の方法のいずれかを実行させる、請求項52に記載のプロセッサベースのシステム。
<請求項54>
ロボットが実行するタスクと前記ロボットが動作する環境のペアを分類する特定されたシナリオに少なくとも部分的に基づいて、前記ロボットの1つの状態と前記ロボットの別の状態との間を遷移するときに前記ロボットの少なくとも一部が通過するそれぞれの領域を表すいくつかの掃引体積を生成するためにいくつかの離散化のうちのどれを使用するかを決定するステップと、
計画グラフ内の複数のエッジの各々について、決定された前記離散化を使用して前記エッジのそれぞれの掃引体積を決定するステップであって、前記計画グラフは複数のノードおよび複数のエッジを含み、各ノードは前記ロボットの複数の状態のうちのそれぞれ1つを表し、エッジの各々は前記ノードのそれぞれのペアを結合し、それぞれの前記エッジによって結合されたそれぞれの前記ノードによって表される状態間の前記ロボットによるそれぞれの遷移を表す、該ステップと、
少なくとも特定されたシナリオに対して最も効果的であると評価された、前記ロボットが動作する環境の表現の決定された掃引体積のそれぞれの離散化のうちの少なくとも1つを少なくとも1つの非一時的プロセッサ可読媒体に記憶するステップ
を有するロボットのモーションプラニングを容易にするためのシステムにおける動作方法。
<請求項55>
いくつかの掃引体積を生成するためにいくつかの離散化のうちのどれを使用するかを決定するステップは、特定されたシナリオに基づいて少なくとも2つの離散化の中から選択するステップを含み、それぞれの離散化のうちの少なくとも2つのボクセルはそれぞれの離散化におけるサイズおよび形状のうちの少なくとも1つにおいて不均一であり、それぞれの離散化のうちの少なくとも2つのボクセルの不均一性のそれぞれの分布は互いに相違する、請求項54に記載の方法。
<請求項56>
決定された前記離散化を使用して前記エッジのそれぞれの掃引体積を決定するステップは、前記ロボットの前方の少なくとも1つの領域の複数の前記ボクセルのそれぞれが、前記ロボットの後方の少なくとも1つの領域内の複数の前記ボクセルのそれぞれの体積と比較して比較的小さな体積を有するような前記決定された離散化を用いて前記エッジのそれぞれの掃引された体積を決定するステップを含む、請求項54に記載の方法。
<請求項57>
決定された前記離散化を使用して前記エッジのそれぞれの掃引体積を決定するステップは、前記ロボットの前方の第1の領域内の複数の前記ボクセルのそれぞれが第1の体積を有し、前記ロボットの前方の第2の領域内の複数の前記ボクセルが第2の体積を有し、前記第2の体積が前記第1の体積とは異なるような前記決定された離散化を用いて、前記エッジのそれぞれの掃引された体積を決定するステップを含む、請求項54に記載の方法。
<請求項58>
決定された前記離散化を使用して前記エッジのそれぞれの掃引体積を決定するステップは、前記ロボットの前方の第1の領域内の複数の前記ボクセルの各々が第1の体積を有し、前記ロボットの前方の第2の領域内の複数の前記ボクセルが第2の体積を有し、前記ロボットの前方の第3の領域内の複数の前記ボクセルが第3の体積を有し、前記第3の体積が前記第2の体積とは異なるような前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップを含む、請求項54に記載の方法。
<請求項59>
決定された前記離散化を使用して前記エッジのそれぞれの掃引体積を決定するステップは、前記ロボットの前方の第1の領域内の複数の前記ボクセルの各々が第1の体積を有し、前記ロボットの前方の第2の領域内の複数の前記ボクセルが第2の体積を有し、前記ロボットの前方の第3の領域内の複数の前記ボクセルが第3の体積を有し、前記第2の体積が前記第1の体積と相違し、前記第3の体積が前記第2の体積と異なるような前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップを含む、請求項54に記載の方法。
<請求項60>
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップは、
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップであって、前記ロボットの前方の第1の領域内の複数の前記ボクセルのそれぞれが第1の形状を有し、前記ロボットの前方における前記ロボットに関して前記第1の領域から相対的に外側に離間した第2の領域内の複数の前記ボクセルのそれぞれが第2の形状を有し、前記ロボットの前方における前記ロボットに関して前記第2の領域から相対的に外側に離間した第3の領域内の複数の前記ボクセルのそれぞれが第3の形状を有し、前記第2の体積が前記第1の体積と相違し、前記第3の体積が前記第2の体積と相違する、該ステップを有する、請求項54に記載の方法。
<請求項61>
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップは、
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップであって、前記ロボットの前方の少なくとも1つの領域における前記複数のボクセルの各々の形状が前記ロボットの後方の少なくとも1つの領域の前記複数のボクセルの各々の形状と相違する、該ステップを含む、請求項54に記載の方法。
<請求項62>
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップは、
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップであって、前記ロボットの前方の第1の領域内の複数の前記ボクセルのそれぞれが第1の形状を有し、前記ロボットの前方の第2の領域内の複数の前記ボクセルのそれぞれが第2の形状を有し、前記第2の体積が前記第1の体積と相違する、該ステップを有する、請求項54に記載の方法。
<請求項63>
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップは、
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップであって、前記ロボットの前方の第1の領域内の複数のボクセルの各々が第1の形状を有し、前記ロボットの前方の第2の領域内の複数の前記ボクセルが第2の形状を有し、前記ロボットの前方の第3の領域内の複数の前記ボクセルが第3の形状を有し、前記第3の形状が前記第2の形状とは相違する、該ステップを含む、請求項54に記載の方法。
<請求項64>
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップは、
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップであって、前記ロボットの前方の第1の領域内の複数のボクセルの各々が第1の形状を有し、前記ロボットの前方の第2の領域内の複数の前記ボクセルが第2の形状を有し、前記ロボットの前方の第3の領域内の複数の前記ボクセルが第3の形状を有し、前記第2の形状が前記第1の形状とは相違し、前記第3の形状が前記第2の形状とは相違する、該ステップを含む、請求項54に記載の方法。
<請求項65>
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップは、
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップであって、前記ロボットの直前の第1の領域内の複数の前記ボクセルのそれぞれが第1の形状を有し、前記ロボットの前方における前記ロボットに関して前記第1の領域から相対的に外側に離間した第2の領域内の複数の前記ボクセルのそれぞれが第2の形状を有し、前記ロボットの前方における前記ロボットに関して前記第2の領域から相対的に外側に離間した第3の領域内の複数の前記ボクセルのそれぞれが第3の形状を有し、前記第2の体積が前記第1の体積と相違し、前記第3の体積が前記第2の体積と相違する、該ステップを有する、請求項54に記載の方法。
<請求項66>
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップは、
前記決定された離散化を用いて前記エッジのそれぞれの掃引体積を決定するステップであって、前記ロボットの前方の少なくとも1つの領域における前記複数のボクセルの各々の形状および体積の両方が前記ロボットの後方の少なくとも1つの領域の前記複数のボクセルの各々の形状および体積の両方と相違する、請求項54に記載の方法。
<請求項67>
前記特定されたシナリオを受信するステップをさらに含む、請求項54に記載の方法。
<請求項68>
少なくとも1つのプロセッサにエッジ情報のそれぞれのセットを提供するステップをさらに有し、
前記エッジ情報のそれぞれのセットは、前記ロボットの1つのペアの状態間の遷移の際に前記第1のロボットの少なくとも一部によって掃引されるそれぞれの掃引体積を表す、請求項54記載の方法
<請求項69>
前記少なくとも1つのプロセッサは、フィールドプログラマブルゲートアレイまたは特定用途向け集積回路のうちの少なくとも1つであり、
前記フィールドプログラマブルゲートアレイまたは特定用途向け集積回路のうちの少なくとも1つに実装された前記少なくとも1つのプロセッサの複数の回路のそれぞれに、前記ロボットの少なくとも一部によって掃引されるそれぞれの掃引体積を表すそれぞれのエッジ情報のセットを適用して、前記ロボットの1つのペアの状態間を遷移させるステップをさらに有する、請求項54から68のいずれかに記載の方法
<請求項70>
モーションプラニングを容易にするためのプロセッサベースのシステムであって、前記システムは、
少なくとも1つのプロセッサと、
プロセッサ実行可能命令またはデータのうちの少なくとも1つを記憶する少なくとも1つの非一時的プロセッサ可読媒体を有し、
前記少なくとも1つの非一時的プロセッサ可読媒体は、前記少なくとも1つのプロセッサによって実行されるときに、前記少なくとも1つのプロセッサに、
ロボットが実行するタスクと前記ロボットが動作する環境のペアを分類する特定されたシナリオに少なくとも部分的に基づいて、前記ロボットの1つの状態と前記ロボットの別の状態との間を遷移するときに前記ロボットの少なくとも一部が通過するそれぞれの領域を表すいくつかの掃引体積を生成するためにいくつかの離散化のうちのどれを使用するかを決定するステップと、
計画グラフ内の複数のエッジの各々について、決定された前記離散化を使用して前記エッジのそれぞれの掃引体積を決定するステップであって、前記計画グラフは複数のノードおよび複数のエッジを含み、各ノードは前記ロボットの複数の状態のうちのそれぞれ1つを表し、前記エッジの各々は前記ノードのそれぞれのペアを結合し、それぞれの前記エッジによって結合されたそれぞれの前記ノードによって表される状態間の前記ロボットによるそれぞれの遷移を表す、該ステップと、
少なくとも特定されたシナリオに対して最も効果的であると評価された、前記ロボットが動作する環境の表現の決定された掃引体積のそれぞれの離散化のうちの少なくとも1つを少なくとも1つの非一時的プロセッサ可読媒体に記憶するステップ
を実行させる、プロセッサベースのシステム。
<請求項71>
前記少なくとも1つのプロセッサによって実行されるときに、前記少なくとも1つのプロセッサ実行可能命令またはデータは前記少なくとも1つのプロセッサに、請求項55〜69の方法のいずれかを実行させる、請求項70に記載のプロセッサベースのシステム。
<請求項72>
ロボットのモーションプラニングを容易にするためのシステムにおける動作方法であって、
ロボットが実行するタスクと前記ロボットが動作する環境のペアを分類する特定されたシナリオに少なくとも部分的に基づいて、障害を含み得る環境の離散化された表現を生成するためにいくつかの前記離散化のうちのどれを使用するかを決定するステップと、
環境を感知する1つまたは複数のセンサによって生成されたセンサ情報を受け取るステップであって、前記センサ情報は障害物を含み得る環境を表す、該ステップと、
決定された前記離散化を使用して、前記障害物を含み得る環境の離散化表現を生成するステップであって、決定された前記離散化の複数のボクセルはそれぞれの前記離散化におけるサイズおよび形状のうちの少なくとも1つにおいて不均一であり、決定された前記離散化のボクセルの不均一性のそれぞれの分布は、いくつかの前記離散化のうちの別の1つにおける前記ボクセルの不均一性と相違する、該ステップ
を有する、方法。
<請求項73>
少なくとも1つの非一時的プロセッサ可読媒体に、生成された前記障害物を含み得る環境の離散化表現を記憶するステップをさらに有する請求項72記載の方法。
<請求項74>
決定された前記離散化を使用して、前記障害物を含み得る環境の離散化表現を生成するステップは、掃引された体積の離散化された表現を生成するために使用されるボクセルのサイズおよび形状の分布に一致するボクセルのサイズおよび形状の分布を使用して、前記環境の前記離散化された表現を生成するステップを含む、請求項72に記載の方法。
<請求項75>
決定された前記離散化を使用して、前記障害物を含み得る環境の離散化表現を生成するステップは、ロボットにより掃引された体積の離散化された表現を生成するために使用されるボクセルのサイズおよび形状の分布に一致するボクセルのサイズおよび形状の分布を使用して、前記環境の前記離散化された表現を生成するステップを含む、請求項72に記載の方法。
<請求項76>
障害を含み得る環境の離散化された表現を生成するためにいくつかの前記離散化のうちのどれを使用するかを決定するステップは、特定された前記シナリオに基づいて少なくとも2つの離散化の間で選択するステップを含み、
それぞれの前記離散化のうちの少なくとも2つのボクセルは前記それぞれの離散化におけるサイズおよび形状のうちの少なくとも1つにおいて不均一であり、前記それぞれの離散化のうちの少なくとも2つの前記ボクセルのそれぞれの不均一性の分布は互いに相違する、請求項72に記載の方法。
<請求項77>
障害を含み得る環境の離散化された表現を生成するためにいくつかの前記離散化のうちのどれを使用するかを決定するステップは、
決定された前記離散化であって、前記ロボットの前方の少なくとも1つの領域の複数のボクセルの各々が前記ロボットの後方の少なくとも1つの領域の複数のボクセルの各々のそれぞれの体積と比較して相対的に小さい体積を有する、該離散化を使用して環境の離散化された表現を生成するステップを含む、請求項72に記載の方法。
<請求項78>
障害を含み得る環境の離散化された表現を生成するためにいくつかの前記離散化のうちのどれを使用するかを決定するステップは、
決定された前記離散化であって、前記ロボットの前方の第1の領域の複数の前記ボクセルのそれぞれが第1の体積を有し、前記ロボットの前方の第2の領域の複数の前記ボクセルが第2の体積を有し、前記第2の体積が前記第1の体積と相違する、該離散化を使用して環境の離散化された表現を生成するステップを含む、請求項72に記載の方法。
<請求項79>
障害を含み得る環境の離散化された表現を生成するためにいくつかの前記離散化のうちのどれを使用するかを決定するステップは、
決定された前記離散化であって、前記ロボットの前方の第1の領域の複数のボクセルの各々が第1の体積を有し、前記ロボットの前方の第2の領域の複数のボクセルが第2の体積を有し、前記ロボットの前方の第3の領域の複数のボクセルが第3の体積を有し、第3の体積が第2の体積と相違する、該離散化を使用して生成するステップを含む、請求項72に記載の方法。
<請求項80>
障害を含み得る環境の離散化された表現を生成するためにいくつかの前記離散化のうちのどれを使用するかを決定するステップは、
決定された前記離散化であって、前記ロボットの前方の第1の領域の複数のボクセルの各々が第1の体積を有し、前記ロボットの前方の第2の領域の複数のボクセルが第2の体積を有し、前記ロボットの前方の第3の領域の複数のボクセルが第3の体積を有し、第2の体積が第1の体積と相違し、第3の体積が第2の体積と相違する、該離散化を使用して生成するステップを含む、請求項72に記載の方法。
<請求項81>
障害を含み得る環境の離散化された表現を生成するためにいくつかの前記離散化のうちのどれを使用するかを決定するステップは、
決定された前記離散化であって、前記ロボットの直前の第1の領域内の複数の前記ボクセルのそれぞれが第1の形状を有し、前記ロボットの前方における前記ロボットに関して前記第1の領域から相対的に外側に離間した第2の領域内の複数の前記ボクセルのそれぞれが第2の形状を有し、前記ロボットの前方における前記ロボットに関して前記第2の領域から相対的に外側に離間した第3の領域内の複数の前記ボクセルのそれぞれが第3の形状を有し、前記第2の体積が前記第1の体積と相違し、前記第3の体積が前記第2の体積と相違する、該ステップを含む、請求項72に記載の方法。
<請求項82>
障害物を含み得る前記環境の離散化表現を生成するステップは、前記ロボットの前方の少なくとも1つの領域内の複数のボクセルの各々の形状が前記ロボットの後方の少なくとも1つの領域の複数のボクセルの各々の形状と相違する、前記決定された離散化を使用して、前記環境の離散化表現を生成するステップを含む、請求項72に記載の方法。
<請求項83>
障害物を含み得る前記環境の離散化表現を生成するステップは、決定された前記離散化を用いて前記環境の離散化表現を生成するステップを有し、
前記ロボットの前方の第1の領域内の複数の前記ボクセルのそれぞれが第1の形状を有し、前記ロボットの前方の第2の領域内の複数の前記ボクセルが第2の形状を有し、前記第2の形状が前記第1の形状と相違する、請求項72に記載の方法。
<請求項84>
障害物を含み得る前記環境の離散化表現を生成するステップは、決定された前記離散化を用いて前記環境の離散化表現を生成するステップを有し、
前記ロボットの前方の第1の領域内の複数のボクセルの各々が第1の形状を有し、前記ロボットの前方の第2の領域内の複数のボクセルが第2の形状を有し、前記ロボットの前方の第3の領域内の複数のボクセルが第3の形状を有し、前記第3の形状が前記第2の形状と相違する、請求項72に記載の方法。
<請求項85>
障害物を含み得る前記環境の離散化表現を生成するステップは、決定された前記離散化を用いて前記環境の離散化表現を生成するステップを有し、
前記ロボットの前方の第1の領域内の複数のボクセルの各々が第1の形状を有し、前記ロボットの前方の第2の領域内の複数のボクセルが第2の形状を有し、前記ロボットの前方の第3の領域内の複数のボクセルが第3の形状を有し、前記第2の形状が第1の形状と相違し、前記第3の形状が第2の形状と相違する、請求項72に記載の方法。
<請求項86>
障害物を含み得る前記環境の離散化表現を生成するステップは、決定された前記離散化を用いて前記環境の離散化表現を生成するステップを有し、
前記ロボットの直前の第1の領域内の複数の前記ボクセルの各々が第1の形状を有し、前記ロボットの前記における前記ロボットに関して前記第1の領域から相対的に外側に離間した複数の前記ボクセルが第2の形状を有し、前記ロボットの前方における前記ロボットに関して前記第2の領域から相対的に外側に離間した複数の前記ボクセルが第3の形状を有し、前記第2の形状が第1の形状と相違し、前記第3の形状が第2の形状と相違する、請求項72に記載の方法。
<請求項87>
障害物を含み得る前記環境の離散化表現を生成するステップは、決定された前記離散化を用いて前記環境の離散化表現を生成するステップを有し、
前記ロボットの前方の少なくとも1つの領域内の複数の前記ボクセルのそれぞれの形状および体積の両方が前記ロボットの後方の少なくとも1つの領域の複数の前記ボクセルのそれぞれの形状および体積の両方と相違する、第1のそれぞれの離散化を生成する、
請求項72に記載の方法。
<請求項88>
前記ロボットが行う前記タスクと前記ロボットが動作する前記環境を表す情報を受け取るステップと、
受け取った情報に少なくとも部分的に基づいて特定されたシナリオを特定するステップ
をさらに含む、請求項72記載の方法。
<請求項89>
前記環境の離散化された表現を少なくとも1つのプロセッサに提供するステップをさらに含む、請求項72記載の方法。
<請求項90>
前記少なくとも1つのプロセッサは、フィールドプログラマブルゲートアレイまたは特定用途向け集積回路のうちの少なくとも1つであり、
前記環境の離散化された表現を、フィールドプログラマブルゲートアレイまたは特定用途向け集積回路のうちの少なくとも1つに実装された複数の回路のそれぞれに適用するステップ
をさらに含む、請求項72から89のいずれかに記載の方法。
<請求項91>
モーションプラニングを容易にするためのプロセッサベースのシステムであって、
少なくとも1つのプロセッサと、
プロセッサ実行可能命令またはデータのうちの少なくとも1つを記憶する少なくとも1つの非一時的プロセッサ可読媒体を有し、
前記少なくとも1つの非一時的プロセッサ可読媒体は、前記少なくとも1つのプロセッサによって実行されるときに、
ロボットが実行するタスクと前記ロボットが動作する環境のペアを分類する特定されたシナリオに少なくとも部分的に基づいて、障害物を含み得る環境の離散化表現を生成するためにいくつかの離散化のうちのどれを使用するかを決定するステップと、
環境を感知する1つまたは複数のセンサによって前記障害物を含み得る環境を表すセンサ情報を受け取るステップと、
決定された前記離散化を使用して、前記障害物を含み得る環境の離散化表現を生成するステップであって、決定された前記離散化の複数のボクセルはそれぞれの前記離散化におけるサイズおよび形状のうちの少なくとも1つにおいて不均一であり、決定された前記離散化のボクセルの不均一性のそれぞれの分布は、いくつかの前記離散化のうちの別の1つにおける前記ボクセルの不均一性と相違する、該ステップ
を実行させる、プロセッサベースのシステム。
<請求項92>
前記少なくとも1つの非一時的プロセッサ可読媒体は、前記少なくとも1つのプロセッサによって実行されるときに、請求項73〜90の方法のいずれかを実行させる、請求項91に記載のプロセッサベースのシステム。
<請求項93>
複数の計画グラフを使用するロボット制御システムにおける動作方法であって、各計画グラフは複数のエッジによってそれぞれ接続された複数のノードをそれぞれ含み、各ノードは第1のロボットのそれぞれの状態を特徴付ける変数を暗黙的または明示的に表し、各エッジは前記第1のロボットの状態のペアのそれぞれの間の遷移を表し、前記状態のペアのそれぞれはそれぞれの前記計画グラフ内のそれぞれのエッジによって結合されたノードのペアのそれぞれの1つによって表され、
前記方法は、
前記複数の計画グラフのうちの第1の計画グラフに対し、
第1の計画グラフの複数のエッジの各々について、前記エッジに関連する掃引体積の離散化された表現と前記ロボットが動作する環境における任意の障害物の離散化された表現の間の衝突検査を実行するステップと、
前記衝突検査に基づいて前記第1の計画グラフを更新するステップと、
更新された前記第1の計画グラフの最適化がもし存在するのならその最適化を実行し、1つまたは複数の最適化された結果を特定するステップと、
更新された前記第1の計画グラフから、前記1つまたは複数の最適化された結果もし存在するのなら、当該結果が満足条件を満たすかどうかを決定するステップを含み、
前記方法はさらに、
前記最適化された結果が満足条件を満たさないと判断したことに応じて、
第2の計画グラフの複数のエッジの各々について、前記エッジに関連する掃引体積の離散化された表現と前記ロボットが動作する環境における任意の障害物の離散化された表現の間の衝突検査を実行するステップと、
前記衝突検査に基づいて前記第2の計画グラフを更新するステップと、
更新された前記第2の計画グラフの最適化がもし存在するのならその最適化を実行し、1つまたは複数の最適化された結果を特定するステップを含む、方法。
<請求項94>
更新された前記第2の計画グラフから、前記1つまたは複数の最適化された結果がもし存在するのなら、当該結果が満足条件を満たすかどうかを決定するステップをさらに含む、請求項93記載の方法。
<請求項95>
前記更新された第2の計画グラフからの前記1つまたは複数の最適化された結果がもし存在するのなら、当該結果が前記満足条件を満たすと決定したことに応答して、
更新された前記第2計画グラフからの前記1つまたは複数の最適化された結果の1つによって特定された遷移を前記ロボットに適用するステップをさらに有する、請求項94に記載の方法。
<請求項96>
前記更新された第2の計画グラフからの前記1つまたは複数の最適化された結果がもし存在しないのなら、当該結果が前記満足条件を満さないと決定したことに応答して、
第3の計画グラフの複数のエッジの各々について、前記エッジに関連する掃引体積の離散化された表現と前記ロボットが動作する環境における任意の障害物の離散化された表現の間の衝突検査を実行するステップと、
前記衝突検査に基づいて前記第3の計画グラフを更新するステップと、
更新された前記第3の計画グラフの最適化がもし存在するのならその最適化を実行し、1つまたは複数の最適化された結果を特定するステップをさらに有する、請求項94に記載の方法
<請求項97>
前記更新された第3の計画グラフからの前記1つまたは複数の最適化された結果がもし存在するのなら、当該結果が前記満足条件を満たすと決定したことに応答して、
更新された前記第3計画グラフからの前記1つまたは複数の最適化された結果の1つによって特定される遷移をロボットに適用するステップをさらに有する、請求項96に記載の方法。
<請求項98>
更新された前記第2の計画グラフから、もし存在するのなら前記1つまたは複数の最適化された結果が満足条件を満たすかどうかを決定するステップは、前記最適化が任意の経路を生成するかどうかを決定するステップを含む、請求項93に記載の方法。
<請求項99>
更新された前記第2の計画グラフから、もし存在するのなら前記1つまたは複数の最適化された結果が満足条件を満たすかどうかを決定するステップは、前記最適化が衝突のない経路を生成するかどうかを決定するステップを含む、請求項93に記載の方法。
<請求項100>
前記エッジに関連する掃引体積の離散化された表現と前記ロボットが動作する環境における任意の障害物の離散化された表現の間の衝突検査を実行するステップは、前記第1の計画グラフ内の前記エッジの各々について、前記エッジに関するエッジ情報のセットを、前記複数の回路の各々に並列に適用するステップを含み、前記回路は前記ロボットが動作する環境内の障害物によって占有されるそれぞれの単位体積をそれぞれ表す、請求項93から99のいずれかに記載の方法。
<請求項101>
少なくとも1つのプロセッサが、少なくとも前記第1のロボットが動作する環境内の1つまたは複数の障害物によって占有される複数の単位体積のそれぞれを表す複数の回路を実装するように構成される、請求項100の方法。
<請求項102>
複数の計画グラフを使用するプロセッサベースのロボット制御システムであって、各計画グラフは複数のエッジによって接続された複数のノードをそれぞれ含み、各ノードは第1のロボットのそれぞれの状態を特徴付ける変数を暗黙的または明示的に表し、各エッジは前記第1のロボットの状態のペアのそれぞれの間の遷移を表し、前記状態のペアのそれぞれは、それぞれの前記計画グラフ内のそれぞれのエッジによって結合されたノードのペアのそれぞれの1つによって表され、
前記システムは、
少なくとも1つのプロセッサと、
プロセッサ実行可能命令またはデータのうちの少なくとも1つを記憶する少なくとも1つの非一時的プロセッサ可読媒体を有し、
前記少なくとも1つの非一時的プロセッサ可読媒体は、前記少なくとも1つのプロセッサによって実行されるときに、前記少なくとも1つのプロセッサに、
前記複数の計画グラフのうちの第1の計画グラフに対し、
第1の計画グラフの複数のエッジの各々について、前記エッジに関連する掃引体積の離散化された表現と前記ロボットが動作する環境における任意の障害物の離散化された表現の間の衝突検査を実行するステップと、
前記衝突検査に基づいて前記第1の計画グラフを更新するステップと、
更新された前記第1の計画グラフの最適化がもし存在するのならその最適化を実行し、1つまたは複数の最適化された結果を特定するステップと、
更新された前記第1の計画グラフから、前記1つまたは複数の最適化された結果もし存在するのなら、当該結果が満足条件を満たすかどうかを決定するステップを含み、
前記方法はさらに、
前記最適化された結果が満足条件を満たさないと判断したことに応じて、
第2の計画グラフの複数のエッジの各々について、前記エッジに関連する掃引体積の離散化された表現と前記ロボットが動作する環境における任意の障害物の離散化された表現の間の衝突検査を実行するステップと、
前記衝突検査に基づいて前記第2の計画グラフを更新するステップと、
更新された前記第2の計画グラフの最適化がもし存在するのならその最適化を実行し、1つまたは複数の最適化された結果を特定するステップ
を実行させる、プロセッサベースのロボット制御システム。
<請求項103>
前記少なくとも1つのプロセッサによって実行されるとき、前記少なくとも1つのプロセッサ実行可能命令またはデータは前記少なくとも1つのプロセッサに、請求項94〜101の方法のいずれかを実行させる、請求項102に記載のプロセッサベースのロボット制御システム。