"移動式ロボット100であって、駆動システム200と、前記駆動システム200と通信状態にあるコントローラ500と、地面よりも約1フィート30.5cm以上、上方の高さ位置のところで前記駆動システム200の上方に支持されると共に前記移動式ロボット100の移動方向において床平面を含む空間ボリュームから点群を得ることができるよう差し向けられたボリューム形点群イメージング装置450,450a,450bとを有し、前記コントローラ500は、前記イメージング装置450,450a,450bから点群信号を受け取り、そして少なくとも部分的に、前記受け取った点群信号に基づく駆動指令を前記駆動システム200に送り出す、移動式ロボット100。前記コントローラ500は、毎秒100億を超える命令millioninstructionpersecond:MIPSを処理することができるコンピュータから成る、請求項1記載の移動式ロボット100。前記イメージング装置450,450a,450bは、前記ロボット100の周りのシーン10に光を放出し、前記ロボット100の駆動方向Fに沿って前記シーン10のイメージを捕捉し、前記イメージは、a三次元深度イメージ、bアクティブな照明イメージ及びc周囲照明イメージのうちの少なくとも1つを含み、前記コントローラ500は、前記イメージに基づいて前記シーン10中の物体12の存在場所を突き止め、そして前記物体の存在場所に基づいて駆動指令を前記駆動システム200に送り出して前記ロボット100を前記シーン10内で操縦する、請求項1又は2記載の移動式ロボット100。前記イメージング装置450,450a,450bは、前記光放出と前記シーン10からの反射光の受光との間のタイムオブフライトtimeofflightを求め、前記コントローラ500は、前記物体12の反射面までの距離を求めるために前記タイムオブフライトを用いる、請求項3記載の移動式ロボット100。前記イメージング装置450,450a,450bは、好ましくは間欠パルスで光を前記シーン10に放出する光源1172,1310,1510を有し、より好ましくは、前記光源1172,1310,1510は、前記光パルスを第1の省電力周波数で放出し、センサ事象を受け取ると、前記光パルスを第2の能動周波数で放出し、前記センサ事象は、オプションとして、前記シーン10内における物体12の存在を表すセンサ信号を含み、前記シーン10からの放出光の反射光を受け取るイメージャ1174,1320,1520を有し、前記イメージャ1174,1320,1520は、光検出ピクセル1174p,1326,1522のアレイを有する、請求項3又は4記載の移動式ロボット100。前記イメージング装置450,450a,450bは、第1の部分450a及び第2の部分450bを含み、前記第1の部分450aは、光を実質的に地面に放出し、前記地面からの前記放出光の反射光を受け取るよう構成され、前記第2の部分450bは、光を地面の実質的に上方のシーン10に放出し、前記ロボット100の周りの前記シーン10からの前記放出光の反射光を受け取るよう構成されている、請求項1~5のうちいずれか一に記載の移動式ロボット100。前記イメージング装置450,450a,450bは、光のスペックルパターンを前記ロボット100の駆動方向Fに沿ってシーン10に放出するスペックルエミッタ1310と、前記シーン10内の物体12からの前記スペックルパターンの反射光を受け取るイメージャ1320とを有し、前記コントローラ500は、前記シーン10内の基準物体12から反射された前記スペックルパターンの基準イメージを記憶し、前記基準イメージは、前記基準物体12から互いに異なる距離Znのところで捕捉され、前記シーン10内の標的物体12から反射された前記スペックルパターンの少なくとも1つの標的イメージを前記基準イメージと比較し、それにより、前記標的物体12の反射面の距離ΔZを求める、請求項1~6のうちいずれか一に記載の移動式ロボット100。前記コントローラ500は、前記標的物体12上の一次スペックルパターンを求め、前記一次スペックルパターンと前記基準イメージの前記スペックルパターンとの相互相関性及び非相関性のうちの少なくとも一方をコンピュータ計算する、請求項7記載の移動式ロボット100。移動式ロボット100であって、基部120を有し、前記基部120によって支持されたホロノミック駆動システム200を有し、前記駆動システム200は、各々が垂直中心軸線Z回りに三辺形的に間隔を置いて位置した第1、第2及び第3の駆動輪210a,210b,210cを有し、各駆動輪210a,210b,210cは、前記垂直中心軸線Zに関して半径方向軸線Slipに垂直な駆動方向Driveを有し、前記ホロノミック駆動システム200は、前記ロボット100をシーン10の作業面5上で操縦し、前記駆動システム200と通信状態にあるコントローラ500を有し、前記基部120から上方に延びていて、可変高さHLを有する脚部130を有し、前記脚部130によって支持された胴部140を有し、前記胴部140は、前記基部120の上に張り出た底面144を備えた肩142を備え、前記駆動システム200の前方駆動方向Fに沿って下方に向いた状態で前記胴部140の前記底面144に取り付けられたイメージングセンサ450,450aを有し、前記イメージングセンサ450,450aは、前記ロボット100の周りのシーン10の三次元イメージを捕捉する、移動式ロボット100。前記イメージング装置450,450aは、光のスペックルパターンをシーン10に放出するスペックルエミッタ1310と、前記シーン10内の物体12からの前記スペックルパターンの反射光を受け取るイメージャ1320とを有し、前記コントローラ500は、前記シーン10内の基準物体12から反射された前記スペックルパターンの基準イメージを記憶し、前記基準イメージは、前記基準物体12から互いに異なる距離Znのところで捕捉され、前記シーン10内の標的物体12から反射された前記スペックルパターンの少なくとも1つの標的イメージを前記基準イメージと比較し、それにより、前記標的物体12の反射面の距離ΔZを求める、請求項9記載の移動式ロボット100。前記イメージングセンサ450,450aは、前記ロボット100の駆動方向Fに沿って前記シーン10のイメージを捕捉し、前記イメージは、a三次元深度イメージ、bアクティブな照明イメージ及びc周囲照明イメージのうちの少なくとも1つを含む、請求項9又は10記載の移動式ロボット100。前記コントローラ500は、前記イメージ比較に基づいて前記シーン10内の物体12の存在場所を突き止め、そして前記物体存在場所に基づいて駆動指令を前記駆動システム200に送り出して前記ロボット100を前記シーン10内で操縦する、請求項10又は11記載の移動式ロボット100。前記コントローラ500は、前記標的物体12上の一次スペックルパターンを求め、前記一次スペックルパターンと前記基準イメージの前記スペックルパターンとの相互相関性及び非相関性のうちの少なくとも一方をコンピュータ計算する、請求項10~12のうちいずれか一に記載の移動式ロボット100。前記イメージングセンサ450,450aは、前記作業面5よりも2フィート61.0cm以上、上方の高さ位置のところに位置決めされていて、前記ロボット100の移動方向Fにおいて床平面5を含む空間ボリュームから点群を得ることができるよう差し向けられたボリューム形点群イメージング装置450,450aから成る、請求項10~13のうちいずれか一に記載の移動式ロボット100。前記イメージングセンサ450,450aは、前記駆動システム200の前記駆動輪210a,210b,210cの前方の前記作業面5を視認するよう好ましくは前記胴部140の底面144内に引っ込んだ状態で前記胴部140に取り付けられている、請求項9~14のうちいずれか一に記載の移動式ロボット100。前記イメージングセンサ450,450aは、少なくとも45°の水平視野θvH及び少なくとも40°及び/又は好ましくは約1メートル~約5メートルの範囲の垂直視野θvVを有する、請求項9~15のうちいずれか一に記載の移動式ロボット100。前記イメージングセンサ450,450aは、前記イメージングセンサ450,450aの側方視野452,θvHを広げるよう前記前方駆動方向Fに対して左右に走査する、請求項9~16のうちいずれか一に記載の移動式ロボット100。前記イメージングセンサ450,450aは、約44ミリ秒の待ち時間を有し、好ましくは、前記イメージングセンサ450,450aのイメージング出力は、待ち時間を補償するタイムスタンプを受け取る、請求項9~17のうちいずれか一に記載の移動式ロボット100。前記イメージングセンサ450,450aは、前記コントローラ500と通信するためのシリアル周辺インターフェースを有する、請求項9~18のうちいずれか一に記載の移動式ロボット100。前記基部120の周りに配置されていて、前記脚部130及び前記胴部140のうちの少なくとも一方に侵害する物体12を検出するために前記ロボット100の周りにソナー検出カーテン412を提供するよう上方に向いたソナー近接センサ410,410a,410b,410c,410d,410e,410f、410g、410h、410iのアレイを更に有し、好ましくは、ソナー近接センサ410,410a,410b,410c,410d,410e,410f、410g、410h、410iのアレイは、前記胴部140から遠ざかる方向に向いている、請求項9~19のうちいずれか一に記載の移動式ロボット100。前記コントローラ500と通信状態にあるレーザスキャナ440を更に有し、前記レーザスキャナ440は、前記前方駆動方向Fに心出しされると共に前記作業面5に実質的に平行な視野442を有する、請求項9~20のうちいずれか一に記載の移動式ロボット100。各駆動輪210a,210b,210cは、前記駆動輪210a,210b,210cの周囲に沿って設けられた第1及び第2の列232,234をなすローラ230を有し、各ローラ230は、前記駆動輪210a,210b,210cの転動方向DRに垂直な転動方向Drを有し、好ましくは、前記ローラ230は各々、弧状転動面を備え、前記ローラ230は一緒になって、前記駆動ホール210a,210b,210cの少なくとも実質的に円形の転動面を構成している、請求項9~21のうちいずれか一に記載の移動式ロボット100。テレプレゼンス用途向きの自動推進式テレビ会議プラットホーム100であって、前記自動推進式テレビ会議プラットホーム100は、駆動システム200を支持した駆動システムシャーシ122と、前記駆動システムシャーシ122の上方に設けられていて、毎秒100億を超える命令MIPSを処理することができるコンピュータ500と、前記コンピュータ500の上方に支持されたディスプレイ310,310a,310b,312と、前記コンピュータ500の上方に支持されていて、前記ディスプレイ310,310a,310b,312とは別個に少なくとも1つの自由度で動くことができるカメラ320,320a,320b,450,450a,450bとを有し、前記カメラ320,320a,320b,450,450a,450bは、地面5から3フィート91.4cmを超えるところに且つ前記ディスプレイ320,320a,320b,450,450a,450bのディスプレイ領域の頂縁からディスプレイ高さの10パーセント未満のところに位置決めされた対物レンズ1176,1178,1530を有する、自動推進式テレビ会議プラットホーム100。前記カメラ320,320a,320b,450,450a,450bは、前記ロボット100に隣接した空間ボリュームから点群を得ることができるよう位置決めされたボリューム形点群イメージング装置450,450a,450bを含み、好ましくは、ボリューム形点群イメージング装置450,450a,450bは、地面よりも約1フィート30.5cm以上、上方の高さ位置のところに位置決めされると共に前記ロボット100の移動方向において床平面を含む空間ボリュームから点群を得ることができるよう差し向けられている、請求項23記載の自動推進式テレビ会議プラットホーム100。前記ディスプレイ310,310a,310b,312は、少なくとも150平方インチ967.7cm2のディスプレイ面積を有し、少なくとも1つの自由度で動くことができる、請求項23又は24記載の自動推進式テレビ会議プラットホーム100。前記カメラ320,320a,320b,450,450a,450bの前記対物レンズ1176,1178,1530は、ズームレンズから成る、請求項23~25のうちいずれか一に記載の自動推進式テレビ会議プラットホーム100。少なくとも3時間にわたって前記コンピュータ500に電力供給するよう構成されたバッテリ105を更に有する、請求項23~26のうちいずれか一に記載の自動推進式テレビ会議プラットホーム100。前記駆動システム200は、好ましくは第1、第2及び第3の駆動輪210a,210b,210cを含む電動全方向性駆動装置を有し、各駆動輪は、垂直中心軸線Z回りに三辺形的に間隔を置いて配置されると共に前記駆動システムシャーシ122によって支持され、各駆動輪210a,210b,210cは、前記垂直中心軸線Zに対して半径方向軸線Slipに垂直な駆動方向Driveを有する、請求項23~27のうちいずれか一に記載の自動推進式テレビ会議プラットホーム100。前記基部120から上方に延びていて、可変高さHLを有する脚部130を更に有し、前記脚部130によって支持された胴部140を更に有し、前記胴部140は、前記基部120の上に張り出た底面144を備えた肩142を備え、前記胴部140によって支持された頸部150を更に有し、前記頸部150によって支持された頭部160を更に有し、前記頸部150は、前記頭部160を前記垂直中心軸線Zに関してパンしたり傾動させたりし、前記ディスプレイ310,310a,310b,312と前記カメラ320,320a,320b,450,450a,450bの両方は、前記頭部160によって支持されている、請求項23~28のうちいずれか一に記載の自動推進式テレビ会議プラットホーム100。前記胴部140の底面144に取り付けられると共に前記駆動システム200の前方駆動方向Fに沿って下方に向いた胴部イメージングセンサ450,450aを更に有し、前記胴部イメージングセンサ450,450aは、前記ロボット100の周りのシーンの三次元イメージを捕捉する、請求項29記載の自動推進式テレビ会議プラットホーム100。前記頭部160に取り付けられると共に前記ロボット100の周りのシーン10の三次元イメージを捕捉する頭部イメージングセンサ450,450bを更に有する、請求項29又は30記載の自動推進式テレビ会議プラットホーム100。移動式ロボット100を作動させる方法であって、前記方法は、三次元深度イメージデータを受け取るステップと、前記ロボット100の周りの環境10に対応した局所知覚空間405を創成するステップと、地面5の上方に且つ前記ロボット100の高さ位置よりも下に位置する検出物体12に対応する前記局所知覚空間405の部分を障害物2102として分類するステップと、前記地面5の下に位置する検出物体12に対応する前記局所知覚空間405の部分を障害物2102として分類するステップと、前記地面5上の遮られていない領域に対応した前記局所知覚空間405の部分を自由空間2106として分類するステップと、残りの全ての分類されなかった局所知覚空間を未知物2104として分類するステップと、駆動指令を実行して前記自由空間2106及び前記未知物2104のうちの少なくとも一方として分類された局所知覚空間405に対応する前記環境自由内の場所まで動かすステップとを有する、方法。前記分類は、アップデートされた三次元深度イメージデータで持続されなければ、経時的に崩れる、請求項32記載の方法。前記障害物2102又は前記未知物2104として分類された対応の局所知覚空間405を有する場所まで動くロボット経路2110を拒否することにより実行可能なロボット駆動指令に対応した予測ロボット経路2110を評価するステップを更に有する、請求項32又は33記載の方法。前記三次元深度イメージデータを用いて三次元ボクセル格子を創成するステップと、前記三次元ボクセル格子を二次元格子2100に変換するステップとを更に有し、前記二次元格子2100の各セルは、前記局所知覚空間405の一部分に対応している、請求項32~34のうちいずれか一に記載の方法。前記局所知覚空間405に対応した格子2100を創成するステップを更に有し、各格子セルは、前記対応の局所知覚空間405の前記分類を有し、前記障害物2102又は前記未知物2104として分類された各格子セルに関し、該格子セル内の格子点を検索するステップ及び衝突評価を実行するステップを更に有し、好ましくは、前記衝突評価は、前記ロボット100の存在場所周りの衝突円内に位置する格子点を拒否するステップ及び/又は前記ロボット100の存在場所に中心を持つ衝突三角形内に位置する格子点を拒否するステップを含む、請求項32~35のうちいずれか一に記載の方法。前記三次元深度イメージデータを提供するイメージングセンサ450,450a,450bの視野452を未知物2104として分類された局所知覚空間405に対応する前記環境10内の領域の方へ差し向けるステップを更に有する、請求項32~36のうちいずれか一に記載の方法。前記ロボット100を、前記三次元深度イメージデータを提供するイメージングセンサ450,450a,450bの視野452を超えてロボット位置に動かす駆動指令を拒否するステップを更に有する、請求項32~37のうちいずれか一に記載の方法。前記ロボット100がしきい期間の間、静止しているとき、前記ロボット100の前方駆動方向Fに垂直にホロノミック的に動く駆動指令を拒否するステップを更に有し、前記三次元深度イメージデータを提供するイメージングセンサ450,450a,450bは、前記前方駆動方向Fと整列する、請求項32~38のうちいずれか一に記載の方法。前記ロボット100が前方に駆動している間、前記ロボット100の前方駆動方向Fに垂直にホロノミック的に動く駆動指令を受け入れるステップを更に有し、前記三次元深度イメージデータを提供するイメージングセンサ450,450a,450bは、前記前方駆動方向Fと整列すると共に少なくとも45°の視野角θVを有する、請求項32~39のうちいずれか一に記載の方法。前記ロボット100が未知物2104として分類された対応の局所知覚空間405を有する前記環境10内の場所に達する前に前記三次元深度イメージデータを提供するイメージングセンサ450,450a,450bの視野452が前記場所に及んでいることが前記ロボット100によって確認されると、前記未知物2104として分類された対応の局所知覚空間405を有する前記環境10内の前記場所まで動かす駆動指令を受け入れるステップを更に有する、請求項32~40のうちいずれか一に記載の方法。前記三次元深度イメージデータは、前記ロボット100に取り付けられていて、前記ロボット100に隣接して位置する空間ボリュームから点群を得ることができるボリューム形点群イメージング装置450,450a,450bによって提供され、好ましくは、ボリューム形点群イメージング装置450,450a,450bは、地面よりも約1フィート30.5cm以上、上方の高さ位置のところに位置決めされると共に前記ロボット100の移動方向において床平面を含む空間ボリュームから点群を得ることができるよう差し向けられている、請求項32~41のうちいずれか一に記載の方法。移動式ロボット100を作動させて人について行くようにする方法であって、前記方法は、前記ロボット100に隣接して位置する空間ボリュームから点群を得ることができるよう位置決めされたボリューム形点群イメージング装置450,450a,450bから三次元イメージデータを受け取るステップと、受け取った前記三次元イメージデータを物体2406にセグメント化するステップと、前記物体2406をフィルタ処理して第1のしきいサイズよりも大きく且つ第2のしきいサイズよりも小さい物体2406を除去するステップと、前記フィルタ処理された物体2410の少なくとも一部分に対応した人2300を識別するステップと、前記ロボット100の少なくとも一部分を前記識別された人2300に対して動かすステップとを有する、方法。前記三次元イメージデータは、ピクセル1174pの二次元アレイを含み、各ピクセル1174pは、深度情報を含む、請求項43記載の方法。隣りのピクセル1174pに対する各ピクセル1174pの近接性に基づいて前記ピクセル1174pを前記物体2406にグループ化するステップを更に有する、請求項43又は44記載の方法。前記識別された人2300が前記ロボット100のしきい距離DR内に位置しているとき、前記ロボット100を前記識別された人2300から遠ざけるステップを更に有し、好ましくは、前記イメージング装置450,450a,450bの視野452を前記識別された人2300上に維持するステップを更に有する、請求項43~45のうちいずれか一に記載の方法。好ましくは、前記識別された人2300が前記ロボット100のしきい距離DRを超えて位置しているとき、前記ロボット100を前記識別された人2300の方へ駆動することによって且つ/或いはウェイポイント駆動指令を送り出して前記ロボット100を前記識別された人2300の追従距離DR内に駆動することによって、前記ロボット100を駆動して前記ロボット100と前記識別された人2300との間の追従距離DRを維持するステップを更に有する、請求項43~46のうちいずれか一に記載の方法。好ましくは対応の視野452を少なくとも実質的に前記識別された人2300の方へ向けるよう前記イメージング装置450,450a,450bをパンすること及び傾動させることのうちの少なくとも一方によって前記イメージング装置450,450a,450bの視野452を前記識別された人2300に維持するステップを更に有する、請求項43~47のうちいずれか一に記載の方法。前記イメージング装置450,450a,450bは、地面5よりも少なくとも約1フィート30.5cm、上方の高さ位置のところに位置決めされると共に前記ロボット100の移動方向において床平面を含む空間ボリュームから点群を得ることができるよう差し向けられている、請求項43~48のうちいずれか一に記載の方法。前記第1のしきいサイズは、約8フィート243.8cmの高さを含むと共に/或いは前記第2のしきいサイズは、約3フィート91.4cmの高さを含む、請求項43~49のうちいずれか一に記載の方法。好ましくはカルマンフィルタを用いて各識別された人2300の運動軌跡を追跡すると共に反映させることによって前記フィルタ処理された物体2400に対応した多数の人2300を識別するステップを更に有する、請求項43~50のうちいずれか一に記載の方法。少なくとも部分的に少なくとも1人の識別された人2300の運動軌跡に基づいて駆動指令を送り出すステップを更に有する、請求項43~51のうちいずれか一に記載の方法。移動式ロボット100のための物体検出方法であって、前記方法は、前記ロボット100を作業面5の端から端まで操縦するステップを有し、前記ロボット100周りのシーン10に光を放出するステップを有し、前記ロボット100の駆動方向Fに沿って前記シーン10のイメージを捕捉するステップを有し、前記イメージは、a三次元深度イメージ、bアクティブな照明イメージ及びc周囲照明イメージのうちの少なくとも1つを含み、前記イメージに基づいて前記シーン10中の物体12の存在場所を突き止めるステップを有し、前記物体存在場所について信頼水準を割り当てるステップを有し、前記物体存在場所及び対応の信頼水準に基づいて前記ロボット100を前記シーン10内で操縦するステップを有する、方法。前記シーン10の物体占有マップ1700,1820を作成するステップを更に有する、請求項53記載の方法。各物体存在場所の前記信頼水準を経時的に低下させ、ついには、それぞれの前記物体存在場所を新たに定められた物体存在場所でアップデートするステップを更に有する、請求項53又は54記載の方法。前記ロボット100を操縦して、前記物体12との接触及び前記物体12の周囲に沿う追従のうちの少なくとも一方を行い又は前記ロボット100を操縦して前記物体12を回避するステップを更に有する、請求項53~55のうちいずれか一に記載の方法。光を前記シーン10に間欠パルスの状態で放出するステップを更に有し、オプションとして、前記放出された光パルスの周波数を変更するステップを有し、好ましくは、前記光パルスを第1の省電力周波数で放出し、センサ事象を受け取ると、前記光パルスを第2の能動周波数で放出し、前記センサ事象は、好ましくは、前記シーン10内における物体12の存在を表すセンサ信号を含む、請求項53~56のうちいずれか一に記載の方法。光のスペックルパターンを前記シーン10に放出するステップ、前記シーン10内の前記物体12からの前記スペックルパターンの反射光を受け取るステップ、前記シーン10内の基準物体12から反射された前記スペックルパターンの基準イメージを記憶するステップ、前記基準イメージは、前記基準物体12から互いに異なる距離Znを置いたところで捕捉され、前記シーン10内の標的物体12から反射された前記スペックルパターンの少なくとも1つの標的イメージを捕捉するステップ及び前記標的物体12の反射面の距離ΔZを求めるために前記少なくとも1つの標的イメージを前記基準イメージと比較するステップによって、前記シーン10の前記三次元深度イメージを作成するステップを更に有する、請求項53~57のうちいずれか一に記載の方法。前記標的物体12上の一次スペックルパターンを求めるステップ及び前記一次スペックルパターンと前記基準イメージの前記スペックルパターンとの相互相関性及び非相関性のうちの少なくとも一方をコンピュータ計算するステップを更に有する、請求項58記載の方法。移動式ロボット100のための物体検出方法であって、前記方法は、前記ロボット100を作業面5の端から端まで操縦しながら光のスペックルパターンを前記ロボット100の周りのシーン10に放出するステップと、前記シーン10内の標的物体12の表面から反射された前記放出スペックルパターンの反射光を受け取るステップと、前記標的物体12の各反射面の距離Znを求めるステップと、前記標的物体12の三次元深度マップを作成するステップと、前記標的物体12を分類するステップとを有する、方法。前記シーン10内の基準物体12から反射された前記スペックルパターンの基準イメージを記憶するステップを更に有し、前記基準イメージは、前記基準物体12から互いに異なる距離Znを置いたところで捕捉される、請求項60記載の方法。前記標的物体12上の一次スペックルパターンを求めるステップ及び前記一次スペックルパターンと前記基準イメージの前記スペックルパターンとの相互相関性及び非相関性のうちの少なくとも一方をコンピュータ計算するステップを更に有する、請求項60又は61記載の方法。前記標的物体12の前記分類に基づいて前記ロボット100を前記標的物体12に対して操縦するステップを更に有する、請求項60~62のうちいずれか一に記載の方法。光の前記スペクトルパターンを間欠パルスで放出するステップを更に有し、オプションとして、前記放出光パルスの周波数を変更するステップを更に有する、請求項60~63のうちいずれか一に記載の方法。前記標的物体12の表面から反射された前記放出スペックルパターンの反射光のフレームを好ましくは約10Hz~約90Hzのフレーム率で捕捉するステップを更に有し、オプションとして、前記標的物体12の識別のために連続したフレームで捕捉されたスペックルパターン相互間の差を分析するステップを更に有する、請求項60~64のうちいずれか一に記載の方法。移動式ロボットシステム3301であって、ロボット100を有し、前記ロボットは、駆動システム200と、前記駆動システム200と通信状態にあるコントローラ500と、前記コントローラ500と通信状態にあると共に前記ロボット100に隣接して位置するスペースボリューム3330から点群3320を得ることができるよう差し向けられたボリューム形点群イメージング装置450,450a,450bとを有し、前記移動式ロボット100と通信状態にあると共にソフトウェアプログラム3300を実行する遠隔コンピュータ計算装置310を有し、前記ソフトウェアプログラム3300は、前記イメージング装置450,450a,450bにより捕捉された前記ボリューム形点群3310に基づいて三次元シーン10a,3310を表示すると共に前記三次元シーン10a,3310内の前記ロボット100のレンダリングされたソリッドモデル100aを表示し、ロボット指令を受け取り、前記ロボット指令を前記ロボットコントローラ500に伝える、移動式ロボットシステム3301。前記ボリューム形点群イメージング装置450,450a,450bは、地面よりも約1フィート30.5cm以上、上方の高さ位置のところで前記駆動システム200の上方に支持されると共に前記移動式ロボット100の移動方向において床平面を含む空間ボリュームから点群を得ることができるよう差し向けられている、請求項66記載の移動式ロボットシステム3301。前記ソフトウェアアプリケーション3300は、前記ロボットモデル100aを第3のパースペクティブ、好ましくは、前記ロボットモデル100aの後ろの高くなった位置から、より好ましくは、前記ロボット100に隣接して位置する視認スペースボリューム3310に対する前記ロボット100の実際の向き及び/又は姿勢に対応した前記表示された三次元シーン10a,3310に対する向き及び/又は姿勢で表示する、請求項66又は67記載の移動式ロボットシステム3301。前記コンピュータ計算装置310は、タッチスクリーン312を有し、好ましくは、前記コンピュータ計算装置は、タブレット形コンピュータであり、前記ソフトウェアアプリケーション3300は、前記タッチスクリーン312上のタッチジェスチャを認識するよう構成されている、請求項68記載の移動式ロボットシステム3301。前記ソフトウェアアプリケーション3300は、前記ロボットモデル100aに関して前記タッチスクリーン312により受け取られたタッチジェスチャに基づいてロボット指令を決定する、請求項69記載の移動式ロボットシステム3301。前記ソフトウェアアプリケーション3300は、前記ロボットモデル100aの位置及び/又は運動学的状態の変化を求め、ロボット指令を決定して前記ロボット100を前記変更されたロボットモデル100aと同期させる、請求項70記載の移動式ロボットシステム3301。前記ソフトウェアアプリケーション3300は、受け取ったタッチジェスチャに基づいて前記ロボットモデル100a及び/又は前記三次元シーン10a,33種々の図において、同一の参照符号は、同一の要素を示している。移動式ロボット移動ロボットとも呼ばれるは、ホームアシスタンス在宅支援からコマーシャルアシスタンス商業的支援までの範囲にわたる多くのサービスを提供するよう人と対話し又はインターフェースすることができる。ホームアシスタンスの例では、移動式ロボットは、日常の仕事について年取った人を支援することができ、かかる仕事としては、薬物療法、移動支援、コミュニケーション支援例えば、テレビ会議、電気通信、Internetアクセス等、住宅又は現場監視内側及び/又は外側、人の監視及び/又は個人用緊急時対応システムpersonalemergencyresponsesystem:PERSの提供が挙げられるが、これらには限定されない。コマーシャルアシスタントの場合、移動式ロボットは、テレビ会議例えば、病院環境内における、売場専用端末POS端末、対話式情報/マーケティング端末等を提供することができる。図1及び図2を参照すると、幾つかの具体例では、移動式ロボット100が前方駆動方向Fを定めるロボット本体110又はシャーシを有している。ロボット100は、駆動システム200、インターフェースモジュール300及びセンサシステム400を更に有し、これらは各々、ロボット本体110により支持されると共にロボット100の動作と運動を協調させるコントローラ500と通信状態にある。電源100を例えば、1個又は複数個のバッテリが必要に応じてこれらコンポーネントの各々と電気的通信関係をなして支持されるのが良く、この電源は、電力を必要に応じてこれらコンポーネントの各々に送り出す。例えば、コントローラ500は、1,000MIPS1秒当たり100万の命令を超える数の命令を実施することができるコンピュータを含むのが良く、電源1058は、コンピュータに3時間を超える間、電力供給するのに十分なバッテリを提供する。ロボット本体110は、図示の実施例では、基部120、基部120から上方に延びる少なくとも1本の脚部130及び少なくとも1本の脚部130によって支持された胴部140を有する。基部120は、少なくとも駆動システム200を部分的に支持することができる。ロボット本体110は、胴部140によって支持された頸部150を更に有する。頸部150は、頭部160を支持し、頭部160は、インターフェースモジュール300の少なくとも一部分を支持している。基部120は、機械的安定性を維持するために基部120の低い重心CGB及びロボット100の低い全体的重心CGRを維持するのに十分なおもり例えば、電源105バッテリを支持することによってを有する。図3及び図4A~図4Cを参照すると、幾つかの具体例では、基部120は、三辺形的に対称の形状例えば、平面図で見て三角形の形状を定めている。例えば、基部120は、基部シャーシ122を有するのが良く、基部シャーシ122は、三辺形状の基部120例えば、図4A参照の各脚部に対応する第1、第2及び第3の基部本体部分124a,124b,124cを備えた基部本体124を支持している。各基部本体部分124a,124b,124cは、物体との接触に応答して基部シャーシ122に対して別個独立に動くよう基部シャーシ122によって可動的に支持されるのが良い。基部120の三辺形的対称形状により、ロボット100周りに360°にわたる出っ張りバンプ隆起部の検出が可能である。各基部本体部分124a,124b,124cは、基部シャーシ122に対する対応の基部本体部分124a,124b,124cの運動を検出する関連の接触センサ例えば、容量センサ、リードスイッチ等を有するのが良い。幾つかの具体化例では、駆動システム200は、ロボット100の全方向性及び/又はホロノミック運動制御を可能にする。本明細書で用いられる全方向性という用語は、実質的に任意の平面方向、即ち、左右側方、前後及び回転運動を行うことができるということを意味している。これら方向は、一般に、本明細書ではそれぞれx、y及びθzと称する。さらに、ホロノミックという用語は、この用語の文献的使用と実質的に一致した仕方で用いられており、平面方向に3つの平面状自由度、即ち、2つの並進及び1つの回転で動くことができるということを意味している。それ故、平面方向に3つの平面速度前後、側方及び回転の実質的に任意の比率で構成された速度で動くことができる能力を備えると共に実質的に連続した仕方でこれらの比率を変化させることができる能力を備えている。ロボット100は、車輪付き移動方式を用いて人の環境例えば、典型的には二足歩行居住者向きに設計された環境で働くことができる。幾つかの具体化例では、駆動システム200は、垂直軸線Z回りに等間隔を置いて例えば、120°の間隔を置いて即ち、三辺形対称に配置された第1、第2及び第3の駆動輪210a,210b,210cを有するが、他の構成も又採用可能である。図5A及び図5Bを参照すると、駆動輪210a,210b,210cは、横方向弧状転動面即ち、転動方向DRに対して横方向又は垂直な方向に湾曲した輪郭形状を備えるのが良く、この転動面は、ホロノミック駆動システム200の操縦性を助けることができる。各駆動輪210a,210b,210cは、それぞれ駆動モータ220a,220b,220cに結合されており、この駆動モータは、他の駆動モータ220a,220b,220cとは別個独立に駆動輪210a,210b,210cを前進前方方向及び/又は後退後方方向に駆動することができる。各駆動モータ220a~220cは、それぞれのエンコーダ212図8Cを有するのが良く、このエンコーダは、コントローラ500に車輪回転フィードバックを提供する。幾つかの実施例では、各駆動輪210a,210b,210cは、正三角形の3つの頂点のうちの1つに又はこの近くに取り付けられ、それぞれの三角形の端の角度の二等分線に垂直な駆動方向前後方向を有する。三辺形対称ホロノミック基部120を前方駆動方向Fで駆動することにより、ロボット100は、閉じ込め状態又はクラッタからの自律的な逃げ出しのために非前方駆動方向に移行することができ、次に、逃げ出しが解決した後、前方駆動方向Fに沿って駆動するよう回転すると共に/或いは並進することができる。図5C及び図5Dを参照すると、幾つかの具体化例では、各駆動輪210は、ローラ230の内側の列232及び外側の列234を有し、各列は、駆動輪210の転動方向DRに垂直な転動方向Drを有する。ローラ230の列232,234は、互い違いに配置されているのが良い例えば、その結果、内側の列232に属する1つのローラ230は、外側の列234に属する2つの隣り合うローラ230相互間に等しく位置決めされる。ローラ230は、駆動輪210の駆動方向に垂直な無限のスリップを行う。ローラ230は、これらの転動方向Drに垂直な弧状例えば、凸状外面235を備え、その結果、ローラ230は、一緒になって、駆動輪210の円形又は実質的に円形の周囲を定めている。ローラ230の輪郭形状は、駆動輪210の全体的輪郭形状に影響を及ぼす。例えば、ローラ230は、一緒になって駆動輪210のスカラップ状転動面例えば、トラクションのためのトレッドとしてを構成する弧状ローラ外面235を備えることができる。しかしながら、ローラ230をこれが駆動輪210の全体として円形の転動面を構成する輪郭形状を有するよう構成することにより、ロボット100は、車輪トレッドと垂直に振動するのではなく、平坦な表面上で滑らかに移動することができる。角度をなして物体に接近する場合、ローラ230半径rの互い違いの列232,234をトレッドとして用いると、駆動輪210の車輪半径Rとほぼ同じほど高く又はほぼ同じほど高い物体を登ることができる。図3~図5Bに示された実施例では、第1の駆動輪210は、前方駆動方向Fに沿う先導駆動輪として構成され、残りの2つの駆動輪210b,210cは、これに後続する。この構成例では、前方に駆動するためには、コントローラ500は、第1の駆動輪210aが前方駆動方向Fに沿ってスリップしている間に第2及び第3の駆動輪210b,210cが同じ速度で前方転動方向に駆動するようにする駆動指令を出すのが良い。さらに、この駆動輪構成により、ロボット100は、短時間で停止することができる例えば、前方駆動方向Fに対して迅速な負の加速を生じさせる。これは、三輪設計の自然な動的不安定性に起因している。前方駆動方向Fが2本の前方駆動輪相互間の角度の二等分線に沿っている場合、短時間で停止させると、ロボット100がその2本の前輪を中心として回動してこれを転倒させるトルクが生じる。これとは異なり、1本の駆動輪210aを前方に自然に走行させることにより、ロボット100が支持され又は急停止を行うことが必要な場合であっても前方に倒れるのが阻止される。しかしながら、停止状態から加速すると、コントローラ500は、ロボット100の全体的重心CGRからロボット100の慣性モーメントIを考慮に入れることができる。駆動システム200の幾つかの具体化例では、各駆動輪210a,210b,210cは、垂直軸Zと半径方向に整列した転動方向DRを有し、垂直軸Zは、ロボット100のX軸及びY軸と直交している。第1の駆動輪210aは、前方駆動方向Fに沿う先導駆動輪として構成されるのが良く、残りの2つの駆動輪210b,210cは、これに後続する。この構成例では、前方に進むために、制御装置500は、第1の駆動輪210aが前方転動方向に進むようにし、第2及び第3の駆動輪210b,210cが第1の駆動輪210aと同一の速度で、しかしながら、逆方向に進むようにする駆動指令を出すのが良い。他の具体化例では、駆動システム200は、2本の駆動輪210a,210b相互間の角度の角度二等分線がロボット100の前方駆動方向Fと整列するよう位置決めされた第1及び第2の駆動輪210a,210bを有するよう配置されるのが良い。この構成例では、前方に駆動するため、コントローラ500は、第1及び第2の駆動輪210a,210bを前方転動方向に且つ同一速度で駆動させ、駆動させる駆動指令を出すのが良く、他方、第3の駆動輪210cは、逆方向に逆方向に駆動し又は空回り状態のままであり、第1及び第2の駆動輪210a,210bの後ろに引きずられる。前方に駆動しながら左又は右に曲がるため、コントローラ500は、対応の第1又は第2の駆動輪210a,210bが比較的迅速な/遅い速度で駆動するようにする指令を出すのが良い。他の構成の駆動システム200も又使用できる。駆動輪210a,210b,210cは、円筒形、円形、楕円形又は多角形の輪郭形状を備えることができる。再び図1~図3を参照すると、基部120は、基部120からZ方向に上方に延びる少なくとも1本の脚部130を支持している。脚部130は、胴部140を基部120に対して昇降させるために可変高さを有するよう構成されているのが良い。幾つかの具体化例では、各脚部130は、互いに対して動く例えば、入れ子式又は伸縮運動、直線運動及び/又は角運動第1及び第2の脚部分132,134を有する。連続的に小径の押し出し部を互いに入れ子式に出入りさせたり比較的大径の基部押し出し部から入れ子式に出すのではなく、第2の脚部分134は、図示の実施例では、第1の脚部分132上でこれに沿って入れ子式に動き、かくして、他のコンポーネントを第2の脚部分134に沿って配置することができると共に潜在的に第2の脚部分134と一緒に基部120の比較的近くまで動くことができる。脚部130は、第2の脚部分134を第1の脚部分132に対し動かすアクチュエータ組立体136図8Cを有するのが良い。アクチュエータ組立体136は、昇降モータ138b及び位置フィードバックをコントローラ500に提供するエンコーダ138cと連絡状態にあるモータドライバ138aを含むのが良い。一般に、入れ子式構成は、脚部130全体の重心CGLをできるだけ低く保つために基部120のところの比較的大径の押し出し部から入れ子式に出入りする連続的に小径の押し出し部を有する。さらに、脚部130を完全に伸長させたときに基部120のところで生じる大きなトルクを取り扱うために底部のところに強力且つ/又は大径のコンポーネントを設けるのが良い。しかしながら、このやり方は、2つの問題を提起する。第1に、比較的小径のコンポーネントが脚部130の頂部のところに配置されると、雨、埃又は他の粒状物が押し出し部に沿って流れ又は落ちる傾向があり、それにより押し出し部相互間の空間に入り込み、かくして押し出し部の嵌合を妨害する。これにより、脚部130の完全な移動性/関節運動を依然として維持しようとする場合に極めて困難な密封上の問題が生じる。第2に、ロボット100にペイロード又は付属装置を取り付けることが望ましい場合がある。付属装置に取り付ける1つのありふれた場所は、胴部140の頂部である。第2の脚部分134が入れ子式に第1の脚部分に対して出入りした場合、付属装置及びコンポーネントは、胴部140と一緒に移動する必要がある場合、第2の脚部分134全体の上方にしか取り付けることができない。もしそうでなければ、第2の脚部分134に取り付けられたコンポーネントが脚部130の入れ子式運動を制限することになる。第2の脚部分134を第1の脚部分130上でこれに沿って入れ子式に動かすことにより、第2の脚部分134は、基部120に対して垂直に動くことができる追加のペイロード取り付け箇所を提供する。この種の構成により、水又は空気により運ばれる粒状物が脚部分132,134相互間の空間に入らないで、全ての脚部分132,134例えば、押し出し部の外部で胴部140に沿って流れる。これにより、脚部130の継手又は関節部の密封が大幅に単純化される。さらに、胴部140のペイロード/付属装置取り付け特徴部及び/又は第2の脚部分134は、常時露出され、脚部130がどのように伸長されようと接近可能である。図3及び図6を参照すると、脚部130は、胴部140を支持し、胴部140は、基部120を覆うと共にこの上方に延びる肩142を有するのが良い。図示の実施例では、胴部140は、肩142の少なくとも一部を形成する下方に向いた底面44例えば、基部寄り及び逆の上方に向いた頂面146を有し、これら相互間には側面148が延びている。胴部140は、脚部130によって支持された中央部分141及び脚部130の側方広がりを超える側方に延びる周辺自由部分143を備えた種々の形状又は幾何学的形状、例えば、円形又は楕円形の形をしているのが良く、かくして、下方に向いた表面144を構成する張り出し部分が形成されている。幾つかの実施例では、胴部140は、肩を構成する多角形又は他の複雑な形状を有し、肩は、基部120を覆った状態で脚部130を超えて延びる張り出し部分となっている。ロボット100は、ペイロードを受け入れる1つ又は2つ以上の付属装置ポート170例えば、機械的及び/又は電気的相互連結箇所を有するのが良い。付属装置ポート170は、受け入れたペイロードがセンサシステム400例えば、胴部140の底面144及び/又は頂面146等に取り付けられているのセンサを遮蔽せず又は妨害しないよう配置されるのが良い。幾つかの具体化例では、図6に示されているように、胴部140は、胴部140の後方部分149に設けられていて、例えば、バスケット340に入ったペイロードを受け入れる1つ又は2つ以上の付属装置ポート170を有し、それにより、胴部140の前方部分147又はロボット本体110の他の部分に取り付けられているセンサが妨害されないようになっている。再び図1~図3及び図7を参照すると、胴部140は、頭部160を胴部140に対してパンしたり係合させたりする頸部150を支持している。図示の実施例では、頸部150は、ローテータ152及びチルタ154を有する。ローテータ152は、約90°~約360°の角運動範囲θR例えば、Z軸回りを提供することができる。他の範囲も又、採用可能である。さらに、幾つかの実施例では、ローテータ152は、頭部160とロボット100の残部との間の電気的連絡状態を維持しながら制限されない回転数で胴部140に対する頭部160の連続した360°の回転を可能にする電気的コネクタ又は接点を有する。チルタ154は、頭部160とロボット100の残部との間の電気的連絡状態を維持しながら胴部140に対する頭部150の回転を可能にする同一又は類似の電気コネクタ又は接点を有するのが良い。ローテータ152は、リング153例えば、歯付きリングラックに結合され又はこれに係合するローテータモータ151を有するのが良い。チルタ154は、ローテータ152とは別個独立に、頭部を胴部140に対して角度θT例えば、Y軸回りに動かすことができる。幾つかの実施例では、チルタ154は、チルタモータ155を有し、チルタモータ155は、頭部160をZ軸に対して±90°の角度θTの間で動かす。他の範囲、例えば±45°等も又採用可能である。ロボット100は、脚部130、胴部140、頸部150及び頭部160がロボット100の安定した移動性を維持するために基部120の周囲の範囲内に留まるよう構成されているのが良い。図8Fに示されている例示の概略回路図では、頸部150は、パンチルト組立体151を有し、パンチルト組立体151は、ローテータ152及びチルタ154を対応のモータドライバ156a,156b及びエンコーダ158a,158bと一緒に含む。図8A~図8Gは、ロボット100の回路構成の例示の略図である。図8A~図8Cは、基部120のための回路構成の例示の略図を提供しており、基部120は、近接センサ、例えばソナー近接センサ410及びクリフ断崖状箇所近接センサ420、接触センサ430、レーザスキャナ440、ソナースキャナ460及び駆動システム200を収容するのが良い。基部120は、コントローラ500、電源105及び脚部アクチュエータ組立体136を更に収容するのが良い。胴部140は、マイクロコントローラ145、マイクロホン330、スピーカ340、走査型3‐Dイメージセンサ410a及び胴部タッチセンサシステム480を収容するのが良く、胴部タッチセンサシステム480により、コントローラ500は、ユーザの接触又はタッチを受け取ってこれに対して応動することができる例えば、胴部140を基部120に対して動かし、頸部150をパンすると共に/或いは傾動させると共に/或いはこれに応答して指令を駆動システム200に送り出すことによって。頸部150は、パンチルト組立体151を収容するのが良く、パンチルト組立体151は、対応のモータドライバ156a及びエンコーダ138aを有するパンモータ152と、対応のモータドライバ156b及びエンコーダ138bを有するチルトモータ154とを含むのが良い。頭部160は、1つ又は2つ以上のウェブパッド130及びカメラ312を収容するのが良い。図1~図4C及び図9を参照すると、確実且つ堅牢な自律運動を達成するため、センサシステム400は、ロボット100がロボットの環境で取る行為に関する知的な決定を行うことができるのに十分なロボット環境の知覚を生じさせるよう互いに関連して用いることができる幾つかの互いに異なる形式のセンサを有するのが良い。センサシステム400は、ロボット本体110により支持された1つ又は2つ以上の形式のセンサを有するのが良く、かかるセンサとしては、障害物検出衝突回避ODOAセンサ、通信センサ、ナビゲーションセンサ等が挙げられる。例えば、これらセンサとしては、近接センサ、接触センサ、三次元3‐Dイメージング/深度マップセンサ、カメラ例えば、可視光及び/又は赤外線カメラ、ソナー、レーダ、LIDARLightDetectionAndRanging光検知測距、これは、遠くに位置する標的のレンジ及び/又は他の情報を検知するよう散乱光の特性を測定する光学遠隔検出方式を必要とする場合がある、LADARLaserDetectionandRanging等が挙げられるが、これらには限定されない。幾つかの具体化例では、センサシステム400は、レンジングソナーセンサ410例えば、基部120の周囲の周りに9つ、近接クリフ検出器420、接触センサ430、レーザスキャナ440、1つ又は2つ以上の3‐Dイメージング/深度センサ450及びイメージングソナー460を有するのが良い。センサをロボットプラットホームに配置するには幾つかの課題が存在する。第1に、センサは、これらがロボット100の周りの関心のある領域の最大カバレージ有効範囲を有するよう配置されることが必要である。第2に、センサは、ロボット100それ自体がセンサに対する絶対最小限の遮蔽度を生じさせるよう配置されることが必要な場合があり、本質的には、センサは、これらがロボットそれ自体により目隠しされるように配置されてはならない。第3に、センサの配置及び取り付けは、プラットホームの工業的設計の残部に対して出しゃばるようなことがあってはならない。美感の面で、センサが目立たないように取り付けられたロボットがそうではないロボットよりも魅力的であると見なすことができる。実用性の面では、センサは、通常のロボット動作を邪魔しないよう障害物に引っ掛かったり等しないよう取り付けられるべきである。幾つかの具体化例では、センサシステム400は、コントローラ500と通信状態にあると共に近くの又は侵入している障害物を検出するためにロボット100の1つ又は2つ以上のゾーン又は部分内に配置された例えば、ロボット本体110の基部本体部分124a,142b,142cに又はその近くに設けられた1組の又はアレイをなす近接センサ410,420を有する。近接センサ410,420は、物体がロボット100の所与の範囲内にあるときに信号をコントローラ500に提供する集束形赤外線IRエミッタ‐センサ要素、ソナーセンサ、超音波センサ及び/又はイメージングセンサ例えば、3‐D深度マップイメージセンサであるのが良い。図4A~図4Cに示されている実施例では、ロボット100は、基部本体120の周りに設けられる例えば、実質的に等間隔を置いてと共に上向き視野を備えて構成されたアレイをなすソナー形近接センサ410を有する。第1、第2及び第3のソナー近接センサ410a,410b,410cが第1の前方の基部本体部分124aに設けられ又はその近くに設けられており、ソナー近接センサのうちの少なくとも1つは、第1の基部本体124aの半径方向最も外側の縁部125aの近くに位置している。第4、第5及び第6のソナー近接センサ410d,410e,410fが第2の右側の基部本体部分124bに又はその近くに設けられており、ソナー近接センサのうちの少なくとも1つは、第2の基部本体124bの半径方向最も外側の縁部125bの近くに位置する。第7、第8及び第9のソナー近接センサ410g,410h,410iが第3の右側の基部本体部分124cに又はその近くに設けられており、ソナー近接センサのうちの少なくとも1つは、第3の基部本体124cの半径方向最も外側の縁部125cの近くに位置している。この構成により、少なくとも3つの検出ゾーンが得られる。幾つかの実施例では、基部本体120の周りに設けられた1組のソナー近接センサ410例えば、410a~410iは、上方に例えば、実質的にZ方向に向くよう配置され、オプションとして、Z軸から外方に遠ざかるよう角度をなしており、かくして、ロボット100の周りに検出カーテン412が形成されている。各ソナー近接センサ410a~410iは、ソナーエミッション放射波を上方に案内し又は少なくともロボット本体110の他の部分に向かっては案内しない例えば、ロボット本体110のそれ自体に対する運動を検出しないようにするためシュラウド又はエミッション案内414を有するのが良い。エミッション案内414は、シェル又は半シェル形のものであるのが良い。図示の実施例では、基部本体120は、脚部130を越えて側方に延び、ソナー近接センサ410例えば、410a~410iは、脚部130の周りで基部本体120に例えば、実質的に本体基部120の周囲に沿って設けられている。さらに、上方に向いたソナー近接センサ410は、脚部130周りの連続した又は実質的に連続したソナー検出カーテン412を形成するよう互いに間隔を置いて位置している。ソナー検出カーテン412は、高所側方突き出し部分を備えた障害物、例えばテーブル上面、棚等を検出するために使用できる。上方視認型ソナー近接センサ410は、主として水平面内に位置する物体、例えばテーブル上面を見る機能を提供する。これら物体は、これらのアスペクト比に起因して、他のセンサシステムの他のセンサ、例えばレーザスキャナ440又はイメージングセンサ450では見えない場合があり、したがって、ロボット100に対して問題をもたらす場合がある。基部120の周囲に沿って設けられた、上方視認型ソナー近接センサ410は、これら形式の物体/障害物を視認し又は検出する手段となる。さらに、ソナー近接センサ410は、ロボット100の胴部120又は頭部160により遮蔽又は妨害されないように僅かに外方に傾斜した状態で基部周囲の最も幅の広い箇所の周りに配置されるのが良く、かくして、結果的にロボット100それ自体の部分を検出する誤った確信が生じなくなる。幾つかの具体化例では、ソナー近接センサ410は、ソナー近接センサ410の視野の外部で胴部140の周りに設けられていて、かくして、取り付けられたペイロード又は付属装置、例えばバスケット340を自由に受け入れることができる容積部を後に残すよう配置されている上方及び外方に。ソナー近接センサ410は、目に見えないようにしかも障害物に引っ掛かり又は当たる外部特徴部をもたらさないよう基部本体124内に引っ込められるのが良い。センサシステム400は、バックアップの役目を果たしながら障害物を検出するために後方に例えば、前方駆動方向Fとは反対側の方向に向けられた1つ又は2つ以上のソナー近接センサ410例えば、後側近接センサ410jを有するのが良い。後側ソナー近接センサ410jは、そのソナー検出野412を方向付けるエミッション案内414を有するのが良い。さらに、後側ソナー近接センサ410jは、ロボット100と後側ソナー近接センサ410jの視野内の検出物体例えば、バックアップアラートとしてとの間の距離を求めるための測距に使用できる。幾つかの実施例では、後側ソナー近接センサ410jは、ハウジング形式の視覚的又は機能的不規則性をもたらさないよう基部本体120内に引っ込められた状態で設けられる。図3及び図4Bを参照すると、幾つかの具体化例では、ロボット100は、駆動輪210a,210b,210cがクリフ例えば、階段に当たる前にクリフ検出を可能にするよう駆動輪210a,210b,210cの近くに又はこれらの周りに配置されたクリフ近接センサ420を有している。例えば、クリフ近接センサ420は、基部本体124a~124cの半径方向最も外側の縁部125a~125cの各々のところ又はその近くで且つこれら相互間の場所に配置されるのが良い。幾つかの場合、クリフ検出は、赤外線IR近接又は実際のレンジ検出を用いると共に床を予測するべき場所にオーバーラップしたエミッション及び検出野及びかくして検出ゾーンを形成するよう互いに向かって傾けられた赤外線エミッタ422及び赤外線検出器424を用いて実施される。IR近接検出は、比較的狭い視野を有するのが良く、信頼性を得るために表面アルベドalbedoで決まる場合があり、表面ごとの変化するレンジ精度を有するのが良い。結果として多数の別々のセンサをロボット100の周囲に沿ってぐるりと配置してロボット100上の多数の箇所からのクリフを適切に検出するのが良い。さらに、IR近接利用型センサは、代表的には、クリフと例えばロボット100が敷居を上がった直後の安全事象とを区別することができない。クリフ近接センサ420は、ロボット100が床の下がり縁に遭遇した時点、例えばロボットが一連の階段に遭遇した時点を検出することができる。コントローラ500制御システムを実行するは、縁を検出したときにロボット100が例えばその移動方向の変化という行為を取るようにする挙動を実行することができる。幾つかの具体化例では、センサシステム400は、1つ又は2つ以上の二次クリフセンサ例えば、クリフ検出及びオプションとしての他形式の検出を行うよう構成された他のセンサを有する。クリフ検出近接センサ420は、クリフの早期検出を提供し、実際のクリフと安全事象例えば、敷居を上がることとを区別するためのデータを提供するよう構成され、そして、これらの視野がロボット本体110の少なくとも一部及びロボット本体110から遠ざかって位置する領域を含むよう下方及び外方に位置決めされるのが良い。幾つかの具体化例では、コントローラ500は、支持作業面例えば、床の縁、作業面の縁を通過する距離の増大及び/又はロボット本体110と作業面との間の距離の増大を識別して検出するクリフ検出ルーチンを実施する。この具体化例では、1潜在的なクリフの早期検出これは、未知の環境における迅速な移動速度の実現を可能にする場合がある、2コントローラ500がクリフ事象が真の意味で安全ではないかどうか又はクリフを安全に横切ることができるかどうか例えば、敷居を上がってを知るためにクリフ検出近接センサ420からのクリフイメージング情報を受け取るので、自律移動性の信頼性の増大、3クリフの誤った確信の減少例えば、狭い視野を備えた多数の別々のIR近接センサに対する縁検出の使用に起因しているが可能になる。ホイールドロップwheeldropセンサとして配置された追加のセンサは、万全を期すためにしかもレンジ検出カメラが或る特定の形式のクリフを確実に検出することができない状況を検出するために使用できる。敷居及び階段の検出により、ロボット100は、上がることができる敷居を横切るか高すぎる階段を回避するかのいずれかを効果的に計画することができる。これは、ロボット100が安全に横切ることができる場合があり又はそうでない作業面上の乱雑に置かれた物体についても当てはまる。ロボット100が確認する障害物又は敷居の場合、ロボット100が滑らかさを最大にすると共に突然の加速に起因した不安定性を最小限に抑えるために滑らかに移行することができるよう必要であると見なされた場合に適度に減速することができるこれらの高さを知って上がることができる。幾つかの具体化例では、敷居及び階段検出は、幾何学的認識例えば、敷居又は電気ケーブルと染み、例えばソックスの区別と共に作業面上の物体高さに基づいている。敷居は、縁検出によって認識できる。コントローラ500は、クリフ検出近接センサ420又は、ロボット100に取り付けられている別のイメージングセンサからイメージングデータを受け取り、縁検出ルーチンを実行し、そして縁検出ルーチンの結果に基づいて駆動指令を出すことができる。コントローラ500は、パターン認識を利用して物体を識別することも可能である。敷居検出により、ロボット100は、滑らかな階段登り能力を最大にするよう敷居に対してその向きを変えることができる。近接センサ410,420は、単独で機能することができ又は変形例として、万全を期すために1つ又は2つ以上の接触センサ430例えば、バンプスイッチと組み合わせて機能することができる。例えば、ロボット本体110に取り付けられている1つ又は2つ以上の接触又はバンプセンサ430は、ロボット100が物理的に障害物に出会ったかどうかを検出することができる。かかるセンサは、ロボットが障害物に出会った時点を確認するためにロボット100内の物理的性質、例えばキャパシタンス又は物理的変位を利用することができる。幾つかの具体化例では、基部120の各基部本体部分124a,124b,124cは、基部シャーシ122例えば、図4Aを参照されたいに対する対応の基部本体部分124a,124b,124cの運動を検出する関連の接触センサ430例えば、容量形センサ、リードスイッチ等を有する。例えば、各基部本体124a,124b,124cは、スリーウェイバンプ検出を可能にするよう基部シャーシ122のZ軸に対して半径方向に動くことができる。図1~図4C、図9及び図10Aを参照すると、幾つかの具体化例では、センサシステム400は、ロボット本体110の前方部分に取り付けられると共にコントローラ500と通信状態にあるレーザスキャナ440を有する。図示の実施例では、レーザスキャナ440は、第1の基部124aに又はこれの上方で例えば、ロボットの駆動方向Fに沿う最大イメージングカバレージを得るために前方に向いた状態で例えば、前方駆動方向Fに沿う視野を有する基部本体120に取り付けられている。さらに、レーザスキャナを三角形基部120の前側先端部に又はその近くに配置することは、ロボット基部の外側の角度例えば、300°がレーザスキャナ440の視野442例えば、約285°よりも大きく、かくして、基部120がレーザスキャナ440の検出視野442を遮蔽せず又は妨害するのが阻止されることを意味している。レーザスキャナ440を基部本体124を越える突き出しレーザスキャナの部分を最小限に抑えるために例えば、美感のために、更に障害物に引っ掛かる恐れを最小限に抑えるためにその視野を遮蔽しないで、可能な限り基部本体124内に引っ込んだ状態で設けられるのが良い。レーザスキャナ440は、ロボット100の周りの領域を走査し、コントローラ500は、レーザスキャナ440から受け取った信号を用いて、走査した領域の環境マップ又は物体マップを作る。コントローラ500は、ナビゲーション、障害物検出及び障害物回避のために物体マップを用いることができる。さらに、コントローラ500は、物体マップを作成するため且つ/或いはナビゲーションのためにセンサシステム400の他のセンサから感覚入力を用いることができる。幾つかの実施例では、レーザスキャナ440は、走査型LIDARであり、これは、一方向に領域を迅速に走査するレーザを主走査線として用いると共に深度をこのライン中で生じた各ピクセルに割り当てる走査平面内の二次元深度線に戻るために位相差又はこれに類似した技術を用いるタイムオブフライトイメージング要素を使用することができる。三次元マップを作成するため、LIDARは、第2の方向に補助走査を実施することができる例えば、スキャナをうなずかせるによって。この機械的走査技術は、捕捉されなければ、例えばフラッシュLIDAR/LADAR及びSwissRanger型焦点面イメージング要素センサのようなテクノロジー、各ピクセルのところに深度又は各ピクセルのところに一連の深度を提供するようエンコードされたイルミネータ又は照明レーザによりピクセルの完全2‐Dマトリックスのためのタイムオブフライト計算を可能にするよう半導体スタックを用いる技術によって完全なものとなることができる。センサシステム400は、コントローラ500と通信状態にある1つ又は2つ以上の三次元3‐Dイメージセンサ450を有するのが良い。3‐Dイメージセンサ450が限られた視野を持つ場合、コントローラ500又はセンサシステム400は、3‐Dイメージセンサ450aを側方走査方式で作動させて比較的広い視野を作り、それにより堅固なODOAを実施することができる。再び図2及び図4A~図4Cを参照すると、センサシステム400は、ロボット100の全体的重心CGRに対するロボット100の慣性モーメントを測定したりモニタしたりするようコントローラ500と通信状態にある慣性測定ユニットIMU470を有するのが良い。コントローラ500は、通常の制限のない操作に対応したしきい信号に対するIMU470からのフィードバックのずれをモニタすることができる。例えば、ロボットが直立位置からつんのめり始めた場合、ロボットは、衣服内張りされ又は違ったやり方で妨害され、或いは、誰かが突然重いペイロードを追加する場合がある。これらの場合、ロボット100の安全動作を保証するために緊急措置かかる措置としては、捕らえどころのない操作、再較正及び/又は音声的/視覚的警告の発生を含むが、これらには限定されないを取ることが必要な場合がある。ロボット100は、人間環境で働くことができるので、ロボット100は、人と対話することができ、そして人向きに設計された空間内で作業することができるロボットの制約を顧慮しないで。ロボット100は、混雑し、拘束され又は極めて動的な環境内にあるとき、例えば、カクテルパーティ又はせわしない病院においてその駆動速度及び加速度を制限することができる。しかしながら、ロボット100は、例えば長くて何も置かれていない廊下では比較的迅速に駆動しても安全である状況に遭遇する場合があるが、例えば何かがロボットの運動経路を横切った場合に突然減速することが可能である。停止から加速すると、コントローラ500は、ロボットの全体的重心CGRからのロボット100の慣性モーメントを考慮してロボットがひっくり返るのを阻止することができる。コントローラ500は、その現在の慣性モーメントを含むその姿勢のモデルを使用することができる。ペイロードを支持する場合、コントローラ500は、全体的重心CGRに対する荷重の影響を計測してロボット慣性モーメントの運動をモニタすることができる。例えば、胴部140及び/又は頸部150は、ひずみを測定するためにひずみ計を有するのが良い。これが可能ではない場合、コントローラ500は、試験登録指令を駆動輪210に加えるのが良く、そして安全限度を経験的に定めるためにIMU470を用いてロボットの実際の直線加速度及び角加速度を測定することができる。突然の減速の際、第2及び第3の駆動輪210b,210c後輪に対する指令された荷重を減少させ、その間、第1の駆動輪210a前輪は、前方駆動方向にスリップし、ロボット100を支持する。第2及び第3の駆動輪210b,210c後輪の荷重が非対称である場合、ロボット100は、偏揺れヨーイングし、それにより、動的安定性が低下する。IMU470例えば、ジャイロを用いると、この偏揺れを検出し、第2及び第3の駆動輪210b,210cに指令を出してロボット100の向きを向け直すことができる。図1~図3、図9及び図10Aを参照すると、幾つかの具体化例では、ロボット100は、ロボット本体110の前方部分に取り付けられていて、前方駆動方向Fに沿って視野を持つ例えば、ロボットの駆動方向Fに沿って最大のイメージングカバレージを有するよう走査型3‐Dイメージセンサ450aを有する。走査型3‐Dイメージセンサ450aは、主として、障害物検出/障害物回避ODOAのために使用できる。図示の実施例では、例えば図3に示されているように胴部140内に引っ込められた状態で例えば、底面144と面一をなして又はこれを越えて胴部140に肩142の下で又は底面144上に取り付けられており、それにより、ユーザと走査型3‐Dイメージセンサ450aとの接触が阻止されている。走査型3‐Dイメージセンサ450aは、障害物検出及び障害物回避ODOAのために例えば、ロボット本体110の基部120又は他の部分による妨害がある状態でロボット100の前に下向きの視野452を有するよう実施的に下方に且つロボット本体110から遠ざかる方向に向くよう配置されるのが良い。走査型3‐Dイメージセンサ450aを胴部140の前方縁部に又はその近くに配置することにより、3‐Dイメージセンサ450の視野例えば、約285°は、3‐Dイメージセンサ450に対して胴部140の外側の表面角度例えば、300°よりも小さいものとすることができ、かくして、胴部140が走査型3‐Dイメージセンサ450aの検出視野452を遮蔽し又は妨害するのが阻止される。さらに、走査型3‐Dイメージセンサ450a及び関連のアクチュエータは、その視野を遮蔽しないで例えば、美感のためにも且つ障害物に引っ掛かるのを最小限に抑えるためにできるだけ胴部140内に引っ込んだ状態で設けられるのが良い。走査型3‐Dイメージセンサ450aの注意をそらせてしまうような走査運動は、ユーザの目には見えず、かくして注意をそらすような相互作用の経験が少なくなる。突出したセンサ又は特徴部とは異なり、引っ込んだ状態で設けられた走査型3‐Dイメージセンサ450aは、特に動いているとき又は走査しているときに環境と意図しない相互作用人、障害物等に引っ掛かることを生じる傾向はないであろう。というのは、胴部140のエンベロープを越えて延びる可動部分が事実上ないからである。幾つかの具体化例では、センサシステム400は、基部本体120、脚部130、頸部150及び/又は頭部160に設けられた追加の3‐Dイメージセンサ450を有している。図1に示されている実施例では、ロボット100は、基部本体120、胴部140及び頭部160に設けられた3‐Dイメージセンサ450を有している。図2に示されている実施例では、ロボット100は、基部本体120、胴部140及び頭部160に設けられた3‐Dイメージセンサ450を有している。図9に示されている実施例では、ロボット100は、脚部130、胴部140及び頸部150に設けられた3‐Dイメージセンサ450を有している。他の形態も又、採用可能である。1つの3‐Dイメージセンサ450例えば、頭部160の上方で頸部150に取り付けられているは、人々の認識、ジェスチャの認識及び/又はテレビ会議のために用いることができ、他方、別の3‐Dイメージセンサ450例えば、基部120及び/又は脚部130に取り付けられているは、ナビゲーション及び/又は障害物検出及び障害物回避のために用いることができる。頸部150及び/又は頭部160に設けられた前方に向いた3‐Dイメージセンサ450がロボット100の周りの人々の個人の、顔面及び/又はジェスチャの認識のために使用できる。例えば、頭部160に設けられた3‐Dイメージセンサ450からの信号入力を用いて、コントローラ500は、視認すると共に/或いは捕捉したユーザの顔面の三次元マップを作り、そして作った三次元マップを人々の顔面の既知の3‐Dイメージと比較し、そして既知の3‐D顔面イメージのうちの1つとの一致を確認することによってユーザを認識することができる。顔面認識は、ロボット100の許容可能なユーザとしてユーザを確証するために使用されるのが良い。さらに、3‐Dイメージセンサ450のうちの1つ又は2つ以上は、ロボット100によって視認される個人のジェスチャを判定し、オプションとして、判定したジェスチャ例えば、手の指差し、手を振って合図すること及び/又は手信号に基づいて反応するために使用できる。例えば、コントローラ500は、特定の方向における認識された手の指差しに応答して駆動指令を出すことができる。図10Bは、カメラ910、ソナーセンサ920及びレーザレンジファインダ距離計930を備えたロボット900の略図であり、カメラ910、ソナーセンサ920及びレーザレンジファインダ930は全て、ロボット本体905に取り付けられており、これらは各々、地面Gに平行な又は実質的に平行な視野を有している。この構成により、距離を置いたところに位置する物体の検出が可能である。実施例では、レーザレンジファインダ930は、地面Gの近くの物体を検出し、リング状に配置された超音波センサソナー920は、地面Gよりも更に上方に位置する物体を検出し、カメラ910は、高い見晴らしの利く位置からシーンの大部分を捕捉する。この設計の重要な特徴は、センサ910,920,930が全て地面Gに平行に差し向けられていることにある。この構成の一利点は、センサ910,920,930のうちの1つ又は2つ以上用いて測定される物体までの距離がロボット900が対応の所与の方向において物体に接触する前にロボット900が走行することができる距離でもあるという意味でコンピュータ計算を単純化できるということにある。この構成の欠点は、ロボットの周囲の良好なカバレージを得るために、多くのレベルの検出が必要であるということにある。これは、コスト及びコンピュータ計算の観点からは禁止される場合があり、それにより、ロボット900のセンサ910,920,930全ての感覚視野に大きな隙間が生じる場合が多い。幾つかの具体化例では、ロボットは、ロボット100の周りの領域の音響イメージングを得るためのソナースキャナ460を有する。図1及び図3に示されている実施例では、ソナースキャナ460は、基部本体120の前方部分に設けられている。図1、図3B及び図10Aを参照すると、幾つかの具体化例では、ロボット100は、検出の万全を期すためにレーザスキャナ又はレーザレンジファインダ440並びに安全のために後方に向いたソナー近接センサ410jを用いており、これらは両方共、地面Gに平行に差し向けられている。ロボット100は、ロボット100の周りの堅調な検出を可能にするために第1及び第2の3‐Dイメージセンサ450a,450bデプスカメラを有するのが良い。第1の3‐Dイメージセンサ450aは、地面Gに対して一定の角度をなして下方に差し向けられた状態で胴部140に取り付けられている。第1の3‐Dイメージセンサ450aを下方に傾斜させることによって、ロボット100は、ロボット100のすぐ前又はこれに隣接した領域の密なセンサカバレージを受け取り、このカバレージは、前方方向におけるロボット100の短時間移動に適切である。後方に向いたソナー410jは、ロボットが後方に移動しているときに物体検出を行う。後方移動がロボット100にとって一般的である場合、ロボット100は、ロボット100のすぐ後方の又はこれに隣接した領域の密のセンサカバレージを提供するよう前後に向いた第3の3‐Dイメージセンサ450を有するのが良い。第2の3‐Dイメージセンサ450bは、頸部150をパンしたり傾動させたりすることができる頭部160に取り付けられている。第2の3‐Dイメージセンサ450bは、遠隔駆動に有用であるのが良い。というのは、これにより、オペレータとしての人が、ロボット100がどこに行っているかを見ることができるからである。頸部150により、オペレータは、第2の3‐Dイメージセンサ450bを傾動させたり/或いはパンしたりして近くの物体と遠くの物体の両方を見ることができる。第2の3‐Dイメージセンサ450bをパンすると、関連の水平視野が広がる。速い走行中、ロボット100は、第2の3‐Dイメージセンサ450bを僅かに下方に傾けて3‐Dイメージセンサ450a,450bの両方の全体的又は組み合わせ状態の視野を広げると共にロボット100が障害物を回避するのに十分な時間を与えることができるというのは、速い速度は、一般に、物体に対応する時間が短いことを意味するからである。遅い速度では、ロボット100は、第2の3‐Dイメージセンサ450bを上方に又は地面Gに実質的に平行に傾けてロボット100がついて行っている人を追跡することができる。さらに、比較的低速で駆動している間、ロボット100は、第2の3‐Dイメージセンサ450bをパンしてロボット100の周りのその視野を広げることができる。第1の3‐Dイメージセンサ450aは、ロボットがロボットの知覚範囲を広げようと駆動しているとき、固定状態のままであるのが良い例えば、基部120に対して動かないのが良い。3‐Dイメージセンサ450は、以下の形式のデータ、即ち、i深度マップ、ii反射率を利用した強度イメージ及び/又はiii通常強度のイメージを生成することができる場合がある。3‐Dイメージセンサ450は、イメージパターン照合、フライトタイムの測定及び/又は源から放出されて標的から反射される光の位相遅れシフトによってかかるデータを得ることができる。幾つかの具体化例では、プロセッサ例えば、ロボットコントローラ500のプロセッサ上で実行可能な推論又は制御ソフトウェアがセンサシステム400により生成される種々のタイプのデータを用いて実行されるアルゴリズムの組み合わせを用いる。推論ソフトウェアは、センサシステム400から集められたデータを処理し、ロボット100が例えば障害物と衝突しないで動くことができる場所についてのナビゲーション上の決定を行うためのデータを出力する。ロボットの周囲の経時的なイメージングデータの蓄積によって、推論ソフトウェアは、効果的な方法を検出されたイメージの選択されたセグメントに適用して3‐Dイメージセンサ450の深度測定を向上させることができる。これは、適当な一時的且つ空間的平均化技術の使用を含むのが良い。ロボットの衝突なしの運動を実行する信頼性は、i経時的な高レベル推論によって得られる信頼水準及びii分析のために3つの主要な形式のデータを蓄積する深度知覚センサに基づくのが良く、かかる3つの主要な形式のデータは、a深度イメージ、bアクティブ照明イメージ及びc周囲照明イメージである。種々の形式のデータを認識するアルゴリズムを深度知覚イメージングセンサ450により得られたイメージの各々について実行するのが良い。集まったデータは、種々のデータのうちの1つだけを用いたシステムと比較して信頼水準を向上させることができる。3‐Dイメージセンサ450は、1つ又は2つ以上の物体を含むロボット100の周りのシーン例えば、部屋又は作業領域のセンサ視認部分から深度及び輝度データを含むイメージを得ることができる。コントローラ500は、シーンからの反射光の捕捉に基づいて物体に関する占有データを定めるよう構成されているのが良い。さらに、コントローラ500は、幾つかの実施例では、障害物即ち、シーン内の物体を迂回するために少なくとも部分的に占有データに基づいて駆動指令を駆動システム200に出す。3‐Dイメージセンサ450は、コントローラ500によるリアルタイム決定のためにシーン深度イメージを繰り返し捕捉してロボット100をシーン内の物体に衝突することなくシーン中を進むことができる。例えば、深度イメージデータが3‐Dイメージセンサ450により得られる速度又は頻度を3‐Dイメージセンサ450のシャッタ速度によって制御することができる。加うるに、コントローラ500は、事象トリガ例えば、センサシステム400の別のセンサコンポーネント例えば近接センサ410,420からのを受け取り、コントローラ500に近くに物体があること又は危険があることを知らせる。コントローラ500は、事象トリガに応答して、3‐Dイメージセンサ450が深度イメージを捕捉すると共に占有情報を得る頻度を増大させるようにすることができる。図11を参照すると、幾つかの具体化例では、3‐Dイメージングセンサ450は、光をシーン10、例えばロボット100の周りの領域例えば、部屋に放出する光源1172を有する。イメージングセンサ450は、光源1172に源を発した反射光例えば、シーン深度イメージとしてのを含むシーン10からの反射光を捕捉するイメージャ1174例えば、アレイ状に配列された光電性ピクセル1174pを更に有するのが良い。幾つかの実施例では、イメージングセンサ450は、放出された反射光及び受け取った反射光をそれぞれ操作する例えば、スペックルし又は合焦させる光源レンズ1176及び/又は検出器レンズ1178を有する。ロボットコントローラ500又はロボットコントローラ500と通信状態にあるセンサコントローラ図示せずは、イメージャ1174例えば、ピクセル1174pから光信号を受け取ってイメージパターン照合及び/又はイメージャ1174により捕捉された反射光のタイムオブフライト特性に基づいてシーン10内の物体12に関する深度情報を決定する。図12は、イメージングセンサ450を動作させる操作又はステップの例示の構成又は流れ図1200を提供している。さらに図10Aを参照すると、操作は、光をロボット100の周りのシーン10に放出するステップ1202及びシーン10からの放出光の反射光をイメージャ例えば、光電性ピクセルのアレイ上で受け取るステップ1204を含む。操作は、コントローラ500がイメージャからの光検出信号を受け取るステップ1206、光検出信号に由来するイメージデータを用いてシーン10内の物体12の1つ又は2つ以上の特徴を検出するステップ1208及び光検出信号に由来するイメージ深度データを用いてシーン10内の物体12の検出特徴の位置を追跡するステップ1210を更に含む。操作は、光を放出するステップ1202を繰り返すステップ1212、光の反射光を受け取るステップ1204、光検出信号を受け取るステップ1206、物体の特徴を検出するステップ1208及び物体特徴の位置をイメージデータ又はイメージ深度データの解像度を増大させると共に/或いは信頼水準を提供するよう物体特徴の位置を追跡するステップ1210を含むのが良い。繰り返しステップ1212は、比較的高い解像度を得るための比較的遅い速度例えば、遅いフレーム率、中間速度又は比較的低い解像度による高い速度で実施できる。繰り返しステップ1212の頻度は、ロボットコントローラ500によって調節可能であるのが良い。幾つかの具体化例では、コントローラ500は、事象トリガを受け取った際に繰り返しステップ1212の頻度を増減することができる。例えば、シーン内の提示されたアイテムは、繰り返しステップ1212の頻度の増大を生じさせてシーン10内の場合によっては目立っている物体12例えば、出入口、敷居又はクリフを検出するようにする事象をトリガすることができる。追加の実施例では、検出物体12相互間の経過時間事象により、繰り返しステップ1212の頻度が遅くなり又は所与の期間にわたって停止する場合がある例えば、別の事象によって起こされるまでスリープ状態になる。幾つかの実施例では、シーン10内の物体12の1つ又は2つ以上の検出ステップ1208は、特徴検出事象をトリガし、それによりイメージ深度データが得られる速度を増大させるために繰り返しステップ1212の頻度を比較的高くする。イメージ深度データの比較的高い収集速度は、シーン内における比較的確実な特徴の追跡を可能にする。操作は、シーン10内の物体12を迂回するためのナビゲーションデータを出力するステップ1214を更に含む。幾つかの具体化例では、コントローラ500は、出力されたナビゲーションデータを用いて駆動指令を駆動システム200に出し、それによりロボット100を物体12との衝突を避ける仕方で動かす。幾つかの具体化例では、センサシステム400は、ロボット100の周りのシーン10内の多数の物体12を検出し、コントローラ500は、検出した物体12の各々の位置を追跡する。コントローラ500は、ロボット100の周りの領域、例えば部屋の境界付けられた領域内の物体12の占有マップを作成することができる。コントローラ500は、センサシステム400のイメージ深度データを用いてシーン10を占有マップの一部分と照合し、占有マップを追跡した物体12の存在場所で更新することができる。図13を参照すると、幾つかの具体化例では、3‐Dイメージセンサ450は、三次元3‐Dスペックルカメラ1300を有し、このスペックルカメラは、スペックル非相関性によりイメージマッピングを可能にする。スペックルカメラ1300は、スペックルパターンをシーン10標的領域として中に放出するスペックルエミッタ1310例えば、赤外線紫外線及び/又は可視光の及びシーン10内の物体12の表面上のスペックルパターンのイメージを捕捉するイメージャ1320を有する。スペックルエミッタ1310は、光のビームを反射及びかくして投影のためにシーン10中へのスペックルパターンとしてディフューザ1314中に、そして反射器1316に放出する光源1312、例えばレーザを有するのが良い。イメージャ1320は、対物光学素子センサ1322を有するのが良く、この対物光学素子は、光検出器1326のアレイを有するイメージセンサ1324、例えばCCD例えばCMOS技術利用イメージセンサにイメージを集束させる。スペックルエミッタ1310及びイメージャ1320の光軸が例えば非相関モードでは同一直線上に位置するものとして示されているが、スペックルエミッタ1310及びイメージャ1320の光軸は、非同一直線上にあっても良く、他方、例えば相互相関モードでは、イメージング軸は、放出軸からずれるようになる。スペックルエミッタ1310は、スペックルパターンをシーン10中に放出し、イメージャ1320は、スペックルエミッタ1310から種々の物体距離Znのレンジ例えば、Z軸がイメージャ1320の光軸により定めることができる場所でシーン10内のスペックルパターンの基準イメージを捕捉する。図示の実施例では、投影されたスペックルパターンの基準イメージは、原点から種々のそれぞれの距離を置いたところで、例えばZ1,Z2,Z3と印付けられた基準場所等のところの一連の平面で捕捉される。基準イメージ相互間の差ΔZは、しきい距離例えば、5mmのところに設定可能であり又はコントローラ500によって調節可能であるのが良い例えば、トリガされた事象に応答して。スペックルカメラ1300は、捕捉した基準イメージをアーカイブしてこれらをそれぞれの放出距離に割り送りし、それによりスペックルエミッタ1310からの距離とのスペックルパターンの非相関を可能にし、それにより次のイメージで捕捉された物体12の測距を可能にする。ΔZが隣り合う基準距離Z1,Z2,Z3,...相互間の距離にほぼ等しいと仮定すると、場所ZAのところの物体12に対するスペックルパターンを例えばZ2のところで捕捉されたスペックルパターンの基準イメージに相関させることができる。他方、ZBのところの物体12に対するスペックルパターンを例えばZ3のところの基準イメージに相関させることができる。これら相関測定値により、原点からの物体12の適当な距離が与えられる。物体12を三次元でマップするため、スペックルカメラ1300又はスペックルカメラ1300から情報を受け取るコントローラ500は、最も近い照合を与えた基準イメージとの局所相互相関性を用いることができる。本明細書において説明した細部及び特徴と組み合わせることができる例えば三角形分割又は非相関性を用いるスペックル相互相関性によってスペックル測距を使用する3‐Dイメージマッピングに関する他の細部及び特徴は、国際出願PCT/IL2006/000335号明細書に見られ、この国際出願を参照により引用し、その記載内容全体を本明細書の一部とする。図14は、スペックルカメラ1300を動作させる操作又はステップの例示の構成又は流れ図1400を示している。操作は、スペックルパターンをシーン10中に放出するステップ1402及びスペックルエミッタ1310から種々の距離を置いたところで基準イメージ例えば、基準物体12の基準イメージを捕捉するステップ1404を含む。操作は、スペックルパターンをシーン10内の標的物体12に放出するステップ1406及び物体12上のスペックルパターンの標的イメージを捕捉するステップ1408を更に含む。操作は、標的イメージスペックル物体の標的イメージを種々の基準画像と比較して標的物体12上のスペックルパターンと最も相関の強い基準パターンを識別するステップ1410及びシーン10内の標的物体12の推定距離レンジを求めるステップ1412を更に含む。これは、物体12上の主要スペックルパターンを突き止めるステップ及び物体12上の主要スペックルパターンと相関の最も強いスペックルパターンを有する基準イメージを見出すステップを更に含む。距離レンジを基準イメージの対応の距離から求めることができる。操作は、オプションとして、例えばシーン内の物体12の存在場所を突き止めるために物体12上のスペックルパターンと識別された基準パターンとの局所相互相関性によって物体12の表面の3‐Dマップを作成するステップ1414を含む。これは、物体12上の主要スペックルパターンを突き止めるステップ及び標的イメージ中の物体12の多数の領域上の主要スペックルパターンと識別された基準イメージ中の主要スペックルパターンとのそれぞれのオフセットを見出して物体の三次元3‐Dマップを導き出すステップを含むのが良い。シーンの3‐Dマッピングのためのソリッドステートコンポーネントの使用により、ロボットナビゲーションシステムのための比較的安価な手段が得られる。代表的には、種々のそれぞれの距離のうちの少なくとも幾つかは、それぞれの距離のところの主要スペックルパターンの軸方向長さよりも長い距離だけ軸方向に隔てられている。標的イメージを基準イメージと比較するステップは、標的イメージと基準イメージのうちの少なくとも幾つかの各々とのそれぞれの相互相関性をコンピュータ計算するステップ及び標的イメージとの最も強いそれぞれの相互相関性を有する基準イメージを選択するステップを含むのが良い。操作は、ステップ1402~1412又はステップ1406~1412を繰り返しするステップ1416及びオプションとしてシーン10内の物体12の運動を追跡するステップ1414例えば、連続的にを含むのが良い。例えば、スペックルカメラ1300は、物体12が基準イメージとの比較とのために動いている間、一連の標的イメージを捕捉することができる。本明細書において説明する細部及び特徴と組み合わせ可能なスペックル測距を用いる3‐Dイメージマッピングに関する他の細部及び特徴は、米国特許第7,433,024号明細書、米国特許出願公開第2008/0106746号明細書発明の名称:Depthvaryinglightfieldsforthreedimensionalsensing、米国特許出願公開第2010/0118123号明細書発明の名称:DepthMappingUsingProjectedPatterns、米国特許出願公開第2010/0034457号明細書発明の名称:ModelingOfHumanoidFormsFromDepthMaps、米国特許出願公開第2010/0020078号発明の名称:DepthMappingUsingMultiBeamIllumination、米国特許出願公開第2009/0185274号明細書発明の名称:OpticalDesignsForZeroOrderReduction、米国特許出願公開第2009/0096783号発明の名称:ThreeDimensionalSensingUsingSpecklePatterns、米国特許出願公開第2008/0240502号発明の名称:DepthMappingUsingProjectedPatterns及び米国特許出願公開第2008/0106746号発明の名称:DepthVaryingLightFieldsForThreeDimensionalSensingに見受けられ、これら特許文献を参照により引用し、これらの記載内容全体を本明細書の一部とする。図15を参照すると、幾つかの具体化例では、3‐Dイメージングセンサ450は、深度イメージデータを得るための3‐DタイムオブフライトTOFカメラ1500を有する。3‐DTOFカメラ1500は、光源1510、相補型金属酸化膜半導体CMOSセンサ1520又は電荷結合素子CCD、レンズ1530及び光源1510及びCMOSセンサ1520と連絡状態にある処理リソース資源及び/又はロボットコントローラ500を備えた制御論理又はカメラコントローラ1540を有する。光源1510は、周期的高周波数信号により調整される強度を備えたレーザ又は発光ダイオードLEDであるのが良い。幾つかの実施例では、光源1510は、集束レンズ1512を有する。CMOSセンサ1520は、アレイ状に配置されたピクセル検出器1522又は他の配置構成のピクセル検出器1522を有するのが良く、この場合、各ピクセル検出器1522は、これに当たったフォトニックエネルギーの強度及び位相を検出することができる。幾つかの実施例では、各ピクセル検出器1522は、関連のピクセル検出器1522の検出電荷出力を処理する専用検出器回路1524を有する。レンズ1530は、関心のある1つ又は2つ以上の物体12を含むシーン10から反射された光をCMOSセンサ1520上に集束又は合焦させる。カメラコントローラ1540は、CMOSセンサ1520により得られたピクセルデータを深度マップ及び輝度イメージにフォーマットする一連の操作を提供する。幾つかの実施例では、3‐DTOFカメラ1500は、入力/出力IO1550例えば、ロボットコントローラ500と連絡状態にある、メモリ1560及び/又はカメラコントローラ1540及び/又はピクセル検出器1522例えば、検出器回路1524と連絡状態にあるクロック1570を更に有している。図16は、3‐DTOFカメラ1500を操作する操作又はステップの例示の流れ図1600を示している。操作は、光パルス例えば、赤外線、紫外線及び/又は可視光をシーン10中に放出するステップ1602及び光パルスの飛行時間のタイミングを開始する例えば、クロック1570のクロックパルスをカウントすることによりステップ1604を含む。操作は、シーン10内の物体12の1つ又は2つ以上の表面からの放出光の反射光を受け取るステップ1606を含む。反射光は、光源1510から種々の距離Znのところに位置する物体12の表面からの反射光であるのが良い。反射光は、レンズ1530を通ってCMOSセンサ1520のピクセル検出器1522上に受け取られる。操作は、CMOSセンサ1522の対応の各ピクセル検出器1522上で受け取られた各光パルス反射光に関するタイムオブフライトを受け取るステップ1608を含む。光パルスのラウンドトリップ飛行時間TOFの間、それぞれの各ピクセル検出器1522の検出器回路1523のカウンタは、クロックパルスを蓄積する。多数の蓄積されたクロックパルスは、長いTOFを表し、それ故に、イメージングされた物体12上の光反射箇所と光源150との間の長い距離を表している。操作は、受け取った各光パルス反射光に関する物体12の反射面相互間の距離を求めるステップ1610及びオプションとして三次元物体表面を構築するステップ1612を更に含む。幾つかの具体化例では、操作は、ステップ1602~1610を繰り返すステップ1614及びオプションとしてシーン10内の物体12の運動を追跡するステップ1612を含む。本明細書において説明する細部及び特徴と組み合わせ可能な3‐Dタイムオブフライトイメージングに関する他の細部及び特徴は、米国特許第6,323,942号明細書発明の名称:CMOSCompatible3DImageSensor、米国特許第6,515,740号明細書発明の名称:MethodsforCMOScompatibleThreeDimensionalImageSensingUsingQuantumEfficiencyModulation、国際出願PCT/US02/16621号明細書発明の名称:MethodandSystemtoEnhanceDynamicRangeConversionUsablewithCMOSThreeDimensionalImagingに見受けられ、これら特許文献を参照により引用し、これらの記載内容全体を本明細書の一部とする。幾つかの具体化例では、3‐Dイメージングセンサ450は、次の3つの形式の情報、即ち、1深度情報例えば、CMOSセンサ1520の各ピクセル検出器1522からシーン12上の対応の場所まで、2各ピクセル検出器配置場所のところの周辺光強度及び3各ピクセル検出器配置場所のところのアクティブ照明強度を提供する。深度情報により、検出した物体12の位置を特にロボット展開場所に対する物体の近接性に関して経時的に追跡することができる。アクティブ照明強度及び周辺光強度は、互いに異なる形式の輝度イメージである。アクティブ照明強度は、標的物体12で反射されたアクティブ光例えば、光源1510により提供されるの反射光から捕捉される。周辺光イメージは、標的物体12で反射された周辺光のものである。2つのイメージは、一緒になって、特に照明条件が貧弱である場合例えば、暗すぎる又は過度に高い周辺照明、追加の堅調さを提供する。イメージセグメント化及び分類アルゴリズムを用いると、シーン10内の物体12の位置を分類すると共に検出することができる。これらアルゴリズムにより提供される情報並びにイメージングセンサ450から得られる距離測定情報は、ロボットコントローラ500又は他の処理リソースによって使用できる。イメージングセンサ450は、タイムオブフライト原理で動作することができ、具体的に説明すると、周辺光を濾波するフォトダイオードの感度を調節する技術を含むシーン10から反射された調整された光パターン中の検出可能な位相遅れに基づいて動作することができる。ロボット100は、1マッピング、存在場所突き止め及びナビゲーション、2物体検出及び物体回避ODOA、3物体ハンティング例えば、人を見出すために、4ジェスチャ認識例えば、コンパニオンロボットのため、5人々及び顔面検出、6人々追跡、7ロボット100による物体の操作のモニタ及びロボット100の自律的動作のための他の適当なアプリケーションのためにイメージングセンサ450を使用することができる。幾つかの具体化例では、3‐Dイメージセンサ450のうちの少なくとも1つは、地面よりも1フィート30.5cm又は2フィート61.0cm以上、上方の高さ位置のところでロボット100に取り付けられると共にロボットの移動方向において床平面を含む空間ボリュームから点群を得ることができる全方向性駆動システム200により差し向けられたボリューム形点群イメージング装置例えば、スペックル又はタイムオブフライトカメラであるのが良い。図1及び図3に示されている実施例では、第1の3‐Dイメージセンサ450aは、地面よりも1又は2フィート以上、上方の高さ位置又は、地面よりも約1又は2フィートの高さのところで基部120に取り付けられると共に駆動しながら例えば、物体検出及び物体回避のために床を含むボリュームのイメージ例えば、ボリューム的点群を捕捉するために前方駆動方向Fに沿って差し向けられるのが良い。第2の3‐Dイメージセンサ450bは、ロボット100に隣接して位置する空間ボリュームから骨組み認識及びデフィニション点群を得ることができるよう頭部160に例えば、地面よりも約3フィート91.5cm又は4フィート122.0cm以上、上方の高さ位置のところで取り付けられた状態で示されている。コントローラ500は、骨組み/ディジタル認識ソフトウェアを実行して捕捉されたボリューム形点群のデータを分析することができる。周辺光条件とは無関係にイメージングセンサ450を用いて物体12を正しく検出することが重要な場合がある。多くの環境において、照明条件は、直接の太陽光から明るい蛍光照明、そして薄暗い陰までの広い範囲に及び、その結果、物体12の表面テキスチャ及び基本的反射率の大幅な変化が生じる。照明は、所与の場所内において、更にシーン10毎に様々であって良い。幾つかの具体化例では、イメージセンサ450は、周辺光条件からの影響を比較的少なくした状態で例えば、周辺光拒否あらゆる状況において人と物体12を識別すると共に解像するために使用されるのが良い。幾つかの具体化例では、イメージングセンサ450のVGA解像度は、640水平ピクセル×480水平ピクセルであるが、他の解像度、例えば320×240例えば、短距離センサの場合も又採用可能である。イメージングセンサ450は、パルスレーザ及び指定された範囲内でのみ物体12を見るよう時間領域内において帯域フィルタとして働くカメラ絞りを有するのが良い。イメージングセンサ450の可変絞りを用いると、種々の距離のところで物体12を検出することができる。さらに、パルス化高出力レーザを屋外用途に用いることができる。表1及び表2以下に掲載されているは、種々の用途に関するイメージングセンサ450の例示の特徴、パラメータ及び/又は使用を提供している。センサ1は、汎用イメージングセンサ450として用いられるのが良い。センサ2,3は、人との対話ロボットに取り付けて用いられるのが良く、センサ4,5は、カバレージ又は清掃用ロボットに取り付けて用いられるのが良い。表1表2最小センサ待ち時間により、物体12をロボット100が動いているときに回避するに足るほど迅速に見えることができるようになる。イメージングセンサ450の待ち時間は、検出されると共に認識されたユーザジェスチャに対するリアルタイムの反応の際における要因であるのが良い。幾つかの実施例では、イメージングセンサ450は、約44ミリ秒の待ち時間を有する。イメージングセンサ450により捕捉されるイメージは、属性タイムスタンプを意味するのが良く、かかる属性タイムスタンプは、空間内で並進又は回転している間にイメージが撮像されたロボットポーズを決定するために使用できる。コントローラ500と通信状態にあるシリアル周辺インターフェースバスSPIをイメージングセンサ450との通信のために使用されるのが良い。イメージングセンサ450のためにSPIインターフェースを用いることによっては、マルチノード分散型センサ/アクチュエータシステムのためのその使用が制限されるわけでなく、Ethernet利用可能装置、例えばマイクロプロセッサ又はフィールドプログラマブルゲートアレイFPGAとの結合が可能であり、かかる装置により、この場合、2010年2月16日に出願された米国特許出願第61/305,069号明細書発明の名称:MobileRobotoCommunicationSystemに記載されているようにEthernet及びEtherIOシステムによりデータが利用可能になり、この特許文献を参照により引用し、その記載内容全体を本明細書の一部とする。SPIは、制限されたプロトコルなので、イメージ捕捉を実行する際にストローブし又は移行するイメージングセンサ450へのインターフェースに割込みピンが利用可能であるのが良い。割込みピンは、フレームを捕捉したときにコントローラ500との通信を可能にする。これにより、コントローラ500は、データをいつでも読み取ることができるということを知ることができる。追加的に、割込みピンは、イメージを撮像した時点を指示するタイムスタンプを捕捉するためにコントローラ500によって使用可能である。イメージングセンサ450のイメージング出力は、タイムスタンプされるのが良く例えば、コントローラ500のグローバルクロックによって、これは、待ち時間を補償するために参照可能である。さらに、多数のイメージングセンサ450例えば、シーン10の種々の部分のからのタイムスタンプされたイメージング出力を同期させて組み合わせることができる例えば、互いに縫い合わせることができる。EtherIOシステムにより、割込み時間割込みピンに関するを捕捉してEtherIOシステムの高レベル装置及びソフトウェアに利用できるようにするのが良い。ロボット100は、クロック同期化方式を実行するマルチノード分散型センサ/アクチュエータシステム、例えばIEEE1588を有するのが良く、本発明者は、かかるIEEE1588をイメージングセンサ450から捕捉されたデータに適用することができる。SPIインターフェースとEtherIOの両方は、メモリアドレス駆動インターフェースであるのが良い。例えばバイト/ワード語/ダブルワード倍長語のデータをSPIインターフェースを介してイメージングセンサ450から読み取ることができ、そしてEtherIOシステムのメモリ空間で利用できる。例えば、FPGA内に設けられた局部レジスタ及びメモリ、例えばダイレクトメモリアクセスDMAメモリを用いると、EtherIOシステムのEtherIOノードを制御することができる。幾つかの場合、ロボット100は、左右に又は側方にイメージングセンサ450を走査する必要のある場合がある例えば、物体12又は遮蔽部16図17Aの周りを見るために。差動的に操舵されるロボット100の場合、これは、ロボット100を定位置で駆動システム200により回転させ又はイメージングセンサ450と関連した鏡、プリズム、可変角度マイクロミラー若しくはMEMSミラーアレイを回転させる場合を含むのが良い。360°よりも小さい視認角度θVを有するイメージングセンサ450の視野452を光学素子、例えば全方向性、フィッシュアイ、カタディオプトリック例えば、放物面鏡、テレセントリックレンズ、パナモルフpanamorphミラー及びレンズによって360°に拡大可能である。コントローラ500は、とりわけ測距のためにイメージングセンサ450を利用することができるが、必ずしも人により視認可能なイメージ又は映像例えば、人とのコミュニケーションのためのために使用されるわけではないので、光源1172の照明のディストーション例えば、ワーピング及び/又は光学素子によるイメージャ1174図11によるイメージ捕捉は、測距のために許容できる例えば、3‐Dスペックルカメラ1300及び/又は3‐DTOFカメラ1500を用いた場合のように。幾つかの場合において、イメージングセンサ450は、黒い物体12、変化アルベドの表面、反射率の高い物体12、強固な3‐D構造体、自己相似性若しくは周期的構造体又は視野452のところ又はこれをすぐ越えたところに位置する物体例えば、水平及び垂直視野角度のところ又はその外側を認識して測距するのに困難を伴う場合がある。かかる場合、センサシステム400の他のセンサを用いると、イメージングセンサ450を補完し又はイメージングセンサ450の冗長手段として働くよう使用できる。幾つかの具体化例では、光源1172例えば、3‐Dスペックルカメラ1300及び/又は3‐DTOFカメラ1500のは、赤外線IRレーザ、IRパターン照明器又は他のIR照明器を有する。黒色の物体、特に黒色の布又はカーペットは、IRを吸収することができ、したがって、イメージャ1174による認識に十分な強力な反射光を戻すことができない。この場合、二次検出モード例えば、ソナーか又は表明アルベド差のための自動較正技術かのいずれかが黒色物体の認識度を向上させるために必要な場合がある。屈折率の高い物体12又は正反射強調が相当高い物体12例えば、円柱状又は球状は、イメージングセンサ450にとって測距を困難にする場合がある。同様に、イメージングセンサ450が検出している光の波長に極めて吸収性の高い物体12は、同様な問題を提起する場合がある。ガラスで作られている物体12、例えばドアや窓は、反射性が極めて高い場合があり、測距された場合、これらが自由空間有限距離であるかの如く見えるか第1の非鏡面状反射面への反射光として測距する。これにより、ロボット100は、物体12を障害物としては見ず、その結果、ロボット100は、窓又はドアと衝突する場合があり、それによりロボット又は物体12の損傷が生じる恐れがある。これを回避するため、コントローラ500は、代表的な窓ガラス又は出入口の寸法形状直線から成るにマッチする表面の不連続部を探す1つ又は2つ以上のアルゴリズムを実行するのが良い。すると、これら表面は、自由空間ではなく障害物であると推定される場合がある。ロボットの経路中の反射性物体を検出する別の具体化例は、それ自体の反射光を検出する反射センサを用いることである。障害物又は物体12の注意深い接近時、反射センサを用いて鏡面反射性物体が前にあるかどうか又はロボットが安全に空間を占有しているかどうかを判定することができる。3‐Dスペックルカメラ1300の場合、光源1310は、反射性の高い物体12の表面上で認識可能なパターンを形成しないようになる場合があり、或いはイメージャ1320は、反射性の高い物体12からのスペックル反射光を認識しない場合がある。3‐DTOFカメラ1500の場合、反射性の高い物体12は、3‐DTOFカメラ1500が物体12中で反射された別の物体12までの物体それ自体までではないレンジ又は距離を得る多経路状況を生じさせる場合がある。IR故障モードを治すため、センサシステム400は、音響飛行時間、ミリメートル波レーダ、シーン10内のほんの僅かな反射光を用いることができるステレオ又は他のビジョン技術を採用するのが良い。メッシュ物体12は、イメージングセンサ450にとって測距を困難にする場合がある。特定の多孔率のメッシュのすぐ後ろに物体12が存在していない場合、メッシュは、中実障害物12として見えるであろう。しかしながら、物体12がメッシュの後ろに移動した場合及び3‐Dスペックルカメラ1300の場合、スペックルは、メッシュの後ろで物体12から反射することができ、物体は、たとえこれがメッシュの後ろに位置した場合であってもメッシュではなく、深度マップ中に見えることになる。メッシュの識別にあらかじめ寄与した箇所に関する情報が利用できる場合物体12がメッシュの後ろに移動する前、かかる情報を用いると、将来の占有マップにメッシュの位置を登録することができる。様々な距離での受け取りスペックルマップルの確率的相関に関する情報を受け取ることにより、コントローラ500は、イメージングセンサ450と一線をなす多数の多孔質又はメッシュ状物体12の存在場所を突き止めることができる。コントローラ500は、カラー色/サイズ/寸法ブロブ照合のためにイメージングセンサ450からのイメージングデータを利用することができる。シーン10内における別々の物体12の識別により、ロボット100は、衝突を回避するだけでなく物体12を探すことも可能である。ヒューマンインターフェースロボット100は、家又はオフィス環境の背景に対して人及び標的物体12を識別することが必要な場合がある。コントローラ500は、深度マップが単一のグレースケールマップであって同一のカラー即ち、深度の連続性を探してシーン10内の連続物体12を生じさせるかの如くイメージングセンサ450のイメージングデータに由来する深度マップに対して1つ又は2つ以上のカラーマップブロブ発見アルゴリズムを実行することができる。カラーマップを用いて物体12をどのようにセグメントするかについての決定を強化することにより、色空間並びに深度空間のセグメント化を可能にすることにより物体照合が一段と強化される。コントローラ500は、先ず最初に、深度により物体12を検出することができ、次に、色により物体12を一段とセグメント化することができる。これにより、ロボット100は、互いに異なる光学品質で互いに近い又は互いに当たっている2つの物体12を識別することができる。センサシステム400が物体検出のためにイメージングセンサ450例えば、カメラを1つしか備えていない具体化例では、イメージングセンサ450は、シーンテキスチャのない場合に表面を画像化する上で問題があり、シーンのスケールを分析することができない場合がある。さらに、物体12の鏡及び/又は鏡面強調により、イメージャ1174の一群のピクセル1174pの飽和例えば、捕捉したイメージの対応部分の飽和が生じる場合があり、カラーイメージでは、鏡面強調は、異なる視点によっては別々に見える場合があり、それにより例えばスペックルカメラ1300についてイメージ照合が阻害される。物体検出のための2つ又は3つ以上のセンサを用い又は集めることにより、比較的堅固であり且つ冗長度の高いセンサシステム400を提供することができる。例えば、フラッシュLADARは、一般に低いダイナミックレンジを有し、回転スキャナは一般に、長い検査時間を必要とするが、これらの形式のセンサは、物体検出には有用である場合がある。幾つかの具体化例では、センサシステム400は、コントローラ500と連絡状態にあるイメージングセンサ450例えば、3‐Dスペックルカメラ1300及び/又は3‐DTOFカメラ1500に加えて、フラッシュLADAR及び/又は回転スキャナを有する。コントローラ500は、イメージングセンサ450及びフラッシュレーザレーダ及び/又は回転スキャナからの検出信号を用いて物体12を識別し、ロボット100からの物体12の距離を求め、物体12の表面の3‐Dマップを作成すると共に/或いは占有マップ1700を作成し又はアップデートすることができる。3‐Dスペックルカメラ1300及び/又は3‐DTOFカメラ1500を用いると、測距を初期化し、低テキスチャの領域を埋め、深度不連続部を検出すると共に/或いはスケールを固定することによってカラー又はステレオカメラの弱点に取り組むことができる。3‐Dスペックルカメラ1300を用いた実施例では、スペックルエミッタ1310により放出されるスペックルパターンは、イメージャ1320に対して回転不変性であるのが良い。さらに。3‐Dスペックルカメラ1300及び/又は3‐DTOFカメラ1500と同時に用いられる追加のカメラ1300カラー又はステレオカメラは、エゴ回転、傾動、透視及び/又はスケール距離を取り扱うのに幾分かの又は完全にスケール回転アフィン不変性である特徴部検出器を採用するのが良い。スケール不変性特徴変換又はSIFTは、イメージ中の局所特徴部を検出すると共に/或いは説明するためのアルゴリズムである。SIFTは、物体認識、ロボットマッピング及びナビゲーション、3‐Dモデル化、ジェスチャ認識、映像追跡及び照合移動のためにコントローラ140センサシステム130からのデータを用いるによって使用可能である。SIFTは、スケール不変性、回転不変性変換として、シーン10内の特徴部に対するサインの配置を可能にすると共にシーン10内の識別された特徴部が遠くに位置し又はこれらを回転させた場合であってもシーン10内の識別された特徴部を再び得るのを助けることができる。例えば、通常のイメージに対するSIFTの適用により、移動した物体12例えば、顔面又はボタン若しくは何らかのテキストの認識を可能にし、物体12が同一の輝度又はカラーパターンを有し、大きくなったか又は小さくなったか或いは回転したかが識別される。アフィン不変性であり、物体12を角度から識別するためのスキュー又はディストーションを説明することができる変換のうちの他のものを採用することができる。センサシステム400及び/又はコントローラ500は、SIFT、RIFT、アフィンSIFT、RIFT、G‐RIF、SURF、PCA‐SIFT、GLOH.PCA‐SIFT、SIFTw/FAST曲がり角検出及び/又はスケール変更可能なボキャブラリーツリー及び/又はSIFTw/IrregularOrientationHistogramBinningを採用することによりスケール不変性特徴部認識例えば、カラー又はステレオカメラによるを提供することができる。幾つかの具体化例では、コントローラ500は、物体検出及び/又は識別のためにSIFT及び/又は他の変換を採用するプログラム又はルーチンを実行する。コントローラ500は、イメージセンサ450又はIRカメラからのイメージデータ、例えば色、黒色及び白色を受け取ることができる。幾つかの実施例では、イメージセンサ450は、スペックル測距の利点なく特徴部を識別するためにスペックル照明なしでイメージデータを提供することができる3‐DスペックルIRカメラである。コントローラ500は、スペックル測距からの3‐Dシーンに先にマップされた特徴部又は物体12を識別し又はタグ付けすることができる。深度マップを用いると、カメラでイメージ化された特徴部に適用されるSIFTの認識率をフィルタ処理して向上させることができると共に/或いはスケール不変性を単純化することができるレンジ中の運動と変化の両方が既知であり、スケールに関連付けることができるので。SIFT状変換は、フレーム毎に位置変化について標準化されると共に/或いはシフトされた深度マップデータに有用である場合があり、慣性追跡、オドメトリodometry、固有感覚性及び/又はビーコン基準を備えたロボットは、かかる深度マップデータを追跡することができる。例えば、スケール及び回転不変性に適用される変換は、深度マップが特徴部の方向に運動量だけ割送りされた場合、深度マップの局部特徴を認識する上で依然として有効な場合がある。本明細書において説明すると細部及び特徴と組み合わせ可能な3‐DデータへのSIFT状又は他の特徴記述子に対する他の細部及び特徴は、セエスSeS,ローヴェLowe,デビッドジーDavidG,リトルジェイLittleJ,ビジョン‐ベースドモビルロボットローカリゼーションアンドマッピングユージングスケール‐フィーチャーズVisionbasedmobilerobotlocalizationandmappingusingscaleinvariantfeatures,プロシーディングスオブジインスティトュートオブエレクトリカルアンドエレクトロニックエンジニアズインターナショナルカンファレンスオンロボティックスアンドオートメーションアイシーアールエーProceedingsoftheIEEEInternationalConferenceonRoboticsandAutomationICRA,2001年,p.2051又はエフロサゲンジャーFRothganger,エスレイズブニックSLasebnik,シーシュミットCSchmid及びジェイポンセJPonce,スリーディーオブジェクトモデリングアンドリカグニシャンユージングローカルアフィン‐インヴァリアントイメージディスクリプターズアンドマルチ‐ビュースペーシャルカンストレインズ3DObjectModelingandRecognitionUsingLocalAffineInvariantImageDescriptorsandMultiViewSpatialconstrains,インターナショナルカンファレンスオンコンピュータビジョンICCV,2004年、イルナゴルドンIrunaGordon及びデビッドジーDavidG,ローヴェLowe,ワットアンドホェア:スリーディーオブジェクトリカグニシャンウィズアキュレートポーズWhatandwhere3Dobjectrecognitionwithaccuratepose,トワードカテゴリー‐レベルオブジェクトリカグニシャンTowardCategoryLevelObjectRecognition,シュプリンガー‐フェアラークSpringerVerlag,2006年,p67-82に見受けられ、これら非特許文献を参照により引用し、これらの記載内容全体を本明細書の一部とする。落下を含む人の行為の認識における3‐DSIFTに適した技術に関する他の細部及び特徴は、イワンラプティブIvanLaptev及びトニーリンデバーグTonyLindeberg,ローカルディスクリプターズフォースペイシオ‐テンポラルリカグニシャンLocaldescriptorsforspatiotemporalrecognition,ヨーロピアンカンファレンスオンコンピュータビジョン2004ワークショップオンスペーシャルコヘーレンスフォーヴィジュアルモーションアナリシスECCV’04WorkshoponSpatialCoherenceforVisualMotionAnalysis,シュプリンガーレクチャーノーツインコンピュータサイエンスSpringerLectureNotesinComputerScience,第3667号,2004年,p.91‐103、イワンラプティフIvanLaptev,バルバラカプトBarbaraCaputo,クリスチャンシュルトChristianSchuldt及びトニーリンデバーグTonyLindeberg,ローカルヴェロシティー‐アダプティッドモーションイベンツフォースペーシオ‐テンポラルリカグニシャンLocalvelocityadaptedmotioneventsforspatiotemporalrecognition,コンピュータビジョンアンドイメージアンダースタンディング108ComputerVisionandImageUnderstanding108,p.207‐229,2007年、ポールスコバーナPaulScovanner,エスアリSAli,エムシャーMShah,アスリーディメンショナルシフトディスクリプターアンドイッツアプリケーショントューアクションリカグニシャンA3dimensionalsiftdescriptoranditsapplicationtoactionrecognition,プロシーディングスオブザフィフティーンスインターナショナルカンファレンスオンマルチメディアProceedingofthe15thInternationalConferenceonMultimedia,p.357‐360,2007年、ジェイニーブルスJNiebles,エイチワンHWang,フェイフェイリーFeiFeiLi,アンスーパーバイズドラーニングオブヒューマンアクションカテゴリーズユージングスペーシャル‐テンポラルワーズUnsupervisedLearningofHumanActionCategoriesUsingSpatialTemporalWords,プロシーディングオブザブリティッシュマシーンビジョンカンファレンスビーエムブイシーProceedingoftheBritishMachineVisionConferenceBMVCに見受けられ、これら非特許文献を参照により引用し、これらの記載内容全体を本明細書の一部とする。コントローラ500は、深度不連続部からの穴を埋めて3‐Dモデルのメートル法スケールを固定するために物体12の表面の3‐Dマップを作成する際にイメージングセンサ450例えば、深度マップセンサを使用するのが良い。深度マップセンサレンジデータで補強されたストラクチャフロムモーションstructurefrommotionを用いると、センサポーズを推定することができる。典型的なストラクチャフロムモーションパイプラインは、視点不変性特徴部推定、カメラ内特徴部照合及びバンドル法を含むのが良い。イメージングセンサ450を備えたカラー/ステレオカメラ例えば、3‐Dスペックルカメラ1300及び/又はTOFカメラ1500の特徴を組み合わせたソフトウェア手段としては、1センサポーズ推定、2深度マップ推定及び33‐Dメッシュ推定が挙げられる。センサポーズ推定では、各イメージ捕捉のセンサパッケージの位置及び姿勢が求められる。深度マップ推定では、高解像度深度マップが各イメージについて得られる。3‐Dメッシュ推定では、センサポーズ推定及び深度マップを用いて関心のある物体を識別することができる。幾つかの具体化例では、カラー又はステレオカメラ320図9及び3‐Dスペックルカメラ1300又は3‐DTOFカメラ1500を同時に用いるのが良い。1メートル及び45°の視野452のスタンドオフ距離は、妥当な回路時間及びビュー相互間のオーバーラップを与えることができる。少なくとも2つのピクセルが50パーセント検出に必要である場合、少なくとも1メガピクセル解像度のカラーカメラを45°視野452を備えたレンズに用いるのが良く、60°又はこれよりも広い視野452については比例して大きな解像度が用いられる。深度マップセンサが比較的低い解像度及びレンジ精度を有している場合があるが、深度マップは、カラー/ステレオイメージからのピクセルの集まりを正確な表面に確実に割り当てることができる。これにより、テキスチャがないことによるステレオ視誤差を減少させることができ、又、例えば5cm間隔までレンジを境界付けることにより、ばらつきサーチレンジ及びコンピュータ処理費用を減少させることができる。再び図10Aを参照すると、第1及び第2の3‐Dイメージセンサ450a,450bを用いると、ロボットの環境のマッピングを向上させてロボットマップを作成することができる。というのは、第1の3‐Dイメージセンサ450aを用いると、近くの物体をマップすることができ、第2の3‐Dイメージセンサ450bを用いると遠くの物体をマップすることができるからである。図17A及び図17Bを参照すると、幾つかの場合において、ロボット100は、シーン10及び/又は作業領域5内の物体12の占有マップ1700を受け取り又はロボットコントローラ500は、経時的にイメージングセンサ450例えば、第2の3‐Dイメージセンサ450bから受け取ったイメージデータ及び/又はイメージ深度データに基づいて占有マップ1700を生じさせるそして、アップデートすることができる。シーン10例えば、ロボット100の周りの環境内のロボット100の存在場所突き止めに加えて、ロボット100は、センサシステム400を用いて連結空間例えば、作業領域5内の他の箇所まで移動することができる。ロボット100は、ロボット100の周りの近くの領域をマップして比較的近くの物体12を見分ける短距離型のイメージングセンサ450a例えば、図1及び図3に示されているように胴部140の下面に取り付けられる及びロボット100の周りの比較的広い空間をマップして比較的遠くに位置する物体12を見分ける長距離型のイメージセンサ450例えば、図1及び図3に示されているように頭部160に取り付けられるを有するのが良い。ロボット100は、占有マップ1700を用いてシーン10内の既知の物体12並びに遮蔽部16例えば、物体12が現在の見晴らしの利く位置から確認されるべき又は確認されるはずであり又は確認されるはずがなく確認することもできない場所を識別することができる。ロボット100は、シーン10内の遮蔽部16又は新たな物体12を登録することができ、そして遮蔽部16内の新たな物体12又は何らかの物体12の存在場所を確認するために遮蔽部16又は新たな物体12を迂回しようとすることができる。さらに、ロボット100は、占有マップ1700を用いて、シーン10内の物体12の運動を突き止めてこれを追跡することができる。例えば、イメージングセンサ450,450a,450bは、シーン10内の物体12のマップされた位置を検出しない状態でシーン10の物体12の新たな位置12′を検出することができる。ロボット100は、古い物体12の位置を遮蔽部16として登録することができ、そして物体12の存在場所を確認するために遮蔽部16を迂回しようとすることができる。ロボット100は、新たなイメージ深度データを先のイメージ深度データ例えば、マップ1700と比較してシーン10内の物体12の存在場所の信頼水準を割り当てることができる。シーン10内の物体12の存在場所信頼水準は、しきい期間後にタイムアウトすることができる。センサシステム400は、センサシステム400の各イメージングサイクル後に各物体12の存在場所信頼水準を更新することができる。幾つかの実施例では、遮蔽検出期間例えば、10秒未満内の検出された新たな遮蔽部16例えば、占有マップ1700からなくなった物体12は、シーン10内の生きている物体12例えば、移動中の物体12を意味する場合がある。幾つかの具体化例では、シーン10内の検出された第1の物体12aの後ろに位置する関心のある第2の物体12bを当初、シーン10内の遮蔽部16として検出できない場合がある。遮蔽部16は、イメージングセンサ450,450a,450bによっては容易には検出できない又は視認することができないシーン10内の領域であるといえる。図示の実施例では、ロボット100のセンサシステム400例えば、又はその一部分、例えばイメージングセンサ450,450a,450bは、シーン10を視認するために視認角θVこれは、0°から360°までの間の任意の角度であって良いを持つ視野452を有する。幾つかの実施例では、イメージングセンサ450,450a,450bは、360°視認角θVのための全方向性光学素子を有し、他方、他の実施例では、イメージングセンサ450,450a,450bは、360°未満例えば、約45°~180°の視認角θVを有する。視認角θVが360°未満である実施例では、イメージングセンサ450,450a,450b又は、これらのコンポーネントは、360°の視認角θVを達成するためにロボット本体110に対して回転することができる。イメージングセンサ450,450a,450bは、水平視認角θVHと同じ又はこれとは異なる垂直視認角θVVを有することができる。例えば、イメージングセンサ450,450a,450bは、少なくとも45°の水平視認角θVH及び少なくとも40°の垂直視認角θVVを有することができる。幾つかの具体化例では、イメージングセンサ450,450a,450b又はこれらの部分は、ロボット本体110及び駆動システム120に対して動くことができる。さらに、第2の物体12bを検出するため、ロボット100は、シーン10の周りに1つ又は2つ以上の方向に駆動することにより例えば、作業面5上での並進及び/又は回転によりイメージングセンサ450,450a,450bを動かして第2の物体12bの検出を可能にする見晴らしの利く箇所を得ることができる。イメージングセンサ450,450a,450b又はこれらの部分のロボット運動又は独立運動は、単眼性の問題をも解決することができる。信頼水準を作業領域5内の物体12の検出された存在場所又は追跡された動きに割り当てるのが良い。例えば、占有マップ1700の作成時又はアップデート時、コントローラ500は、マップ1700上の各物体12に関する信頼水準を割り当てるのが良い。信頼水準は、物体12がマップ1700上に指示されるように作業領域5内に実際に存在する可能性に正比例するのが良い。信頼水準は、多くの要因、例えば、物体12を検出するために用いられるセンサの数及び形式によって決定可能である。例えば、接触センサ430は、かかる接触センサ430がロボット100によって物体12との実際の接触を検出するので、最も高い信頼水準を提供することができる。イメージングセンサ450は、近接センサ430よりも高い場合のある異なる信頼水準を提供することができる。センサシステム400の2つ以上のセンサから受け取った情報を任意の単一のセンサに比較的高い信頼水準を提供するために集めることができ又は蓄積することができる。オドメトリは、経時的な位置の変化走行距離を推定するためにアクチュエータの運動からのデータの使用法である。幾つかの実施例では、車輪の回転数、したがってロボット100の走行距離を測定するためにエンコーダが駆動システム200に取り付けられる。コントローラ500は、物体の存在場所に関する信頼水準を評価する際にオドメトリを用いるのが良い。幾つかの具体化例では、センサシステム400は、ロボット100の走行距離を検出するためにオドメータ及び/又は角速度センサ例えば、ジャイロスコープ又はIMU470を有する。ジャイロスコープは、角運動量の保存則に基づいて向きを計測し又は維持する装置である。コントローラ500は、オドメータ及び/又は角速度センサからそれぞれ受け取ったオドメトリ及び/又はジャイロ信号を用いて作業領域5内及び/又は占有マップ1700上のロボット100の存在場所を突き止めることができる。幾つかの実施例では、コントローラ500は、推測航法を用いる。推測航法は、先に求めた位置に基づいて現在の位置を推定し、そして経過時間にわたる既知の又は推定された速度及び道筋に基づいてその位置を前進させるプロセスである。作業領域5内のロボット存在場所を知る例えば、オドメトリ、ジャイロスコープ等を介してと共に作業領域5内の1つ又は2つ以上の物体12の検出された存在場所を知るセンサシステム400によってことによって、コントローラ500は、占有マップ1700上且つ作業領域5内のこれに対し、オドメトリ又はジャイロスコープを用いない物体の存在場所又は運動の比較的高い信頼水準を評価することができる。車輪運動に基づくオドメトリは、電気的に雑音がある場合がある。コントローラ500は、駆動システム200のオドメトリに基づいて車輪とは別個独立に視覚的オドメトリによりロボット運動をコンピュータ計算するためにロボット100の周りの環境又はシーン10のイメージデータをイメージングセンサ450から受け取ることができる。視覚的オドメトリでは、オプティカルフローを用いてイメージングセンサ450の運動を求める必要がある。コントローラ500は、車輪に基づくオドメトリの誤差を是正するためにイメージングセンサ450のイメージングデータに基づく計算された運動を用いるのが良く、かくして、マッピング及び運動制御を向上させることができる。視覚的オドメトリは、イメージングセンサ450が捕捉されたイメージ内の特徴を追跡することができない場合、低テキスチャ又は低光量シーン10の場合には制限がある場合がある。本明細書において説明する細部及び特徴と組み合わせ可能なオドメトリ及びイメージングシステムに関する他の細部及び特徴は、米国特許第7,158、317号明細書この米国特許明細書は、デプスオブフィールドdepthoffieldイメージングシステムを記載している及び米国特許第7,115,849号明細書この米国特許明細書は、ウェーブフロントコーディング干渉コントラストイメージングシステムを記載しているに見受けられ、これら特許文献を参照により引用し、これらの記載内容全体を本明細書の一部とする。ロボットがこれが働く建物にとって慣れていない場合、ロボットを自律的ナビゲーションのために動き回らせ又はロボットに建物のマップ例えば、部屋又は廊下の配置場所を提供する必要がある場合がある。例えば、病院では、ロボットは、各患者の部屋、看護ステーション等の場所を知る必要がある場合がある。幾つかの具体化例では、ロボット100は、例えば図18に示されているレイアウトマップ1810を受け取り、そしてロボット100を訓練してレイアウトマップ1810を学習させるのが良い。例えば、ロボット100を建物の中をぐるりと案内しながら、ロボット100は、レイアウトマップ1810上の場所に対応した特定の場所を記録するのが良い。ロボット100は、ウェブパッド310上にレイアウトマップ1810を表示することができ、ユーザがロボット100を特定の場所につれて行くと、ユーザは、その場所をレイアウトマップ1810上にタグ付けするのが良い例えば、ウェブパッド310のタッチスクリーン又は他のポインティング装置を用いて。ユーザは、部屋の名称又は部屋の番号のようにタグ付けされた場所のラベルをエンターするよう選択することができる。タグ付け時、レイアウトマップ1810にポイントを当てた状態で且つ例えば図12Dに示されているロボットマップ1820に対応のポイントを当てた状態でタグを記憶するのが良い。センサシステム400を用いて、ロボット100は、これが動き回っているときにロボットマップ1820を作成することができる。例えば、センサシステム400は、ロボット100がどれほど遠くまで動いたか及び移動方向に関する情報を提供することができる。ロボットマップ1820は、レイアウトマップ1810に提供されている壁に加えて固定状態の障害物を含む場合がある。ロボット100は、ロボットマップ1820を用いて自律的ナビゲーションを実行することができる。ロボットマップ1820では、壁は、例えば対応の廊下の壁に沿って置かれた包装材の検出及び/又は種々の小部屋内の家具の検出に起因して完全に真っ直ぐには見えない場合がある。さらに、レイアウトマップ1810とロボットマップ1820との間に回転及び解像度の差が存在する場合がある。マップ訓練後、ユーザがロボット100を所与の場所に送りたいと思った場合、ユーザは、ラベル/タグを参照することができ例えば、ラベル又はタグをウェブパッド310上に表示された存在場所テキストボックス中に入力することができ又はロボット100はレイアウトマップ1810をウェブパッド310上でユーザに表示することができ、そしてユーザは、レイアウトマップ1810上のその場所を選択することができる。ユーザがタグ付けされたレイアウトマップ場所を選択した場合、ロボット100は、レイアウトマップ1810上の選択された場所に対応するロボットマップ1820上の場所を容易に突き止めることができ、そして前進して選択された場所まで進むことができる。レイアウトマップ1810上の選択された場所がタグ付けされた場所ではない場合、ロボット100は、ロボットマップ1820上の対応の場所を突き止める。幾つかの具体化例では、ロボット100は、既存のタグ付け場所を用いてスケール変更サイズ、オリジンマッピング及びロボットマップ1820との回転をコンピュータ計算し、次に、コンピュータ計算したパラメータを利用してロボットマップ場所を突き止める例えば、アフィン変換又は座標を用いて。ロボットマップ1820は、レイアウトマップ1810と同一の向き及びスケールでなくても良い。さらに、レイアウトマップは、縮尺通りでなくても良く、マップ領域によって様々なディストーションを有していても良い。例えば、ホテル、オフィス及び病院で通常見られる火災時避難マップを走査することにより作られるレイアウトマップ1810は、通常、縮尺通りには作られておらず、マップの種々の領域に種々のスケールを有する場合がある。ロボットマップ1820は、それ自体のディストーションを有する場合がある。例えば、ロボットマップ1820上の場所は、距離の尺度として車輪の回転をカウントすることによってコンピュータ計算される場合があり、床が僅かに滑りやすく又は曲がり角で余分の車輪の回転を生じさせる場合、不正確な回転に関する計算により、ロボット100は、マップされた物体の不正確な場所を定める場合がある。レイアウトマップ1810上の所与の箇所1814をロボットマップ1820上の対応の箇所1824にマップする方法は、既存のタグ付けされた箇所1812を用いてレイアウトマップ箇所を含む領域例えば、しきい半径内でレイアウトマップ1810とロボットマップ1820との局所ディストーションをコンピュータ計算するステップを含むのが良い。この方法は、ディストーション計算をレイアウトマップ箇所1814に適用するステップを更に含み、その目的は、対応のロボットマップ箇所1824を見出すことにある。逆の手順は、ロボットマップ1820上の所与の箇所で始まり、そして例えばロボットにその現在の場所を尋ねるためにレイアウトマップ1810上の対応の箇所を見出したいと思った場合に実施されるのが良い。図18Cは、ロボット100を操作してレイアウトマップ1810及びロボットマップ1820を用いて環境をぐるりと進む操作又はステップの例示の流れ図1800を提供している。図18B及び図18Cを参照すると、操作は、ロボット100の環境に対応したレイアウトマップ1810を受け取るステップ1802c、ロボット100を環境内でレイアウトマップ1810上のレイアウトマップ場所1812まで動かすステップ1804c、環境に対応すると共にロボット100により作成されたロボットマップ1820上のロボットマップ場所1822を記録するステップ1806c、記録したロボットマップ場所1822及び対応のレイアウトマップ場所1812を用いてロボットマップ1820とレイアウトマップ1810との間のディストーションを求めるステップ1808c及び求めたディストーションを標的レイアウトマップ場所1814に適用して対応の標的ロボットマップ場所1824を求めるステップ1810cを有し、かくして、ロボットは、レイアウトマップ1810上の選択された場所1814まで進むことができる。幾つかの具体化例では、操作は、既存のタグ付け場所を用いてスケール変更サイズ、オリジンマッピング及びレイアウトマップとロボットマップとの間の回転を求めるステップ及び選択したレイアウトマップ場所1814に対応するロボットマップ場所を分析して求めるステップを含む。操作は、アフィン変換を求めたスケール変更サイズ、オリジンマッピング及び回転に適用してロボットマップ場所を分析により求めるステップを含むのが良い。図19A~図19Cを参照すると、幾つかの具体化例では、この方法は、タグ付けされたレイアウトマップ箇所1912記録されたレイアウトマップ場所とも呼ばれるを用いてタグ付けされたレイアウトマップ箇所1912を含む境界付け形状内の領域の三角形分割を行ってレイアウトマップ1810の全ての領域を頂点がタグ付けされたレイアウトマップ箇所1912のところに位置する少なくとも1つの三角形1910により覆われるようにするステップを含む。この方法は、選択したレイアウトマップ箇所1914を含む三角形1910を見出すステップ及びレイアウトマップ箇所1810でマップされた三角形1910とロボットマップ1820でマップされた対応の三角形1920即ち、同一のタグ付けされた頂点を有するロボットマップ三角形との間のスケール、回転、並進及びスキューを求めるステップを更に含む。この方法は、求めたスケール、回転、並進及びスキューを選択したレイアウトマップ箇所1914に適用して対応のロボットマップ箇所1924を見出すステップを含む。図19Cは、標的ロボットマップ場所1924を求める操作又はステップの例示の流れ図1900を提供している。操作は、標的レイアウトマップ場所を境界付けるレイアウトマップ相互間の三角形分割を求めるステップ1902、レイアウトマップでマップされた三角形とロボットマップでマップされた対応の三角形との間のスケール、回転、並進及びスキューを求めるステップ1904及び対応のロボットマップ箇所を求めるために求めたスケール、回転、並進及びスキューを標的レイアウトマップ場所に適用するステップ1906を含む。図20A及び図20Bを参照すると、別の実施例では、この方法は、選択したレイアウトマップ箇所1914までのレイアウトマップ1810内の全てのタグ付け箇所1912の距離を求めるステップ及びレイアウトマップタグ付け箇所1912の図心2012を求めるステップを有する。この方法は、ロボットマップ1820上の全てのタグ付け箇所1922の図心2022を求めるステップを更に有する。各タグ付けレイアウトマップ箇所1912に関し、この方法は、レイアウトマップ図心2012から選択したレイアウト箇所1914まで延びるベクトル2014をロボットマップ図心2022からロボットマップ箇所1924まで延びるベクトル2024に変換するのに必要な回転及び長さスケール変更を求めるステップを有する。このデータを用いて、この方法は、平均回転及びスケールを求めるステップを更に有する。各タグ付けレイアウトマップ箇所1912に関し、この方法は、図心変換、平均回転及び平均スケールを選択したレイアウトマップ箇所1914に適用することにより理想ロボットマップ座標箇所1924iを求めるステップを更に有する。さらに、各タグ付けレイアウトマップ箇所1912に関し、この方法は、そのレイアウトマップ箇所1912から選択したレイアウトマップ箇所1914までの距離を求めるステップ及びこれらの距離、即ち、最も短い距離から最も長い距離までによってタグ付けレイアウトマップ箇所1912を分類するステップを有する。この方法は、各タグ付けレイアウトマップ箇所1912と選択したレイアウトマップ箇所1914との間の距離の逆二乗を用いて各タグ付けレイアウトマップ箇所1912に関する影響因子を求めるステップを有する。次に、各タグ付けレイアウトマップ箇所1912に関し、この方法は、タグ付けレイアウトマップ箇所1912の影響因子を用いることによって比例配分された理想ロボットマップ座標箇所1924iとロボットマップ箇所1924との差であるベクトルを求めるステップを有する。この方法は、比例配分されたベクトルを合計するステップ及びかかるベクトルの合計を選択したレイアウトマップ箇所1914に関する理想ロボットマップ座標箇所1924iに追加するステップを有する。結果は、ロボットマップ1820上の対応のロボットマップ箇所1924である。幾つかの実施例では、この方法/アルゴリズムは、全てのタグ付けレイアウトマップ箇所1912ではなく、最も近いN個のタグ付けレイアウトマップ箇所1912だけを含む。図20Cは、レイアウトマップ1810及びロボットマップ1820を用いて標的ロボットマップ場所1924を求めるための操作又はステップの例示の流れ図2000を提供している。操作は、全てのレイアウトマップ場所と標的レイアウトマップ場所との間の距離を求めるステップ2002、レイアウトマップ場所の図心を求めるステップ2004、全ての記録されたロボットマップ場所の図心を求めるステップ2006及び各レイアウトマップ場所に関し、回転及び長さスケール変更を求めてレイアウトマップ図心から標的レイアウト場所まで延びるベクトルをロボットマップ図心から標的ロボットマップ場所まで延びるベクトルに変換するステップ2006を含む。図10A及び図21A~図21Dを参照すると、幾つかの具体化例では、ロボット100例えば、図22に示されている制御システム510は、その局所知覚空間例えば、センサ視野405を3つのカテゴリ、即ち、障害物黒色2102、未知領域灰色2104及び既知自由領域白色2106に分類する。障害物2102は、地面Gの上方に位置すると共にロボット100の高さよりも低い観察された検出された箇所及び地面Gよりも低い観察された箇所例えば、穴、ステップダウン等である。既知自由領域2106は、3‐Dイメージセンサ450が地面Gを見ることができる領域に対応している。センサシステム400の全てのセンサからのデータを組み合わせてこれらを離散化3‐Dボクセル格子にするのが良い。次に、3‐D格子を分析してこれを3つの局所知覚空間分類により2‐D格子2100に変換するのが良い。図21Aは、静止状態にあるときのロボット100の局所知覚空間の例示の略図である。3‐Dボクセル格子中の情報は、持続性を有するが、これが補強されなければ経時的に崩れる。ロボット100が動いているとき、ロボットは、持続性のために進入する既知自由領域2106を有する。制御システム500の物体検出物体回避ODOAナビゲーション方式は、指令の結果として生じる潜在的なロボット位置を受け入れること又は拒否することかのいずれかを含む場合がある。潜在的ロボット経路2110を種々の指令により多くの深度レベルで発生させることができ、結果的に、各レベルのところでロボット位置が生じる。図21Bは、動いている間におけるロボット100の局所知覚空間の例示の略図である。ODOA挙動600b図22は、各予測ロボット経路2110を評価することができる。これら評価を行為選択エンジン580によって利用すると、好ましい結果及び対応のロボット指令を得ることができる。例えば、ロボット経路2110中の各ロボット位置2120に関し、ODOA挙動600bは、物体検出及び物体回避のための方法を実行することができ、かかる方法は、格子2100内に位置していて、ロボット100の対応の箇所の周りの境界付けボックス内に位置する各セルを識別するステップ、各セルの分類を受け取るステップ、障害物又は未知領域として分類された各セルに関し、このセルに対応する格子箇所を検索するステップ及びこの格子箇所がロボット100の存在場所の周りの衝突円内に位置するかどうかを判定することにより衝突チェックを実行するステップを有する。格子箇所が衝突円内に位置している場合、この方法は、格子箇所が衝突三角形内に位置しているかどうかの三角形試験を実行するステップを更に有する例えば、ロボット100を三角形としてモデル化するのが良い。格子箇所が衝突三角形内に位置している場合、この方法は、格子箇所を拒否するステップを有する。ロボット位置が対をなす格子箇所のセンサシステム視野の内側に位置している場合、未知格子箇所が無視される。というのは、ロボット100がこれら格子箇所に到達する時点までにこれが知られるということが前提とされるからである。この方法は、障害物衝突がロボット経路2110中の連続したロボット位置2120相互間のロボット経路領域例えば、三角形としてモデル化されている内に存在しているかどうかを判定して或る1つのロボット位置2120から次のロボット位置までの移行中、ロボット衝突を阻止するステップを有するのが良い。図21Cは、ロボット100の局所知覚空間及びセンサシステムの視野405の略図である制御システム510は、ロボット経路決定のために或る特定のセンサ、例えば第1及び第2の3‐Dイメージセンサ450a,450bしか使用しないのが良い。駆動システム200のホロノミック移動性を利用して、ロボット100は、公知の地面Gの持続性を利用し、それにより、ロボット100は、センサシステムの視野405が実際にカバーしない方向に進むことができる。例えば、ロボット100が、第1及び第2の3‐Dイメージセンサ450a,450bが前方に向いた状態で依然として座っている場合、ロボット100は、側方に進むことができるが、制御システム510は、提案された動きを拒否する。というのは、ロボット100は、図21Cの実施例に示されているようにその側部に何があるかを知らないからであり、図21Cは、ロボット100の側に未知の分類された領域を示している。ロボット100が、第1及び第2の3‐Dイメージセンサ450a,450bが前方に向いた状態で前方に進んでいる場合、ロボット100の次の地面Gは、既知自由領域2106として分類されるのが良い。というのは、第1の3‐Dイメージセンサ450aと第2の3‐Dイメージセンサ450bの両方は、ロボット100が前方に進んでいるときに地面Gを自由として見ることができ、分類の持続性は依然として崩されていないからであるこれについては、例えば、図21Bを参照されたい。かかる状況では、ロボット100は、側方に進むことができる。図21Dを参照すると、幾つかの実施例では、ホロノミック移動性がある状態で多数の考えられる軌道が与えられている場合、ODOA挙動600bにより、ロボットは、ロボットが行こうとしている場所をロボットが見る現在ではないが軌道を選択することができる。例えば、ロボット100は、制御システム510が物体を検出することができるセンサの視野の向きを予想することができる。ロボットは、並進しながら回転することができるので、ロボットは、進みながらセンサ視野405を広げることができる。センサシステム400の視野405を理解すると共にセンサシステムが異なる位置で見るものを理解することによって、ロボット100は、ロボットが行こうとしている場所をロボットが見るのを助ける運動軌道を選択することができる。例えば、曲がり角を曲がる際、ロボット100は、曲がり角の周りのきつく曲がる軌道を拒否することができる。というのは、図21Eに示されているように、ロボット100は、親ロボット位置2120のセンサシステム視野405ではなく、ロボットが現時点においては知られないロボット位置2020に最後は至ることができるからである。これとは異なり、ロボット100は、最初は所望の運動方向に向き、そして駆動システム200のホロノミック移動性を利用して図21Fに示されているように側方に動き、次に曲がり角を回って真っ直ぐに動く運動軌道を選択することができる。図22を参照すると、幾つかの具体化例では、コントローラ500は、互いに通信状態にある制御調停システム510aと挙動システム510bを含む制御システム510を実行する。制御調停システム510aにより、アプリケーション520を制御システム510に動的に追加したりこれから削除したりすることができ、又、アプリケーション520が各々任意他のアプリケーション520について知る必要なくロボット100を制御することができるようにするのが容易になる。換言すると、制御調停システム510aは、ロボット100のアプリケーション520とリソース又は資源530との間の単純な優先化制御機構体を提供する。リソース530は、コントローラ500と通信状態にある駆動システム200、センサシステム400及び/又は任意のペイロード又は制御可能な装置を有するのが良い。アプリケーション520は、ロボット100のメモリ内に記憶されるのが良く又はロボット100と通信関係をなすのが良く、それにより同時に動作し例えば、プロセッサ、それと同時にロボット100を制御する。アプリケーション520は、挙動システム510bの挙動600にアクセスすることができる。独立して配備されるアプリケーション520を実行時に動的に組み合わせてロボット100のロボットリソース530例えば、駆動システム200、腕、頭部等を共有することができる。アプリケーション520の中で実行時にロボットリソース530を動的に共有する低レベルポリシーが実施される。ポリシーは、どのアプリケーション520がそのアプリケーション520例えば、アプリケーション520のうちで優先度階層の必要とするロボットリソース530の制御を行うかを決定する。アプリケーション520は、動的に開始したり停止したりすることができ、そして互いに完全に別個独立にランする。また、制御システム510により、互いに組み合わせることができる複雑な挙動600は、互いに支援することができる。制御調停システム510aは、1つ又は2つ以上のリソースコントローラ540、ロボットマネージャ550及び1つ又は2つ以上の制御アービタ560を有する。これらコンポーネントは、共通のプロセス又はコンピュータにある必要はなく、しかも、任意特定の順序で開始される必要もない。リソースコントローラ540のコンポーネントは、アプリケーション520のための制御調停システム510aのインターフェースをなす。あらゆるアプリケーション520についてこのコンポーネントのインスタンスが存在する。リソースコントローラ540は、認証、分散型リソース制御アービタ、コマンドバッファリング等の複雑さを抜粋すると共に要約する。ロボットマネージャ550は、どのアプリケーション520が任意特定の時点でロボットリソース530のうちの任意のものの排他的制御を行うかを制御することによってアプリケーション520の優先化を強調させる。これは、上方の中央コーディネータなので、ロボット部分毎にロボットマネージャ550のインスタンスが1つだけ存在する。ロボットマネージャ550は、リソースコントローラ540の線形優先化順序を有する優先度ポリシーを実行し、ハードウェア制御を可能にするリソース制御アービタ560を常時監視する。制御アービタ560は、全てのアプリケーション520から指令を受け取り、そしてアプリケーションの優先度に基づいて単一の指令を出し、そしてこれをその関連のリソース530のために公示する。制御アービタ560は又、その関連のリソース530から状態フィードバックを受け取り、そしてこれをアプリケーション520に送り戻す。ロボットリソース530は、1つ又は2つ以上のハードウェアコントローラを備えた機能モジュール例えば、アクチュエータ、駆動システム及びこれらの群のネットワークであるのが良い。制御アービタ560の指令は、特定の行為を実行する上でリソース530にとって特有である。コントローラ500上で実行可能なダイナミックスモデル570が現在のロボットの状態を評価するためにロボット100の種々の部分の重心CG、慣性モーメント及び慣性の外積をコンピュータ計算するよう構成されているのが良い。ダイナミックスモデル570は又、これらコンポーネントの形状、重量及び/又は慣性モーメントをモデル化することができる。幾つかの実施例では、ダイナミックスモデル570は、ロボット100に設けられていて、ロボット100の種々の重心を計算するためにコントローラ500と通信状態にある慣性モーメントユニット470IMU又はその部分例えば、加速度計及び/又はジャイロと通信する。ダイナミックスモデル570を他のプログラム520又は挙動600と一緒にコントローラ500によって使用することができ、それによりロボット100及びそのコンポーネントの作動エンベロープを求めることができる。各アプリケーション520は、行為選択エンジン580及びリソースコントローラ540を有し、1つ又は2つ以上の挙動600が、行為選択エンジン580に接続され、1つ又は2つ以上の行為モデル590が行為選択エンジン580に接続されている。挙動システム510bは、予測モデル化を提供し、かかる挙動システムにより、挙動600は、ロボット行為の考えられる結果を評価することによってロボットの行為に関して協調的に決定することができる。幾つかの実施例では、挙動600は、アプリオリ事前限度及び情報を備えた多数の源から感覚フィードバックをロボットの許容可能な行為に対する評価フィードバックに結合する階層的ステートフルstatefull評価機能を提供するプラグインコンポーネントである。挙動600は、アプリケーション520にプラグ接続可能なので例えば、アプリケーション520の内側又は外側に存在する、アプリケーション520又は制御システム510の任意他の部分を改変することなく挙動600を取り外したり付け加えたりすることができる。各挙動600は、スタンドアロンポリシーである。挙動600を強力にするためには、多数の挙動600の出力を一緒に別の挙動の入力に取り付けて複雑な組み合わせ機能を有することができるようにすることが可能である。挙動600は、ロボット100の全管轄の管理可能な部分を実行するようになっている。行為選択エンジン580は、制御システム510の協調要素であり、挙動600の全ての入力が与えられると、最適行為を探して迅速な最適化された行為選択サイクル予測/修正サイクルを実施する。行為選択エンジン580は、3つの段階、即ち、ノミネーション、行為選択サーチ及び完了を有する。ノミネーション段階では、各挙動600が通知され、行為選択サイクルが開始し、これにサイクル開始時間、現在の状態及びロボットアクチュエータ空間の制限が与えられる。内部ポリシー又は外部入力に基づいて、各挙動600は、この行為選択サイクルに参加したいかどうかを決定する。この段階中、アクティブな挙動原形のリストが生じ、これら入力は、ロボット100上で実行されるべき指令の選択に影響を及ぼすであろう。行為選択サーチ段階では、行為選択エンジン580は、行為空間とも呼ばれる利用可能な行為の空間から実行可能な結果を発生させる。行為選択エンジン580は、行為モデル590を用いて、将来における計画対象時間により互いに異なる時間ステップで各指令の行為をシミュレートした結果としてひとまとまりの実行可能な指令限度内及び対応の結果を提供する。行為選択エンジン580は、挙動600の結果評価に基づいて好ましい結果を計算し、対応の指令を制御調停システム510aに送り、フィードバックとして選択された指令の行為モデル590を知らせる。完了段階では、協調的な最善の得点が付けられた結果に対応する指令を全体的指令として互いに組み合わせ、かかる全体的な指令がロボットリソース530上で実行可能にリソースコントローラ540に提供される。最善の結果は、フィードバックとしてアクティブな挙動600に提供され、将来の評価サイクルで用いられる。センサシステム400からの受け取りセンサ信号により、1つ又は2つ以上の挙動600との相互作用が行為を実行することができる。例えば、制御システム510を用いて、コントローラ500は、対応の行為空間例えば、その特定のコンポーネントのためのひとまとまりの考えられる行為又は動きから各ロボットコンポーネント例えば、モータ又はアクチュエータのための行為又は動き指令を選択し、それにより各ロボットコンポーネント自体との衝突及びロボット100が知っているロボット100の周りの物体との衝突を回避する効率的な仕方で各ロボットコンポーネントの協調された動きを行わせる。コントローラ500は、ロボットネットワーク、例えばEtherIOネットワークにより協調された指令を出すことができる。制御システム510は、ロボット100が所与の領域の回りを動いているときに互いに異なる形態/位置におけるロボット100の安定性を最大にするために駆動システム200の適応速度/加速度を提供することができる。幾つかの具体化例では、コントローラ500は、指令を駆動システム200に出し、この駆動システムは、方位設定値及び速度設定値に従ってロボット100を推進する。1つ又は複数の挙動600は、センサシステム400から受け取った信号を用いて実行可能な指令の予想される結果を評価し、これら指令のうちの1つは、障害物を取り扱うために実行可能に単独で又は全体的ロボット指令として他の指令と組み合わせて選ばれるのが良い。例えば、近接センサ410からの信号により、制御システム510は、ロボット100の指令された速度又は方位を変化させることができる。例えば、近くの壁の存在に起因した近接センサ410からの信号の結果として、制御システム510は、原則指令を出すことができる。別の場合、椅子との遭遇に起因した接触センサからの衝突信号により、制御システム510は、方位を変える指令を出すことができる。他の場合、ロボット100の速度設定値を接触センサに応答して減少させることができず、しかも/或いはロボット100の方位設定値を近接センサ410に応答して変えることができない。挙動システム510bは、占有マップ1700及び/又はロボットマップ1820を生じさせるマッピング挙動600a、ロボット100の速度設定値を調節するよう構成された速度挙動600c例えば、プロセッサ上で実行可能な挙動ルーチン及びロボット100の方位設定値を変更するよう構成された方位挙動600dを有するのが良い。速度及び方位挙動600c,600dは、同時に実行したり別個独立に実行したりするよう構成可能である。例えば、速度挙動600cは、センサのうちの1つ例えば、近接センサ410,420の組をポーリングするよう構成されているのが良く、方位挙動600dは、別のセンサ例えば、運動学的バンプセンサをポーリングするよう構成されているのが良い。図23Aを参照すると、幾つかの具体化例では、挙動システム510bは、人追従挙動600eを含む。この挙動600eを実行している間、ロボット100は、人2300を検出し、追跡し及び、そしてその後を追従することができる。ロボット100は、頸部150を用いて頭部160をパンすると共に傾動させることができるので、ロボット100は、第2の3‐Dイメージセンサ450bを方向付けて対応の視野452を人2300に当てた状態に維持することができる。さらに、頭部160は、基部120よりも比較的迅速に動くことができるので例えば、駆動システム200を用いて、頭部160及び関連の第2の3‐Dイメージセンサ450bは、ロボット100を定位置で回転させる場合よりも迅速に人2300を追跡することができる。ロボット100は、人2300をしきい距離DR例えば、センサ視野に対応している内に保つよう人2300に向かって進むことができる。幾つかの実施例では、ロボット100は、人2300を追跡しながら人/ユーザ2300に向かって前方に向くよう回る。ロボット100は、人2300の後を追従するよう速度指令及び/又はウェイポイント指令を用いるのが良い。図23Bを参照すると、人に追従する素朴な具体化の結果として、人2300が第2の3‐Dイメージセンサ450bの視野152をいったん出ると、ロボットは、人2300の存在場所を見失う。この一実施例は、人が曲がり角をぐるりと曲がって進んだときである。この問題をうまく避けるには、ロボット100は、人2300の最後の既知の存在場所及びその軌道の知識を保持する。この知識を用いて、ロボット100は、ウェイポイント又は1組のウェイポイントを利用して人2300に向かって曲がり角に沿う場所に進むことができる。さらに、ロボット100が曲がり角を曲がって動いている人2300を検出すると、ロボット100は、進むホロノミック的にと共に/或いは第2の3‐Dイメージセンサ450bを動かして例えば、頭部160をパンすると共に/傾動させることによって、それにより人2300の視認を再び得るように第2の3‐Dイメージセンサ450bの視野452を向けることができる。図23B及び図24Aを参照すると、第2の3‐Dイメージセンサ450bから受け取ったイメージデータを用いて、制御システム510は、人2300を識別することができ例えば、パターン認識又はイメージ認識によりそれにより人2300の追従を続けることができる。第1の人2300が例えば曲がり角を曲がったときにロボット100が別の人2302に遭遇した場合、ロボット100は、その第2の人2302が第1の人2300ではないことを識別することができ、そして第1の人2300への追従を続ける。幾つかの具体化例では、第2の3‐Dイメージセンサ450bは、3‐Dイメージデータ2402例えば、2‐Dアレイのピクセル、各ピクセルは、深度情報例えば、カメラまでの距離を含むを物体又はブロブ2406にセグメント化するためのセグメンタsegmentor2404に提供する。例えば、ピクセルは、隣りのピクセルへのこれらの近接性に基づいて大きな物体にグループ分けされる。これら物体又はブロブの各々は、次に、サイズフィルタ2408によって受け取られ、更に分析される。サイズフィルタ2408は、あまりに小さくて例えば、高さ約3フィート未満又はあまりにも大きすぎて人ではない例えば、高さ約8フィートを超える物体を拒否することによって物体又はブロブ2406を処理して例えば正しいサイズの物体又はブロブ2410にする。形状フィルタ2412が正しいサイズの物体又はブロブ2410を受け取り、特定の形状を満たさない物体をなくす。形状フィルタ2412は、頭部の中点がカメラ450bの視覚及び物体までの既知の距離を用いることが予想される場所の予想幅を見ることができる。形状フィルタ2412のプロセスは、正しいサイズの物体又はブロブ2410を人データ2414例えば、イメージ又はこれを表すデータに変換する。幾つかの実施例では、ロボット100は、検出した各人2300,2302のための独特な識別子を維持することによって多数の人2300,2302を検出してこれらを追跡することができる。人追従挙動600eは、各人の軌道を個々に反映させ、それにより、ロボット100は、他の人又は物体によって一次的な遮蔽が生じた場合であってもロボット100が追跡すべき人の知識を維持することができる。図24Bを参照すると、幾つかの具体化例では、多標的トラッカ2420例えば、コンピュータ計算プロセッサ、例えばコントローラ500上で実行可能なルーチンが、形状フィルタ2412から人データ2414例えば、イメージ又はこれを表すデータ、ジャイロデータ2416例えば、IMU470から及びオドメトリデータ2418例えば、駆動システム200からを受け取り、人存在場所/速度データ2422を提供し、かかるデータは、人追従挙動600eによって受け取られる。幾つかの具体化例では、多標的トラッカ2420は、カルマンフィルタを用いて各人の運動挙動を追跡すると共に反映させ、それにより、ロボット100は、ユーザが見える時点、例えば、人が曲がり角をぐるりと動いているとき又は別の人がその人に対する直接的な視認を一次的に遮断したときを越えて追跡を行うことができる。図24Cを参照すると、幾つかの実施例では、人追従挙動600eは、進んでいる間のロボット100と人2300との間の追従距離DRを維持することによって人追従を実施する。人追従挙動600eは、2つのサブコンポーネント、即ち、駆動コンポーネント2430及びパン‐傾動コンポーネント2440に分割されるのが良い。駆動コンポーネント2430例えば、計算プロセッサ上で実行可能な追従距離ルーチンは、人データ2414、人速度データ2422及びウェイポイントデータ2424を受け取って追従距離DRこれは、レンジであるのが良いを求める例えば、コンピュータ計算することができる。駆動コンポーネント2430は、ロボット100が人2300までの距離に応じてその目的をどのように達成しようとするかを制御する。ロボット100がしきい距離内にある場合、直接速度指令を用い、それにより、ロボット100は、人2300に向くよう回ることができ又は人2300が近すぎるところに居る場合には人2300から後退して離れることができる。人2300が所望の距離よりも遠くに存在する場合、ウェイポイント指令を用いるのが良い。パン‐傾動コンポーネント2440により、頸部150は、パンすると共に/或いは傾動して第2の3‐Dイメージセンサ450bの視野452を人2300に当てた状態に維持する。パン/傾動ルーチン2440例えば、計算プロセッサ上で実行可能であるが人データ2414、ジャイロデータ2416及び運動学的データ2426例えば、制御システム510のダイナミックスモデル570からを受け取って、第2の3‐Dイメージセンサ450bがその視野452を人2300に当てた状態に維持するよう差し向けるパン角度2442及びチルト角度2444を定めることができる。頭部160のパン‐傾動に対する基部120の運動に遅延が生じると共に人追従挙動600eに到達するセンサ情報にも遅延が生じる場合がある。これは、ジャイロ及びオドメトリ情報2416,2426に基づいて補償でき、その結果、ロボットがいったん回っていると、パン角度θRがそれほどオーバーシュートしないようになる。図25Aを参照すると、幾つかの実施例では、人追従挙動600eにより、ロボット100は、障害物2502を避けて進んで人2300への追従を続ける。ロボット100がウェイポイントを用いて人2300に追従することができるので、人が障害物を越えて進んでロボットが横切ることができない場合であっても、ODOA障害物検出/障害物回避挙動600b用いて障害物を避ける経路を求めることが可能である。ODOA挙動600b図22は、予想ロボット経路を評価することができる例えば、検出した物体との衝突を起こさない予想ロボット経路の確実な評価を行うことができる。これら評価は、行為選択エンジン580によって使用でき、それにより好ましい結果及び対応のロボット指令例えば、駆動指令を定めることができる。図25B及び図25Cを参照すると、幾つかの具体化例では、制御システム510は、ロボット100の近くの領域における障害物2502の局所マップ2500を作成する。素朴な又は単純なシステムでは、ロボット100は、実際の障害物2502と追従すべき人2300との差を言うことができない場合がある。これにより、通常、ロボット100は、人2300の方向に移動するのが阻止される。というのは、人2300は、その方向における障害物2502であるように見えるからである。人追従アルゴリズムは、追従している人2300の存在場所をODOA挙動600bに連続的に報告することができる。したがって、次に、ODOA挙動600bは、局所マップ2500をアップデートして先に人2300に対応していた障害物2502を削除し、オプションとして、人2300の存在場所を提供することができる。図26A~図26Dを参照すると、幾つかの具体化例では、人追従挙動600eは、行為選択エンジン580により生じる実行可能な指令の結果を評価して2つの目的、即ち、1ロボット100が図26Aに示されているように人2300に向いた状態に保つ目的例えば、前方駆動方向Fを駆動2300の方に維持すると共に/或いは頭部160をパンすると共に/或いは傾動させて人2300に向くようにする目的及び2図26Bに示されているロボット100と人2300との間の追従距離DR例えば、約2~3メートルを維持する目的を達成する。ロボット100が人2300の追従距離DRの範囲内に位置している場合、人追従挙動600eにより、制御システム510は、図26Cに示されているように速度指令x,y,θzを出して上述の目的を達成することができる。人2300がロボット100に近すぎるほど接近した場合、ロボット100は、オプションとして、後退して人2300から離れ、それにより安全距離、例えば追従距離DR及びユーザをセンサレンジ内に保つ距離例えば、0.5m以上を維持することができる。ロボット100は、人2300が極めて近くに来た場合にこれに対応するよう第2の3‐Dイメージセンサ450bを傾動させるのが良い。というのは、人の体がレンジ内に入っていない場合でもあっても人の頭が依然としてレンジ内に入っている場合があるからである。ロボット100が追従距離DRの外に移動すると、ロボット100は、ウェイポイント指令を用いて追従距離DRを再び得ることができる。ウェイポイント指令を用いることにより、ロボット100は、ロボット100の最適経路を定めることができ、かくして、ODOA挙動600bは、近くの障害物から適当な距離を維持することができる。図1~図3及び図27を参照すると、幾つかの具体化例では、頭部160は、インターフェースモジュール300の1つ又は2つ以上の部分を支持する。頭部160は、ウェブパッド又はタブレットPCとも呼ばれる1つ又は2つ以上のコンピューティングタブレット310を解除可能に受け入れるドック302を有するのが良く、これらコンピューティングタブレットは各々、タッチスクリーン312を有するのが良い。ウェブパッド310を前方、後方又は上方に差し向けることができる。幾つかの具体化例では、ウェブパッド310は、タッチスクリーン、オプションとしてのI/O例えば、ボタン及び/又はコネクタ、例えばマイクロUSB等、プロセッサ及びプロセッサと通信状態にあるメモリを有する。例示のウェブパッド310としては、アップルインコーポレイテッドAppleInc製のアップルiPadが挙げられる。幾つかの実施例では、ウェブパッド310は、コントローラ500として機能し又はコントローラ500を支援すると共にロボット100を制御する。幾つかの実施例では、ドック302は、これにしっかりと取り付けられた第1のコンピューティングタブレット310a例えば、比較的高い帯域幅、例えばギガビット速度でのデータ伝送のためのワイヤードインターフェース及びドックに取り外し可能に接続された第2のコンピューティングタブレット310bを有する。第2のウェブパッド310bを図27に示されているように第1のウェブパッド310aに装着することができ又は第2のウェブパッド310bを第1のウェブパッド310aに対して頭部160の反対側に向いた側部又は他方の側部に装着することができる。追加の実施例では、頭部160は、これに固定的に取り付けられるか着脱自在に取り付けられるかのいずであっても良い単一のウェブパッド310を支持する。タッチスクリーン312は、ユーザ入力を受け取ると共にタッチ対話式であるグラフィカルユーザインターフェースを提供するためにユーザがタッチスクリーンにタッチする箇所を検出し、モニタすると共に/或いは再現することができる。幾つかの実施例では、ウェブパッド310をロボット100から取り外したときにユーザがこれを見出すことができるようにするタッチスクリーンコーラcallerを有する。幾つかの具体化例では、ロボット100は、ロボット本体110の1つ又は2つ以上の部分に取り付けられた多数のウェブパッドドック302を有する。図27に示されている実施例では、ロボット100は、オプションとして脚部130及び/又は胴部140に取り付けられたウェブパッドドック302を有する。これにより、ユーザは、例えばウェブパッド310を種々の高さでロボット100にドッキングさせて異なる背丈のユーザに対応すると共に異なる見晴らしの利く箇所でウェブパッド310のカメラを用いて映像を捕捉すると共に/或いは多数のウェブパッド310をロボット100に装着することができる。インターフェースモジュール300は、頭部160に取り付けられたカメラ320を有するのが良く例えば、図2を参照されたい、このカメラを用いると、頭部160の高い見晴らしの利く箇所から映像を捕捉することができる例えば、テレビ会議のために。図3に示されている実施例では、カメラ320は、頸部150に取り付けられている。幾つかの実施例では、カメラ320がウェブパッド310,310aを頭部160から取り外し又はドッキング解除したときにのみ作動される。ウェブパッド310,310aをドック302内で頭部160に取り付け又はドッキングさせたときそして、オプションとしてカメラ320を覆ったとき、ロボット100は、映像を捕捉するためにウェブパッド310aのカメラを用いることができる。かかる場合、カメラ320は、ドッキングさせたウェブパッド310の背後に配置されるのが良く、かかるカメラ320は、ウェブパッド310を頭部160から取り外し又はドッキング解除したときに作動状態にあり、ウェブパッド310を頭部160に取り付け又はドッキングさせたときには不作動状態になる。ロボット100は、インターフェースモジュール300を介して例えば、ウェブパッド310、カメラ320、マイクロホン330及び/又はスピーカ340を用いてテレビ会議例えば、24fpsのところで提供することができる。テレビ会議は、多パーティであるのが良い。ロボット100は、頭部160をこれがユーザに向くよう操縦することによってテレビ会議の両方のパーティ相互間のアイコンタクトを提供することができる。さらに、ロボット100は、5°未満の凝視角度例えば、頭部160の前方フェースに垂直な軸線から遠ざかる角度を有するのが良い。ロボット100に取り付けられている少なくとも1つの3‐Dイメージセンサ450及び/又はカメラ320は、ボディランゲージを含む実物大のイメージを捕捉することができる。コントローラ500は、音声と映像を同期させることができる例えば、50ミリ秒未満の差で。図28A~図28Eに示されている実施例では、ロボット100は、頭部160に取り付けられているウェブパッド310及び/カメラ320の高さを調節する胴部140を昇降させることによりと共に/或いは頭部160をパンすると共に/或いは傾動させることによって立っている又は座っている人々にテレビ会議を提供することができる。カメラ320は、ウェブパッド310とは別個に少なくとも1つの自由度の範囲内で動くことができる。幾つかの実施例では、カメラ320は、地面から3フィートを超える距離のところであるがウェブパッド310の表示領域の頂縁からウェブパッド高さの10パーセント以下のところに位置決めされた対物レンズを有する。さらに、ロボット100は、カメラ320をズームしてロボット100の周りの拡大ピクチャ又は映像を得ることができる。頭部160は、テレビ会議を表示しているウェブパッド310の近くで音声を頭部160から出すよう1つ又は2つ以上のスピーカ340を有するのが良い。幾つかの実施例では、ロボット100は、図28Eに示されているようにユーザ入力をウェブパッド310に受け入れることができる例えば、タッチスクリーンを介して。幾つかの具体化例では、ウェブパッド310は、ディスプレイ又はモニタであり、他の具体化例では、ウェブパッド310は、タブレット形コンピュータである。ウェブパッド310は、高い対話性を提供する容易且つ直感的に使える制御装置、例えばタッチスクリーンを有するのが良い。ウェブパッド310は、少なくとも1つの自由度で動くことができる150平方インチ967.7cm2以上の表示面積を備えたモニタディスプレイ312例えば、タッチスクリーンを有するのが良い。ロボット100は、幾つかの実施例では、医師及び患者及び/又は他の医師又は看護師相互間のテレビ会議を提供することによってEMRインテグレーションを提供することができる。ロボット100は、パススルーコンサルテーション対診命令を含むのが良い。例えば、ロボット100は、聴き取りをテレビ会議ユーザ例えば、医師に伝えるよう構成されたステソスコープ聴診器を有するのが良い。他の実施例では、ロボットは、クラスII医療器具、例えば電子ステソスコープ、オトスコープ耳鏡及び超音波への直接的な接続を可能にして医療データを遠隔ユーザ主治医に送るコネクタ1710を有する。図28Bに示されている実施例では、ユーザは、ロボット100の遠隔操作、テレビ会議例えば、ウェブパッド310のカメラ及びマイクロホンを用いて及び/又はウェブパッド310上におけるソフトウェアアプリケーションの利用のためにウェブパッド310を頭部160に取り付けられているウェブパッドドック302から取り外すことができる。ロボット100は、ウェブパッド310がウェブパッドドック302から取り外されている間、テレビ会議、ナビゲーション等のために種々の見晴らしの利く箇所を得るために頭部160に取り付けられた第1及び第2のカメラ320a,320bを有するのが良い。コンピュータ500上で実行可能であると共に/或いはコントローラ500と通信状態にある対話型用途では、ロボット100に2つ以上のディスプレイを設ける必要がある場合がある。ロボット100と関連した多数のウェブパッド310は、フェースタイムFaceTime、テレストレーションTelestration、HDルックアットジス‐カムHDlookatthiscam例えば、内蔵カメラを有するウェブパッド310の場合の種々の組み合わせを提供することができ、ロボット100を遠隔制御するための遠隔オペレータ制御ユニットOCUとして働くことができると共に/或いは局所ユーザインターフェースパッドを提供することができる。幾つかの具体化例では、ロボット100は、ウェブパッド310とコントローラ500及び/又はロボット100の他のコンポーネントとの通信を可能にするブリッジとも呼ばれている媒介セキュリティ装置350図27を有する。例えば、ブリッジ350は、ウェブパッド310の通信をウェブパッド通信プロトコルからロボット通信プロトコル例えば、ギガビット容量を有するEthernetに変換することができる。ブリッジ350は、ウェブパッド310が不正でないものと認証することができ、そしてウェブパッド310とコントローラ500との通信変換を可能にする。幾つかの実施例では、ブリッジ350は、ウェブパッド310とロボット100との間の通信トラフィックを認可/確認する認可チップを有する。ブリッジ350は、ブリッジがロボット100と通信しようとするウェブパッド310をチェックして認可した時期をコントローラ500に知らせることができる。さらに、認可後、ブリッジ350は、通信認可をウェブパッド310に知らせる。ブリッジ350は、頸部150又は頭部又は図2及び図3に示されているように又はロボット100のどこか他の場所に取り付け可能である。セッション開始プロトコルSIPは、インターネットプロトコルIPによりマルチメディア通信セッション、例えば音声及び映像コールを制御するために広く用いられているIETF規定シグナリングプロトコルである。このプロトコルは、1つ又は数個のメディアストリームを含む2パーティユニキャスト又は多パーティマルチキャストセッションを創成したり修正したり終了させたりするために使用できる。修正は、アドレス又はポートの変更、多くの参加者の招待及びメディアストリームの追加又は削除を含む場合がある。他の実行可能な用途の例としては、テレビ会議、ストリーミングマルチメディア配信、インスタントメッセージング、プレゼンスインフォメーション、ファイル伝送等が挙げられる。インターネットプロトコルによる音声IPによる音声、即ち、VoIPは、インターネットプロトコルIPネットワーク、例えばインターネットにより音声通信及びマルチメディアセッションの配信のための方法論、コミュニケーションプロトコル及び送信技術の系統の一部である。しばしば見受けられると共にVoIPと同義的に用いられる場合の多い他の用語は、IP電話技術、インターネット電話、ブロードバンドによる音声VoBB、ブロードバンド電話技術及びブロードバンド電話である。図29は、ロボット100を介して通信を開始すると共に行うためにブリッジ350との対話を含む例示としての電話技術を提供している。電話AのSIPは、SIPアプリケーションサーバに電話をかける。SIPは、VoIPのダイヤル機能を起動し、それにより、HTTPポストリクエストがVoIPウェブサーバに送られる。HTTPポストリクエストは、折り返しコールバック機能電話機能のように挙動するのが良い。SIPアプリケーションサーバは、呼び出しを電話Aに送り、通話が開始したことを指示する。VoIPサーバは、PSTNを介してHTTPポストリクエストに含まれているコールバック電話番号への呼び出しを開始する。コールバック電話番号は、SIPDIDプロバイダで終わり、SIPDIDプロバイダは、SIPアプリケーションサーバへのコールバックを送るよう構成されている。SIPアプリケーションサーバは、来た電話と電話Aの元の電話を照合し、両方の電話をオーケー応答で返答する。メディアセッションは、電話AとSIPDIDプロバイダとの間に成り立っている。電話Aは、VoIPにより生じた人工的な呼び出しを聞くことができる。VoIPによりコールバックレッグに応答したことがいったん確認されると、VoIPは、送信宛先、例えばロボット100へのブリッジ350を介するPSTNのコールを開始する。ロボット100は、コールに応答し、VoIPサーバは、SIPDIDプロバイダからのメディアをロボット100からのメディアにブリッジする。再び図6を参照すると、インターフェースモジュール300は、音声入力を受け取るマイクロホン330例えば、又はマクロホンアレイ及びロボット本体110に取り付けられていて、音声出力を送る1つ又は2つ以上のスピーカ330を有するのが良い。マイクロホン330及びスピーカ340は、各々、コントローラ500と通信することができる。幾つかの実施例では、インターフェースモジュール300は、パンフレット、非常時情報、家庭用品及び他のアイテムを保持するよう構成されているのが良いバスケット360を有する。移動式ロボットは、一般に、ロボットの周囲を安全に進むよう障害物及び危険を検知する必要がある。これは、特にロボットが今まで自律的に走行している場合であっても重要であり、但し、人により作動されるロボットも又、かかる検出が必要であり、その理由は、オペレータがロボットの周囲の細部を常時知っているわけでもなく、これらに常時注意できているわけでもないからである。接触検出例えば、スイッチに当たってこれを閉成するバンパを一種のフェールセーフ機構体として用いることができるが、距離を置いたところから物体を検出するセンサは、通常、性能を向上させることが必要になる。かかるセンサとしては、レーザレンジファインダ、赤外線距離センサ、ビデオカメラ及びデプスカメラdepthcameraが挙げられる。図3~図4C及び図6を参照すると、幾つかの具体例では、ロボット100は、多数のアンテナを有する。図示の実施例では、ロボット100は、第1のアンテナ490a及び第2のアンテナ490bを有し、これら両方のアンテナは、基部120に取り付けられている但し、これらアンテナは、ロボット100の任意他の部分、例えば、脚部130、胴部140、頸部150及び/又は頭部160に取り付けられても良い。多数のアンテナを使用することにより、堅調な信号受信及び信号送信が可能になる。多数のアンテナの使用により、ロボット100に多入力及び多出力、即ちMIMOが提供され、このMIMOは、通信性能を向上させるために送信器及び/受信器のための多数のアンテナの使用法である。MIMOは、追加の帯域幅又は送信電力をなしでデータスループット及びリンクレンジの大幅な増大をもたらす。MIMOは、高いスペクトル性能帯域幅の1ヘルツ当たり1秒当たりのビット数が多い及びリンク信頼性又は多様性フェーディングの減少によってこれを達成する。MIMOは、これらの特性に鑑みて、最新式のワイヤレス通信規格、例えばIEEE80211nWiFi、4G、3GPPロングタームエボリューションLongTermEvolution、WiMAX及びHSPAの重要な部分である。さらに、ロボット100は、近くの他の電子装置のためのWiFiブリッジ、ハブ又はホットスポットとして働くことができる。ロボット100のMIMOの移動性及び使用により、ロボットは、比較的高い信頼性のあるWiFiブリッジとなることができる。MIMOは、3つの主要なカテゴリ、即ち、プレコーディングprecoding、空間多重化又はSM及び多様化コーディングダイバーシティコーディングに細分できる。プレコーディングは、一種のマルチストリームビーム成形であり、送信器のところで生じる全ての空間処理であると考えられる。ビーム形成単一層ビーム成形では、同一の信号は、信号出力が受信器入力のところで最大になるよう重み付けする適当な位相及び場合によってはゲインを備えた送信器アンテナの各々から放出される。ビーム成形の利点は、互いに異なるアンテナから放出された信号を互いに強めるようにすることによって受け取った信号のゲインを増大させると共に多パスフェーディング効果を減少させることにある。散乱が存在しない場合、ビーム形成の結果として、良好に規定された方向性パターンが得られる。受信器が多数のアンテナを備えている場合、送信ビーム形成は、受信アンテナの全てのところでの信号レベルを同時に最大にすることができず、多数のストリームを備えたプレコーディングを使用するのが良い。プレコーディングは、送信器のところでのチャネル状態情報CSIの知識を必要とする場合がある。空間多重化は、MIMOアンテナ構成を必要とする。空間多重化では、高レート信号が多数の低レートストリームに分割され、各ストリームは、同一周波数チャネルで異なる送信アンテナから送信される。これら信号が十分に異なる空間シグナチュアで受信器アンテナアレイに達した場合、受信器は、これらストリームを平行なほぼ平行なチャネルに分離することができる。空間多重化は、チャネルキャパシティを高い信号対雑音費SNRで増大させる非常に強力が技術である。空間ストリームの最大数は、送信器又は受信器のところのアンテナの個数の減少によって制限される。空間多重化を送信チャネルに関する知識の有無にかかわらず利用することができる。空間多重化は又、空間分割多元接続と呼ばれている多数の受信器への同時送信にも使用できる。互いに異なる空間シグナチュアを備えた受信器をスケジュール設定することにより、良好な分離性を保証することができる。ダイバーシティコーディング技術は、送信器のところでのチャネルに関する知識が存在しない場合に使用されるのが良い。ダイバーシティ方法では、単一のストリーム空間多重化の多数のストリームとは異なりを送信するが、時空間コーディングと呼ばれている技術を用いてコード化される。信号は、完全又はほぼ直交するコーディングを備えた送信アンテナの各々から放出される。ダイバーシティコーディングは、信号ダイバーシティを高めるために多数のアンテナリンクにおける独立フェーディングを利用する。チャネルに関する知識がないので、ビーム成形は行われず又はダイバーシティコーディングからのアレイゲインが存在しない。空間多重化は又、チャネルが送信器のところで知られている場合にプレコーディングと組み合わせ可能であり又はデコーディング信頼性がトレードオフの関係にある場合にダイバーシティコーディングと組み合わせ可能である。幾つかの具体化例では、胴部140及び/又は頭部160にそれぞれ設けられた第3のアンテナ490c及び/又は第4のアンテナ490dを有している例えば、図3を参照されたい。かかる場合、コントローラ500は、堅調な通信のためのしきい信号レベルを達成するアンテナ配置構成を定めることができる例えば、胴部140を昇降させると共に/或いは頭部160を回転させると共に/或いは傾動させることにより例えばアンテナ490a~490dを動かすことによって。例えば、コントローラ500は、指令を出して胴部140の高さを持ち上げることによって第3及び第4のアンテナ490c,490dを高くすることができる。さらに、コントローラ500は、指令を出して頭部160を回転させると共に/或いは傾動させて他のアンテナ490a~490cに対して第4のアンテナ490dを更に配向させることができる。図30は、物体検出システム3000を備えた例示の住居3010の略図である。物体検出システム3000は、住居3010の内側及び/又は外側の種々の部屋3020、廊下3030及び/又は他の部分に設けられていて、ホームモニタリング、人モニタリング及び/又は人緊急時応答システムPERSのためのイメージングセンサ3070、例えば3‐Dスペックルカメラ1300及び/又は3‐DTOFカメラ1500を有する。イメージングセンサ3070は、部屋3020全体例えば、シーン10又はその一部分に及ぶ視野3075を有するのが良い。物体検出システム3000は、ハンドフリーのリアルタイム行動モニタリング例えば、老人のを提供でき、介護者の注意を独立したリビングを探している老人に向ける。図示の実施形態では、イメージングセンサ3070は、1つ又は2つ以上の壁に又は人の活動を最も効果的にモニタすることができる部屋3020の1つ又は2つ以上の隅に配置されている。例えば、イメージングセンサ3070は、部屋の隅又は出入口と反対側の壁、ソファ、主要な着座領域等に配置されるのが良い。人の活動及び休息パターンをモニタし、追跡し、そして記憶させることができ例えば、将来のパターンとの比較のために、又は介護者に中継することができる。物体検出システム3000は、イメージングセンサ3070と通信状態にある例えば、電気接続部又はワイヤレスにより基地局BSを有するのが良い。基地局BSは、イメージ認識及び/又はモニタリングルーチンを実行するプロセッサ及び或る特定の時間間隔でセンサデータ、例えば、3‐Dマップを記憶するメモリを有するのが良い。幾つかの実施例では、物体検出システム3000は、基地局BS及び/又はイメージングセンサ3070と通信状態にある移動式ロボット100,1400を有する。幾つかの具体化例では、イメージセンサ3070は、イメージングセンサ3070が物体認識及び/物体追跡のために設けられている対応の部屋3020の3‐Dマップを形成する。さらに、少なくとも1つのイメージングセンサ450を有する移動式ロボット100を含む実施例では、移動式ロボット100は、イメージングセンサ3070の3‐Dマップとの比較のために同一の部屋3020又は物体12の3‐Dを作成することができる。基地局BSは、互いに異なる見晴らしの利く箇所又は眺めからのものであるのが良い両方の3‐Dマップを受け取ることができ、そして2つの3‐Dマップを互いに比較して物体12例えば、家具、人々、ペット等及び遮蔽部16の存在場所を認識して分析することができる。幾つかの具体化例では、物体検出システム3000は、人の体の一部又は体全体により生じるジェスチャを認識するようシーン10例えば、3‐Dマップの深度知覚を得るためにイメージングセンサ3070を用いる。イメージングセンサ3070は、体の一部の別々の部分に関する深度方向位置情報を含む体又は体の一部に関する位置情報を識別することができる。イメージングセンサ3070は、関心のある体の部分の位置情報を含む人に関するシーン10全体の位置情報を含む深度イメージを作成することができる。イメージングセンサ3070及び/又は基地局BS例えば、指令又はルーチンを実行するプロセッサを有するは、深度イメージ中の背景及び他の物体から関心のある身体部分をセグメント化することができ、そして1つの特定の一感覚で関心のある体部分の例えば、静的に形状及び位置を求めることができる。動的決定は、体又は体の部分がシーン10内で動く際に実施できる。さらに、イメージングセンサ3070及び/又は基地局BSは、体部分の運動が関心のある場合、所与の持続時間にわたって体部分により動的に生じるジェスチャを識別することができる。識別された体ジェスチャを分類し、そして分類に基づいて事象が起こされる。本明細書において説明した細部及び特徴と組み合わせ可能なジェスチャ認識に関する追加の細部及び特徴は、米国特許第7,340,077号明細書発明の名称:GestureRecognitionSystemUsingDepthPerceptiveSensorsに見受けられ、この米国特許を参照により引用し、その記載内容全体を本明細書の一部とする。イメージングセンサ3070は、それぞれの部屋3020内における人のジェスチャ認識のために使用可能である。例えば、イメージングセンサ3070は、人の3‐Dマップを作成することができ、この3‐Dマップは、人のジェスチャ又は姿勢例えば、座っている状態、寝ている状態、歩いている状態、倒れた状態、指差している状態等を分析し又は分類するために利用できる。イメージングセンサ3070、基地局BS及び/ロボット100は、イメージデータを用いて人の3‐Dマップを形成し、そして人のジェスチャを識別すると共に/或いは分類するためのルーチンを実行することができる。或る特定のジェスチャ、例えば倒れたジェスチャ又は手を振っているジェスチャは、物体検出システム3000による非常時事態トリガを引き起こすことができる。非常時事象トリガに応答して、基地局BSは、非常時支援のための非常時通信例えば、電話コール、Eメール等を送ることができると共に/或いはロボット100は、人の存在場所を突き止めてジェスチャ認識を確認すると共に/或いは支援例えば、処方を送り、人を床から起きるのを助けること等を提供することができる。図31は、物体検出システム3000を作動させる操作又はステップの例示の流れ図3100を提供している。操作は、シーン10例えば、部屋3020のイメージデータ例えば、3‐Dスペックルカメラ1300及び/又は3‐DTOFカメラ1500からのを受け取るステップ3102、シーン10内の標的物体12の3‐Dマップを作成するステップ3104を含む。操作は、標的物体12例えば、人としてを分類するステップ3106及び標的物体12の状態、姿勢又はジェスチャを分析するステップ3108を更に含む。操作は、物体事象例えば、分析した状態、姿勢及び/又はジェスチャに特有の事象を引き起こすステップ3110及びオプションとして、物体事象に応答するステップ3112を含む。幾つかの具体化例では、標的物体12を分類するステップ3106は、標的物体12の物体の種類例えば、人、犬、猫、椅子、ソファ、ベッド等及び生きている物体の種類例えば、人を判定するステップ、物体12の状態、例えば、物体12が生きているか、眠っているか、怪我しているかどうか等を判定するステップ例えば、運動を検出しているを含む。幾つかの具体化例では、標的物体12の状態、姿勢及び/又はジェスチャを分析するステップ3108は、標的物体12が生きているか、座っているか、寝ているか、手を振っているか、倒れつつあるか又は倒れているかどうかを判定するステップを含む。状態、姿勢及び/又はジェスチャの判定は、別々に、連続して、同時に又はこれらの組み合わせで実施できる。例えば、倒れつつある又は手を振っているジェスチャ例えば、倒れながら合図をしているジェスチャを検出すると共に分析すると、操作は、標的物体12の姿勢、例えば倒れた姿勢例えば、床の上に横たわっている姿勢及び状態例えば、生きているか、呼吸をしているか、怪我をしているか、障害があるか、意識がないか等を判定するステップを更に含むのが良い。倒れた標的物体12例えば、人が倒れた場合、例えば、操作は、標的物体12を人人として分類するステップ3106及び例えばメモリに記憶可能な既知の特徴を認識することによって標的物体12の状態、姿勢及び/又はジェスチャを分析するステップ3108を含むのが良い。例示の記憶された特性は、無意識な状態で居るときにボロの着物の人形が崩れ落ちるジェスチャ又は前に倒れるジェスチャ姿勢、左側の腰が弱い場合に左側に倒れること、杖又は歩行補助具を使用していたにもかかわらず、のめって倒れること等を含む。さらに、操作は、特定の標的物体12の状態、姿勢及び/又はジェスチャ一端を学習するステップ、センサデータをフィルタ処理するステップ及び/又はセンサデータについて探索アルゴリズムを実行するステップを含むのが良い。手を振っているジェスチャの場合、操作は、手を振っている事象及びこの事象に応答した事象を発生させるステップ、ロボット100を支援のために標的物体12に送るステップを含むのが良い。例えば、ロボット100は、通信能力例えば、ワイヤレス、電話、テレコンフェレンス、Eメール等、薬ディスペンサ又は標的物体12、例えば人が接近したいと思う他の何らかの物品を有するのが良い。さらに、ロボット100は、人を基地局BSにつれて行くことができ、基地局BSは、大型スクリーンTV上、安定した音響設備モータの騒音及び機械的騒音を生じないBSに設けられているマイクロホンアレイ、安定したAC電力、安定したカメラ及びワイヤードブロードバンドアクセスを利用するテレビ会議セッション用のテレビジョン又はディスプレイを有するのが良い。横たわっていると共に/或いは座っている姿勢の場合、操作は、健康事象の確認及びこの事象に応答した事象を発生させるステップ、ロボット100の姿勢、バイタルサイン等を確認するために標的物体12まで送るステップを含むのが良い。倒れかけているジェスチャ又は倒れた姿勢の場合、操作は、緊急事象及びこの事象に応答する事象を発生させるステップ、ロボット100を支援のために標的物体12まで送るステップ及び非常時支援のために非常時伝達手段を出すステップを含むのが良い。幾つかの実施例では、操作は、占有マップ1700を作成し又はアップデートするステップ及び物体追跡のために現在の物体の存在場所を過去の物体の存在場所と比較するステップを含む。ジェスチャ事象を移動した物体12について発生させるのが良く、そしてこの事象に応答して操作は、物体の存在場所を確認するためにロボット100を対応の部屋3020に送るステップを含むのが良い。ロボット100は、物体検出システム3050から自律的に動作し、更に、これと通信状態を維持するのが良い。したがって、ロボット100は、物体検出システム3050の発生事象を受け取り、これら事象に応動することができる。例えば、基地局BSが指令をロボット100に出すのではなく、例えば、ジェスチャの分類を確認するために、ロボット100は、物体検出システム3050について発生した事象について聴き取りを行うのが良く、オプションとして、発生した事象に対処するのが良い。図32を参照すると、幾つかの具体化例では、人がペンダント3200を掛けるのが良く、このペンダントは、物体検出システム3050と通信状態にある例えば、基地局BS及び/又はイメージセンサ3070を介して。ペンダント3200は、ユーザの運動を検出する運動センサ3210例えば、1つ又は2つ以上の加速度計、ジャイロスコープ等を有するのが良い。物体検出システム3050は、住居の中全体にわたってペンダントの動きを追跡することができる。例えば、ペンダントは、ユーザ運動データ、例えば歩数、座わり又は横になった回数及び/又は現在の状態例えば、立っている状態、歩いている状態、直立して座っている状態、横になっている状態等を提供することができる。基地局BSは、ユーザ運動データを受け取ってそれに従って事象を発生させることができる。例えば、横になっているペンダント3200の現在の状態を受け取ると、物体検出システム3050は、健康状態の確認事象及びこの事象に応答する事象を発生させることができ、ロボット100は、ペンダント3200を着けている人の存在場所を突き止め、そしてその人の現在の健康状態を確認することができる。例えば、その人の存在場所を突き止めると、ロボット100は、その人のイメージデータを捕捉し、その人が息をしているかどうかの指標として胸部の運動を確認し、赤外線イメージングを利用してその人の体温等を測定することができる。ロボット100は、聞こえることができる質問例えば、ごきげんいかがですかを出し、そしてその人からの聞こえる応答を待つことができる。ロボット100が聞こえる応答を検出しなかった場合、ロボット100は、非常時支援のための通信による要求を行うために検出システム3050の基地局BSによって受け取り可能な非常時事象を発生させるのが良い。さらに、ロボット100のイメージセンサ450は、第三者例えば、介護者、非常時応答事業所等への通信のためにイメージ又はライブ映像を捕捉するのが良い。幾つかの具体化例では、ペンダント3200は、ユーザが支援を要求するために押すことができる支援ボタン3220を有する。基地局BSは、ペンダント3200からの支援要求信号を受け取り、そして支援要求を介護者、非常時応答事業体等に伝えることができる。さらに、支援要求信号の受信に応答して、基地局BSは、支援要求事象を発生させることができ、基地局BSと通信状態にあるロボット100は、これを受け取ってそれに応じて応動することができる。例えば、ロボット100は、ペンダント3200を着けている人の存在場所を突き止めてその人の状態を確認すると共に/或いは支援を提供する例えば、薬を提供する、テレビ会議を提供する、電話サービスを提供する、その人が起き上がるのを助けること等ことができる。図33Aを参照すると、幾つかの具体化例では、移動式ロボットシステム3301が移動式ロボット100及びロボット100と通信状態にあるタッチスクリーン312を備えた遠隔コンピュータ計算装置310r、例えばウェブパッド310を有し、この遠隔コンピュータ計算装置310rは、遠隔に位置するユーザがロボット100の周りの環境又はシーン10を視覚化したりロボット100を遠隔制御したりすることができるようにするソフトウェアアプリケーション3300例えば、タブレット利用型UIコンポーネント/アプリケーションを実行する。ソフトウェアアプリケーション3300は、ウェブパッド310のために例えばアップルiPad2及び/又はMotorolaXoom及びイメージセンサ450のためにPrimeSensorカメライスラエル国テルアビブ69710フォースフロアハバゼルセント28所在のプライムセンサPrimeSensor社から入手できるのようなハードウェア又は任意適当なハードウェアを利用することができる。例えば、ソフトウェアに関し、ソフトウェアアプリケーション3300は、アップルiOS4.x、Android3.0ハニカムHoneycombとも呼ばれている、OpenGLES20又は任意他の適当なオペレーティングシステム又はプログラムを使用することができる。図33Bを参照すると、幾つかの具体化例では、ソフトウェアアプリケーション3300は、マップビュー3304を備えたユーザインターフェース3302例えば、遠隔コンピュータ計算装置310rに設けられているを表示し、ユーザインターフェース3302は、ロボット100の周りのシーン10又は領域の2‐Dトップダウンレイアウトマップ1810を表示する。ユーザは、レイアウトマップ1810上の場所1814を選択してロボット100を選択した場所1814に送ることができる例えば、表示されたボタン又は図形を選択することによって。ロボット100は、ロボットマップ1820上の対応の標的ロボットマップ場所1824を決定し例えば、センサシステム400からのセンサデータに基づいて、かくして、ロボット100は、レイアウトマップ1810上の選択された場所1814に進むことができる図18A~図18Cも又参照されたい。ロボット100は、1つ又は2つ以上の挙動、例えばマッピング挙動600a、障害物検出及び障害物回避挙動600b、速度挙動600c及び/又は方位挙動600d図22を実行することによって選択された場所1814まで自律的に進む。ロボット100が選択された場所1814にいったん到達すると、ユーザは、ロボット100の周りのシーン10を見たくなる場合があると共に/或いはその局所シーン10の周りでロボット100を操縦したくなる場合がある例えば、ロボット100を遠隔操作で進めたくなる場合がある。図33C及び図33Dを参照すると、ソフトウェアアプリケーション3300は、マップビュー3304中に3‐Dマップ3310を表示することができる。ユーザは、遠隔コンピュータ計算装置310rのタッチスクリーン312上における特定のハンドジェスチャ例えば、マルチフィンガスワイプ、タップ等を行うことによって3‐Dマップ3310が現れるようにすることができる。幾つかの実施例では、ユーザは、ロボット100のセンサシステム400又はライブカメラビューからセンサデータ例えば、ロボット100に取り付けられている1つ又は2つ以上のカメラ320,450からの第1の人の映像ビューに基づいて3‐Dシーン10aを示す3‐Dマップ3310を選択することができる。ライブカメラビューは、ロボット100の前側縁部又は前側部分を含む場合があり、したがって、遠隔に位置するユーザは、基部120の前側縁部のすぐ近くに位置する障害物に進むことなくロボットを操縦することができるようになる。幾つかの実施例では、3‐Dシーン10aは、3‐Dイメージングセンサ450,450a,450bにより捕捉された点群3320に基づくのが良い。図示の実施例では、点群3320の点3322は、ひとまとまりとなって、3‐Dシーン10aの三次元イメージを形成する。ソフトウェアアプリケーション3300も又、ロボット100のアニメーション又はコンピュータ生成モデル100aを3‐Dシーン10a内に置くことができ、そしてロボット100の位置及び/運動学的状態を示すことができる。ロボットモデル100aは、実際のロボット100の正確な記載であるのが良く、ロボット100のコンピュータ支援設計CADモデルに基づくのが良い。図33Cに示されている実施例では、3‐Dマップ3110は、2‐Dレイアウトマップ1810上を浮動し、その現在の場所のところにおけるロボット100周りの実際のシーン10のクイックビューを提供する。図33Dに示されている実施例では、ユーザは、3‐Dマップ3310をフルスクリーン及びほぼフルスクリーンビューに拡張することができる。さらに、ソフトウェアアプリケーション3300は、ロボット100を操作するための例えば、ロボット100の駆動及び/又はそのポーズの変更のためのコントロール部分3306を表示することができる。ユーザは、ロボット100に対する互いに異なるパースペクティブ又はアイポジション3350図33Gから3‐Dマップ3310を見ることができる例えば、3‐Dマップ3310をタッチスクリーン312上の1つ又は2つ以上のハンドジェスチャにより回転させることによって。図33C~図33Gは、種々のビューを備えた3‐Dマップ3310を提供している。再び図33A~図33Dを参照すると、ユーザは、2‐Dレイアウトマップ1810及び/又は3‐Dマップ3310を用いてロボットに指令を出すと共にロボット100を駆動することができる例えば、ロボットの行き先を特定することによって。2‐Dレイアウトマップ1810によりユーザはロボット100を広い領域をぐるりと動かすことができるが、ユーザが行うことができないことがある。例えば、2‐Dレイアウトマップは、典型的には、部屋、壁、廊下等の存在場所を示すが、病院のベッド又は会議室のテーブルのような家具を示すことができない。遠隔ユーザは、ロボット100に指令を出してロボットが部屋に自律的に進んで病院ベッドの側部のそばでちょうど停止し又はロボット100に指令を出してロボットが部屋の中の既定のスポットのところで停止することができるようにするが、ロボット100がいったん部屋の中に存在すると、ユーザは、例えば枕元のところの特定のスポットまで次の動きを行わせる必要のある場合がある。図示の実施例では、ソフトウェアアプリケーション3300は、ロボット100に隣接して位置する空間ボリューム3330例えば、ロボット100の移動方向における床平面3332を含むからボリューム形点群3320例えば、イメージングセンサ450からの光のスペックル放出からの反射光に基づく又はかかるボリューム形点群3320としての三次元深度イメージの形態をした3‐Dマップ3310をマップビュー3304中に提供する。幾つかの具体化例では、ロボット100に取り付けられているイメージングセンサ450,450a,450bは、ボリューム形点群イメージング装置である。イメージングセンサ450は、地面よりも約1フィート以上、上方の高さ位置のところで駆動システム200の上方に支持されるのが良く且つロボット100の移動方向において床平面3312を含む空間ボリューム3330から点群3300を得ることができるよう差し向けられるのが良い。コントローラ500は、3‐Dイメージングセンサ450から点群信号を受け取ることができ、そして、少なくとも部分的に受け取った点群信号に基づいて駆動指令を駆動システム200に出すことができる。少なくとも1つの3‐Dイメージセンサ450,450a,450bは、ロボット100の周りのシーン10に光を放出することができ、そして例えばロボット100の駆動方向Fに沿ってシーン10のイメージを捕捉することができる。イメージは、a三次元深度イメージ、bアクティブな照明イメージ及びc周辺照明イメージのうちの少なくとも1つを含むのが良い。図示の点群3300は、ロボット100により知覚される部屋シーン10aの三次元深度イメージの一例である。3‐Dマップビュー3310は、a三次元深度イメージ、bアクティブな照明イメージ及びc周辺照明イメージのうちの少なくとも1つを含むのが良い。図示の実施例では、ソフトウェアアプリケーション3300は、シーン10内の3‐Dイメージセンサ450,450a,450bにより視認可能な空間ボリューム3310の三次元深度イメージとして3‐Dマップ3310を表示する。点群3320の幾つかの又は全ての点3322は、コロケート型RGBカメラ320からの色で着色されるのが良い。幾つかの実施例では、点群3320は、各々がx,y,z座標及びRGB色を備えた320×240ポイント76,000ポイントを含む。遠隔場所からの人々との対話時、ユーザは、ロボット100からの音声/映像供給物から自分が何を見て何を聞いているかに依存する。ビデオカメラの典型的な視野は、制限されており例えば、60°、状況アウェアネスsituationalawarenessを提供するのに適してはいない場合がある。ロボット100は、広い組み合わせ視野を得るために多数のカメラ320,450,450a,450bを用いることができると共に/或いはカメラ320,450,450a,450bのうちの1つ又は2つ以上走査して対応の視野452を効果的に広げることができる。さらに、ロボット100は、1つ又は2つ以上のカメラ320又はイメージングセンサ450を回転させてロボット100の周りの360°全体を含む組み合わせ視野452を得ることによってシーンアップデートルーチンを実行することができる。幾つかの具体化例では、ロボット100は、定期的に又は1つ又は2つ以上の事象発生時に、ロボット100がイメージングセンサ450,450b,450cを動かして垂直中心軸線Z回りの360°のわたる三次元深度イメージデータ360を捕捉するシーンアップデートルーチンを実行する。ロボット100は、定位置でホロノミック的に360°回転し、頭部160を360°回転させること等を行うことができる。幾つかの実施例では、約60°の視野452に関し、ロボット100は、イメージセンサ450,450b,450cを0°の第1の位置、60°の第2の位置及び120°の第3の位置相互間で各々前方駆動方向Fに対して動かす。ソフトウェアアプリケーション3300は、捕捉した3‐D深度イメージデータに基づいて実際のシーン10の3‐Dシーン10aを提供することができる。図34は、ソフトウェアアプリケーション3300のためのアーキテクチャ3400の例示の略図である。ソフトウェアアプリケーション3300は、ロボットデータモデル3420例えば、グラフィックスデータファイル又はプログラミング物体、イメージングセンサ450,450a,450bからのイメージングセンサに基づく点群データモデル3430例えば、グラフィックスデータファイル又はプログラミング物体及びタッチ認識機能を備えたオペレーティングシステムのハンドジェスチャアプリケーションプログラムインターフェースAPI3440と通信状態にあるアプリケーションエンジン3410を含む。アプリケーションエンジン3410は、レンダリングエンジン3150と通信し、このレンダリングエンジンは、OpenGLES3460と通信する。OpenGLES3460は、中央処理装置CPU3470及び/又は遠隔コンピュータ計算装置310rのグラフィックス処理ユニットGPU3480と通信することができる。アプリケーションエンジン3410は、レンダリングエンジン3450によるレンダリングを行うためにユーザインターフェース3302を提供する。3‐Dマップ3310に関し、アプリケーションエンジン3410は、ロボットデータモデル3420例えば、3‐D空間内におけるロボットモデル100aを操作するためのマトリックスマスを用いてロボットモデル100aを提供すると共に両方共単一のビュー内にレンダリングするために点群データモデル3430例えば、切頭体投影マトリックスを用いて3‐Dシーン10aを提供することができる。アプリケーションエンジン3410は、ハンドジェスチャAPI3440を用いて遠隔コンピュータ計算装置310rのタッチスクリーン312上のタッチジェスチャ例えば、タッチ場所座標、ジェスチャ経路、ジェスチャ持続時間等を求めることができる。アプリケーションエンジン3410は、ロボットモデル100aの姿勢を求めるためにロボットデータモデル3430にアクセスすることができる。ロボットデータモデル3430は、ロボット100の4つの自由度例えば、頭部160をパンすること/傾動させること、胴部高さHTの変更及びロボット100の回転を説明することができる。ロボットデータモデル3430により、4つの自由度によるロボットモデル100aの図形による操作を可能にし、例えば、3‐Dマップ3310内でロボットモデル100aの姿勢を動かしたり変更したりすることができる。さらに、アプリケーションエンジン3410は、遮蔽に起因した光の減衰を考慮に入れることによりリアリズムを局所反射モデルに追加するために環境遮蔽アンビエントオクルージョン、即ち、3‐Dコンピュータグラフィックスで用いられているシェーディング方法を実施することができる。環境射影は、光が特に通常非反射面と考えられる物体から現実世界において放射する仕方に近似しようとする。局所方法とは異なり、フォンPhongシェーディングのように、環境遮蔽は、各点における照明がシーン内における他の幾何学的形状の関数であることを意味するグローバルな方法である。環境遮蔽だけで達成されるソフトな外観は、物体が空一面曇った日に見える仕方にほぼ同じである。幾つかの実施例では、アプリケーションエンジン3410は、ロボットデータモデル3430に低域通過フィルタをかけてロボットモデル100a上の低い反射光を有する多角形を除去する。幾つかの具体化例では、アプリケーションエンジン3410は、以下のパラメータ、即ち、ロボットモデル座標x,y,z、点群座標x,y,z、アイポジション3350x,y,z、アイターゲット3352即ち、視線情報、光源座標x,y,z及び/又はビューポートサイズ即ち、タッチスクリーン312の表示領域のうちの1つ又は2つ以上をレンダリングエンジン3450に伝える。レンダリングエンジン3450は、タッチスクリーン312上にグラフィックスを表示するためにOpenGLと通信することができる。幾つかの実施例では、レンダリングエンジン3450は、レンダリングルーチンを実行すると共に/或いはロボットモデル100aの回転又は並進、アイポジション3350及び/又はアイターゲット3352の変化等を計算するためにCPU3470及び/又はGPU3480と通信する。ロボットモデル100aは、ユーザにより別々にタッチ可能であると共に操作可能である15個のレンダリングされる部分を有するのが良い。再び図33Dを参照するとロボット100は、自律的なナビゲーションが可能であるが、遠隔に位置するユーザが人々との対話をいったん始めると、遠くのユーザは、ロボット100の完全な制御を必要とする場合がある。典型的なロボット運動、例えば並進及び回転に加えて、遠隔のユーザは、ロボットの肩の高さHT図2及び頭部160のパン/チルト位置を調節することができる。ユーザインターフェースUI3302上に設けられた簡単なスライダ又はダイヤルがロボット運動学的状態の調節を可能にするが、従来型UIウィジェットは、ロボットの現在の運動学的状態の良好な視覚化をもたらすことができない。ユーザインターフェース3302は、ロボット100を駆動するための方向性パッド3308D‐パッドをコントロール部分3306中に表示することができる。例えば、方向性パッド3308は、ホロノミックX‐Y駆動指令に対応した左及び右側行為ボタン又はコントロール3308a,3308bを有するのが良い。方向性パッド3308は、ビデオゲームコンソールゲームパッド、ゲームコントローラ又はテレビジョン用のリモートコントロールユニットと同一又は類似しているのが良い。左側及び右側ボタン又はコントロール3308a,3308b上の組み合わせジェスチャは、組み合わせ運動指令、例えば上及び左を斜め運動方向として分析することができる。幾つかの実施例では、ソフトウェアアプリケーションは、仮想浮動及び不可視D‐パッド3308及び/又はマウスルックを提供することができ、したがって、ユーザの左親指がタッチスクリーン312に当たった場合にはどのような場合であっても、D‐パッド3308は、浮動すると共に/或いはユーザの右親指がタッチスクリーン312に当たった場合にはどのような場合であってもマウスルックが浮動する。これら特徴の両方又はいずれか一方は、ユーザが自分の親指を持ち上げたときにはリセット可能である。また図33B~図33Dを参照すると、ソフトウェアアプリケーション3300により表示されるユーザインターフェース3302例えば、ビューは、例えば、ロボット100と通信状態にあるウェブパッド310のタッチスクリーン312上のジェスチャ認識によりユーザ入力を受け取る。例示のジェスチャとしては、タップすること任意の回数のタップ、ピンチイン及びピンチアウトビューをズームするため、パンすること又はドラグすること、スワイプすること任意の方向に、回転させることフィンガを互いに逆方向に動かすこと及び/又は長押しタッチアンドホールドとも呼ばれているが挙げられるが、これらには限定されない。ソフトウェアアプリケーション3300は、タッチスクリーン312上のジェスチャを認識することができ、そしてロボット100のための対応の指令された運動を決定することができる例えば、ロボットモデル100aを操作し又はこれに指令したときに。ロボット指令をウェブパッド310から実際の空間内のロボット100に伝達するのが良く、次にオプションとして点群3200で第3の人のモードビュー例えば、指令に従ってロボット100が動いている状態を示している中に再現すると共に示された状態で逆伝搬させることができる。例えば、タッチジェスチャAPI3440を用いたアプリケーションエンジン3410は、受け取ったタッチジェスチャを認識することができ、そして、例えばタッチルーチンにより取り扱い可能なタッチ事象を発生させることによりそれに応じて応動することができる。ソフトウェアアプリケーション3300は、タッチ事象を受け取ると共に/或いはタッチ認識機能を実行しタッチジェスチャAPI3440を用いて、それにより存在場所又は、マルチフィンガタッチの場所、経路、持続時間及び/又は他のタッチ認識データを確認することができる。タッチスクリーン312上のタッチ場所を2‐Dレイアウトマップ1810上の対応の場所に直接投影することができるが、3‐Dマップ1810の場合、ソフトウェアアプリケーションは、2‐Dタッチジェスチャを図35に示されているように切頭体投影に沿って投影する。2‐Dタッチスクリーン312上に表示された3‐Dシーン10a内のタッチ場所を定めるため、ソフトウェアアプリケーション3300は、タッチスクリーン312上のタッチ場所3510を切頭体投影3500に沿ってタッチ場所3510を3‐Dシーン10a中の対応の交差点3520に投影することができる。ロボット100を種々の仕方で第三者モードで案内することができる。一手法では、オペレータは、表示された3‐Dシーン10a内の床の場所3510を選択する例えば、ポインティング装置を用いて又はロボット100と通信状態にあるウェブパッド310のタッチスクリーン312上の場所を選択して。ソフトウェアアプリケーション3300は、選択したフロアアプリケーション3510を切頭体投影3500に沿って3‐Dシーン10aに投影させて3‐Dシーン10a内の対応の選択されたシーン点3520を求める。ソフトウェアアプリケーション3300は、シーン点3520例えば、実際の空間座標としてコントローラ500に伝えることができ、コントローラ500は、駆動指令を出してロボット100を識別されたロボット経路2110図21Bに沿って障害物12をよけて選択された場所まで動かすことができる。ソフトウェアアプリケーション3300及び/又はコントローラ500は、事後衝突検出のために衝突がシミュレートされたモデルで起こった後1つ又は2つ以上の物理的シミュレータを実行するのが良い。事後衝突検出では、ソフトウェアアプリケーション3300及び/又はコントローラ500は、物理的シミュレータを一タイムステップだけ前進させ、次に、物体12が交差しているかどうか又は物体12が交差していると考えられるしきい距離内に存在しているかどうかをチェックする。各シミュレーションステップでは、全ての交差した物体12のリストを作り、これら物体の位置及び軌道を幾分固定して衝突を説明する。事後シミュレーションでは、衝突は、これが実際にシミュレーションで起こった後に検出される。衝突検出アルゴリズムは、無数の物理的変数を知る必要はなく、物理的物体の単純なリストがアルゴリズムに送られるのが良く、プログラムは、交差物体のリストに戻る。衝突検出アルゴリズムは、摩擦、弾性衝突、非弾性衝突及び変形可能な本体を理解する必要はない。シミュレータにおいて衝突のないロボット経路2110を識別した後、ロボット100は、シーン10を実際の空間内で進むことができる。図33Eを参照すると。ソフトウェアアプリケーション3300は、受け取った行き先場所L2及び行き先場所L2までのロボット100の現在の場所L1から行き先場所L2までのシーンの仮想空間内の投影経路を用いることができる。点群3320及び/又は既知の床平面3332は、衝突検出のための仮想表面となることができる。ロボット経路3350を仮想空間内でロボット100の現在の場所L1から選択された行き先場所L2まで投影することができ、ついには、ロボット経路は、仮想表面に当たる。ソフトウェアアプリケーションは、仮想平面までのロボット経路3350のための駆動指令を分析することができる。図33D及び図35を参照すると、タッチスクリーン312上のロボットモデル100aを操作するため、ユーザは、ロボットモデル100aの胴部140にタッチし、これを垂直に動かし、そしてリリースして胴部肩高さHTを変化させることができる。ソフトウェアアプリケーション3300は、タッチ箇所3510を切頭体投影3500に沿ってスクリーン312上に投影することができ、それにより3‐Dシーン10a内における対応のタッチ点3520を求めることができ、かかるタッチ点は、この実施形態では、ロボットモデル100aの胴部140と交差する。ソフトウェアアプリケーション3300は、タッチジェスチャAPI3340を用いて受け取ったタッチジェスチャの特性を求め、それによりこの場合指令を送って胴部肩高さHTを変えることによってそれに応じて応動する。ユーザは、タッチスクリーン312上のロボットモデル100aの胴部140又はロボットモデル100aの他の部分にタッチし、これを水平に動かし、そしてリリースしてロボット100を回転させることができる。ユーザは、ロボットモデル100aの前側バンパ124a図4Aにタッチし、前側バンパ124aを保持してロボットを後方に動かすことができる。ロボット100を前方に動かすためには、ユーザは、ロボットモデル100aの後側バンパ124b,124c図4Aのうちの一方にタッチし、保持し、そしてロボットをシーンビュー3304内で前方に動かすのが良い。3つのバンパ124a~124cのうちの1つを素早くタップすると、ロボットは、短い距離例えば、10cm動くことができる。ユーザは、ロボットモデル100aの頭部160にタッチし、水平に動かし、次に頭部160をリリースすることによってロボット100の頭部160をパンすることができる。同様に、頭部160を傾動させるため、ユーザは、ロボットモデル100aの頭部160にタッチし、そしてこれを垂直に動かすのが良い。幾つかの実施例では、ユーザは、合成又は組み合わせ運動例えば、頭部160を同時にパンして傾動させることによって多数の調節を同時に行うことができる。局所ウェイポイント指令を接着するため、ユーザは、ロボットモデル100aの基部120にタッチし、これを任意の方向に動かし、そしてこれをリリースするのが良い。リリース箇所は、地面平面3332に投影可能である。他の認識可能なジェスチャとしては、新たなセンサデータに基づく3‐Dシーン10aをアップデートするためにロボットモデル100aの頭部160を素早くタップすること及び/又はタッチすること、動かすこと任意の方向に及びロボットモデル100aの頭部160をリリースしてヘッドパン/チルト方向を設定することが挙げられる。リリース箇所は、3‐Dシーン10a内の有効点即ち、点群3320中の点に十分近い3‐D空間内の点に投影可能である。図36Aを参照すると、ソフトウェアアプリケーション3300は、第3パースペクティブビューを3‐Dシーン10a中のロボット100のモデル100aの肩ビュー例えば、第三者シュータビュー上に投影することができる。アイポジション3350は、ロボットモデル100aの背後に初期デフォルト位置を有するのが良く、オプションとして、パースペクティブのために持ち上げられるのが良い。ロボットモデル100aは、ロボット100の現在の姿勢及びロボットの周りの視認された空間ボリューム3330に対するロボット100の現在の向きで示されるのが良い。さらに、ロボットモデル100a及び3‐Dマップ3310は、ロボット100のオペレータの視点及び/又は他の視点から示されるのが良く、これらの例は、図33E~図33G、図36A及び図36Bに示されている。図36A~図36Cを参照すると、フリールックジェスチャ指令マウスルックとも呼ばれているが3‐Dマップ3310を回転させ又は違ったやり方でロボットモデル100a及び3‐Dシーン10aのビューパースペクティブを動かす機能例えば、ジェスチャ認識を介してを提供する。さらに、フリールック指令により、ユーザは、ロボットモデル100aをホロノミック的に回転させると共に/或いはカメラ320,450をパンし又は傾動させることができる。シーン視認のため、ユーザは、ロボットモデル100aにタッチし、これを任意の方向に動かし、そして開放空間上にリリースして3‐Dシーン10a内におけるアイポジション3350を変更することができる。この作用効果としては、アイ標的ポジション3352を不変のままにすることによって3‐Dシーン10a内におけるロボットモデル110の回りに動くことが挙げられ、アイ標的ポジション3352は、デフォルトにより、ロボット開始位置に設定できる。図36A及び図36Bに示された実施例では、ユーザは、3‐Dマップ3310を回転させてロボットモデル100a及び3‐Dシーン10aをロボットモデル100aに対して横から視認する。ロボットモデル100aは、3‐Dシーン10a内でその開始位置から遠ざかることができる。さらに、アイターゲット位置3352は、ロボット100に追従する必要はない。ロボットモデル100aの胴部140を2回タップすると、アイターゲット位置3352をロボットの現在の位置に変えることができる。図36Cを参照すると、3‐Dシーン10aの視認領域を定めるため、ソフトウェアアプリケーション3300は、視線3354をアイポジション3350からアイターゲット3352に投影するのが良い。図示の実施例では、ソフトウェアアプリケーション3300は、実際のシーン10に対してタッチスクリーン312の仮想位置を用い、次に視線投影像3354をアイポジション3350例えば、ユーザの肩の上のデフォルト位置に当初配置されるからタッチスクリーン312上のスクリーン点3356を介して配置して3‐Dシーン10a内のアイターゲット位置3352を求めることができる。ソフトウェアアプリケーション3300は、タッチスクリーン312の受け取った表示領域を用いてレンダリングされた3‐Dシーン10aのサイズを求めることができる。初期アイポジション3350は、ロボット100の後ろに5メートルのところに位置すると共に地面より上方に45°の角度ψをなして視線3350に沿って高くされるのが良い。ロボットモデル10aの初期場所は、3‐Dシーン10a内に心出しされるのが良く、スクリーン312の初期仮想場所は、アイポジション3350とロボット100上の初期アイターゲット3352との間のベクトル例えば、視線3354に沿って位置するのが良い。アイポジション3350及び/又は視線3354を変更するためには、ユーザは、3‐Dマップ3310の非可動部分例えば、ロボットモデル10aではなく、3‐Dシーン10aの一部を選択し、タッチ場所をスクリーン312に沿って動かし、そしてリリースするのが良い。ソフトウェアアプリケーション3300は、アイポジション3350をアイターゲット3352又はスクリーン場所3356即ち、タッチ場所に対して対応した量回転させるのが良い。幾つかの具体化例では、ソフトウェアアプリケーション3300は、アイポジション3350及び選択されたスクリーン場所3356を用いて視線3354をアイポジション3350からスクリーン場所3356を介してアイターゲット3352としての3‐Dスクリーン10aとの交差点に投影するのが良い。アイターゲット3352の集まりを用いると、ロボット100を分析されたアイターゲット3352に沿う既定の経路に沿って案内するための駆動指令を求めることができる。追加の実施例では、ソフトウェアアプリケーション3300は、最初のアイ標的3352及び最後のアイ標的3352をそれぞれ求める第1の選択されたスクリーン場所3356及び最後の選択されたスクリーン場所3356例えば、最初のタッチ及びリリース点を定める。最初のアイ標的3352がロボットモデル100aの基部120に一致し、最後のアイ標的3352がロボットモデル100aの現在の場所から離れて位置する場合、ソフトウェアアプリケーション3300は、駆動指令を出してロボット100を最後のアイ標的3352に対応する場所に駆動するのが良い。さらに、ユーザは、ロボット100がその現在の場所から選択された行き先場所に自律的に進むことができるようにすることができる。運動学的状態操作は、ソフトウェアアプリケーション3300で可能な場合がある。例えば、ソフトウェアアプリケーション3300は、ロボットモデル100aの位置の変化及び/又は運動学的状態を計算することができる例えば、ロボットデータモデル3420を用いてと共に適当な指令を出してロボット100をロボットモデル100aに同期させることができる。ソフトウェアアプリケーション3300は、ロボットコントローラ500と通信し、指令を送ってソフトウェアアプリケーション3300の変化に基づいてロボット100の位置及び運動学的状態を調節すると共にロボットモデル100aをそれに応じてアップデートするためにロボット100の位置及び状態の変化のフィードバックを受け取る。換言すると、ロボットの位置及び運動学的状態をソフトウェアアプリケーション3300とロボット100との間で同期させることができる。例えば、ユーザは、ロボットモデル100aの胴部の高さHTを変化させ、その頭部160を回転させることによりタッチスクリーン312上におけるロボットモデル100aを操作することができる。モデル操作の認識後、ソフトウェアアプリケーション3300は、ロボット位置及び運動学的状態データをロボットコントローラ500に送ることができ、ロボットコントローラは、適当な指令を決定してロボット100の姿勢を変えると共に/或いはソフトウェアアプリケーション3300は指令を決定してロボットの姿勢をアップデートし、これら指令を実行のためにロボットコントローラ500に送る。さらに、ユーザがロボット100の姿勢及び/又は位置場所を変化させることによりロボット100を物理的に操作する場合、ロボット100は、対応のデータをソフトウェアアプリケーション3300に送り、ソフトウェアアプリケーションは、ロボットモデルの姿勢及び2‐Dレイアウトマップ1810及び3‐Dマップ3310内のその場所をアップデートする。現在の且つ正確な3‐Dマップ3310を提供するため、ロボット100は、1回又は2回以上のロボット‐ロボットモデル同期化後、シーンアップデートルーチンを実行するのが良い。ソフトウェアアプリケーション3300は、シーンアップデートルーチンの実行頻度を制御することができる。幾つかの実施例では、ソフトウェアアプリケーション3300は、変更後のロボットモデル100aのゴースト像を表示し、次に開始位置及び/又は姿勢から変更後の位置及び/又は姿勢まで実際のロボット100とリアルタイムで動いているロボットモデル100aの一連のイメージを順次表示し、ついには、最後の変更後の状態が達成される。図37A及び図37Bを参照すると、幾つかの具体化例では、ソフトウェアアプリケーション3300は、点群3320を分析して認識できない塊3324、例えば非反射性物体例えば、黒色の物体、光源例えば、窓等を確認し、センサシステム400を用いて認識できない塊3324図37Aの各々を識別し、次に、認識可能なイメージ3710図37Bを対応の認識できない塊3324上に引き又はオーバーレイする。ソフトウェアアプリケーション3300は、シーン10を見ているカメラ320と通信し又はこのカメラ320からRGBイメージデータを受け取ることができ、そして認識可能なイメージ3710として用いるために認識できない塊3324に対応したRGBイメージデータの一部分をトリミングすることができる。他の実施例では、ソフトウェアアプリケーション3300は、認識可能なイメージ3710として用いるために記憶された一般的なイメージを用いることができる。したがって、3‐Dマップ3310を点群3320と点群3320上にオーバーレイされ又はこれに合体された1つ又は2つ以上の認識可能なイメージ3710の組み合わせとしてレンダリングするのが良い。幾つかの実施例では、認識可能なイメージ3710は、部分的に透明であり、したがって、ユーザは、対応の認識できない塊3324を部分的に見ることができる。図38を参照すると、幾つかの具体化例では、ソフトウェアアプリケーション3300は、遠隔コンピュータ計算装置310rを介してワイヤレスネットワーク又はクラウドコンピューティングネットワーク3810によりロボット100と通信する。通信は、安全のためにファイアウォール3820を通るのが良い。幾つかの実施例では、遠隔コンピュータ計算装置310rは、ロボット100と仮想プライベートネットワークVPN通信又はハイパーテキスト転送プロトコルhttpトンネルを確立する。クラウドコンピューティングネットワーク3810は、インターネットを利用したコンピューティングを提供することができ、それにより、共有サーバは、リソース、ソフトウェア及びデータを要求に応じて種々のコンピュータ及び他の装置に提供する。例えば、クラウドコンピューティングネットワーク3810は、少なくとも1つのサーバコンピューティング装置を含むクラウドコンピューティングサービスであるのが良く、このクラウドコンピューティングサービスは、サービスアブストラクションレーヤ及びこの上にインスタント化されたサーババーチャルマシン上のハイパーテキスト転送プロトコルラッパを含むのが良い。サーバコンピューティング装置は、HTTPリクエストをパースし、HTTP応答を送るよう構成されているのが良い。クラウドコンピューティングは、データ及びアプリケーションを維持するためにインターネット及び中央リモートサーバを用いる技術であると言える。クラウドコンピューティングにより、ユーザは、インターネットアクセスにより任意のコンピュータのところでの設定及びアクセスパーソナルファイルなしでアプリケーションにアクセスしてこれらを用いることができる。クラウドコンピューティングは、ストレージ、メモリ、処理及び帯域幅を集中化することによって比較的効率の高いコンピュータ処理を可能にする。クラウドコンピューティングネットワーク3810は、スケール変更可能なオンデマンドのコンピューティング電力、ストレージ及び帯域幅を提供することができ、他方、ロボットハードウェア要件を緩和することができる例えば、CPU及びメモリの空き容量を確保することによって。ロボットをクラウドコンピューティングネットワーク3810に接続できることにより、ロボット100が基地局に戻る必要なく、ロボット動作及び使用履歴の自動的データ収集が可能である。さらに、経時的な連続データ収集により、マーケティング、製品開発及びサポートのために漁ることができる多量のデータを生じさせることができる。本明細書において説明したシステム及び技術の種々の具体化例をディジタル電子回路、集積回路、特別設計ASIC特定用途向け集積回路、コンピュータハードウェア、ファームウェア、ソフトウェア及び/又はこれらの組み合わせで実現できる。これら種々の具体化例は、プログラム可能なシステム上で実行可能であると共に/或いは解釈可能な1つ又は2つ以上のコンピュータプログラムの状態での具体化例を含むことができ、かかるプログラム可能なシステムは、記憶システム、少なくとも1つの入力装置及び少なくとも1つの出力装置からデータ及び命令を受け取り、データ及び命令を記憶システム、少なくとも1つの入力装置及び少なくとも1つの出力装置に送るよう結合された特定目的又は一般目的であるのが良い少なくとも1つのプログラム可能プロセッサを含む。これらコンピュータプログラムプログラム、ソフトウェア、ソフトウェアアプリケーション又はコードとも呼ばれるは、プログラム可能プロセッサのための機械命令を含み、ハイレベル手順及び/又はオブジェクト指向プログラミング言語及び/又はアセンブリ/機械言語で実施できる。本明細書で用いられる機械可読媒体及びコンピュータ可読媒体という用語は、機械命令及び/又はデータを、機械命令を機械可読信号として受け取る機械可読媒体を含むプログラム可能プロセッサに提供するために用いられる任意のコンピュータプログラム製品、装置及び/又はデバイス例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイスPLDを意味する。機械可読信号という用語は、機械命令及び/又はデータをプログラム可能プロセッサに提供するために用いられる任意の信号を意味している。本明細書において説明した本発明の内容及び機能的操作の具体化は、ディジタル電子回路又はコンピュータソフトウェア、ファームウェア又は本明細書において開示した構造及びこれら構造の均等例又はこれらのうちの1つ又は2つ以上の組み合わせを含むハードウェアで具体化できる。本明細書において説明した本発明の内容の実施形態は、1つ又は2つ以上のコンピュータプログラム製品、即ち、データ処理装置により実行可能に又はデータ処理装置の動作を制御するためのコンピュータ可読媒体上にコード化されたコンピュータプログラム命令の1つ又は2つ以上のモジュールとして具体化できる。コンピュータ可読媒体は、機械可読記憶装置、機械可読記憶基板、メモリ装置、機械可読伝搬信号を送る物体の構成物又はこれらのうちの1つ又は2つ以上の組み合わせであって良い。データ処理装置という用語は、データを処理するための全ての装置、デバイス及び機械を含み、これらとしては、一例を挙げると、プログラム可能プロセッサ、コンピュータ又は多数のプロセッサ若しくはコンピュータが挙げられる。装置は、ハードウェアに加えて、問題のコンピュータプログラムのための実行環境を生じさせるコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム又はこれらのうちの1つ若しくは2つ以上の組み合わせを構成するコードを含むのが良い。伝搬信号は、適当なレシーバ装置への送信のために情報をコード化するよう生成される人工的に生じた信号、例えば、機械生成電気信号、光信号又は電磁信号である。コンピュータプログラムプログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト又はコードとも呼ばれるは、コンパイルされ又は解釈された言語を含むプログラミング言語の任意の形態で書き込み可能であり、これをスタンドアロンプログラム又はモジュール、コンポーネント、サブルーチン若しくはコンピュータ処理環境で用いられるのに適した他のユニットとして含まれる任意の形態で利用可能である。コンピュータプログラムは、必ずしも、ファイルシステム中のファイルに対応しているわけではない。プログラムは、問題のプログラムに専用のシングルファイル又は多数のコーディネートされたファイル例えば、1つ又は2つ以上のモジュール、サブプログラム又はコードの部分を記憶したファイル中に他のプログラム又はデータ例えば、メーキャップ言語文章に記憶された1つ又は2つ以上のスクリプトを保持したファイルの一部分に記憶可能である。コンピュータプログラムは、1つのコンピュータ又は1つのサイトに配置され又は多数の場所に分散して配置されると共に通信ネットワークによって互いに接続された多数のコンピュータ上で実行されるよう利用可能である。本明細書において説明したプロセス及び論理の流れは、入力データについて働き、出力を生じさせることによって機能を実行するよう1つ又は2つ以上のコンピュータプログラムを実行する1つ又は2つ以上のプログラム可能プロセッサによって実施できる。プロセス及び論理流れは又、専用目的論理回路、例えばFPGAフィールドプログラマブルゲートアレイ又はASIC特定用途向け集積回路によっても実行可能であり、そして装置は、これらとしても具体化できる。コンピュータプログラムの実行に適したプロセッサとしては、一例を挙げると、汎用目的マイクロプロセッサと専用目的プロセッサの両方及び任意種類のディジタルコンピュータの任意の1つ又は2つ以上のプロセッサが挙げられる。一般に、プロセッサは、読み取り専用記憶装置又は読み取り書き込み記憶装置から命令及びデータを受け取る。コンピュータの必須の要素は、命令を実行するプロセッサ及び命令及びデータを記憶する1つ又は2つ以上の記憶装置である。一般に、コンピュータは、データを記憶する1つ又は2つ以上の大量記憶装置、例えば、磁気ディスク、光磁気ディスク又は光ディスクを含み又はこれらからデータを受け取り、若しくはデータをこれらに伝送し又はこれら両方を行うよう作動的に結合される。しかしながら、コンピュータは、かかる装置を有する必要はない。さらに、コンピュータは、別の装置、例えば、少し挙げてみただけでも、携帯電話、携帯型端末PDA、移動式オーディオプレーヤ、全地球測位システムGPSレシーバに埋め込み可能である。コンピュータプログラム命令及びデータを記憶するのに適したコンピュータ可読媒体としては、あらゆる形式の不揮発性メモリ、メディア及び記憶装置が挙げられ、かかる形態としては、一例を挙げると、半導体記憶装置、例えばEPROM、EEPROM及びフラッシュメモリ装置、磁気ディスク、例えば内部ハードディスク又はリムーバブルディスク、光磁気ディスク、CDROM及びDVD‐ROMディスクが挙げられる。プロセッサ及びメモリは、専用目的論理回路によって捕捉されるのが良く又はこれらの中に組み込まれるのが良い。本明細書において説明した本発明の内容の具体化例は、例えばデータサーバとしてバックエンドコンポーネントを含み若しくはミドルウェアコンポーネント、例えばアプリケーションサーバを含み、或いはフロントエンドコンピュータ、例えばユーザが本明細書において説明した本発明の内容の具体化例と対話することができるようにするグラフィカルユーザインターフェース又はウェブブラウザを有するクライアントコンピュータを含み又は1つ又は2つ以上のかかるバックエンド、ミドルウェア又はフロントエンドコンポーネントの任意の組み合わせを含むコンピューティングシステムで具体化できる。かかるシステムのコンポーネントは、ディジタルデータ通信の任意の形態又は媒体、例えば通信ネットワークにより互いに接続可能である。通信ネットワークの例としては、ローカルエリアネットワークLAN及びワイドエリアネットワークWAN、例えばインターネットが挙げられる。コンピューティングシステムは、クライアント及びサーバを含むのが良い。クライアント及びサーバは、一般に、互いに離れており、典型的には、通信ネットワークを介して対話する。クライアントとサーバの関係は、それぞれのコンピュータ上でランすると共に互いに対するクライアント‐サーバ関係を有するコンピュータプログラムによって生じる。本明細書は、多くの細部を有するが、これら細部は、本発明の範囲又はクレーム請求可能な本発明の制限として介されてはならず、それどころか、本発明の特定の具体化例に特有の特徴の説明として介されるべきである。別々の具体化例に関連して本明細書において説明した或る特定の特徴は又、単一の具体化例において組み合わせ状態で具体化できる。これとは逆に、単一の具体化例の関連で説明した種々の特徴も又、多数の具体化例において別々に又は任意適当なサブコンビネーションの状態で具体化できる。さらに、特徴を或る特定の組み合わせで用いられるものとして上述し、場合によっては当初その状態でクレーム請求されている場合があるが、クレーム請求されたコンビネーションからの1つ又は2つ以上の特徴は、場合によっては、その組み合わせから削除でき、クレーム請求されるコンビネーションは、サブコンビネーション又はさびコンビネーションの変形例に変更可能である。同様に、操作又はステップが図面に特定の順序で記載されているが、これは、かかる操作又はステップが図示の特定の順序又は逐次順序で実施されること又は全ての図示した操作又はステップが所望の目的を達成するために実施されるべきであることを必要条件として理解されるべきではない。或る特定の状況では、多重タスキング及び並行処理が有利な場合がある。さらに、上述の実施形態における種々のシステムコンポーネントの分離は、あらゆる実施形態においてかかる分離を必要とするものであると理解されるべきではなく、上述のプログラムコンポーネント及びシステムは、一般に、単一ソフトウェア製品に互いに一体化でき又は多数のソフトウェア製品にパッケージ化できることは理解されるべきである。多くの具体化例を説明した。それにもかかわらず、本発明の精神及び範囲から逸脱することなく、種々の改造例を相当できることは理解されよう。したがって、特許請求の範囲に記載された本発明の範囲内で他の具体化例が存在する。例えば、特許請求の範囲に記載された行為は、別の順序で実施でき、この場合であっても、所望の結果を達成することができる。"