(57)【要約】【課題】  変化する環境において永続的に記憶された地図の堅牢な取り扱いを確実にし、地図内のロボットの自己位置特定を改善する。【解決手段】  自律移動ロボットを制御する方法が記載される。１つの実施形態によれば、この方法は、ロボット使用領域に割り当てられた少なくとも１つの地図を保存し、管理するステップと、ロボットがロボット使用領域を通過するようにナビゲートするステップであって、その際に地図内のロボットの位置が連続的に決定されるステップとを有する。この方法は、さらに、ロボットが自身の動作を制御することができない動きをする移動事象を検出するステップを有する。移動事象の間、ロボットは、センサを用いて、ロボットの位置及び／又は運動状態についての情報を検出し、検出された情報に基づいてロボットの位置の推定値を算出する。【選択図】図１
2019525342.tif 000002
【特許請求の範囲】
【請求項１】
自律移動ロボットを制御する方法であって、
少なくとも１つのロボット使用領域に割り当てられた少なくとも１つの地図を保存し、管理するステップと、
前記自律移動ロボットによってタスクを実行するための命令を受け取るステップであって、前記タスクは、第１のタスク群又は第２のタスク群に属するステップと、
前記タスクを実行するために前記ロボット使用領域を通過するように前記自律移動ロボットがナビゲートするステップと
を有し、
前記第１のタスク群からのタスクは、地図ベースの情報に関連付けられており、前記自律移動ロボットがタスクの実行の際に、前記地図ベースの情報が関連付けられた、保存された前記地図に基づいてナビゲートし、
前記第２のタスク群のタスクは、地図ベースの情報に関連付けられていない、
自律移動ロボットを制御する方法。
【請求項２】
前記第２のタスク群のタスクを実行する際には、前記自律移動ロボットは、ナビゲーションのために前記タスクの実行前、及び／又は、実行中に新しい地図を作成する請求項１に記載の方法。
【請求項３】
前記第２のタスク群のタスクの際には、前記自律移動ロボットは、前記タスクの実行前、及び／又は、実行中に、自身が地図化されたロボット使用領域に居るか否かをチェックし、居る場合には、これに割り当てられた地図をナビゲーションのために使用する請求項１又は請求項２に記載の方法。
【請求項４】
前記第１のタスク群のタスクを実行する際には、前記自律移動ロボットは、地図に走行可能であるとマークされた領域のみを走行し、前記第２のタスク群のタスクを実行する際には、前記自律移動ロボットにとって到達可能なすべての領域を走行する請求項１乃至請求項３の何れか一項に記載の方法。
【請求項５】
前記地図ベースの情報は、複数の地図のうちの特定の１つ、又は特定の地図の１つまたは複数の領域、又は特定の地図内の特定の位置を示す請求項１から請求項４のいずれか一項に記載の方法。
【請求項６】
自律移動ロボット（１００）を制御する方法であって、
ロボット使用領域（Ｆ１、Ｆ２）に割り当てられた少なくとも１つの地図（１０、２０）を保存し、管理するステップと、
前記自律移動ロボット（１００）が前記ロボット使用領域（Ｆ１、Ｆ２）を通過するようにナビゲートするステップであって、その際に前記地図（１０、２０）内の前記自律移動ロボットの位置が連続的に決定されるステップと、
前記自律移動ロボット（１００）が自身で動作を制御することができない動きをする移動事象を検出するステップと、
を有し、
前記移動事象の間、前記自律移動ロボット（１００）は、センサを用いて、前記自律移動ロボット（１００）の位置及び／又は運動状態についての情報を検出し、検出された情報に基づいて前記自律移動ロボット（１００）の位置の推定値を算出する、
自律移動ロボットを制御する方法。
【請求項７】
前記移動事象の開始と終了は、前記自律移動ロボット（１００）が、前記自律移動ロボット（１００）が持ち上げられること、及び、降ろされることを検出することによって検知される請求項６に記載の方法。
【請求項８】
前記自律移動ロボット（１００）が持ち上げられること、及び／又は、降ろされることは、車輪接触スイッチ、床までの距離を測定するセンサ、床を検出するセンサ、及び／又は、加速度センサを用いて検出される請求項７に記載の方法。
【請求項９】
前記自律移動ロボット（１００）は、前記移動事象の間に取得された自身の位置、及び／又は運動状態についての情報に基づいて、前記移動事象の終了時に自身の位置の推定値を決定する請求項６乃至請求項８のいずれか一項に記載の方法。
【請求項１０】
前記移動事象の終了時に前記自律移動ロボット（１００）の位置の推定値を考慮に入れて、保存された地図においてグローバル自己位置特定を実行する請求項９に記載の方法。
【請求項１１】
前記自律移動ロボット（１００）の位置の前記推定値を決定することは、前記自律移動ロボットが少なくとも１つの地図内の特定の位置にある確率を記述する確率分布を計算することを含む請求項６乃至請求項１０のいずれか一項に記載の方法。
【請求項１２】
前記移動事象の間に検知された前記自律移動ロボット（１００）の位置及び／又は動作状態に関する前記情報は、前記自律移動ロボットの加速度及び／又は角速度及び／又は方位に関する情報を含む請求項６乃至請求項１１のいずれか一項に記載の方法。
【請求項１３】
検出された前記情報に基づいて、前記移動事象中に前記自律移動ロボットがそれに沿って移動する軌道が推定される請求項１２に記載の方法。
【請求項１４】
前記自律移動ロボットの向きを決定するために、重力の方向と地球の磁場の方向が使用される請求項１２又は請求項１３に記載の方法。
【請求項１５】
前記自律移動ロボットの位置の前記推定値は、慣性航法によって決定される請求項６乃至請求項１４のいずれか一項に記載の方法。
【請求項１６】
前記自律移動ロボットは、前記移動事象中に検出された前記情報に基づいて、自身が前記移動事象中に以前のロボット使用領域の外に移動されたかどうかを検出する請求項６乃至１５のいずれか一項に記載の方法。
【請求項１７】
前記自律移動ロボットが以前のロボット使用領域の外に移動された場合、前記自律移動ロボットは、前記移動事象の終了時に、推定位置に基づいて、前記推定位置が、保存されている地図のロボット使用領域内にあるかどうか、さらに、前記推定位置が、保存されている地図のロボット使用領域内にある場合はどの地図に前記推定位置があるかを検出する請求項１６に記載の方法。
【請求項１８】
前記移動事象中に検出された情報は、前記自律移動ロボットがナビゲートするためにも使用される１つまたは複数のセンサによって決定される少なくとも１つの速度成分を含む請求項６乃至請求項１７のいずれか一項に記載の方法。
【請求項１９】
前記自律移動ロボットのナビゲーションにも使用される１つまたは複数のセンサは、環境内の障害物までの距離を測定する距離センサを含み、前記少なくとも１つの速度成分は、測定された距離の変化に基づいて決定される請求項１８に記載の方法。
【請求項２０】
前記自律移動ロボットのナビゲーションにも使用される１つまたは複数のセンサは、カメラを含み、前記少なくとも１つの速度成分は、前記カメラによって測定された画像情報の変化に基づいて決定される請求項１９に記載の方法。
【請求項２１】
前記移動事象中にカメラにより画像情報が検出され、前記画像情報に基づいて、前記自律移動ロボットの位置の前記推定値が決定される請求項６乃至請求項１９のいずれか一項に記載の方法。
【請求項２２】
検出された前記画像情報は、前記ロボット使用領域（Ｆ１、Ｆ２）の具体的な部屋を示す部屋番号であり、前記部屋に対応する地図領域の属性として関連する地図（１０、２０）に格納され、前記自律移動ロボットの位置の前記推定値は前記部屋番号に基づいて決定される請求項２１に記載の方法。
【請求項２３】
前記画像情報に基づいて、環境内の物体の物体認識が行われ、
前記物体認識の際に認識された物体の位置に基づいてロボット位置の推定値が決定される請求項２１又は請求項２２に記載の方法。
【請求項２４】
自律移動ロボット（１００）を制御する方法であって、
異なる地理的高さを有する２つ以上のロボット使用領域（Ｆ１、Ｆ２）に割り当てられた地図（１０、２０）を保存し、管理するステップと、
前記自律移動ロボット（１００）がロボット使用領域（Ｆ１、Ｆ２）を通過するようにナビゲートするステップであって、その際に地図（１０、２０）内の前記自律移動ロボットの位置が連続的に決定されるステップと、
気圧を測定し、測定した前記気圧を評価するステップと、
前記気圧の変化に基づいて、前記自律移動ロボットが現在のロボット使用領域を離れたこと決定するステップと、
を有する自律移動ロボットを制御する方法。
【請求項２５】
前記自律移動ロボット（１００）が自身で動作を制御することができない動きをする移動事象を検出するステップを更に有し、
前記移動事象中およびその後に気圧が評価される請求項２４に記載の方法。
【請求項２６】
前記気圧を評価するステップは、前記自律移動ロボットによって測定された空気圧と静止基準センサによって測定された空気圧とに基づいて気圧の変化を決定する請求項２５に記載の方法。
【請求項２７】
前記気圧を評価するステップは、決定された気圧の変化に基づいて、前記移動事象中に前記自律移動ロボットが、ロボット使用領域の高度を超える危険な高度に到達したかどうかを決定する請求項２６に記載の方法。
【請求項２８】
自律移動ロボット（１００）を制御する方法であって、
異なる地理的高さを有する２つ以上のロボット使用領域（Ｆ１、Ｆ２）に割り当てられた地図（１０、２０）を保存し、管理するステップと、
気圧を測定し、測定した前記気圧を評価するステップと、
測定された前記気圧に応じて前記自律移動ロボットのナビゲーションのためにロボット使用領域の地図を選択するステップと、
を有する自律移動ロボットを制御する方法。
【請求項２９】
少なくとも１つのプロセッサと、少なくとも１つのメモリとを有し、前記メモリには、前記プロセッサ上で実行されたときに前記自律移動ロボットに請求項１乃至請求項２８のいずれか一項に記載の方法のうちの１つを実行させる命令が保存されている自律移動ロボットのための制御装置。
【請求項３０】
自律移動ロボット（１００）を制御する方法であって、
ロボット使用領域（Ｆ１、Ｆ２）に割り当てられた少なくとも１つの地図（１０、２０）を恒久的に保存し、管理するステップと、
保存された地図が存在するロボット使用領域内でタスクを実行するために前記自律移動ロボットが命令を受け取るステップと、
前記タスクを実行するのに必要な地図を決定し、決定された前記地図内の前記自律移動ロボットの位置を決定するステップと、
決定された前記地図の新しい作業コピーを作成するステップと、
前記タスクの実行の際に前記ロボット使用領域の前記自律移動ロボットのナビゲーションのために作業コピーを使用するステップと、
を有し、
前記ナビゲーションは、センサによって環境および前記自律移動ロボットの運動状態に関する情報を収集し、収集された前記情報に基づいて前記自律移動ロボットの位置を継続的に決定し、環境の変化を検出した際に地図の作業コピーを更新することを含み、
恒久的に保存された地図は変更せずに保持される自律移動ロボットを制御する方法。
【請求項３１】
少なくとも１つの恒久的に保存された前記地図は、学習走行において、及び／又は第１のタスクの実行の際に、前記自律移動ロボットが自身で決定し、及び／又は、
少なくとも１つの恒久的に保存された前記地図は、ユーザ及び／又は別のロボットによって前記自律移動ロボットに提供される請求項３０に記載の方法。
【請求項３２】
少なくとも１つの恒久的に保存された前記地図は、前記自律移動ロボットの環境に関する情報を含み、
前記自律移動ロボットの環境に関する前記情報は、ＳＬＡＭによって決定された状態を表す請求項３０又は請求項３１に記載の方法。
【請求項３３】
恒久的に保存された前記地図は、ユーザ入力に基づく情報を含む請求項３０乃至請求項３２のいずれか一項に記載の方法。
【請求項３４】
新しい作業コピーが作成される前に、地図の古い作業コピーが削除される請求項３０乃至請求項３３のいずれか一項に記載の方法。
【請求項３５】
前記タスクの実行に必要な地図の決定は、前記タスクが実行されるべきロボット使用領域に関連する地図がユーザによって予め定められることによって実行される請求項３０乃至請求項３４のいずれか一項に記載の方法。
【請求項３６】
前記タスクの実行に必要な地図の決定と、決定された前記地図内の前記自律移動ロボットの位置の決定は、前記自律移動ロボットが恒久的に保存された前記地図のうちの少なくとも１つにおいてグローバル自己位置特定を実行することによって実行される請求項３０乃至請求項３４のいずれか一項に記載の方法。
【請求項３７】
前記グローバル自己位置特定が失敗した場合、ユーザに通知され、及び／又は前記タスクは実行されない請求項３６に記載の方法。
【請求項３８】
好ましい開始位置が地図に記憶されており、好ましい前記開始位置は、グローバル自己位置特定を加速するために使用される請求項３６又は請求項３７に記載の方法。
【請求項３９】
前記グローバル自己位置特定が成功した後、前記地図の作業用コピーと恒久的に保存された前記地図との整合性についてチェックされ、整合していない場合には、以前に実行された前記グローバル自己位置特定が誤りであったと判断される請求項３６乃至請求項３８のいずれか一項に記載の方法。
【請求項４０】
誤った自己位置特定が検出された場合に、前記自律移動ロボットは動作を停止して開始点に戻り、及び／又は、
誤った自己位置特定が検出された場合に、前記自律移動ロボットは、そのことをユーザに知らせ、さらなる指示を求め、及び／又は、
誤った自己位置特定が検出された場合に、前記自律移動ロボットは、以前に実行された前記グローバル自己位置特定を考慮に入れて、新たにグローバル自己位置特定を行う請求項３９に記載の方法。
【請求項４１】
前記自律移動ロボットは、前記タスクの実行を終了すると、前記タスクの実行中に更新された前記作業コピーと、元の恒久的に保存された前記地図との比較をする請求項３０乃至請求項４０のいずれか一項に記載の方法。
【請求項４２】
前記比較の間に、作業コピーと恒久的に保存された前記地図との間で検出された差異が評価され、前記評価に応じて、
無視され削除されるか、恒久的に保存されるか、または、
恒久的に保存されている前記地図の少なくとも一部が前記作業コピーに基づいて更新される請求項４１に記載の方法。
【請求項４３】
前記作業コピーの少なくとも一部に関するデータは、後に使用するために恒久的に保存された地図に追加して恒久的に保存され、
追加して保存された前記データが、将来作成される作業コピーと恒久的に保存された前記地図との間の相違を評価する際に考慮される請求項４１又は請求項４２に記載の方法。
【請求項４４】
前記自律移動ロボットは、恒久的に保存された前記地図の前記作業用コピーを作成する前に、恒久的に保存された地図に割り当てられたロボット使用領域内に前記自律移動ロボットがいることの妥当性をチェックする請求項３０乃至請求項４３のいずれか一項に記載の方法。
【請求項４５】
前記妥当性のチェック中に、前記自律移動ロボットが以前の使用中にすでに前記ロボット使用領域内にあり、それ以降、移動が検出されていないかがチェックされる請求項４４に記載の方法。
【請求項４６】
前記ロボット使用領域の地図の作業コピーがすでに存在する場合、既存の作業コピーが削除されて新しい作業コピーが作成されるか、又は、既存の作業コピーが維持されて前記タスクの実行に使用されるかがチェックされる請求項３０乃至請求項４５のいずれか一項に記載の方法。
【請求項４７】
前記タスクが古い作業コピー内で完全に実行できない場合は、新しい作業コピーが作成される請求項４６に記載の方法。
【請求項４８】
前記タスクがロボット使用領域の全体をカバーするときに新しい作業コピーが作成される請求項４７に記載の方法。
【請求項４９】
前記タスクが既存の作業コピー中で完全に実行できる場合は、既存の前記作業コピーが使用される請求項４６乃至請求項４８のいずれか一項に記載の方法。
【請求項５０】
既存の作業コピーの作成、及び／又は、最後の使用から所定の最大時間が経過した場合に新しい作業コピーが作成される請求項４６乃至請求項４９のいずれか一項に記載の方法。
【請求項５１】
決定された恒久的に保存された地図の作業コピーを作成することには、前記自律移動ロボットがナビゲートするために必要なロボット使用領域内の環境についての情報をコピーすることを含む請求項３０乃至請求項５０のいずれか一項に記載の方法。
【請求項５２】
前記自律移動ロボットがナビゲートするために必要なロボット使用領域内の環境についての前記情報は、少なくともＳＬＡＭによって決定された情報である請求項５１に記載の方法。
【請求項５３】
少なくとも１つのロボット使用領域の少なくとも１つの恒久的に格納された地図における自律移動ロボットの自己位置特定のための方法であって、前記自律移動ロボットは、前記自律移動ロボットが少なくとも１つの前記地図にあるか、及び／又は、少なくとも１つの前記地図のどこにあるかを決定する方法であって、
少なくとも１つの恒久的に保存された前記地図と、前記自律移動ロボットによって決定された、関連するロボット使用領域の実際の環境との間の差異を決定するステップと、
前記差異を評価して、前記差異が可動物体によるものかどうかを決定するステップと、
前記評価に基づいて、少なくとも１つの恒久的に記憶された前記地図内の、自己位置特定を破棄するか、又は、前記自律移動ロボットの位置を決定するステップと、
を有する自律移動ロボットの自己位置特定の方法。
【請求項５４】
前記可動物体はドアであり、恒久的に保存された前記地図と、前記自律移動ロボットによって決定された実際の環境との間の違いは、前記ドアがロックされ、前記ドアの後ろにある部屋に到達できないことである請求項５３に記載の方法。
【請求項５５】
前記可動物体は部屋の備品であり、恒久的に保存された前記地図と、前記自律移動ロボットによって決定された実際の環境との間の違いは、前記備品がその地図化された位置から移動及び／又は回転し、あるいはもはやロボット使用領域に存在しないか、前記ロボット使用領域の新たな位置に存在することである請求項５３又は請求項５４に記載の方法。
【請求項５６】
決定された前記差異が可動物体によるものであるかどうかが明らかでないことを前記評価が示す場合、又は前記自律移動ロボットが地図に割り当てられていないロボット使用領域内にある場合にユーザに要求が行われる請求項５３乃至請求項５５のいずれか一項に記載の方法。
【請求項５７】
少なくとも１つのロボット使用領域の少なくとも１つの恒久的に格納された地図における自律移動ロボットの自己位置特定の方法であって、前記自律移動ロボットは、前記自律移動ロボットが少なくとも１つの前記地図にあるか、及び／又は、少なくとも１つの前記地図のどこにあるかを決定する方法であって、
１つまたは複数の地図内で類似及び／又は同一の領域を決定するステップと、
前記自律移動ロボットがそのような類似領域にいることを決定するステップと、
前記自律移動ロボットが明白に相違する特徴を認識するまで前記自律移動ロボットがどの地図のどの位置にあるかという最終的な決定を待つステップと、
を有し、
前記自律移動ロボットは、前記自律移動ロボットが前記類似領域内の位置を決定すると、前記自律移動ロボットに割り当てられたタスクを実行し始める自律移動ロボットの自己位置特定の方法。
【請求項５８】
前記自律移動ロボットは、少なくとも１つの地図に基づいて同じおよび／または類似の領域を、相違する特徴について分析し、前記自律移動ロボットが、どの地図のどの位置にあるかを最終的に決定するために前記相違する特徴を検出しようと試みる請求項５７に記載の方法。
【請求項５９】
同じ及び／又は類似の領域の少なくとも１つに記録されている、前記自律移動ロボットが走行すべきではない閉鎖領域の場合には、前記自律移動ロボットが、どの地図のどの位置にあるかの最終的な決定がなされるまで、前記閉鎖領域は、考慮される請求項５８に記載の方法。
【請求項６０】
少なくとも１つのプロセッサと、少なくとも１つのメモリとを有し、前記メモリには、前記プロセッサ上で実行されたときに前記自律移動ロボットに請求項３０乃至請求項５９のいずれか一項に記載の方法のうちの１つを実行させる命令が保存されている自律移動ロボットのための制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書に記載された実施形態は、例えば、一つ以上の地図によってナビゲートし、表面を処理する（床面を浄化する）ための、または領域の監視および検査のためのロボットなどの自律移動サービスロボットに関する。
【背景技術】
【０００２】
近年、自律移動ロボット、特にサービスロボットは、例えば清掃または住居の監視のために、家庭部門でますます使用されている。その際に、ＳＬＡＭ（Ｓｉｍｕｌｔａｎｅｏｕｓ  Ｌｏｃａｌｉｚａｔｉｏｎ  ａｎｄ  Ｍａｐｐｉｎｇ：同時位置特定およびマッピング）アルゴリズムを使用してターゲットのナビゲーションをするため環境の地図を生成するシステムがますます使用されている（例えば、非特許文献１参照）。それによって、地図ならびに地図内のロボットの位置は、センサ（例えば、レーザレンジスキャナ、カメラ、タッチセンサ、走行距離計、加速度センサなど）によって検出される。多くの場合、一時的な地図のみが作成される。すなわち、地図は新しい操作が実行されるたびに再作成される。
【０００３】
一時的な地図とは異なり、永続的に保存された地図を使用すると、地図を作成するために環境を繰り返し探索する必要がなくなり、作業を実行するための最適化された戦略が期待できるためロボットの効率的な使用が可能である。戦略を探り出するために、追加の環境に特有な情報を識別して地図内に格納することで、この情報を後続の操作で再利用することができる。例えば、ロボットは特に汚れた領域を検出し、その後の作業でこれらの領域をより頻繁に、又は、より集中的に清掃することができる。さらに、集中的に処理される領域や使用されない領域などのユーザ固有の情報は、地図に永続的に保存できる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】ＢＨ  Ｄｕｒｒａｎｔ−Ｗｈｙｔｅ  ａｎｄ  Ｔ．  Ｂａｉｌｅｙ著、「Ｓｉｍｕｌｔａｎｅｏｕｓ  Ｌｏｃａｌｉｚａｔｉｏｎ  ａｎｄ  Ｍａｐｐｉｎｇ  （ＳＬＡＭ）：  Ｐａｒｔ  Ｉ  Ｔｈｅ  Ｅｓｓｅｎｔｉａｌ  Ａｌｇｏｒｉｔｈｍｓ」、ＩＥＥＥ  Ｒｏｂｏｔｉｃｓ  ａｎｄ  Ａｕｔｏｍａｔｉｏｎ  Ｍａｇａｚｉｎｅ、第１３巻、第２号、９９〜１１０頁、２００６年６月
【０００５】
【非特許文献２】「Ａｃｔｉｖｅ  Ｇｌｏｂａｌ  Ｌｏｃａｌｉｚａｔｉｏｎ  ｆｏｒ  ａ  Ｍｏｂｉｌｅ  Ｒｏｂｏｔ  ｕｓｉｎｇ  Ｍｕｌｔｉｐｌｅ  Ｈｙｐｏｔｈｅｓｉｓ  Ｔｒａｃｋｉｎｇ」、ＩＥＥＥ  Ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  Ｒｏｂｏｔｉｃｓ  ａｎｄ  Ａｕｔｏｍａｔｉｏｎ，  ２００１
【発明の概要】
【発明が解決しようとする課題】
【０００６】
永続的に保存される地図の利点に対して、これまで個人の家庭での広範な使用を妨げる様々な問題がある。例えば、１つの問題は、ロボットが異なる環境（例えば、家の異なる階）でユーザによって使用されることである。したがって、ロボットは複数の地図を処理し、自身が地図のうちの１つに存在するかどうか、そして場合によっては、現在どの地図に存在しているかを確実に判断できなければならない。そのような能力は、グローバル自己位置特定と呼ばれている（非特許文献２を参照）。しかしながら、グローバル自己位置特定のための従来の方法は時間がかかり、それはロボットによる実際の動作の実行を遅らせることになる。
【０００７】
別の問題は、例えば、住居内では、ロボットの環境、したがって関連する地図が絶えず変化することである。これらの変化は、とりわけ、例えば、椅子、開閉式ドアのような日用品、又は、新規または取り外した家具のような設備において引き起こされる。したがって、本発明の根底にある課題は、とりわけ、変化する環境において永続的に記憶された地図の堅牢な取り扱いを確実にし、地図内のロボットの自己位置特定を改善することである。
【課題を解決するための手段】
【０００８】
上記目的は、請求項１、６、２４、２８、３０、５３または５７に記載の方法および請求項２９または６０に記載の制御装置によって達成される。様々な実施形態およびさらなる発展は、従属請求項の主題である。
【０００９】
自律移動ロボットを制御する方法が記載される。１つの実施形態によれば、この方法は、ロボット使用領域に割り当てられた少なくとも１つの地図を恒久的に保存し、管理するステップと、保存された地図が存在するロボット使用領域内でタスクを実行するために前記自律移動ロボットが命令を受け取るステップとを含む。この方法は、さらに、前記タスクを実行するのに必要な地図を決定し、決定された前記地図内の前記自律移動ロボットの位置を決定するステップ（グローバル自己位置特定）を有する。さらに、決定された前記地図の新しい作業コピーが作成され、前記タスクの実行の際に前記ロボット使用領域の前記自律移動ロボットのナビゲーションのために作業コピーが使用される。前記ナビゲーションは、センサによって環境および前記自律移動ロボットの運動状態に関する情報を収集し、収集された前記情報に基づいて前記自律移動ロボットの位置を継続的に決定し、環境の変化を検出すると地図の作業コピーを更新することを含む（例えば、ＳＬＡＭによる）。恒久的に保存された地図は変更せずに保持される。
【００１０】
さらに、少なくとも１つのロボット使用領域の少なくとも１つの恒久的に格納された地図における自律移動ロボットの自己位置特定のための方法が記載され、前記自律移動ロボットは、前記自律移動ロボットが少なくとも１つの前記地図にあるか、及び／又は、少なくとも１つの前記地図のどこにあるかを決定する。１つの実施形態によれば、この方法は、少なくとも１つの恒久的に保存された前記地図と、前記自律移動ロボットによって決定された、ロボット使用領域の実際の環境との間の差異を決定するステップを有する。前記差異を評価して、前記差異が可動物体によるものかどうかが確認される。前記評価に基づいて、前記自律移動ロボットは、少なくとも１つの恒久的に記憶された前記地図内においての前記自律移動ロボットの位置を決定するか、又は、自己位置特定を破棄する。
【００１１】
１つの実施形態によれば、自己位置特定のための方法は、１つまたは複数の地図内で類似及び／又は同一の領域を識別するステップを有する。この方法は、前記自律移動ロボットがそのような類似領域にいることを決定するステップを有する。前記自律移動ロボットは、前記自律移動ロボットが明白に相違する特徴を認識するまで前記自律移動ロボットがどの地図のどの位置にいるかという最終的な決定を待つ。前記自律移動ロボットは、前記自律移動ロボットが前記類似領域内の位置を決定すると、前記自律移動ロボットに割り当てられたタスクを実行し始める。
【００１２】
さらに、自律移動ロボットを制御する方法が記載される。１つの実施形態によれば、この方法は、ロボット使用領域に割り当てられた少なくとも１つの地図を保存し、管理するステップと、前記自律移動ロボットがロボット使用領域を通過するようにナビゲートするステップであって、その際に地図内の前記自律移動ロボットの位置が連続的に決定されるステップとを有する。この方法は、さらに、前記自律移動ロボットが自身の動作を制御することができない動きをする移動事象を検出するステップを有する。前記移動事象の間、前記自律移動ロボットは、センサを用いて、前記自律移動ロボットの位置及び／又は運動状態についての情報を検出し、検出された情報に基づいて前記自律移動ロボットの位置の推定値を算出する。
【００１３】
１つの実施形態によれば、自律移動ロボットを制御する方法は、異なる地理的高さを有する２つ以上のロボット使用領域に割り当てられた地図を保存し、管理するステップを有する。前記自律移動ロボットがロボット使用領域を通過するようにナビゲートし、その際に地図内の前記自律移動ロボットの位置を連続的に決定する。この方法は、さらに、気圧を測定し、測定した前記気圧を評価するステップと、前記気圧の変化に基づいて、前記自律移動ロボットが現在のロボット使用領域を離れたこと決定するステップとを有する。
【００１４】
１つの実施形態によれば、自律移動ロボットを制御する方法は、異なる地理的高さを有する２つ以上のロボット使用領域に割り当てられた地図を保存するステップを有する。前記自律移動ロボットは、気圧を測定し、測定した前記気圧を評価する。次に、前記自律移動ロボットは、測定された前記気圧に応じてロボット使用領域の地図を選択し、これを前記自律移動ロボットのナビゲーションのために使用する。
【００１５】
１つの実施形態によれば、自律移動ロボットを制御する方法は、少なくとも１つのロボット使用領域に割り当てられた地図を保存し、管理するステップを有する。前記自律移動ロボットによってタスクを実行するための命令を受け取るステップであって、前記タスクは、第１のタスク群又は第２のタスク群に属し得るステップを有する。前記タスクを実行するために前記ロボット使用領域を通過するように前記自律移動ロボットがナビゲートする。前記第１のタスク群からのタスクには、地図ベースの情報が関連付けられており、前記自律移動ロボットがタスクの実行の際に、前記地図ベースの情報が関連付けられた、保存された前記地図に基づいてナビゲートする。前記第２のタスク群のタスクは、地図ベースの情報が関連付けられていない。
【００１６】
自律移動ロボットを制御する方法が記載される。１つの実施形態によれば、この方法は、ロボット使用領域に割り当てられた少なくとも１つの地図を恒久的に保存し、管理するステップと、保存された地図が存在するロボット使用領域内でタスクを実行するために前記自律移動ロボットが命令を受け取るステップとを含む。この方法は、さらに、前記タスクを実行するのに必要な地図を決定し、決定された前記地図内の前記自律移動ロボットの位置を決定するステップ（グローバル自己位置特定）を有する。さらに、決定された前記地図の新しい作業コピーが作成され、前記タスクの実行の際に前記ロボット使用領域の前記自律移動ロボットのナビゲーションのために作業コピーが使用される。前記ナビゲーションは、センサによって環境および前記自律移動ロボットの運動状態に関する情報を収集し、収集された前記情報に基づいて前記自律移動ロボットの位置を継続的に決定し、環境の変化を検出すると地図の作業コピーを更新することを含む（例えば、ＳＬＡＭによる）。恒久的に保存された地図は変更せずに保持される。
【００１７】
さらに、少なくとも１つのロボット使用領域の少なくとも１つの恒久的に格納された地図における自律移動ロボットの自己位置特定のための方法が記載され、前記自律移動ロボットは、前記自律移動ロボットが少なくとも１つの前記地図にあるか、及び／又は、少なくとも１つの前記地図のどこにあるかを決定する。１つの実施形態によれば、この方法は、少なくとも１つの恒久的に保存された前記地図と、前記自律移動ロボットによって決定された、ロボット使用領域の実際の環境との間の差異を決定するステップを有する。前記差異を評価して、前記差異が可動物体によるものかどうかが確認される。前記評価に基づいて、前記自律移動ロボットは、少なくとも１つの恒久的に記憶された前記地図内においての前記自律移動ロボットの位置を決定するか、又は、自己位置特定を破棄する。
【００１８】
１つの実施形態によれば、自己位置特定のための方法は、１つまたは複数の地図内で類似及び／又は同一の領域を識別するステップを有する。この方法は、前記自律移動ロボットがそのような類似領域にいることを決定するステップを有する。前記自律移動ロボットは、前記自律移動ロボットが明白に相違する特徴を認識するまで前記自律移動ロボットがどの地図のどの位置にいるかという最終的な決定を待つ。前記自律移動ロボットは、前記自律移動ロボットが前記類似領域内の位置を決定すると、前記自律移動ロボットに割り当てられたタスクを実行し始める。
【００１９】
さらに、自律移動ロボットを制御する方法が記載される。１つの実施形態によれば、この方法は、ロボット使用領域に割り当てられた少なくとも１つの地図を保存し、管理するステップと、前記自律移動ロボットがロボット使用領域を通過するようにナビゲートするステップであって、その際に地図内の前記自律移動ロボットの位置が連続的に決定されるステップとを有する。この方法は、さらに、前記自律移動ロボットが自身の動作を制御することができない動きをする移動事象を検出するステップを有する。前記移動事象の間、前記自律移動ロボットは、センサを用いて、前記自律移動ロボットの位置及び／又は運動状態についての情報を検出し、検出された情報に基づいて前記自律移動ロボットの位置の推定値を算出する。
【００２０】
１つの実施形態によれば、自律移動ロボットを制御する方法は、異なる地理的高さを有する２つ以上のロボット使用領域に割り当てられた地図を保存し、管理するステップを有する。前記自律移動ロボットがロボット使用領域を通過するようにナビゲートし、その際に地図内の前記自律移動ロボットの位置を連続的に決定する。この方法は、さらに、気圧を測定し、測定した前記気圧を評価するステップと、前記気圧の変化に基づいて、前記自律移動ロボットが現在のロボット使用領域を離れたこと決定するステップとを有する。
【００２１】
１つの実施形態によれば、自律移動ロボットを制御する方法は、異なる地理的高さを有する２つ以上のロボット使用領域に割り当てられた地図を保存するステップを有する。前記自律移動ロボットは、気圧を測定し、測定した前記気圧を評価する。次に、前記自律移動ロボットは、測定された前記気圧に応じてロボット使用領域の地図を選択し、これを前記自律移動ロボットのナビゲーションのために使用する。
【００２２】
１つの実施形態によれば、自律移動ロボットを制御する方法は、少なくとも１つのロボット使用領域に割り当てられた地図を保存し、管理するステップを有する。前記自律移動ロボットによってタスクを実行するための命令を受け取るステップであって、前記タスクは、第１のタスク群又は第２のタスク群に属し得るステップを有する。前記タスクを実行するために前記ロボット使用領域を通過するように前記自律移動ロボットがナビゲートする。前記第１のタスク群からのタスクには、地図ベースの情報が関連付けられており、前記自律移動ロボットがタスクの実行の際に、前記地図ベースの情報が関連付けられた、保存された前記地図に基づいてナビゲートする。前記第２のタスク群のタスクは、地図ベースの情報が関連付けられていない。
【００２３】
さらに、自律移動ロボットを制御する制御装置及びそのような制御装置を有するロボットが記載される。１つの実施形態によれば、ロボット又はロボットのための制御装置は、少なくとも１つのプロセッサと、少なくとも１つのメモリとを有し、前記メモリには、前記プロセッサ上で実行されたときに前記自律移動ロボットにここに記載された方法のいずれか１つに記載の方法のうちの１つを実行させるソフトウェア命令が保存されている。最後に、プロセッサによって実行されたときに本明細書に記載された方法を実行することができるソフトウェア命令を有するデータメディアに格納されたコンピュータプログラム製品が記載される。
【発明の効果】
【００２４】
変化する環境において永続的に記憶された地図の堅牢な取り扱いが確実になり、地図内のロボットの自己位置特定が改善される。
【図面の簡単な説明】
【００２５】
【図１】自律移動ロボットの構成を例示するブロック図である。
【図２】２つの異なる使用領域におけるロボットの使用の概略例を示す図である。
【図３】例として、図２に示す２つのロボット使用領域の屋根を取った状態で示す２つの地図を示す図である。
【図４】恒久的に保存されている地図と、ドアを閉じることによる地図の環境の変更の例を示す図である。
【図５】恒久的に保存された地図内の可動物体の検出の例を示す図である。
【図６】１つ又は２つの異なるロボット使用領域の類似の領域を表す部分的地図の生成の例を示す図である。
【発明を実施するための形態】
【００２６】
本発明は、図面に示される実施形態に基づいて、以下に、より詳細に説明される。図は必ずしも一定の縮尺ではなく、本発明は提示された態様に限定されない。むしろ、本発明の根底にある原理を表すことに重点が置かれている。
【００２７】
図１は、自律移動ロボット１００の構成例を示すブロック図である。ロボット１００は、世帯の清掃または監視、あるいは世帯内での物品の輸送などの１つまたは複数の作業をサービスロボットとして自動的に実行することができる。以下のアイデアは、清掃ロボットの使用のための例として記載されている。しかしながら、これらのアイデアは清掃ロボットに限定されず、自律移動作業機械が地図を使用してそれが自動的に移動する（またはナビゲートする）区域内でタスクを実行するすべての分野に適用される。
【００２８】
一般に、ロボット１００によって使用可能な（電子）地図は、ロボットの使用領域およびこの使用領域におけるロボットに関連する環境に関する位置関連情報を格納するためのデータ構造である。地図に格納することができる位置関連情報の１つの種類は、例えば、ロボットの使用領域における障害物（例えば、壁、閉じたドア、家具、ロボット基地局、および他の移動可能および不動の物体など）の位置に関する情報である。障害物の位置は通常、座標によって定義され、ＳＬＡＭメソッドを用いてロボットによって決定される（距離及び位相地図）。別の種類の位置関連情報は、例えば、どの領域部分が処理されたか、特にどの領域部分が清掃されたか、どの位置にロボットがその活動中に通過したか等の情報である。他の種類の位置関連情報は、例えば、使用領域の複数の部屋への分割である。この分割は、ロボット１００によって自動的に実行することができ、または手動で分割を行うか、または自動で行われた分割を手動で修正するユーザの助けを借りてもよい。また、部屋の名前（例えば、「廊下」、「台所」、「居間」、「寝室」など）を地図に格納することができる。別の種類の位置関連情報は、個々の部屋を小区域（例えば「食堂」、「玄関」など）に細分化し、その小区域に様々な属性（例えば「進入禁止」、「運転が困難」、「重度に汚染されている」、「床材の種類」など）、またはスケジュール（例えば、清掃間隔）を割り当てることができる。異なるロボットの使用領域（例えば、家の異なるフロア）に対して、異なる地図を格納することができる。
【００２９】
図１に示す例によれば、ロボット１００は様々なモジュールを有する。この場合、モジュールは、独立型ハードウェア、特定のロボット使用領域において所望のタスクを実行するロボットを制御するためのソフトウェアのコンポーネント、または両方の組み合わせ（例えば、接続された周辺コンポーネントを有する専用ハードウェアおよび適切なソフトウェア／ファームウェア）であり得る。ロボット１００の行動を担当するソフトウェアは、（対応するプロセッサおよびメモリ要素によって）ロボット１００の制御モジュール１５０内で実行されてもよく、または少なくとも部分的に、ホームネットワークまたはインターネット経由（クラウド）でアクセス可能な外部コンピュータ（例えばパーソナルコンピュータ、サーバなど）に移転してもよい。特定のプロセスステップまたは部分ステップがロボットによって実行されるとき、全プロセスステップまたは部分ステップは必ずしもロボット内のハードウェアおよびソフトウェアによってのみ行われる必要はない。ロボット１００（通常はロボットの制御モジュール１５０）が方法のステップまたは部分ステップの実行を指示し、外部のハードウェアおよび／またはソフトウェアの方法のステップまたは部分ステップによって実際の実行が（例えば外部コンピュータまたはデータ接続を介してロボットと通信するサーバから）行われることも可能である。また、ロボットの「知能」は、ロボットの様々なモジュール間で分散させることもでき、必ずしも中央制御モジュールに集中させる必要はない。特定の方法のステップまたは部分ステップがロボットによって実行される場合、方法のステップまたは部分ステップは、ロボットのいくつかのモジュール（例えば、制御モジュール１５０）、が外部のハードウェアおよびソフトウェアとともに、及び／又は、それらの助けによって実行され得る。
【００３０】
この例では、移動式自律ロボット１００は駆動モジュール１０１を有し、駆動モジュール１０１は、例えば電気モーター、変速機および車輪を有することができる。駆動モジュール１０１を用いて、ロボット１００は（理論的には）その使用領域のあらゆる点を通過することができる。ロボット１００は、マンマシンインターフェイス（ヒューマンマシンインターフェイスＨＭＩ）２００への通信リンク３００を確立するための通信モジュール１０３をさらに含み得る。通信リンク３００は、（例えば、ブルートゥース（登録商標）などの）直接無線接続、（例えば、ＷｉＦｉまたはＺｉｇ−Ｂｅｅなどの）ローカル無線ネットワーク接続、または（例えば、クラウドサービスへの）インターネット接続であり得る。マンマシンインターフェイス２００の例は、タブレットＰＣ、スマートフォン、スマートウォッチ、コンピュータまたはスマートテレビである。場合によっては、マンマシンインターフェイス２００はまた、ロボットに直接統合されてもよく、キー、ジェスチャ、および／または音声入力を介して操作されてもよい。前述の外部ハードウェアおよびソフトウェアはまた、マンマシンインターフェイス２００内に少なくとも部分的に配置されてもよい。
【００３１】
ロボット１００は、床面を清掃するための清掃モジュール（ブラシ、掃除機）、または物体を掴んで搬送するための把持アームなどの作業モジュール１０２をさらに含むことができる。遠隔操作ロボットまたは監視ロボットなどのいくつかの場合では、作業モジュール１０２は必要ではない。したがって、遠隔操作ロボットは、空間的に遠く離れた複数の人物間の通信を可能にするために、例えばマイクロフォン、カメラおよびスクリーンからなるマルチメディアユニットを有する、より複雑な通信モジュール１０３を有する。別の例は、センサモジュール１３０を使用して検査走行時に特定のイベント（例えば、火災、光、無許可の人など）を検出し、それに応じて例えば検査ステーションに通知することができる監視ロボットである。
【００３２】
自律的にタスクを実行することを可能にするために、本実施形態におけるロボット１００は、ナビゲーションモジュール１１０を有し、このナビゲーションモジュール１１０により、ロボット１００は、センサモジュール１３０を用いて検出することができる（例えば家具、ドア枠、部屋の隅など）のランドマークのような、（ロボットがそれにより方向付けができる特徴である）ナビ−ゲーション特徴に基づいてロボット１００の環境で自身を方向付けし、ナビゲートすることができる。ナビゲーションモジュール１１０は、例えば、障害物回避戦略および／またはＳＬＡＭアルゴリズムを用いて、および／またはロボットエリアの１つまたは複数の地図を用いて動作することができる。ロボット使用領域の地図（ｎ）は、作業中にロボットによって再作成することができ、または作業の開始時に既存の地図を使用することができる。既存の地図は、前回の使用中（例えば探査走行中）にロボット自体によって作成されたものでもよく、または別のロボットおよび／または人間によって提供されてもよく、たとえばメモリモジュール１２０に恒久的に格納される。メモリモジュール１２０は、不揮発性メモリ（例えば、ソリッドステートディスク、ＳＳＤ）であることが好ましい。あるいは、永久的に記憶されるべきロボット使用領域の地図はまた、ロボットの外部、例えばロボットのユーザの家庭内の（例えばタブレットＰＣ、ホームサーバなどの）コンピュータまたはインターネットを介してアクセス可能な（クラウドサーバなどの）コンピュータに記憶することができる。
【００３３】
センサモジュール１３０は、例えば、放射された信号の三角測量または通過時間測定によって機能する、光学および／または音響センサ（三角測量センサ、飛行時間（Ｔｉｍｅ−Ｏｆ−Ｆｌｉｇｈｔ）型カメラ、レーザスキャナ、超音波センサ）など、環境内の物体までの距離を測定するためのセンサを有し得る。適切なセンサの他の典型的な例は、カメラ、触覚センサ、加速度センサ、角速度センサ、走行距離計および／または地上高さセンサである。
【００３４】
例えば、多数のユーザの介入なしに作業を可能にするために、ロボットは基地局１９０を有し、タスクの完了時にロボットは基地局１９０へ自動的に戻る。この基地局１９０で、ロボットは、例えば、ロボットのバッテリーを充電すること、および／または（掃除ロボットの場合には）ゴミを処理することができる。ロボットは中央制御ユニットを有することができ、この中央制御ユニットは制御モジュール１５０、および任意選択的にさらに上述のモジュールを含むことができる。一例では、この制御ユニットは、例えば、制御モジュール１５０、ナビゲーションモジュール１１０、およびセンサモジュール１３０の少なくとも一部を有する。
【００３５】
図２は、家の２つの階Ｆ１、Ｆ２で使用される自律移動サービスロボット１００の可能な使用シナリオを示している。特に、２つのロボット使用領域Ｆ１、Ｆ２は、ロボットが一方の使用領域から他方の使用領域に自身で移動できないように互いに空間的に分離されている。第１のロボット使用領域Ｆ１から第２のロボット使用領域Ｆ２への変換は、例えば人間の使用者によって手動で、またはエレベータなどのさらなる技術的支援を用いて行われる。ロボット使用領域は必ずしも家の階に対応する必要はないことに留意されたい。したがって、住居内の個々の部屋が、ロボットが外部からの助けなしには克服できない高い敷居またはステップで区切られている場合も同様である。ロボット使用領域はまた、（例えば、町当局の建物、週末の家など）２つの異なる家に位置するなど、地理的に異なる位置に配置されてもよい。
【００３６】
現在市販されているシステムでは、ロボット１００は、使用の度に新しい一時的な地図を生成し、さまざまなロボット使用領域で使用される。しかしながら、これはロボットの非効率性、低い柔軟性、および「知能」および学習能力の欠如に結び付けられる。これらの不利益を克服するために、ロボット１００によって作成された地図は永久的に記憶され、引き続くロボットの使用で再利用されることができる。これは、とりわけ、例えば、以下の利点がある。
・以下の点に基づいてタスクの迅速な完了とその結果として、特にエネルギー消費量の削減による効率の向上：
−地図作成の目的のための環境の再調査の省略
−既知のマップに基づいて効率的な作業経過を事前に計画する可能性。
・地図を用いて、特に以下の点による、改善され、単純化されたユーザインタラクション：
−部屋や小区域（例：「居間」、「寝室」、「食堂」）を認識し、命名すること、
−例えば、特定の部屋などの事前定義可能な場所に関する目的にかなった作業指示（例：「居間を清掃せよ」）、
−ロボットが自身では進入が禁止される危険区域（「立ち入り禁止区域」）の登録、
−場所固有の清掃方法の登録（例：「１日に２回食堂を清掃せよ」、「高い吸引力で廊下を清掃せよ」）。
・ロボットの学習能力：たとえば、ロボットは汚れた領域にすばやく気づき、より頻繁に清掃することができる。さらに、ロボットは、自身が動けなくなった領域内の場所を記憶することができ、将来、ロボットはこれらの場所を回避するかまたは慎重に走行することができる。
【００３７】
このため、ロボットが１つ以上の恒久的に保存された地図を確実に処理するには、少なくとも次の機能が必要です。
１．新しく地図を作成すること、
２．恒久的に保存されている地図にあるか、もしあれば、恒久的に保存されている地図のどこにあるかをロボットが決定すること（グローバルローカライゼーション）、
３．地図を使用してナビゲートすること（地図内の自分の位置、つまり自己位置決定を実行すること）。
【００３８】
１番目と３番目の能力の両方に、ＳＬＡＭメソッドを使用できる。その際、ロボットはその動きと既知の地図データに基づいて絶えずその位置を決定する。地図内のロボットの位置は常に以前の既知の位置に基づいて決定されるので、これは「局所位置特定」または「位置追跡」と呼ばれる。したがって、この位置特定は、最後の既知の位置の「事前知識」に基づいている。ロボットが、まだ地図に記録されていない環境の新しいナビゲーション特徴（壁や家具などの障害物）をセンサで検出した場合は、それらを地図データに追加する。これにより、新しい地図を作成したり、既存の地図をさまざまな環境に適応させたりすることができる。これにより、例えば、人間や動物が移動したり、ドアが開閉されたり、椅子や乱雑に置かれた靴などの障害物が移動したりするさまざまな環境で、地図を使用した堅牢なナビゲーションが可能になる。
【００３９】
２番目の機能は、ロボットが移動または再起動され、ロボットが既存のマップのどこにあるかを確認する必要があるときに重要である。この課題は「ロストロボット問題」または「ドロップオフ問題」とも呼ばれる。（地図内のロボットの直前の位置を介して）事前知識なしで、または限られた事前知識をもってロボットの位置を決定するこの能力は、ＳＬＡＭ方法における局所的位置特定のなかでグローバル（自己）位置特定と呼ばれている（例えば、Ｄ．Ｆｉｌｌｉａｔ  ａｎｄ  Ｊ．Ｍｅｙｅｒ著：“Ｍａｐ−ｂａｓｅｄ  ｎａｖｉｇａｔｉｏｎ  ｉｎ  ｍｏｂｉｌｅ  ｒｏｂｏｔｓ：Ｉ．Ａ  ｒｅｖｉｅｗ  ｏｆ  ｌｏｃａｌｉｚａｔｉｏｎ  ｓｔｒａｔｅｇｉｅｓ”，Ｃｏｇｎｉｔｉｖｅ  Ｓｙｓｔｅｍｓ  Ｒｅｓｅａｒｃｈ，  ４（４）巻，  ２４３〜２８２ページ，２００３年１２月を参照）。
【００４０】
グローバル自己位置特定のための多数の方法が知られている。例えば、パターン認識（「パターン認識およびマッチング」）のアルゴリズムがここでは使用されている。自己位置特定の実行の際に、ロボットは、例えば、新しい地図の作成を開始し、自己位置特定に関連する地図の一致を検査する。例えば、抽象的な距離関数がこの目的のために定義され、それはロボットの様々な可能な位置に依存して地図の差を評価し、ここで値ゼロは完全な一致、従って成功した自己位特定を表している。代替の変形形態としては、ロボットが地図内で特定の位置にある可能性を決定し、確実に成功した自己位置特定を値１で表すことである。実際には、この理想的な値にはほとんど到達しないので、しきい値が使用され、しきい値を下回る場合は（または、しきい値を下回った場合は）自己位置特定の成功が推測される。
ロボットの環境と既存の地図との間の偏差が大きすぎる場合には、ロボットはその地図の使用領域にいないと判断される。
【００４１】
ロボット１００が恒久的に格納されたカードを用いて作業するための最良の基盤を得るために、ロボット１００は学習走行を実行することができる。学習走行の前に、ユーザは例えばロボット１００が、例えばＳＬＡＭ方法を用いて、その適用の可能な限り完全で問題のない地図を構築することができるように、ロボット使用領域を片付けて、すべてのドアを開くように促される。例えば、学習走行行中に、距離測定センサは、ロボット使用領域内の全ての障害物（例えば、壁、家具）の位置を測定するために使用される。代替的または追加的に、ロボットは、ロボット使用領域の走行可能領域の全体を巡回することができる。特に、学習走行は、清掃などの作業の遂行と組み合わせることができる。例えば、学習走行中および／または学習走行後に、ユーザは、例えば、現在存在している部屋の名前、または部屋の特定の場所を運転してはいけないという名前（「立ち入り禁止区域」の定義）のような自分の周囲に関する情報をロボットに提供することができる。
【００４２】
学習走行が完了した後、さらなる位置および地図ベースの情報は、ユーザの助けを借りてまたは自動的に決定され得る。したがって、ユーザに、マンマシンインターフェイス２００（例えば、タブレットコンピュータ、図１参照）上で地図が示され、ユーザは、地図を確認し、部屋を識別し、名前を付けることができる。表示された地図は、学習走行中に得られた単純化された後処理データを表すことができる。あるいは、地図の一貫性を自動的に確認して部屋の間取り図を作成できます。例えば、ロボットに取り付けられたカメラ（例えば、センサモジュール１３０の一部）を用いて、出入口を検出し、認識された出入口に基づいて自動化された間取り図を生成することができる。どちらの場合も、目的は地図を生成する際の誤りを検出して回避し、（後で）ユーザとの対話のために地図を評価することである。最後に、（学習実行が行われた）使用領域に対して、ＳＬＡＭ方法によって決定された状態と追加の特に個人化された情報（例えば部屋の細分化と命名）の両方を表す地図データが記憶される。これらのデータは、メトリックデータ（例：障害物の位置）、トポロジカルデータ（例：認識された部屋の位置関係）、およびセマンティックデータ（例：部屋の命名）のようにさまざまなレベルの抽象化を記述できる。代替の実施形態では、（例えば、すでに学習走行を実行している）他のロボットおよび／またはユーザによって、ロボット１００に地図を提供することもできる。
【００４３】
図３は、例として、ロボットが例えば図２の家の階Ｆ１およびＦ２で構築した２枚の地図１０、２０を示す図である。これらの地図１０、２０は、不揮発性のメモリモジュール１２０（図１参照）に恒久的に格納することができる。メモリモジュール１２０は、ロボット１００に搭載されたフラッシュメモリのようなメモリチップを含み得る。代替的に又は追加的に、地図はコンピュータ（例えばホームサーバ）又はクラウドサービス（インターネットサーバ）のような外部装置に格納されることも可能である。
ロボット１００がこのように記憶された地図１０、２０への容易かつ恒久的なアクセス（例えば無線ネットワーク接続を介してまたはインターネットを介して）を有する限り、この形式の非ローカル記憶も不揮発性メモリと見なされる。ここに記載の実施形態では、地図は、不揮発性メモリに格納されたときに、１つまたは任意の数のロボット使用領域で再使用するために永続的に格納される（例えば、電源を切ってロボット１００を再起動した後）。これとは対照的に、一時的な地図は通常、揮発性メモリ（例えば、ＲＡＭ、ランダムアクセスメモリ）内にのみ保持される。使用される記憶媒体に関係なく、一時的な地図は通常、後のロボット使用領域で繰り返し使用されない。
【００４４】
１つまたは複数の地図１０、２０が恒久的に保存された後、それらの地図に関連するタスク（例えば「掃除しなさい」）がロボットに与えられ得る。これは、例えば、マンマシンインターフェイス２００を介した直接的なユーザコマンド（例えば、ロボットに特定のタスクを実行するためのタスク指示）によって、定義可能な時間に定義可能なコマンドを与えるカレンダー機能によって、またはホームオートメーションシステム（「スマートホーム」）にプログラムされて行われるアクションによって行われる。このタスクの開始点は、例えば、ユーザが選択した場所またはロボットの基地局１９０である。
【００４５】
一般に、ロボットによって実行されるタスクおよびロボットに関連するジョブは、２つのグループに分けられる。第１のグループのタスク又はジョブは、地図ベースの情報（たとえば、いくつかの地図のうちの特定の１つ、地図の特定の領域（たとえば、特定の部屋）、または地図内の具体的な位置に関連付けられるジョブ又はタスクを含む。タスクまたはジョブの第２のグループには、地図ベースの情報にリンクされていないジョブまたはタスクが含まれる。ロボットが第１のグループのジョブ（地図ベースの情報とリンクされたタスク）を受け取ると、一実施形態によれば、ロボットは、地図ベースの情報が属する各地図を用いてナビゲートすることができる。この場合、地図に入力された属性（例えば、進入禁止区域、運転困難区域など）を考慮に入れることができる。ロボットが第２のグループ（地図に結び付けられていないタスク）のジョブを受け取った場合、タスクを実行する際に新しい地図を作成できる。この場合、既存の地図に登録された属性は考慮されない。代替として、地図が作られた使用領域内のロボットであるかどうかをチェックすることもでき、そうである場合、ナビゲーションの際に、地図が作れられた使用領域に割り当てられた地図を使用することができる。
【００４６】
ロボット１００がタスクの実行を開始する前に、以下の点が チェックされる。
（１）．地図が作成された使用領域Ｆ１、Ｆ２がタスクに結び付けられているかどうか
（２）．結び付けられている場合に、ロボット１００がタスクに結び付けられている使用領域Ｆ１、Ｆ２に位置しているかどうか
（３）．位置している場合に、タスクに結び付けられている使用領域Ｆ１、Ｆ２のどこにロボット１００が位置しているか（グローバル自己位置特定）。
【００４７】
たとえば、タスクは一般的なもので、すべての地図で、または地図化されていない使用領域でも実行でき得る。たとえば、「清掃せよ」は、現在の使用領域を清掃するコマンドである。この場合、上記点（２）、（３）は、保存されているすべての地図のグローバル自己位置特定に対応する。この際に、ロボットが、地図が作成されていない領域にいると判断された場合、ロボットはそのタスクの実行のために、新しい地図を作成する。このような一般的なタスクのもう１つの例は、特にユーザが地図内に定義した「立入禁止区域」に注意を払うことなく、走行可能な領域全体を清掃することである（「すべて清掃せよ」）。そのようなタスクを開始する前に、地図が作成された使用領域Ｆ１、Ｆ２内にロボットがあるか、ある場合にはどこにあるか、または新しいマップがいつでも作成できるかどうかをチェックすることができる。
【００４８】
ロボットによって実行されるタスクはまた、特定の場所にリンクされてもよい（例えば、「居間を掃除せよ」）。この場合、どの地図がこの目的のために使用されるべきかがチェックされる（例えば、居間が配置されている使用領域の地図）。単純な実施形態では、使用されるべき地図は各タスクに直接伝えられる。したがって、例えば、使用領域Ｆ１、Ｆ２の完全な清掃のために、それぞれタスク「Ｆ１階を清掃せよ」および「Ｆ２階を清掃せよ」に対するコマンドが与えられる。
【００４９】
上記点（２）では、最初に、ロボット１００が指定された適用領域にいることが妥当であるかどうかがチェックされる（妥当性チェック）。この妥当性チェックは、例えば、ロボットの最後の既知の位置（例えば、ロボットの最後の使用領域）に基づいて、およびロボットの移動を検出した結果に基づいて実行される。例えば、ロボットの最後の使用はＦ１階であるとする。その後、ロボットが変位を検出せず、その間に完全に電源がオフにされていなければ、その後の使用もＦ１回で行われるのが妥当である。ロボットが最後の使用から（例えば、センサによって）ユーザによって移動されたことをロボットが検出した場合、２階での使用も妥当である。ロボットが最後の使用の後に移動を検出しなかった場合、２階での使用は妥当ではない。そのような場合、例えば、ロボットはユーザにメッセージを送信することができる（例えば、「私の場所を確認してください」）。
【００５０】
続いて、使用されるべき少なくとも１つの地図内のロボットの位置が決定される（グローバル自己位置特定）。自己位置特定が失敗した場合、ロボットは（前のように）ユーザに知らせるか、または新しく作成された一時的な地図に基づいてタスクを実行することができる。
【００５１】
既知のシステムは、ロボットのナビゲーションのために（例えば、グローバル自己位置特定によって）生成され、保存された地図を直接使用し、その際に２つの異なるアプローチがある。すなわち、地図が変更されないままにされるか、または、地図が環境の変化に適応されるかである（保存された地図の更新）。どちらのアプローチにもそれぞれ長所と短所がある。したがって、信頼性の高いナビゲーションのための前提条件は、地図ができる限り正確にロボット使用領域を表すことである。したがって、基地局１９０の新しい位置または新しい障害物などの変更を地図に含めることが有利であり得る。しかしながら、これはまた、閉じられたドアのような一時的な変化が地図に含まれることをもたらし得る。これは、その後の使用において、ロボットがドアの後ろにある部屋への道を再び探求せずには計画できないということを意味する。最悪の場合、測定誤差や間違った使用領域での地図の使用などのロボットに関する問題が原因で、将来のロボット使用に地図が使用できなくなる可能性がある。
【００５２】
このような問題を回避するために、作業の割り当ての開始時に、恒久的に保存された地図１０、２０の少なくとも一部の作業のコピーを作成することができる。したがって、学習走行中に決定された地図（参照地図）は変更されず、各使用の際に完全に利用可能であることを確実にすることができる。同時に、環境内のすべての変更は作業コピーで考慮に入れることができる。これは、特に、もはや存在しないナビゲーション特徴の削除、移動された位置の変更、および新しいナビゲーション特徴の追加を意味する。上述のように、作業コピーを作成することは、地図１０、２０として恒久的に記憶された全ての情報を完全にコピーすることを必ずしも含まない。多くの場合には、ナビゲーションに必要な情報（例えば、ＳＬＡＭによって最初に検出された障害物）のコピーで十分であり得る。
【００５３】
作業コピーは、少なくともナビゲーションに関連する地図データを含むことができる。これらは、例えば、重大な障害物（例えば、壁、棚）の位置および／またはナビゲーション特徴（それによりロボットが方向決めすることができる特徴）の向き・位置を含む。変化しないか、または急速に変化する地図データは、作業コピーに引き継がれる必要はない。例えば、部屋の間取りは、ロボットの向きやナビゲーションに必要ではなく、変更されない情報である。さらに、例えば、椅子や靴の位置は非常に変わりやすいので、ロボットのナビゲーションに情報を与えることはできないので、作業コピーに含める必要はない（この情報が恒久的に保存された地図に含まれている場合）。上述の方法では、以前のロボット使用により古い作業コピーがまだ存在している可能性がある。これは新しい作業コピーが作成されたときに削除され得る。
【００５４】
古い作業コピーを使用して、ロボット１００が指定された使用領域内にあるかどうか、および使用領域内のどこにあるかをチェックすることができ、それによって、上記の妥当性チェックが容易になる。特に、ロボットの位置は、地図１０または２０の古い作業コピーから新しい作業コピーに転記することができる。これは、両方の作業コピーが同じ恒久的に保存された地図に基づいており、ロボットの位置が有効である場合（例えば、ロボットが移動させられ、または停止されていない場合）に可能である。その結果、グローバル自己位置特定が省略され、ロボット１００は直ちにそのタスクを開始することができる。
【００５５】
１つの可能な実施形態では、地図の古い作業コピーが削除されるべきかまたは再使用されるべきかどうかをチェックすることができる。特定の領域に限定されているタスクの場合は、既存の古い作業コピーを引き続き使用する方が良い場合がある。そのようなタスクは、例えば、部屋や部屋の一部を掃除することであり得る。この部屋が地図の現在の作業コピーで到達可能である場合、ロボットはそのタスクを達成するために、その作業コピーを使用し続けることができる。新しい作業コピーは、例えば、ロボットの最後に使用においてロックされたドアによってアクセスできない部屋など、現在の作業コピー内でアクセスできない領域がタスクに含まれる場合に作成される。いくつかのタスクでは、古い作業コピーを削除し、恒久的に保存されている地図１０または２０の新しい作業コピーを作成することが常に有用であり得る。これは、例えば、ロボット１００のタスクが、例えばロボット使用領域の完全な清掃または完全な検査の間に起こるような、使用領域のすべての領域を走行することを含む場合に当てはまる。
【００５６】
人間の活動により環境が変化する場合、すなわち、特に、部屋のドアが開けられたか閉じられたような場合、古い作業コピーを削除し、恒久的に保存された地図１０、２０の新しい作業コピーを作成することも同様に有用である。このために、例えば（特定のタスクを実行するようにロボットに命令する）作業指示のない一定期間（例えば５時間）をロボットに設定することができ、その後ロボットは新しい作業指示のための新しい作業コピーを作成する。さらなる決定の判断基準は、例えば、時計の示す時刻又は、ロボットエリア内の人の存在および活動である。例えば、ロボットは、（例えば、スマートフォンなどのＷＬＡＮで到達可能なパーソナルモバイルデバイスを介して、またはカメラによる人物認識を介して）人間の存在を検出するように構成することができる。世帯に住んでいる人が誰も居ないか、眠っていない場合は、使用領域における変更は予想されず、したがって古い作業用コピーをさらに使用することは有用である。人がロボット使用領域（例えば家）を出たり入ったりすると、大きな変化が起こり得る。例えば、ユーザが家を出るときに、ユーザの不在下でロボットが家を掃除することを期待して部屋への扉を開くことができる。この場合、ドアが閉じているとマークされている古い作業コピーを、すべての部屋がアクセス可能であるとマークされている新しい作業コピーへ、ロボットが変更することが重要である。
【００５７】
グローバル自己位置特定の段階で、ロボットは地図および／またはその中における自分の位置を誤って決定することがある。これは、例えば、ロボットがＦ１階の廊下１１にいて、Ｆ２階に属し、地図２０に記録されている部屋２４で、例えば、部屋２４を掃除するタスクを実行する命令を受けた場合に起こり得る。この場合、ロボットに、使用する地図２０が通知され、もっぱら地図２０内で自己位置特定が行われる。地図１０の廊下１１と地図２０の廊下２１との強い類似性により、ロボットは、別のＦ１階に位置しているにもかかわらず、グローバル自己位置決定において地図２０の位置を決定することができる。ロボットが部屋１４内に移動すると（ロボットは、自身が部屋２４内に移動していると想定して）、使用された地図２０とそこで地図化された部屋２４との大きな偏差及び部屋１４内の実際の環境が検出される。ＳＬＡＭ処理において、ロボット１００のナビゲーションモジュール１１０は、間仕切り壁の位置を部屋１３および１４の状態に適合させることによって、恒久的に保管されている地図２０の作業コピーを修正する。作業コピーを使用することによって、恒久的に保存された地図を損傷することなく、恒久的に保存された地図と作業コピーとの間の違いを通常のナビゲーションアルゴリズムで修正することができる。この例では、ロボットは「間違った」階で（すなわち、部屋２４ではなく部屋１４で）そのタスクを実行するであろう。しかしながら、作業コピーの使用は、作業コピーを恒久的に保存された地図と比較することによってこのエラーの検出を可能にし得る。恒久的に保存された地図が（ユーザの）エラーによって損傷を受けないため、ロボットはユーザによる操作ミスに関してより堅牢である。
【００５８】
さらに、作業の処理中に作業コピーを使用すると、進行中のチェックで自己位置特定が正しいかどうか（つまり、ロボットが実際に使用されている地図に属する領域にあるかどうか）を確認できる。このために、例えば、ナビゲーション中に変化する地図２０の作業コピーを、恒久的に保存されている地図２０と継続的に比較することができる。例えば、地図内のロボットの位置を決定するためにグローバル自己位置特定において使用されたのと同じアルゴリズムをこの目的のために使用することができる。代替的に又は追加的に、地図２０の作業用コピーにおける必要な適応もまた評価することができる。例えば、新たな壁または行方不明の壁の検出は、（部屋１４と部屋２４の混同の場合のように）誤った地図および／または位置の使用に対する明確な兆候である。しかしながら、小さな変化は、日常生活によるもの、および／または通常の状況における通常の測定およびナビゲーションエラーによるものである。
【００５９】
誤った地図（すなわち、他の使用領域の地図）を使用する場合と、上述の測定およびナビゲーションエラーによって引き起こされる、保存された地図と測定された環境の実際の状態との間の偏差とを区別できるようにするため、メトリックおよびトポロジカルな測定関数が用いられる。たとえば、メトリックな尺度は、新しく検出された、または欠けているナビゲーション特徴のサイズ（長さ）、またはそれらの変更によって関連する領域の面積を測定するためのものである。例えば、（以前のように）ロボットがＦ１階上に位置しているがＦ２階の地図２０でナビゲートする場合（実際には空間１４であるが）、ロボットは地図化された部屋２４の面積が２倍を超えていることに気づくだろう。同時に、部屋２３（実際には部屋１３）の面積も同じ量だけ減少する。トポロジカルな尺度は、認識された部屋と認識された部屋境界の相対位置を捉える。例えば、地図１０における部屋１３と部屋１４との間の境界は垂直であり、地図２０における部屋２３と部屋２４との間の境界は水平に整列されている。上述したメトリックまたはトポロジカルな尺度は、ロボット１００が誤った地図でナビゲートしていることを検出するために使用され得る。
【００６０】
ロボット１００が使用している地図に入っていないと判断された場合に、処理のための様々なオプションがある。例えば、ロボットは、処理を中止してロボットのホームポジション（例えば基地局）に戻ることができ、ロボットは、処理を継続することができ、あるいは、ロボットは、ユーザに指示を求めるメッセージを送ることができる。あるいは、ロボット１００は、恒久的に保存されたすべての地図においてグローバル自己位置特定を開始してもよい。この場合、ロボットは特に現在の作業コピーの、すでに走行した部分を使用することができる。例えば、地図データには、タイムスタンプを付与することができ、これにより、最新の観察結果をより古い観察結果と区別することができる。これにより、ロボットは現在の作業コピーで、恒久的に保存されている地図からのナビゲーション特徴と、実際の走行で観察され、自己位置特定に関連し得るナビゲーション特徴とを区別することができる。
【００６１】
恒久的に保存だれた地図の作業コピーのもう一つの利点は、学習能力の向上である。これにより、ロボットは、ナビゲーション中に更新された作業コピーの地図データと、ロボット領域での作業が完了した後に恒久的に保存されている地図とを比較できる。検出された相違は、次の３つの方法で処理できる：
・恒久的に保存された地図を変更せずに棄却する、
・恒久的に保存された地図を直接変更せずに覚えている、
・恒久的に保存された地図へ直接登録する。
【００６２】
たとえば、少なくとも1つのドアが閉じているために部屋にアクセスできない場合は、忘れられ得る。また、測定精度や（下に置かれたバッグなど）動いている小さい障害物によるわずかな変化は、重要でないため無視（棄却）できる。その他の変化で、基地局の位置の変化などは非常に重要であるため、恒久的に保存された地図はそれに応じて直ちに更新されるべきである。
【００６３】
変化の多くは、「重要」または「非重要」に直接分類することはできない。これらの変化は、恒久的に保存されている地図に、関連付けられるか、保存される。例えば、各回の後に、このようにして収集された情報は、それが削除されるのか、さらなる分析のために保持されるのか、または恒久的に保存された地図に対する変更をもたらすのかどうか評価される。以下において、３つの例がより詳細に説明される。
【００６４】
（例１−新しい障害物の学習）：ユーザは新しい家具や荷物などの新しい障害物をロボット領域に配置する可能性がある。ロボットはこれらの障害物をセンサで検知し、それに応じて恒久的に保存されている地図の作業コピーを適合する。しかし、この障害物が（新しい家具のように）その場所に永久に残るものか、それとも（荷物などのように）一度だけ又は時折その場所にあるのかは、すぐにはわからない。したがって、一実施形態によれば、新しい障害物（例えば、荷物または新しい家具）の最初の観察時に、新しい障害物を地図に関連して格納してもよい。しかしながら、次のロボット使用の際に、以前に保存された障害物が最初に観察された時点にあることを必ずしも意味しない。したがって、障害物は、新しい作業コピーが作成されたときに自動的に含められるようには、恒久的に保存された地図に登録されない。少なくとも次の使用中に障害物が再び観察された場合、それは別のロボット使用のたびに知られるように地図に恒久的に登録され得る。新しい障害物が地図に恒久的に登録される前に、必要に応じてユーザに、それが本当に望まれていることかを質問をすることができる。障害物がその後の使用でもはや存在しない場合、それに関連する情報は破棄され（削除され）、恒久的に保存された地図は変更されないままである。例えばユーザがロボット使用領域からキャビネットを取り除く場合、もはや恒久的に存在しない障害物を識別し、恒久的に保存された地図からそれら障害物を削除するために類似の手順が可能である。
【００６５】
（例２−自由走行可能領域の学習）：
散らばっている靴や椅子の脚のような小さな可動障害物は、一般的に集められて状態で置かれ（散らばった一対の靴、テーブルの複数の椅子）、ロボットが慎重にそれらを避けてしなければならないため、移動が困難である。したがって、例えば、ロボット使用領域の床は、ロボットによって自由に走行可能である可能性が非常に高いエリアと、小さな移動障害物が存在する可能性があるために走行することが困難なエリアとに分割することができる。使用領域のある部分から別の部分への推移のために、ロボットは可能な限り自由に走行可能なエリアを使用し、できるだけ走行が困難なエリアを回避することができる。
これにより、ロボットはより高速で走行し、多くの椅子の脚を回避するなどの複雑な状況を避けることができ、それによってシステムの効率が向上する。
【００６６】
小さな移動可能な障害物の特定の位置は、ある使用から次の使用で簡単に変わる可能性があるため、重要ではない。したがって、この情報は、恒久的に保存された地図には記録・更新されないか、または制限されて記録・更新される。しかしながら、この種の障害物が予想され得る地図のエリアを学習するために、小さな障害物の位置は、各作業指示の後に、恒久的に保存された地図の作業コピーに基づいて決定され、そして、情報として地図に関連付けられ、及び／又は、保存される。この目的のために、例えば、作業コピーは恒久的に保存された地図と比較され、そして、例えば最大の大きさがロボットの幅よりも小さい全ての新しい障害物の位置を決定する。いくつかのロボット使用領域からの情報を組み合わせることで、小さな移動障害物がないエリアとそれらが非常に密集したエリアが判明する。この密度は、例えば、ロボット使用領域を「自由に走行可能」なエリアと「運転しにくい」エリアとに分割する尺度として使用することができる。それぞれのエリアには、地図内で、対応する属性を割り当てることができる。同様に、ロボット使用領域のエリア内で、小さな一時的な障害物の相対頻度も決定することができる。決定された相対頻度に基づいて、「自由に通過可能」と「運転が困難」との属性間の区別もまたなされ得る。
【００６７】
ロボットがロボット使用領域内の人間のユーザの変化した習慣に適応することができるように、例えば、小さな移動可能障害物の位置の情報に対してタイムスタンプが記憶される。したがって、小さな移動可能障害物の位置が考慮される程度は、その観察の時間に依存し得る。例えば、小さい移動可能障害物の位置に関する情報は、一定時間後に削除され、又は棄却される（「忘れられる」）ようにしても良い。
【００６８】
（複数の地図における位置特定）自律移動ロボット１００が、ロボット１００のための互いに物理的に分離された複数のロボット使用領域（例えば、家のＦ１階、Ｆ２階）において、属している恒久的に保存されている地図１０、２０に確実に登録されるためには、
ロボットがそれらの地図の１つにいるかどうか、さらに、特定の地図のどこにいるかどうかを確実に決定できなければならない（グローバル自己位置特定）。グローバル自己位置特定を高速化するために、例えば、使用される地図に関する情報および、おおよその開始位置がユーザによって与えられてもよい。そのような開始位置は、例えば基地局１９０またはその近傍である。例えば、ロボット１００が、２階建ての家（図２参照）で使用され、Ｆ１階からＦ２階まで階段３を介して人間によって運ばれる場合には、おおよその開始位置を「階段の近く」に選択し得る。特に、グローバル自己位置特定の場合には、可能なロボット位置の検査は、例えば開始位置に関連する部屋を記述する部分地図に限定することができる。したがって、グローバル自己位置特定は、例えば、階段３が配置されている部屋（廊下）１１または２１の地図部分に限定することができる（図３参照）。しかしながら、必要なユーザ入力はユーザにとって不快でありそして潜在的にエラーを起こしやすい。
【００６９】
例えば、ロボットがユーザによって移動させられるとき（すなわち、ある場所から別の場所へ自分で移動するのではない場合）、グローバルな自己位置特定が必要である。以下に説明する実施形態によれば、このグローバル自己位置特定をより速くより信頼性のあるものにするために：
・ロボット１００の変位の始まりと終わりを検出し、
・移動中のロボットの位置や動作状態に関する情報を収集し、
・この収集された情報に基づいて、保存された地図におけるロボットの位置が推定される。
【００７０】
次のステップでは、ロボット１００の推定位置および使用される地図（ｎ）に基づいて、加速されたグローバル自己位置特定を実行することができ、推定値（すなわち、ロボットの推定位置）は、ユーザが入力した情報に匹敵する方法で使用できる。場合によっては、推定値が非常に正確であるため、グローバル自己位置特定の必要なくなり、推定値をナビゲーションの出発点として直接使用するため、ロボットは作業をより早く開始でき、効率が向上する。推定の範囲で、例えば、ロボットの位置に関する確率分布を計算することができる。たとえば、これは、期待値（期待位置）と標準偏差によって特徴付けられる正規分布である。期待値と標準偏差を決定することができる。さらに、移動中に決定された情報を使用して、ロボットが最後のロボット使用領域にいる、または別の場所に移動したかを決定することができる。
【００７１】
移動の始まりと終わりの検出は、ロボット１００のセンサモジュール１３０のセンサによって達成することができる。例えば、以下の可能性がある。
・車輪接触スイッチが、ロボット１００が地面と接触しているかどうかを検出する。
・床距離センサ（例えば、クリフセンサ）が、床がロボット１００の下にあるかどうか、そしていくつかの実施形態では、ロボットからどのくらいの距離に床があるかを検出する。
・加速度センサが、例えば、ロボットを持ち上げるときに地面に垂直な加速度、またはロボットが移動されるときに地面に平行な加速度を測定する。ロボットが持ち上げられること、又は、元に戻されることの検出の信頼性を高めるために、いくつかのセンサを組み合わせることができる。
【００７２】
移動される中、情報はセンサモジュール１３０のセンサによって検出される。これらには、加速度、速度、方向、角速度、高さなど、ロボットの位置とその動きに関する情報が含まれる。これに基づいて、ロボットの位置を推定することができる。上述の情報の測定のために、例えば集積ＭＥＭＳジャイロスコープおよび加速度センサが使用される。いくつかのそのようなセンサは、いわゆる「慣性測定ユニット」（ＩＭＵ）に統合され得る。使用されるセンサについては後でさらに詳細に説明する。
【００７３】
例えばセンサの雑音測定誤差によって引き起こされることを補償するために、いくつかのセンサを組み合わせることができる。この目的のために、センサとデータの融合の様々な方法が知られている。例えば、推定は、センサデータに基づいて（拡張された）カルマンフィルタを用いて行われ、ロボットの位置の期待値および標準偏差（正規分布）が推定される。これにより、推定の正確性について機能的推論をすることができる。あるいは、非正規分布確率分布の決定を可能にする粒子フィルタを使用することができる（例えば、Ｓ．Ｔｈｒｕｎ著：「Ｐａｒｔｉｃｌｅ  Ｆｉｌｔｅｒｓ  ｉｎ  Ｒｏｂｏｔｉｃｓ」、Ｐｒｏｃ．  ｏｆ  ｔｈｅ  １８ｔｈ  ａｎｎｕａｌ  Ｃｏｎｆ．  ｏｎ  Ｕｎｃｅｒｔａｉｎｔｙ  ｉｎ  Ａｒｔｉｆｉｃｉａｌ  Ｉｎｔｅｌｌｉｇｅｎｃｅ（Ｕ  ＡＩ  ２００２），Ｓａｎ  Ｆｒａｎｃｉｓｃｏ，Ｃａ, ５１１−５１８ページ，２００２参照）。
【００７４】
慣性航法においては、加速度および角速度が、３つすべての空間次元について測定され、これから（とりわけ積分によって）空間内のロボットの軌道が決定され、したがって位置の変化も決定される。既知の位置からロボット１００が持ち上げられると、ロボット１００が戻される際の位置が慣性航法によって推定され得る。ＩＭＵはセンサとして機能する。そのようなものは、ＭＥＭＳ（Ｍｉｃｒｏ  Ｅｌｅｃｔｒｏ  Ｍｅｃｈａｎｉｃａｌ  Ｓｙｓｔｅｍｓ）チップに組み込まれる１つまたは複数の加速度計およびジャイロスコープなどの角速度センサを含む。短い距離（最大１０ｍ）では、慣性航法は非常にうまく機能する。より長い距離のため、または推定の正確さを増すためには、慣性航法は、他の方法と組み合わされるか、または他の方法に置き換えられることができる。例えば、慣性航法の精度は、追加のまたは代替の測定方法によって（例えば、カルマンフィルタによって）１つまたは複数の時点における位置および／または速度を決定することによって改善することができる。
【００７５】
一つの可能性は例えばＩＭＵに統合することができる磁力計の使用である。これにより、地磁気を検出し、ロボットの向きを地磁気に対して決定することができる。さらに、（例えば傾斜センサを使用して）重力の方向を考慮して、絶対（固定）座標系に対するロボットの向きを決定することができ、それによって位置推定（地面に戻すときのロボット１００の位置の推定）の精度を向上させることができる。
【００７６】
位置を決定する別の方法は、ロボット１００の測定された（ＩＭＵによって測定された加速度および回転速度から決定される）姿勢変化に基づいて、丁度ロボットを移動させてロボットを手に持つユーザの動きを追跡することである。例えば、ユーザが真っ直ぐ歩いているのか、角を曲がって歩いているのか、あるいは階段を上り下りしているのかを検出することが可能である。例えば、ユーザが階段を使用していることが検出された場合（図３、階段３を参照）、ロボット使用領域が（例えばＦ１階からＦ２階に）変更されていると結論付けることができる。さらに、階段の位置はほとんどの家で明らかである。したがって、ロボットの位置は、したがって、ロボットの位置は、階段を登ることが完了した後に、約１メートルの精度でユーザが知ることができる。
【００７７】
ロボットは、階段の端部に置かれ、この情報を使って自己位置特定を開始するか、または別の領域に運ばれ、ロボットは、前述の慣性航法によって決定される。他の典型的な移動パターンはまた、細長い空間内をまっすぐ前方に歩くこと、ドアを通って部屋に入るように向きを変えること、またはテーブルなどの室内にある障害物を一周することなど、空間内の位置に関連付けられ得る。姿勢・位置の変化のデータからユーザの運動フォ―ムを推定し、これから地図中の位置を推定するために、例えば、ニューラルネットワークなどの機械学習の方法が導入される。これらは、典型的な移動パターンを習得し、後でそれらを検出することができるようにするために、実例のデータに基づいて訓練される。ロボットの使用領域を分析して、これらの典型的な移動パターンがどこで発生するか、例えば、階段がどの点に位置するかを決定する。
【００７８】
位置推定を実行および／または改善するための別の可能性は、ロボットがユーザによって移動されている間に、ロボットの少なくとも１つの速度成分を決定することである。これは例えば、環境を検出するためのセンサによって行われ、それによってロボットは通常の動作において、その環境で方向付けされる。これは、例えば、放射された信号の三角測量または通過時間測定によって機能する、光学的および／または音響的センサなどの距離測定用センサ（三角測量センサ、飛行時間型カメラ、レーザスキャナ、超音波センサ）である。持ち上げられた状態で、ロボットは、地面に置かれている他の障害物までの距離を検出するので、これに基づいてロボットの位置を直接決定することは困難である。しかしながら、距離の変化からロボットの少なくとも１つの速度成分を決定することができる。この速度は慣性航法において決定された速度を修正するために使用することができる。
【００７９】
環境を検出するためのセンサの他の例はカメラである。これを用いて、環境の特徴は、例えばエッジ検出によって検出することができる。これらの特徴の距離が少なくとも部分的に分かっている場合、カメラの２つの連続したショットでこれらの特徴の位置の変化によって、ロボットの位置、したがってロボットの少なくとも１つの速度成分の変化を検出できる。例えば、カメラは床に向けられ、そこでタイル張りの床を認識する。ここで、タイル間の継ぎ目は認識可能であり、それらの距離は、例えば既知であるか、またはロボットは「通常動作」（タイル床上を走行するとき）においてこれらを決定することができる。
【００８０】
カメラを使用して、特定の位置に明確に割り当てることができる、環境の特徴を画像および環境の物体認識機能によって画像内で識別することによって直接の位置決定を行うこともできる。たとえば、カメラを床に向けて、タイル張りの床を認識する。このタイプのタイル張りの床が１つの部屋にしかない場合、ロボット１００はそれが問題の部屋にあることを認識することができる。タイル張りの床から他の種類の表面の床への移行により、例えば、その部屋を出るには、ドアを通らないといけないと結論付けることができる。カメラの視点および空間におけるロボット１００の向きから、ロボットの位置を決定することができる。ロボット１００の空間内の向きは、例えば、ＩＭＵが、地球の重力場および磁場に対するロボット１００の角度位置を測定することによって決定される。
【００８１】
決定されるべき重要な情報は、ロボットがその現在のロボット使用領域内で（地図が記憶されている）他の既知のロボット使用領域へ、または（まだ地図を有していない）新しいロボット使用領域へ移動されるかどうかである。たとえば、移動の前後の（地理的な）高さが同じか変更されているかが決定される。例えば、慣性航法の助けを借りて、ロボットは移送中に約３ｍだけ持ち上げられ、異なる階にいると判断する。２つのロボット使用領域間の高さの差は、ユーザが、例えば使用国の規格に基づいて推定して入力してもよいし、１つ以上の移送後にロボットによって自動的に学習しても良い。特定のロボット使用領域の地図は、地理的高度が対応付けられており、標準高度０ｍからの絶対高度は無関係であり、異なるロボット使用領域間の高度差のみが考慮される（例えば、ロボット使用領域Ｆ１、地図１０、高度０ｍ、ロボット使用領域Ｆ２、地図２０、高度３ｍ）。３階建ての一戸建て住宅では、このように、高さ測定によってロボット使用領域が明確に識別される。
【００８２】
（地理的）高度の変化は、例えば、気圧を測定するセンサで測定することもできる。特に、移動されている間の連続的な気圧測定および、そこから導出された高度変化は、慣性航法測定の精度を補正および改善するために使用され得る。気圧の助けを借りた（地理的）高度の測定の正確さは、例えば天候の変動によって乱される可能性がある。これを補正して絶対高さ測定値を得るために、ロボットで測定された気圧を固定測定所の測定値と比較することができる。２つの測定値の差は、各ロボット使用領域の現在の気象条件とは無関係であり、これにより、ロボット使用領域への正確な割り当てが可能になります。固定測定ステーションは、例えばスマートホーム内の気象ステーションであり、通信リンク（例えばＷＬＡＮ）を介してロボットに接続されている。
【００８３】
高さの変化を測定する範囲内で、ロボットは、自身が、ロボット使用領域の高さより上の危機的な高さに置かれたこと、例えば、ロボットがテーブル及び仕事机の典型的な高さ約８０〜１２０ｃｍだけ上昇したことを検出できる。このようにして、ロボットは、例えば、自身が今テーブルの上にいることを検出し、警告をユーザに送信するか、特別な注意を払って（たとえばゆっくりと）走行することが可能である。
【００８４】
（動的環境における自己位置特定）典型的な家庭では、人間のユーザによる部屋の使用によりロボットに関連する環境は絶えず変化し得る。ユーザは、例えば、廊下に靴を置いたままにしたり、床にバッグやトランクを置いたり、ドアを開閉したり、家具（椅子など）を移動したりする。これらの変化により、現在検出されている環境と恒久的に保存されている地図との間の差が大きくなりすぎると、ロボットが確実に自己位置を特定することが困難になり得る。このような、例えば、立っている靴、壁際に置かれたバッグ、または動かされた椅子などの小さな移動可能な物体は、自己位置特定を実行するときに無視され得る。しかし、キャスタが設けられ、移動しやすいボックス（キャスタ付きコンテナ）や、部屋全体がアクセス不能になるロックされたドアなど、環境の大きな変化は、メトリックまたは確率モデルに基づく自己位置特定が失敗する可能性がある。自己位置特定の信頼性を高めるために、以下に説明する実施形態によれば、現在検出されているロボットの環境と、ロボットの位置特定が行われる恒久的に保存された地図との間の相違を分析し、この相違が移動した物体によって引き起こされたものかが評価される。
【００８５】
以下の例は非常に単純化されており、根本的な原理を説明するためにのみ役立つことに留意されたい。特に、ロボット１００は、自己位置特定が成功する前に環境全体を探索する必要はなく、その一部のみを探索する必要がある。図４に示される例（ロボット使用領域Ｆ１、地図１０）では、閉じられたドアＤの形態の可動障害物のために部屋１２にアクセスできない。アクセスできない部屋１２のために、実際のロボット環境は、恒久的に保存された地図１０とは異なり、それにより自己位置特定が失敗する可能性がある。しかしながら、地図１０´がアクセスできない部屋１２なしで使用される場合、自己位置特定は成功する可能性がある。この目的のために、例えば、恒久的に保存された地図１０に記録されたドアの位置および／または部屋の境界に基づいて、閉じたドアＤで到達可能な修正地図１０´が計算される。これは、閉じられたドアのさまざまな変種を使って行うことができ、そのように計算されたこれらの修正地図を使って、それらの中で自己位置特定が成功したかどうかをチェックすることができる。恒久的に保存された地図１０に記録されたドアおよび／または部屋の境界の位置は、地図を作成するときおよび／またはユーザによって入力されるときに自動的に決定され得る。
【００８６】
あるいは、カメラおよび画像認識を直接用いて、閉じたドアＤをドアとして認識し、自己位置特定するために予定された恒久的に保存された地図の中で出入口があるか、ある場合には、どこにあるかがチェックされ、この情報に基づいて自己位置特定が実行される。
【００８７】
図５は、例えば、キャスタ付き箱のような滑りやすい家具の形態の可動障害物Ｈを有する例を示す図である。このキャスタ付き箱は、非常に際立っているので、その環境でのナビゲーションと方向付けに使用される。障害物Ｈを移動させることによって、ロボット３０の観点からは、地図３０に元々記録されていた障害物Ｈがなくなり、代わりに新しい障害物Ｈ´が以前に空いていた場所で検出されるので（地図３０´参照）、自己位置特定は失敗し得る。しかしながら、恒久的に保存された地図３０とロボットの、検出された環境３０´との間の差を分析することによって、障害物Ｈ´が変位した障害物Ｈであることが分かる。例えば、恒久的に保存された地図３０と検出された環境３０´の間で差分地図３０−３０´が形成され、最初に記憶された障害物Ｈと、検出された環境内で変位した障害物Ｈ´のみが残る。両者は、位置と向きだけが異なり、形状とサイズは同じである。この事実に基づいて、ロボットはそれが（同一の、移動された）障害物であることを検出することができる。障害物を認識するために、ロボット１００がそのセンサモジュール１３０で感知できる障害物Ｈのさらなる特性を使用することも可能である。例えば、カメラを用いて、障害物Ｈの色などの画像情報を記録し、認識に使用することができる。
【００８８】
恒久的に保存された地図３０において、移動可能であると識別された障害物Ｈは、「移動可能」としてマークされ、将来の自己位置特定において無視されるかまたは制限的に使用されることができる。例えば、限られた範囲で使用されるというのは、可動障害物Ｈの欠如が、可能な（推定された）ロボット位置の評価の悪化をもたらさないことを意味する。可動障害物Ｈ´（すなわち同じ形状および／またはサイズの障害物、またはロボットによって検出可能な他の特徴）がロボット使用領域の異なる位置で検出される場合、これは可能なロボット位置の評価のさらなる改善につながり、ひいてはより確実な自己位置特定につながる。さらに、地図作成中または作成後にユーザが障害物を「移動可能」としてマークすることも可能である。別の可能性は、ロボットがカメラを用いて障害物を撮影し、この画像を画像データベースと比較し、それによって移動可能な障害物として認識することである。
【００８９】
（類似した地図の取り扱い）多くの場合、地図化されたロボット使用領域は少なくとも一部の領域で似ている。例えば、家の異なる階Ｆ１、Ｆ２における廊下および部屋のレイアウト図（間取り図）も部分的に非常に類似している（図２および図３参照）。限られたセンサ技術を有するロボット１００において、明確な区別は、ほんの数カ所でのみ可能であることである。図６は、家の２つの階Ｆ１、Ｆ２の地図１０、２０を示しており、これによれば、例えば、廊下１１と、廊下２１とが、および部屋１２と、部屋２２とが、それぞれ、非常に類似していて、示されているレイアウト図に基づくと部屋１３と、部屋２３とが、及び、部屋１４と、部屋２４とが区別可能である。
【００９０】
他の例は、例えば、近隣の部屋の多くが同じ大きさおよび設備を有するホテル（または病院または住居群など）のフロアでのロボットの使用である。この場合、地図内に非常によく似た領域がいくつか存在する。ロボットがこのような部屋の１つに移動した場合、ロボットはその部屋を離れることなく明確に自己位置特定をすることができない可能性がある。しかし、ロボットの目的は、ホテルの部屋の掃除など、できるだけ早く作業を開始することである。このため、ロボットはすぐに部屋を出る必要はない。自己位置特定を改善するために、以下に説明される実施形態によれば、恒久的に保存された地図は、明白な自己位置特定を可能にしない類似の領域について分析がなされ、その結果は恒久的に保存された地図１０、２０と共に保存され得る。この分析は継続的に繰り返えされる必要はなく、例えば、新しい恒久的に保存される地図が作成されるとき、またはユーザによって、および／または、自動的に既存の恒久的に保存された地図に変更が加えられたときにのみ実行される。分析は、例えば、バッテリーを充電している間の仕事の中断中などに、ロボット上で計算することができる。あるいは、その分析はユーザの家庭内の外部コンピュータまたはインターネット上で行うことの可能である。
【００９１】
また、例えば、パターン認識からの多数の方法を用いて、恒久的に保存された地図１０、２０を分析することもできる。１つの可能性として、地図と地図の部分の類似性をチェックするために自己位置特定するアルゴリズムを使用することである。特に、間取り図を使用して、恒久的に保存された地図に含まれる個々の部屋１１、…、１４、２１、…、２４の類似性を確認できる。
【００９２】
あるいは、恒久的に保存された地図は、明確な自己位置特定を可能にしない類似の領域についてモンテカルロシミュレーションを使用してチェックされ得る。この目的のために、ロボットが地図（例えば地図１０）上のランダムな位置に置かれたときにロボットの自己位置特定がどのように行われるかがシミュレートされる。多数の繰り返しにより、ロボットが迅速かつ正確に自身を位置特定できる領域で、かつ、既存の類似性による問題がある領域を決定する。
【００９３】
類似の領域に関する情報は、例えば恒久的に保存された地図に直接保存することができる。あるいは、類似の領域を含む１つ（またはそれ以上）の新しい部分地図１０／２０が生成されてもよい例えば、この部分地図１０／２０は、タスクを処理するためにロボットによって使用され得る。これについては、いくつかの類似の部屋を持つホテルのフロアの例を使用して、以下に簡単に説明する。
【００９４】
例えば、ユーザはロボットを掃除すべきホテルの部屋に運び込み、そこに置いて、「部屋を掃除して基地局まで走行する」ように指示する。ロボットは自己位置特定で活動を開始し、その際に、いくつかの類似したホテルの部屋の１つにいると判断される。その後、これらの部屋に属する部分地図がロードされ、ロボットはそれに基づいて活動を開始する。清掃が完了すると、ロボットは（可能であれば）新しく清掃したホテルの部屋を出て、自己位置特定を続ける。これにより、ホテルのいくつかの類似の部屋を含む恒久的に保存された地図内での位置が決定される。これにより、ホテルのどの部屋が掃除されたかを判断できる。そのような情報は、例えばホテル経営者に送ることができる。さらに、例えば、恒久的に保存された地図に基づいて、基地局がどこに位置しているか、およびロボットがその作業指示を完了するためにどのようにしてそれに到着するかを確認することができる。特にホテルの部屋では、ロボットは、例えば、カメラと適切な画像認識ソフトウェアを使用して、部屋番号によるホテル客のための部屋のマーキングの助けを借りて、その位置を決定することができる。これらの部屋番号は目印として役立ち、および／または、（部屋を代表する地図領域又は部屋の入口領域の）属性として関係するロボット使用領域の地図に記憶される。
【００９５】
図６に示す例でも同様に実施することができる。例えば、類似性に関する地図１０および２０の上述の分析は、例えば部屋１１／２１および１２／２２を含むことができる部分地図１０／２０をもたらし得る。したがって、例えば、ロボット１００は、ユーザによってフロア１１に置かれ、タスク「清掃せよ」を割り当てられることが可能である。ロボットの自己位置特定の際に、ロボットは、地図１０の部屋１１または地図２０の部屋２１にあると決定される。次に、部屋１１および２１を部屋１１／２１として表す部分地図１０／２０がロードされ、フロアの清掃が始められる。フロアの清掃が完了した後、ロボットは次の部屋（例えば部屋２４）に移動してその作業を続けることができる。この部屋では、問題となっている２枚の地図１０、２０のうちどちらにロボットがいるかがチェックされまで自己位置特定が継続される（部屋２４の例では、それは、地図２０である）。
【００９６】
ユーザに対して、個々の領域および／または部屋全体をロボットによる自動走行および／または作業指示の実行から除外することが可能である（「立ち入り禁止領域」）。例えば、部屋２２は子供部屋であってもよく、玩具などの小さな物が周りに散らばっていることが多いので、ユーザはロボットによる自動清掃を望まない可能性がある。その際、部屋１２および２２をそれぞれ有する地図１０および２０に類似の領域があるという問題があり、これについては異なって取り扱われるべきである。本明細書に記載の実施形態によれば、部分領域を処理するためのこの情報（例えば部屋２２への「立入り禁止」の情報）は優先度が関連付けられて恒久的に保存された地図１０および２０に関連して格納され、作業中に部分地図に対応して考慮される。この場合、ロボットが損傷を回避するのに役立つ情報（「立ち入り禁止領域」など）は、高い優先度を有する。前の例では、ロボットは地図に記録されている部屋１２／２２を走行せず、その代わりに、部分地図１０／２０に情報「立ち入り禁止区域」を保存する。ロボットが地図１０上にあることが明確に決定された後に初めて、部屋１２として識別された地図の自動清掃が始まる。
【００９７】
恒久的に保存された地図内に、信頼性のある自己位置特定をより困難にする類似の領域があることが分かった場合、どの領域に明確な違いが存在するかをチェックすることも可能である。必要に応じて、これらの領域を目的にかなうようにロボットが走行して、速くて明確で信頼できる自己位置特定を得ることができる。例えば、図６に示す地図１０および２０では、サイズの違いにより、部屋１３、２３および１４、２４内の明確な位置特定が可能である。これは、部分地図１０／２０のマークＤＡで示されている。
【符号の説明】
【００９８】
１０、２０、３０、１０´、３０´…地図
１１〜１４、２１〜２４、１１´、１３´、１４´…部屋
３０−３０´…差分地図
１００…ロボット
１０１…駆動モジュール
１０２…作業モジュール
１０２…通信モジュール
１１０…ナビゲーションモジュール
１２０…メモリモジュール
１３０…センサモジュール
１５０…制御モジュール
２００…モバイル装置
Ｆ１、Ｆ２…ロボット使用領域
Ｈ、Ｈ´…障害物
【図１】
2019525342.tif 000003
【図２】
2019525342.tif 000004
【図３】
2019525342.tif 000005
【図４】
2019525342.tif 000006
【図５】
2019525342.tif 000007
【図６】
2019525342.tif 000008
【国際調査報告】
2019525342.tif 000009
2019525342.tif 000010
2019525342.tif 000011
2019525342.tif 000012
2019525342.tif 000013
2019525342.tif 000014
2019525342.tif 000015
2019525342.tif 000016
2019525342.tif 000017
2019525342.tif 000018
2019525342.tif 000019