IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ロブアート ゲーエムベーハーの特許一覧

特許7057751ロボットナビゲーションのための地図の細分化
<>
  • 特許-ロボットナビゲーションのための地図の細分化 図1
  • 特許-ロボットナビゲーションのための地図の細分化 図2
  • 特許-ロボットナビゲーションのための地図の細分化 図3
  • 特許-ロボットナビゲーションのための地図の細分化 図4
  • 特許-ロボットナビゲーションのための地図の細分化 図5
  • 特許-ロボットナビゲーションのための地図の細分化 図6
  • 特許-ロボットナビゲーションのための地図の細分化 図7
  • 特許-ロボットナビゲーションのための地図の細分化 図8
  • 特許-ロボットナビゲーションのための地図の細分化 図9
  • 特許-ロボットナビゲーションのための地図の細分化 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-04-12
(45)【発行日】2022-04-20
(54)【発明の名称】ロボットナビゲーションのための地図の細分化
(51)【国際特許分類】
   G05D 1/02 20200101AFI20220413BHJP
【FI】
G05D1/02 J
【請求項の数】 13
(21)【出願番号】P 2018524235
(86)(22)【出願日】2016-11-11
(65)【公表番号】
(43)【公表日】2018-11-15
(86)【国際出願番号】 AT2016060108
(87)【国際公開番号】W WO2017079777
(87)【国際公開日】2017-05-18
【審査請求日】2019-11-07
(31)【優先権主張番号】102015119501.1
(32)【優先日】2015-11-11
(33)【優先権主張国・地域又は機関】DE
【前置審査】
(73)【特許権者】
【識別番号】514200752
【氏名又は名称】ロブアート ゲーエムベーハー
【氏名又は名称原語表記】ROBART GmbH
(74)【代理人】
【識別番号】110000718
【氏名又は名称】特許業務法人中川国際特許事務所
(72)【発明者】
【氏名】アルテス ハロルド
(72)【発明者】
【氏名】スキャパー ミヒャエル
(72)【発明者】
【氏名】シーサラー ドミニク
(72)【発明者】
【氏名】ボーゲル ラインハルド
【審査官】杉山 悟史
(56)【参考文献】
【文献】国際公開第2012/008084(WO,A1)
【文献】国際公開第2015/025599(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 1/00 - 1/12
(57)【特許請求の範囲】
【請求項1】
自律移動ロボットのロボット動作領域の地図の自動的な細分化の方法であって、
前記ロボット上に配置されたセンサを用いて障害物を検出し、前記障害物の前記地図上のサイズ及び位置を決定するステップと、
前記障害物のクラスタを有する領域を認識するために、プロセッサによって、前記地図を分析するステップと、
第1の部分領域が、認識されたクラスタを含むように、プロセッサによって前記第1の部分領域を定義するステップと
を有し、
1つのクラスタが少なくとも2つの障害物を含み、1つのクラスタにおいて、いずれの障害物も、この障害物までの距離が所定の最大距離を超えない近隣障害物が存在することを特徴とする方法。
【請求項2】
前記障害物のクラスタを有する領域を認識するために、プロセッサによって、前記地図を分析する前記ステップは、
検出された前記障害物の各々について、各々の前記障害物までの距離が所定の最大距離を超えない近接障害物が存在するかどうかを試験するステップと、
前記障害物及び前記近接障害物が前記クラスタにまだ割り当てられていない場合は、前記障害物及び前記近接障害物を前記クラスタに割り当てるステップと
を有することを特徴とする請求項1に記載の方法。
【請求項3】
物体のクラスタの領域を認識するために、所定の最大値よりも小さい障害物のみが使用されることを特徴とする請求項1又は請求項2に記載の方法。
【請求項4】
クラスタが、所定の最小数の障害物を含む場合にのみ、クラスタが認識され処理されることを特徴とする請求項1乃至請求項の何れか一項に記載の方法。
【請求項5】
クラスタ内の障害物は、安全な距離を維持しながらクラスタを通る直線的な進行が不可能であるように互いに近接していることを特徴とする請求項1乃至請求項の何れか一項に記載の方法。
【請求項6】
前記地図を分析する前記ステップは、
障害物間の距離に基づいて、その領域を通るロボットの直線の進行が障害物によって阻止されることを検出するステップを有することを特徴とする請求項に記載の方法。
【請求項7】
前記第1の部分領域を、通過が困難な特性を示す第1の属性情報と関連付けるステップと、
前記第1の属性情報と共に前記第1の部分領域を前記地図に保存するステップと
を有することを特徴とする請求項1乃至請求項の何れか一項に記載の方法。
【請求項8】
前記第1の部分領域を定義する前記ステップは、
前記障害物のクラスタを包囲し、前記障害物までの第1の最小距離を有する直線多角形により前記第1の部分領域に境界をつけるステップを有することを特徴とする請求項1乃至請求項7の何れか一項に記載の方法。
【請求項9】
少なくとも1つの領域範囲が、前記第1の部分領域と他の部分領域との間、又は、前記第1の部分領域と他の障害物との間に存在するか否か、及び、前記少なくとも1つの領域範囲の部屋方向に沿う寸法が最小値を下回るか否かを試験するステップと、
各々の領域範囲が前記第1の部分領域に包囲されるように前記第1の部分領域を拡大するステップと
を有することを特徴とする請求項に記載の方法。
【請求項10】
検出された障害物のサイズと位置とを保存するステップを更に有し、
前記地図を分析する前記ステップは、
検出された障害物の大きさ及び位置に関して保存されたデータに基づいて確率モデルのパラメータを計算するステップと、
前記確率モデルに基づいて、所定の確率で、この部分領域内に障害物が存在するように、この部分領域に障害物のクラスタを適応させるステップと
を更に有することを特徴とする請求項1乃至請求項の何れか一項に記載の方法。
【請求項11】
前記確率モデルの前記パラメータは、所定期間内及び/又は所定の数以下のロボット動作中に検出された障害物のサイズ及び位置に関するデータに基づくことを特徴とする請求項10に記載の方法。
【請求項12】
前記移動ロボットによる部分領域の処理に影響を及ぼす少なくとも1つの属性が前記第1の部分領域に割り当てられることを特徴とする請求項1乃至請求項11の何れか一項に記載の方法。
【請求項13】
内部及び/又は外部のデータ処理装置に接続された自律ロボットであって、前記データ処理装置は、ソフトウェアプログラムを実行するように構成され、前記ソフトウェアプログラムは、前記データ処理装置により実行される場合に、前記ロボットに請求項1乃至請求項12の何れか一項に記載の方法を実行させることを特徴とする自律ロボット。
【発明の詳細な説明】
【技術分野】
【0001】
以下の記載は、自律移動ロボットの分野に関し、特に、ロボットが移動するロボット動作領域の、ロボットの方向付けをするために基づく地図の細分化に関する。
【背景技術】
【0002】
床面の仕上げや清掃、物体の運搬、環境検査など、幅広い家庭内又は産業用途に使用できる多種の自律移動ロボットがある。単純な装置は、例えば、洗浄を目的として床面上をランダムに移動することによって、ロボットの動作領域の地図を作成して使用することなく済ませてしまうものもある(例えば、iRobot Corp.の特許文献1参照)。より複雑なロボットは、自分自身でロボット動作領域の地図を作成し、又は、自由に使用できる電子形式で受け取り、その地図を使用する。
【0003】
そのようなロボット動作領域の地図は、原則として非常に複雑であり、人間のユーザが読めるようには設計されていない。しかし、地図を読むことは、ロボットが実行する作業を計画するために必要である場合もある。作業計画を簡素化するために、ロボット動作領域を自動的に部分領域に分割することができる。この目的のために多数の方法が存在する。関連する学術文献から知られているように、例えば領域を通るロボットの経路の計画を単純化することができ、または床面が均一に覆われることを保証するための洗浄を意図した領域を細分化するための様々な抽象的な方法が知られている。これらの抽象的な方法は、人間の環境(例えばアパート住居)の典型的な特性を考慮しないため、一般に、ユーザのニーズに適応していないという欠点があり、ロボットの行動は、人間のユーザにとって理解しにくいものとなるという問題がある。
【0004】
1つの非常に単純な方法は、ロボット動作領域を所定の形状およびサイズのいくつかの小さな均一領域に分割することである。次いで、分割領域は、予め定義された標準的な手順に従って処理される(例えば、清掃される)。ロボット動作領域(例えば、アパート住居)を、居間、廊下、台所、寝室、浴室などのような部屋へ細分化することは、ユーザにとって容易である。これを達成するために、ロボット(またはそれに接続されたプロセッサ)は、例えば、天井カメラ、天井を向けた距離センサにより、又は、例えば、ドアの幅などの典型的な幾何学的形状に基づいて、ドアおよび壁の位置を決定しようと試みる。1つの既知の方法は、センサの助けを借りてロボットによって検出され得る、床材の境界に沿ってロボット動作領域を細分化することである。このように動作領域を分割することにより、例えば、床材の種類に応じて特別な洗浄方法を選択することが可能になる。地図とその分割は人間のユーザに見せることができ、ユーザは、領域の境界を移動するか、新しい境界を追加することにより、分割を修正したり、分割を自分のニーズに適合させたりすることができる。
【先行技術文献】
【特許文献】
【0005】
【文献】EP 2287697 A2
【発明の概要】
【発明が解決しようとする課題】
【0006】
本発明の根底にある目的は、ロボット動作領域の地図を細分化するための既知の方法及び地図自体の使用を改善、特により柔軟にすることである。この目的は、請求項1、14、26、32、34、40、46、53及び56のいずれかに記載の方法、ならびに請求項57に記載のロボットによって達成される。本発明の様々な実施形態とさらなる発展は、従属請求項の主題である。
【課題を解決するための手段】
【0007】
本発明は、自律移動ロボットのロボット動作領域の地図の自動的な細分化の方法であって、前記ロボット上に配置されたセンサを用いて障害物を検出し、前記障害物の前記地図上のサイズ及び位置を決定するステップと、前記障害物のクラスタを有する領域を認識するために、プロセッサによって、前記地図を分析するステップと、第1の部分領域が、認識された前記クラスタを含むように、プロセッサによって前記第1の部分領域を定義するステップとを有することを特徴とする。
【0008】
本発明の更なる例は、自律移動ロボットのロボット動作領域の地図の自動的な細分化の方法であって、前記ロボット上に配置されたセンサを用いて障害物を検出し、前記障害物の前記地図上のサイズ及び位置を決定するステップと、プロセッサによって、前記地図を分析するステップであって、少なくとも1つの所定の基準に基づいて、部分領域の可能な境界及び/又は認識された個々の障害物の機能に関する仮説が自動生成されるステップと、生成された仮説に基づいてロボット動作領域の地図を部分領域に細分化するステップとを有することを特徴とする。
【0009】
本発明の更なる例は、自律移動ロボットのロボット動作領域の地図の自動的な細分化の方法であって、前記ロボット上に配置されたセンサを用いて障害物を境界線の形式で検出し、前記障害物の前記地図上のサイズ及び位置を決定するステップと、検出された境界線及び所定のパラメータに基づいて、ロボット動作領域の複数の部分領域への細分化を行うステップと、前記複数の部分領域及び検出された戸口を含む地図をヒューマン・マシン・インタフェース上に表示するステップと、前記所定のパラメータ、前記ロボット動作領域の部分領域への細分化、ドアの位置及び/又は認識された部分領域の機能の命名に関するユーザ入力を待つステップと、ユーザの入力に依存して前記ロボット動作領域の細分化を変更するステップとを有することを特徴とする。
【0010】
本発明の更なる例は、自律移動ロボットのロボット動作領域の地図の自動的な細分化の方法であって、前記ロボット上に配置されたセンサを用いて障害物を境界線の形式で検出し、前記障害物の前記地図上のサイズ及び位置を決定するステップと、検出された境界線及び所定のパラメータに基づいて、前記ロボット動作領域の複数の部分領域への細分化を階層的な行うステップであって、階層の第1の段階において、前記ロボット動作領域は複数の第1の段階の部分領域に分割され、階層の第2の段階において、前記複数の第1の段階の部分領域が第2の段階の部分領域にさらに細分化されるステップとを有することを特徴とする。
【0011】
本発明の更なる例は、自律移動ロボットのロボット動作領域の地図の自動的な細分化の方法であって、前記ロボット上に配置されたセンサを用いて障害物を境界線の形式で検出し、前記障害物の前記地図上のサイズ及び位置を決定するステップと、前記境界線を第1の矩形で覆い隠すステップであって、前記ロボットがアクセス可能なすべての点が前記第1の矩形内にあるステップと、前記第1の矩形を互いに隣接する少なくとも2つの第2の矩形に分割するステップであって、前記隣接する2つの第2の矩形の間の境界線は、所定の基準に従って決定される境界線を横切るステップとを有することを特徴とする。
【0012】
本発明の更なる例は、ロボット動作領域の複数の部分領域における自律移動ロボットの作業の自動スケジューリング方法であって、前記ロボットが目標処理時間を受信するステップと、前記部分領域に割り当てられた属性、例えば、個々の部分領域の優先順位及び/又は予想される処理時間、及び前記目標処理時間に基づいて前記目標処理時間内で処理されるべき部分領域及びその順序を自動的に選択するステップとを有することを特徴とする。
【0013】
本発明の更なる例は、自律移動ロボットのロボット動作領域の地図の自動的な細分化の方法であって、前記ロボット上に配置されたセンサを用いて障害物を検出し、前記障害物の前記地図上のサイズ及び位置を決定するステップと、検出された障害物に基づいて前記ロボット動作領域の細分化をするステップであって、可動障害物はそのように認識され、細分化が可動障害物の特定の位置に依存しないように前記ロボット動作領域の細分化において考慮されないステップとを有することを特徴とする。
【0014】
本発明の更なる例は、自律移動ロボットのロボット動作領域の地図の自動的な細分化の方法であって、前記ロボット上に配置されたセンサを用いて障害物を検出し、前記障害物の前記地図上のサイズ及び位置を決定するステップと、検出された障害物に基づいて前記ロボット動作領域の細分化をするステップであって、検出された障害物の少なくとも1つ障害物の位置を決定するために、過去の異なる時点で決定された位置が使用されるステップとを有することを特徴とする。
【0015】
本発明の更なる例は、ロボット動作領域の地図上の自律移動ロボットの位置を特定する方法であって、前記地図には、障害物の少なくとも1つのクラスタを有する少なくとも1つの領域が記載されており、前記ロボット上に配置された少なくとも1つのセンサを用いて障害物を検出し、前記障害物の前記地図上のサイズ及び位置を決定するステップと、障害物のクラスタを有する領域に対する前記ロボットの相対位置を決定するステップと、前記相対位置と、障害物のクラスタを有する領域の前記地図上に記載された位置とに基づいて前記地図上のロボットの位置を決定するステップとを有することを特徴とする。
【0016】
本発明の更なる例は、内部及び/又は外部のデータ処理装置に接続された自律ロボットであって、前記データ処理装置は、ソフトウェアプログラムを実行するように構成され、前記ソフトウェアプログラムは、前記データ処理装置により実行される場合に、ここに記載の方法を前記ロボットに実行させることを特徴とする。
【発明の効果】
【0017】
ロボット動作領域の地図を細分化するための既知の方法及び地図自体の使用を改善、特により柔軟にすることができる。
【図面の簡単な説明】
【0018】
図1】移動ロボットによって自動生成された、多数の境界線を有するロボット動作領域(アパート住居)の地図を示す図である。
図2】測定データ(境界線)に基づいて決定された、図1に示すロボット動作領域の外枠を示す図である。
図3】検出されたドアおよび内壁に基づいて、図2に示されたロボット動作領域の部分領域(部屋)への細分化を示す図である。
図4図3に示すロボット動作領域の更なる細分化を示しており、アクセス不可能な領域(家具)が解釈されている状態を示す図である。
図5図4に示される部分領域の、更なる通過することが困難であると検出された領域に基づく細分化を示す図である。
図6図5に示す細分化のさらなる改良を示す図である。
図7図6に示された図に対応し、床を覆う物及び家具が書き入れられている。
図8図8(A)~図8(E)は、ロボット動作領域または通過が困難な領域の自動検出の手順を示す図である。
図9図9(A)~図9(F)は、矩形の漸次的な分割によるロボット動作領域の細分化のためのさらなる手順を示す図である。
図10】領域へのロボット経路の割当てを概略的に示す図である。
【発明を実施するための形態】
【0019】
以下では、本発明を図面に示された例によって詳細に説明する。例示は、必ずしも正確な縮尺通りではなく、本発明は図示された態様にのみ限定されない。代わりに、本発明の根底にある原理を説明することに重点が置かれている。
【0020】
技術デバイスは、一方では、デバイスの動作が論理的であり、ユーザにとって理解可能であり、他方で、その動作が直感的に実行され得るときに、日常生活における人間のユーザにとって最も有用である。ユーザは、例えば、床掃除ロボット(「ロボット掃除機」)などの自律移動ロボットが、(その動作モードおよび挙動に関して)ロボット自身をユーザに適応させることを期待する。このために、ロボットは、技術的手段によって、ロボット動作領域を、人間の使用者がするように、解釈し、部分領域に(例えば、リビングルーム、寝室、廊下、台所、ダイニングエリアなどに)分割する。これは、例えばロボットに与えられたコマンドの形態(例えば、「寝室を清掃する」)で、及び/又は、ユーザに与えられた情報の形態(例えば、「寝室の清掃が完了した」)で、ユーザとロボットとの間の単純な通信を可能にする。これに加えて、上述の部分領域は、ロボットを動作させるために使用されるロボット動作領域の地図と、この地図を用いたロボットのサービスを描写するために使用されてもよい。
【0021】
さて、部分領域へのロボット動作領域の分割は、一方では既知の慣習に従い、他方では個人の好み(例えば、ユーザ固有のダイニングエリア、子供の遊び場など)に従って実行することができる。良く知られた慣習の1つの例は、寝室、リビングルーム、廊下などのアパート住居を様々な部屋に細分化することである(図3参照)。例示的なユーザ固有の細分化に従って、リビングルームを、台所、ダイニングエリア又はソファの前と隣の領域に分割することができる(図4参照)。これらの領域の境界は、時には「不明瞭」と定義されることがあり、一般的にユーザの解釈の対象となる。例えば、調理領域はタイルフロアによって特徴付けることができる一方、ダイニングエリアは、単に、テーブルと椅子の存在によって特徴付けられる。人間のユーザへの適応は、ロボットにとっては非常に困難な課題であり、ロボット動作領域の分割を正確に実行するために、しばしばロボットとユーザとの対話が必要となることがある。このロボット-ユーザ相互作用が簡単かつ理解しやすく実現されるためには、地図データおよび以前に自動的に実行された分割は、装置によって解釈及び処理されなければならない。さらに、人間のユーザは、自律移動ロボットの動作が、生成された分割に適合することを期待する。このため、部分領域には、ユーザが、又はロボットが自動的にロボットの動作に影響を及ぼす属性を与えることができなければならない。
【0022】
このための1つの技術的前提条件は、自律移動ロボットがその動作領域の地図を所有し、この地図によって自律移動ロボットを方向付けることができることである。この地図は、例えばロボットによって生成され、永久保存される。ユーザにとって直感的なロボット動作領域の分割の目標を達成するためには、以下の技術的方法が必要となる。(1)例えば、アパート住居等のロボット動作領域の地図の分割を所定の規則に従って実行する。(2)分割の際に、先験的に知られていないユーザの嗜好に適応させるように、ユーザとの単純な対話を許可する。(3)ユーザが簡単に理解できるように、地図の中に分割を表示するために、自動的に生成された分割を前処理する。(4)できるだけ自律的に生成された分割から特定の特徴を推論することが可能で、これらの特徴がユーザによって期待される行動を達成するのに適している。
【0023】
図1は、例えば、センサとSLAMアルゴリズムとを用いて、ロボット1によって生成されたロボット動作領域の地図の描写を示す図である。例えば、ロボットは、距離センサにより、障害物(例えば壁、家具、ドアなど)までの距離を測定し、測定データ(通常は点群)に基づいてその動作領域の境界を定義する線分を計算する。ロボット動作領域は、例えば、閉鎖された線分(通常は凹形の単純な多角形の鎖)によって定義され、各線分は始点、終点、したがって方向を含む。線分の方向は、線分のどちら側が動作領域の内側を向いているか、すなわち、ロボットがどちら側から所与の線分によって指定された障害物を「見た」のかを示している。図1に示す多角形は、ロボット動作領域を完全に表しているが、ロボット-ユーザ間の通信には適していない。特定の状況下では、人間のユーザは自分の固有のアパート住居を認識し、地図上で自分自身を方向付けすることが困難になる場合がある。前述の線分の連鎖に対する1つの代替案は、ラスタ地図であり、その場合、例えば、10×10cmのラスタがロボット動作領域に配置され、各々のセル(すなわち、10×10cmのボックス)が障害物によって占められている場合にマークされる。しかし、このようなラスタ地図は、人間のユーザにとって解釈することが非常に困難である。
【0024】
人間のユーザとの対話を単純化するためだけでなく、論理的に(ユーザの視点から)意味あるように動作領域で「仕事」をするためにも、ロボットは、最初に自動的に、そのロボット動作領域を部分領域に細分化する。このような部分領域への細分化は、ロボットがより簡単に、システマティックに、より区別して、そして(ユーザの視点から)より論理的にその作業領域でそのタスクを実行し、ユーザとの対話を改善することを可能にする。適切な細分化を達成するために、ロボットは、様々なセンサデータを互いに検討しなければならない。特に、部分領域を定義するために、その動作範囲の領域の通行可能性に関する情報(困難/容易)を利用することができる。さらに、ロボットは、一般に、部屋が長方形であるという(反証可能な)前提から出発することができる。ロボットは、分割に対する変更がより意味のある結果をもたらすことがあることを学習することができる(例えば、ある程度の確率で、特定の障害物が特定の領域にあるなど)。
【0025】
図1に示すように、ロボットは、通常、センサ(例えば、レーザ距離センサ、三角測量センサ、超音波距離センサ、衝突センサ、またはこれらの任意の組み合わせ)を用いて障害物を検出し、その操作領域の境界を、境界線の形で地図上に描くことができる。しかしながら、ロボットの限定されたセンサシステムでは、一般に、人間のユーザにとって様々な部屋(例えば、寝室、リビングルーム、廊下など)への、容易に理解できような細分化を可能にしない。地図上に見つかった境界線(例えば、図1の点JとKとの間の線)が壁または家具に属するかどうかを判断することは、容易に自動化することができない。2つの部屋間の「境界」は、ロボットによって容易に認識されないこともある。
【0026】
上述の問題を解決し、様々な部分領域(例えば、部屋)へのロボット動作領域の自動的な細分化を可能にするために、ロボットは、センサデータに基づいて、その環境に関する、様々な方法でテストされた「仮説」を生成する。仮説の誤りが証明された場合には、その仮説は棄却される。2つの境界線(例えば、図1の線A-A‘および線O-O‘)がほぼ平行であり、ドアフレームの内のりの幅に対応する互いの距離にある場合(標準化された値である場合)、ロボットは仮説「ドアフレーム」を生成し、これから2つの線が2つの異なる部屋を分離すると結論づける。最も単純な場合、ロボットは、ユーザに「質問する」ことによって、すなわちユーザのフィードバックを要求することによって、自動生成された仮説をテストすることができる。ユーザは仮説を認めるか又は拒否することができる。しかし、仮説を自動でテストすることも可能であり、この場合、仮説から導かれる推論結果の妥当性がテストされる。ロボットによって検出された部屋(例えば、ドアの敷居の検出手段によって)が、例えば1平方メートルよりも小さい中央部屋を含む場合、最終的にこの小さな中央部屋へ導いた仮説は恐らく誤りである。さらに自動化されたテストは、2つの仮説から導き出された結論が互いに矛盾しているかどうかをテストすることを含む。例えば、ドアを示す6つの仮説を生成することができ、ドアと想定された5つの場合でしかドアの敷居(小さなステップ)を検出できない場合、これは敷居無しのドアを示す仮説は誤りであるということを示す。
【0027】
ロボットによって仮説が作成されるとき、様々なセンサ測定値が組み合わされる。例えば、戸口の場合、試験された測定値は、例えば、通路の幅、通路の深さ(壁の厚さによって与えられる)、戸口の右側および左側の壁の存在、または部屋の中に伸びている開かれたドアである。このすべての情報は、例えば距離センサを用いてロボットによって検出することができる。加速度センサまたは位置センサ(例えば、ジャイロセンサ)を用いて、ロボットがその上を通過するときにドアの敷居の存在を検出することができる。画像処理を使用し、天井の高さを測定することにより、付加的な情報を収集することができる。
【0028】
可能性のある仮説のさらなる例は、ロボット操作の領域における壁の延び方である。これらは、とりわけ、典型的な壁の厚さ(図1の厚さdw参照)の距離だけ離れ、ロボットから2つの対抗する方向に見られる(例えば図1の線K-Lおよび線L‘-K‘)2本の平行線によって特徴付けられる。しかし、例えば、洋服ダンス、棚、植木鉢などの追加の物体(障害物)が壁の前に立っている可能性があり、仮説の助けによって識別することができる。1つの仮説は別の仮説に基づいてる。たとえば、ドアは壁の途切れである。したがって、ロボット動作領域における壁の延び方についての信頼できる仮説が生成され得るとき、これらはドアを識別し、したがってロボット動作領域の自動的な細分化を軽減するために使用され得る。
【0029】
仮説をテストし、評価するために、妥当性の程度が仮説に割り当てられる。1つの簡単な実施形態では、仮説には、確認されたセンサ測定ごとに予め指定された点数が付けられている。このようにして、ある仮説が最小の点数に到達すると、それはもっともらしいとみなされる。負の点数は、仮説が却下される結果となり得る。さらに発展した実施形態では、その仮説に当てはまる確率がその仮説に割り当てられる。これには、様々なセンサ測定値間の相関を考慮に入れる確率モデルが必要であるが、推計学的計算モデルの助けを借りて複雑な確率命題を生成することができ、ユーザの期待をより確実に予測できる。例えば、ロボットが動作する特定の地域(すなわち国)では、ドアの幅を標準化することができる。ロボットがそのような標準化された幅を測定する場合、高い確率でドアである。標準幅からのずれは、ドアである可能性を低減する。この目的のために、例えば、正規分布に基づく確率モデルを使用することができる。仮説の生成および評価のためのさらなる可能性は、適切なモデルおよび測定関数を生成するための「機械学習」の使用である(例えば、Trevor Hastie、Robert Tibshirani、Jerome Friedman:“The Elements of Statistical Learning”第2版、Springer Publishing House、2008)。この目的のために、例えば、地図データは、様々な生活環境から1つ又は複数のロボットによって集められる。次いで、データは、フロアプラン又はユーザによるさらなるデータ入力(例えば、壁または戸口の延び方、または所望の分割に関する)で補足され得、次いで、学習アルゴリズムによって評価され得る。
【0030】
上記の仮説に代えてまたは追加して使用され得るさらなる方法は、多数の矩形の領域(例えば、部屋)へのロボット動作領域(例えば、アパート住居)の細分化である。このアプローチは、部屋が一般に矩形であるか、多数の矩形で構成されているという前提に基づいている。ロボットによって作成された地図上では、一般的に、部屋の長方形の形態は識別されない。というのは、部屋の中では、例えば、家具などの輪郭の複雑な多くの障害物が、ロボット動作領域を制限するからである。
【0031】
矩形の部屋の仮定に基づいて、ロボット動作領域は、部屋を表すことを意図した様々なサイズの長方形で覆われている。特に、矩形は、ロボットがアクセス可能なロボット動作領域の地図上の各点に矩形が一義的に割り当てられるように選択される。これは、長方形が通常は、重ならないことを意味する。しかしながら、ロボットがアクセスできない点(例えば、家具の部分がアクセス不可能なため)が長方形に含まれていることを排除するものではない。したがって、長方形によって表された領域は、実際のロボット動作領域よりも大きく、より単純な幾何学的形状であってもよい。個々の矩形の向きおよび大きさを決定するために、例えば、壁に沿って延びる、ロボット動作領域の地図内の長い境界線が使用される(例えば、図1の点L‘及びK‘を通る直線、点P及びP‘、並びに、P‘‘及びP‘‘‘を通る直線を参照)。使用される境界線の選択には、様々な基準が使用される。1つの基準は、例えば、問題の境界線が他の多くの境界線にほぼ平行または直交することである。更なる基準は、問題の境界線がほぼ直線上にあり、及び/又は、それらが比較的長く(例えば、ロボット動作領域の外寸のオーダー内に)あることである。矩形の方向およびサイズを選択するための他の基準は、例えば、検出された戸口又は床を覆う物の境界である。長方形の具体的な形態及び位置を決定するために、これらの基準および他の基準が、その判断の際に、1つまたは複数の重み付け関数(仮説の妥当性の程度に比例して、例えば、仮説に点数を割り当てる)が用いられる。例えば、実施された基準のために、境界線に点が与えられる。最高の点数を持つ境界線は、2つの長方形の境界線として使用される。
【0032】
部屋は一般的に矩形であるとの仮定に基づいて、ロボットは境界線の地図(図1参照)から、最も外側の境界線を補完して直線多角形を形成することができる。この結果は図2に示されている。アパート住居の外側の境界線に矩形を置き(図2、アパート住居Wとアクセスできない領域Xを含む矩形)、アクセスできない領域(図2、領域X参照)を取り去ることも可能である。検出されたドア(図1参照、点OとAの間のドアの敷居、P‘とP‘‘)と内壁(図1参照、距離dwの逆平行境界線)に基づいて、アパート住居は、3つの部屋100、200および300(図3参照)に自動的に分割することができる。その際、壁であると判定された領域は、ドアまたはアパート住居の外側の境界まで拡張される。アクセス不可能な部屋の領域は、家具やその他の障害物であると解釈することができ、地図上に対応して指定され得る(図4参照)。例えば、家具101は、その寸法(境界線を隔てる距離)に基づいてベッド(ベッドは標準化されたサイズを有する)として識別され得、その結果、部屋100は寝室として識別され得る。領域102は整理ダンスとして識別される。しかし、それは空洞又は煙突であってもよい。
【0033】
部屋300は、ロボットによって記録されたセンサデータに基づいて細分化することができる(図4参照)。例えば、さらなる細分化のための1つの基準は、床を覆う物であってもよい。センサにより、ロボットは、例えば、タイル張りの床、木製の床またはカーペットの間を区別することができる。通常、2つの異なる床材の間には、わずかに不均一な(検出可能な)境界線があり、車輪の滑り挙動は床材の違いによって異なる。様々な床材はまた、それらの光学特性(色、反射など)に関して互いに異なる。この例では、ロボットは、部屋300において、タイル張りの床を有する領域302と、カーペットを有する領域303とを認識する。残りの領域301は、木製の床を有する。タイル張りの床を有する領域302は、ロボットによって台所と解釈されてもよい。
【0034】
今までは、比較的小さい障害物は考慮されていなかった。「比較的小さい」とは、障害物がロボットの大きさと同等以下の大きさであることを意味する。部屋300の領域301内の図5の右上の部分には、ロボットの地図上に、数センチの大きさの多くの小さい障害物が表示されている。部屋300(または部分領域301)のさらなる細分化のための1つの基準は、ロボット動作領域における領域の通行可能性であってもよい。図5に示される場合、領域320は、ロボットが前方に迅速に直線移動するのを妨げるより小さな大きさの、大きな数(クラスタ)の障害物(例えば、テーブルの脚及び椅子の脚)を含む。ロボットがある地点から別の地点(例えば、充電ステーション)に素早く移動したい場合、最も直接的なルートをとらずに、多数の小さな障害物を含む領域を迂回する方が効率的である。したがって、多数の小さな障害物により通過が困難な領域を別個の領域として定義することは有用である。この目的のために、領域を通るロボットの直線的な進行が障害物によってブロックされるように領域全体に分散された障害物のクラスタを含む地図上の領域を認識するために地図を解析するように、ロボットは構成される。この場合、「ブロックされた」とは、直線的な通過が不可能であることを意味するわけではない。障害物までの一定の安全距離を有する、ロボットが沿う直線経路が部分領域内にないか、又は直線経路に沿った小さな変化(回転またはシフト)が生じると障害物の1つと衝突する場合には、それで、すでに十分である。障害のクラスタを含むそのような領域が認識されると、ロボットは、第1の部分領域が検出されたクラスタを含むように領域を定義する。
【0035】
この例(図5)では、部分領域301の右上の部分の領域は、属性「通過するのが難しい」が割り当てられている部分領域320として定義されている。部分領域301(図4参照)の残りの部分は、部分領域310である。ロボットは、個々の障害物のサイズおよび数に基づいて、障害物をテーブルおよび椅子の脚として識別し、領域320を「ダイニングエリア」として定義できる(図4参照)。例えば、クリーニング間隔またはクリーニング方法を、他のゾーンに割り当てられたものとは異なる部分領域320に割り当てることもできる。障害物のクラスタは、例えば、各障害物(例えば、それらの底面積またはその直径)が所定の最大値よりも小さく、障害物の数が所定の最小値よりも大きいときに、ロボットによって認識され得る(例えば5つ)。
【0036】
通過するのが困難な部分領域の境界は、(例えば異なる床材の間の境界とは対照的に)幾何学的に一義的に定義されていない。しかし、それらの位置に関する仮説は、作成されるべき部分領域および相補的な部分領域(図4、困難な部分領域320、相補的な部分領域310参照)の所望の特徴に基づいて生成され得る。通過するのが困難な部分領域の境界を定める基準として、ロボットは、例えば、次の規則を用いる。(1)通過するのが困難な領域は可能な限り小さくすべきである。(2)その部分領域は、小さな障害物、例えば、ロボットの底面積よりも小さいか、または長手方向の伸びがロボットの直径よりも小さい障害物を含むべきである。(3)小さな障害物は、障害物の数及び空間の分布のために、ロボットの直線的な進行を著しく妨げる。例えば空き部屋の真ん中にある単一の椅子が特有の部分領域を定義していない場合とは対照的である。(4)通過するのが困難な部分領域の境界は、ロボットが部分領域を離れることなく、小さな障害物の周りのクリーニングをすることができるように選択する必要がある。したがって、通過するのが困難な部分領域は、各障害物の周りに、ロボットの直径と少なくとも同じ幅の領域を含むべきである。(5)通過するのが困難な部分領域は、例えば矩形や直線多角形のような可能な限り単純な幾何学的形状を持つ必要がある。(6)(通過するのが困難な部分領域の切り離しによって作成される)補完的な部分領域は、走行が容易であるか、またはクリーニングが容易でなければならない。したがって、特に、小さな孤立領域、細長い領域、尖った角を含まないようにする必要がある。
【0037】
この例では、通過するのが困難な部分領域320を部分領域301(図4参照)から分離することによって、相補的な部分領域310が形成され、それ自体がより小さな、本質的に矩形の部分領域311、312、313にさらに細分化され得る。この分割は、既存の領域の境界に沿ってなされる。例えば、部分領域311は、部分領域320(ダイニング)と部分領域302(調理エリア)との間の境界を下方に部分領域303(カーペット)まで「延ばす」ことによって作成される。部分領域312及び部分領域313は、部分領域303(カーペット)の境界を外壁まで延長することによって作成される。アパート住居の最終的な細分化をよりよく理解するために、図7に家具とともに図解している。
【0038】
図8は、通過可能性の性質を利用して(部分)領域(部屋)をより小さな部分領域にさらに細分化するさらなる例を示す図である。図8(A)は、テーブルと6つの椅子とサイドボードを含むダイニングエリア付きの部屋の一例の平面図である。図8(B)は、図2に示す先の例と同様の境界線を有する、ロボットによって作成された地図を示す図である。テーブルの位置では、ロボットは、ロボットの直線走行を(テーブルの下を横切って)阻害する多数の小さい障害物(テーブル脚及び椅子の脚)を「見て」いる。サイドボードは抽象的な家具として示されている。まず、ロボットは、比較的小さな障害物(テーブルと椅子の脚、上記ルール(2)(3)を参照)を特定し、それらをグループ化し、できるだけ小さい多角形で囲む(図8(C)、上記ルール(1)を参照)。境界をつけられた部分領域「ダイニングエリア」に可能限り単純な幾何学的形状を割り当てるために、ロボットは、多角形の周りに矩形を配置しようと試みる(上記ルール(5)を参照)。この場合に、矩形は、多角形から最小距離となるようにしなければならない。この最小距離は、ロボットが部分領域「ダイニングエリア」の掃除中に、この部分領域から移動する必要がないように十分に大きくすべきである(上記ルール4参照)。したがって、一般に、最小距離は少なくともロボットの直径(または最大外側寸法)と同じである。他の場合、例えば、会議室などでU字状の配置で、幾つかの机がある場合に、通常は、1つの矩形の部分領域としてではなく、むしろ多数の(隣接する)矩形の部分領域として、より小さい障害物のグループを定義することが有利であり得る。この例では、図8(D)に示すような矩形の部分領域が外壁と平行に配置されている。矩形の最適な向きを決定する他の可能性としては、矩形の最小表面積を選択すること、または小さな障害物の分布の慣性主軸(共分散行列の主軸)に従って矩形を方向付けることが挙げられる。
【0039】
補完的な部分領域の中で、通過が難しい狭い領域の作成を避けるために(上記のルール(6)参照)、(外側)壁と矩形の部分領域との間の狭い領域(図8(D)参照)が、以前に境界を付けられた矩形に加えられる。この結果が図8(E)に示されている。
【0040】
しかし、ロボット動作領域の細分化のためのさらなる可能性が図9によって示されている。多くの場合、障害物によって妨げられない共通の境界を有する矩形でロボット動作領域を構成することができる。これらの矩形は、直角多角形に統合することができる。これは、例えば、張り出し部を有する部屋または図3の例のリビングおよびダイニングエリアからなる部屋300を表すことができる。以下では、図7にアパート住居の例に基づいて、ロボット動作領域を細分化するための1つの可能な手順をより詳しく説明する。ここでの基本は、障害物までの距離を測定することによるロボットによって収集された測定データ、すなわち図1に示す境界線の連鎖である。この測定データは、測定誤差を含むことがあり、地図の細分化とは無関係で、フィルタリングによって排除できる情報も含まれる。例えば、以下に示すように、小さな(アパート住居全体、部屋、又は、ロボットに比べて小さい)障害物は無視することができる。
【0041】
ロボット動作領域の簡略モデルを生成するために、ロボットが検出した境界線の地図に基づいて(図1参照)、互いにほぼ垂直に走る境界線は、互いに垂直に整列させ、互いにほぼ平行に走る境界線は、互いに平行に整列させる(正則化)。この目的のために、例えば、第1の好ましい軸(例えば、最も長い境界線に平行または最大数の境界線がほぼ平行である軸)が決定される。この後、例えば、好ましい軸と5°未満の角度を形成するすべての境界線は、それらが好ましい軸に平行に走るまでそれらの中心点の周りを回転させられる。好ましい軸にほぼ垂直に走る境界線についても同様の処理が行われる。斜めに傾いた境界線は、ここに示す例では無視される。次のステップでは、このようにして得られた単純化された(地図)モデルは、ロボット動作領域の全体が矩形内に包含されるように矩形500によって囲まれる(図9(A)参照)。その際、矩形500は、例えば、正則化によって得られる好ましい軸(垂直および水平)に沿って配置される。次のステップにおいて、矩形500は、指定された規則(図9(B)参照)に従って、2つの小さな矩形501および502に分割され、ここでは、共通エッジ(図9(B)、結果として生じる矩形501および502のエッジa)がドアフレームを横断するように矩形500は、分割される。矩形502は、さらに矩形503及び矩形504に分割される。矩形503および504の共通のエッジ(図9(B)、エッジb参照)は、外壁を表す境界線を横切って延びる。その結果を図9(C)に示す。矩形503は、完全にアクセスできない領域に関するものであり、大きすぎて家具ではない。したがって、矩形503は、地図から削除することができる。矩形504は、さらに、矩形505、507、及び508に分割される。矩形507および508の共通のエッジ(図8(C)、エッジd)は、内壁と判定された境界線を横断する(図1の線L‘-K‘)。矩形505および507(ならびに矩形505および508)の共通エッジ(図8(C)、エッジc参照)は、検出されたドアを横断する(図1、直線P‘-P‘‘を参照)。その結果を図9(D)に示す。
【0042】
上記の例に関して、矩形は、従って、分割された矩形のエッジに平行または垂直に前もって配置された境界線に基づいて、決定された交線に沿って分割することができる。この例では、これらは、直線(図9(A)、境界線a及びc参照)及び/又は比較的長い線分(図9(A)、境界線b及びd参照)に沿う多数の境界線であり、「比較的長い」とは、問題の境界線がアパート住居の幅に対して所定の範囲(例えば、アパート住居の狭い側の30%より長い)の長さであることを意味する。どの交線が長方形を2つの矩形に分割するための基礎となるかは、様々な規則を適用することによって決定することができる。特に、この規則は、以下の点を考慮する。(1)壁の厚さ(図1、厚さdW、図9(A)、境界線c及びd参照)に対応する距離だけ平行な境界線を近くに有する境界線。(2)多数の一直線状にある境界線(図9(A)、境界線a及びc参照)。(3)検出された戸口(典型的なドア幅に対応する距離だけ離れた一直線上の境界線)。(4)境界に接近不能な領域を区切る境界線(図9(A)、境界線b参照)。(5)生成された矩形の絶対サイズ及び/又は辺の比(非常に高いまたは非常に低い辺の比を有する矩形は、回避される)。(6)分割される矩形のサイズ。
【0043】
上述の規則が規定するように、矩形501(図9(B))には関連する分割の可能性はない。矩形503(図9(C))は、境界線がより大きな矩形502全体を横切るため、矩形502から取り除かれる。矩形505(図9(D))は、境界線cに沿ってドアが検出され、符号cで示される2つの境界線が一直線上にあるので、より大きな矩形504から取り除かれる。境界線dは分割される矩形(507および508)を完全に横切るため、境界線dに沿って分割が実行される。さらに、境界線dに沿って壁を検出することができる。
【0044】
矩形を分割するために使用される基準に従って、矩形507及び/又は508をさらに分割することができる。これにより、例えば、図9(E)に示すような部分領域になる。このようにして得られた矩形は比較的小さく、他の矩形に追加することができるかどうかがテストされる。例えば、矩形508によって形成された領域は、矩形501との良好な接続を有する(すなわち、2つの領域を互いに完全にまたは部分的に分離する壁のような障害物がその間にないことを意味する)(図9(F)、領域510参照)。矩形507から生成された矩形は、再び1つに結合され、アクセスできない大きな中央領域(寝室のベッド)を効果的に排除することができる(図9(F)、領域511参照)。
【0045】
人間のユーザは、ロボットの使用中または使用後に、事情を良く分かっているロボット動作領域の、一旦生成された分割が根本的に変化しないことを期待している。それにもかかわらず、ユーザはおそらく、機能するロボットの改善を目的としたいくつかの最適化を受け入れ得る。地図の分割の基礎は、移動可能な物体によって、ある用途から別の用途に変更することができる。したがって、ロボットは、これらの変位によって妨害されない分割を、時とともに「学習」しなければならない。移動可能な物体の例には、ドア、椅子、又はローラを有する家具が含まれる。例えば、画像認識方法を用いて、そのような物体を検出し、分類し、再び認識することができる。ロボットは、移動可能であると識別された物体をそのようにマークすることができ、必要に応じて、後の使用中にそれらを異なる位置で認識することができる。
【0046】
ロボットの動作領域の永続的な分割化には、固定の場所を持つ物体(壁や大きな家具など)だけを使用する必要がある。絶えず新しい位置を有する物体は、分割化のために無視され得る。特に、ロボットの環境が1回だけ変わっても、地図の更新や分割化が更新されるべきでは無い。ドアは、開いた状態と閉じた状態を比較することによって、2つの部屋(分割領域)間の境界を指定するために役立ち得る。さらに、ロボットは、閉鎖されたドアのために一時的にアクセスできない部分領域を覚えておく必要があり、必要であればこれをユーザに知らせるべきである。閉鎖されたドアのためにロボットの最初の探索走行中にアクセスできないが、その後の走行中に新たに識別された分割領域は、新しい分割領域として地図に追加される。上記のように、テーブルと椅子の脚を使用して通行の難しい部分領域を区切ることができる。しかし、椅子の脚は、使用中に位置を変える可能性があり、異なる時点で部分領域の境界が変化する可能性がある。したがって、通過するのが難しいと判断された部分領域内に、予め定められた高さの確率で、すべての椅子が存在するように、通過するのが難しい部分領域の境界が時間の経過とともに適合されるようにすることができる。これは、障害物の位置及び大きさに関する以前に保存されたデータに基づいて、特定の場所における障害物を発見する頻度と、その確率(すなわち、確率モデルのパラメータ)を決定することができることを意味する。例えば、特定の領域に椅子の脚が現れる頻度を測定することができる。それに加えて、またはこれに代えて、多数の測定によって決定された所定の領域における椅子の脚の密度を評価することができる。ここで、障害物のクラスタを有すると判定された領域は、この領域内で障害物が特定の確率で存在するように確率モデルに基づいて適応させることができる。これによって、場合によっては(おそらく存在する)障害物のクラスタを含む通過が難しい部分領域の境界の適応がなされる。
【0047】
これに加えて、部屋の同様の位置に一般的に配置されるが、人間の使用者の影響を受けてその特定の位置が(わずかに)変化し得る、例えばテレビアームチェアのような対象物がある。同時に、そのような物体は、部分領域を定義するために使用されることができるサイズのものであってもよい。これは、例えば、「ソファとアームチェアとの間の領域」とすることができる。これらの物体(例えば、テレビアームチェア)については、最も期待される位置は、時間の経過と共に(例えば、メジアン、期待値、又は最頻値に基づいて)決定される。これは、地図の永続的な分割、およびユーザとの最終的な対話(たとえば、ユーザがロボットを操作および制御するとき)に使用される。
【0048】
一般的には、ユーザには、地図の自動的に実行された細分化を試験し、必要に応じて修正する可能性が伝えられる。自動化された地図分割の目標は、できるだけ現実的で、ユーザとの対話なしに自動化して、地図を分割することである。
【0049】
一般的には、ここで、「ロボットによる」地図の分割が参照されるとき、分割は、ロボット内に内蔵されたプロセッサ(ソフトウェアを含む)によって、およびロボットに接続され、ロボットによって収集された測定データが(例えば、無線を介して)送信される装置上で実行されることが可能である。したがって、地図分割の計算は、パーソナルコンピュータまたはインターネットに接続されたサーバ上で実行されてもよい。これは、一般的に、人間のユーザにとっては基本的に差がない。
【0050】
ロボット動作領域を部分領域に適切に分割することにより、ロボットはタスクを、より「知的に」、より効率的に、実行できる。ロボットの行動をユーザの期待に一層適合させるために、部分領域のさまざまな特性(属性とも呼ばれる)を、検出したり、部分領域に割り当てたり、部分領域を作成する際に使用したりすることができる。例えば、ロボットが、例えば、ユーザによって汚れた領域に運ばれた後に、ロボットがその動作領域内での位置特定を軽減する特性がある。位置特定は、ロボットがクリーニングを完了した後、独立して基地局に戻ることを可能にする。この位置特定のために使用できる環境の特性は、例えば、床の被覆の種類、特有の(壁の)色、及びWLANの電界強度または電磁界の他の特性を含む。これに加えて、小さな障害物は、地図上の位置の指示をロボットに与えることができる。この場合、障害物の正確な位置は使用する必要はなく、所定の領域内の(頻繁な)出現のみが使用される。他の特徴は、ロボットの動作に直接影響を与えるか、またはユーザに示唆を与えることができる。例えば、平均汚れ度に関する情報を用いて、部分領域が清掃される頻度に関する提案を行う(または清掃間隔を自動的に決定する)ことができる。部分領域が定期的に汚れの不均一な分布を示す場合、ロボットは、部分領域がさらに細分化されることをユーザに示唆することができる(または、これを自動的にさらに細分化することができる)。
【0051】
床のタイプ(タイル、木材、カーペット、滑り止め、滑らかなど)に関する情報を使用して、床のタイプに適した清掃プログラムを自動的に選択したり、清掃プログラムをユーザに提案したりすることができる。これに加えて、ロボットの動き(例えば、その最大速度または最小回転半径)は、例えば、カーペット上の過度の滑りを修正するために自動的に調整することができる。ロボットが頻繁に引っかかって動けなくなる部分領域又は部分領域内の領域(例えば、散らかっているケーブル等)は、ユーザの援助を必要とし、部分領域の特性として保存することもできる。将来、このような領域は回避され、より低い優先順位で(例えば、清掃作業の終了時に)清掃されるか、またはユーザが存在するときにのみ清掃される。
【0052】
上述したように、(寝室、廊下などの)名前を、部屋として識別された部分領域に割り当てることができる。これはユーザが行うことも、ロボットが自動的に名前を選択することもできる。部分領域の名前に基づいて、ロボットはその動作を適応させることができる。例えば、ロボットは、部分領域に割り当てられた名前に応じて、この名前に適応する清掃動作をユーザに提案し、したがって、ユーザのニーズに対するロボットの調整を簡単にすることができる。例えば、領域の名前はカレンダー機能で考慮されてもよい。寝室と名付けられた部分領域では、ロボットが当該部分領域に入ることができない期間(例えば22時~8時)を指定することができる。別の例は、ダイニングエリアとしての部分領域の命名である(図7の部分領域320参照)。この命名は、より高い汚れ度(例えば、床上のパンくず)を推論させ、その結果、この部分領域はクリーニング中により高い優先度を与えられる。これらの例は、上述したロボットの地図の細分化および部分領域の(機能的な)命名が、ロボットの後の動作に決定的な影響を及ぼし得ることを示している。
【0053】
多数の部分領域のクリーニングを加速するために、クリーニングは、部分領域間の過渡的な移動をできるだけ避けて順次行われても良い。これは、ある部分領域でのクリーニング動作の終了点が、次の部分領域のクリーニング動作の開始点の近くあるように、その終了点を選択することで保証される。自由にアクセス可能な部分領域は、蛇行する経路に沿って非常に効率的に洗浄することができる。できるだけ均一なクリーニング結果を達成するために、また部分領域のクリーニング動作を所望の場所で終了させるために、蛇行する経路の直線経路セグメントの距離は、クリーニングされる部分領域の幅に適合され得る。例えば、矩形領域のクリーニングは、直線経路セグメント11が水平に走る蛇行経路に沿って、左上隅から始まり右下隅に終わる(図10(B)と同様に、右、左、上、下、水平、垂直の概念は地図上に描写される通りである)。矩形領域の高さを、(床全体をカバーする清掃の)直線的な経路セグメント11を分離する最大距離aで割ると、ロボットが矩形領域を完全に覆うために最低限必要な周回数が得られる。これから、所望の終点に到達するために必要とされる経路セグメント間の最適距離を決定することができる。この最適な距離、および蛇行する経路の向き(水平または垂直)は、部分領域に割り当てられ、部分領域に対応付けて保存される。
【0054】
部分領域を、曲がりくねった経路に沿って通るロボットの洗浄作業の際には、ロボットは、直線経路セグメント11を比較的迅速に通過することができる一方、(180°の)曲線12は比較的ゆっくり通過する。部分領域を可能な限り迅速にクリーニングするために、曲線12をできるだけ通過しないほうがが有利である。矩形の部分領域をクリーニングするとき、蛇行経路は、直線経路セグメント11が矩形の部分領域の長い方の辺に平行になるように方向付けることができる。部分領域が矩形よりも複雑な幾何学的形状の場合(特に凸ではない多角形の場合)、蛇行する経路の向きは、1回の実行で領域を完全に掃除できるかどうかについて決定的である。図10の例のようにU字状に形成された部分領域の場合には、この部分領域は、垂直方向の蛇行部によって均一にカバーすることができる(図10(A)参照)。しかし、水平に方向付けられた蛇行が使用される場合、これは領域Uがクリーニングされないまま残る(図10(B)参照)。したがって、上記のように、蛇行経路の直線部分の間の最適距離に加えて、当該部分領域に、蛇行の向きを割り当て、この情報を保存することが望ましい。
【0055】
計画された経路に沿って移動するときにロボットが行う方向が重要である場合のさらなる例は、カーペットのクリーニングである。深いパイルカーペットの場合、移動方向は洗浄結果に影響を及ぼすことがあり、移動方向が交互に変わることで、カーペット上に望ましくないストライプパターンを生成する可能性がある。このようなストライプパターンを回避するために、例えば、蛇行する経路に沿って移動しながら好ましい方向にのみクリーニングすることが可能である。(好ましい方向と反対の方向に)後退している間、ブラシおよび吸引ユニットをスイッチオフすることによって、クリーニングを停止することができる。好ましい方向は、センサの助けを借りて、またはユーザからの入力により決定することができ、当該部分領域に割り当てられ、この部分領域に対応付けて保存される。
【0056】
上述したように、ロボットが通過困難領域を通ってゆっくりと移動すること(したがって、障害物との衝突の危険があること)は、望ましくない。その代わりに、ロボットは困難な領域を迂回する必要がある。したがって、通過するのが困難であると識別された部分領域(上記を参照)に属性「避けるべき部分領域」を割り当てることができる。ロボットは、計画されたクリーニングを除き、アクセスが困難な部分領域には入らない。貴重なカーペットのような他の領域も、ユーザによって、またはロボットが自動的に「避けるべき部分領域」として指定することができる。結果として、経路を計画するとき、当該部分領域は、他の可能性が存在しない場合に、ある点から別の点への(クリーニングなしの)移動のためにのみ考慮される。さらに、通過困難領域の多数の障害物は、蛇行する経路に沿って掃除を行う際の邪魔になる。したがって、通過困難領域では、(蛇行経路の代わりに)特別に適合されたクリーニング戦略を採用することができる。すなわち、障害物を何回か迂回する際に、クリーニングがされていない孤立した領域が可能な限りないように適合させることができる。領域がクリーニングされないまま残されている場合、ロボットは、そのような未クリーニング領域への進入が存在するかどうか、もしそうであれば、それはどこであるか、又は、狭く置かれている障害物(例えば、テーブルと椅子の脚)によって完全に遮断されるかどうかを記録することができる。この場合、ユーザには、(その通過不能のために)クリーニングされていない領域が通知され得る。
【0057】
ロボットを使用する場合、ロボット動作領域を完全にクリーニングするのに十分な時間がないことがある。そのような場合、ロボットが特定の基準-例えば、クリーニング時間の基準-に従ってクリーニングの時間を自動的に計画し、この時間計画(スケジューリング)に従ってクリーニングを実行することが有利であり得る。この時間計画では、例えば、以下の点が考慮される。(1)各々のクリーニングすべき部分領域のクリーニングの予想時間。(2)1つの部分領域から隣の部分領域の走行の時間。(3)部分領域の優先順位。(4)領域の最後のクリーニングからの時間。及び/又は(5)1つまたは複数の前回の探索走行及びクリーニング走行中に検出された1つまたは複数の部分領域の汚れの程度。
【0058】
特定の部分領域に必要な洗浄時間を予測できるようにするために、ロボットは、前回の洗浄実行中に収集された経験値、ならびにシミュレーションを用いて決定された理論値を利用することができる。例えば、複雑な部分領域(簡単な部分領域が結合されて構成される部分領域)の予測をするめに、より小さい、幾何学的に単純な部分領域の予測クリーニング時間(例えば、蛇行セグメントの数にセグメントの長さを掛け、速度で割り、ロボットの必要な旋回時間を加えたもの)を求めることができる。多数の部分領域の予想作業時間を決定する場合、個々の部分領域の作業時間と、ロボットがある部分領域から次の部分領域へ移動するのに要する時間が考慮される。自動的に生成されたクリーニングスケジュールは、人間のユーザに示され、人間のユーザは、これを、必要に応じて変更することができる。あるいは、ユーザは、ロボットに多数のクリーニングスケジュールを提案させ、これらのうちの1つを選択し、必要に応じて変更することができる。さらなる例では、ロボットは、自動的に、ユーザとのさらなる対話なしに、自動的に生成された掃除スケジュールに従ってクリーニングを開始することができる。目標作業時間が設定されている場合、ロボットは部分領域に割り当てられた属性に基づいてスケジュールを作成できる。この場合の属性は、例えば、優先順位、個々の部分領域の予想されるクリーニング時間、及び/又は個々の部分領域の予想される汚れ度とすることができる。目標動作時間が経過した後、ロボットはクリーニングを中断したり、現在作業中の部分領域のクリーニングを済ませたり、ユーザが終了するまで動作時間を延長することができる。上記の原理は、2つの例を用いて以下に説明される。
【0059】
<例1、ユーザによる終了までクリーニング>:この図1から図7に示すアパート住居例では、例えば15分の目標持続時間を有する迅速なクリーニングプログラムでクリーニングされるべきである(例えば、まもなく訪問者が来ることをユーザが予期しているため)。この場合、訪問者の実際の到着時間に応じて、数分、早いか遅くなることがあるため、実際のクリーニング時間は固定(15分に)される必要はない。目標動作時間は基準値である。したがって、ロボットがユーザによって停止されるまでロボットはクリーニングを継続され、最も緊急にクリーニングが必要な表面(すなわち、最も優先度の高い部分領域)は、例えば目標時間の90%の間クリーニングされることが望ましい。このために、ユーザは、デフォルトで、又はクイッククリーニングプログラムを選択する際に、優先度の高い部分領域をロボットに知らせることができる。これらは、例えば、入口領域(図3、部分領域200参照)、リビングルーム(図3、部分領域300参照)である。訪問者がこれらの部屋にのみ存在するからである。どちらの部屋も全部、所定の時間内に完全にクリーニングするには大きすぎる。したがって、部分領域、特に大きなリビングルーム300をより小さな部分領域にさらに細分化することが有利であり得る。例えば、カーペット(図4の部分領域303参照)は高い優先度を有し、ダイニングエリア(図4の部分領域320参照)は高い汚れ度(ロボットによって前もって検出されるか、経験的データに基づいて推測される)。ロボットは、所与の時間内に、廊下(200)及びカーペット(303)、又はダイニングエリア(320)のみのどちらかを確実にクリーニングすることしかできないと判断することが有り得る。例えば、クリーニング利益(例えば、単位時間当たりのクリーニングされた表面)をより高めるために、ロボットは、廊下(図4、部分領域200参照)及びカーペット(図4、部分領域303参照)のクリーニングを開始し、その後、ユーザがクリーニングを中断するまで、ダイニングエリア(図4の部分領域320参照)のクリーニングを行う。
【0060】
<例2、固定の基準時間>:第2の例では、ロボットは、例えば閉店時間中にのみクリーニングされるデパートなどで使用される。したがって、クリーニングに利用できる時間は制限されており、超過することはできない。この場合、ロボットの動作領域は非常に大きく、割り当てられた時間内にはクリーニングすることができない。したがって、ロボット動作領域内の様々な部分領域に優先順位を割り当てると有利で有り得る。たとえば、入り口を含む部分領域は毎日清掃する必要があるが、普段は、少ない顧客で使用される部分領域は3日ごとにクリーニングするだけでよく、その結果優先順位が低くなる。これに基づいて、ロボットは、週の暫定的な作業スケジューリングを実行することができる。また、ロボットがそのスケジュールを実際の条件に動的に適合させるとより有利である。例えば、部分領域の予期される汚れ度を考慮に入れることができる。これは、経験的な汚れの度合いまたはこの部分領域に入る実際の顧客の(測定可能な)数に基づいて決定することができる。顧客の数は、データベースで把握され、そのデータは、例えば、百貨店スタッフによって手動で入力されるか、または、例えばモーションセンサ、光バリアまたはカメラなどのセンサと画像処理によって自動的に保存される。あるいは、百貨店経営者は、事故のために特にひどく汚れている場合など、計画に含まれていない部分領域をクリーニングすることを自発的に求めることがある。次に、ロボットは自動的に新しい部分領域をクレーム計画に組み込み、設定された目標時間を達成するために、次の日まで別の部分領域のクリーニングを延期することができる。
【0061】
以下では、ロボット-ユーザ間の通信及び相互作用を改善するために、多数の分割領域に分割されたロボット地図をどのように使用するかについて説明する。上述したように、ロボット動作領域の細分化は、一般に、人間のユーザによって直感的に実行される。しかし、機械にとっては、これは、一般に、(ロボットは人間の直感に欠ける)望ましい結果を必ずしももたらすわけではない非常に困難な作業である。したがって、ユーザは、ロボットが生成したアパート住居の細分化を自分のニーズに適合させることができなければならない。ここでユーザが利用できる可能性は、既存の部分領域の更なる細分化上の隣接部分領域間の境界を移動することによって細分化を変更することから、ユーザ定義の部分領域を新たに作成することまである。これらの部分領域は、例えば、ロボットが自発的に入ることを許されないいわゆる「キープアウト領域」とすることができる。したがって、(ロボットによって示唆され、必要に応じてユーザによって変更される)部分領域には、動作時にロボットの動作に影響を及ぼすことができる追加の属性がユーザによって(上述した、自動的に部分領域に割り当てることができる属性と同じ方法で)与えられることができる。
例えば、可能な属性としては、以下のものがある。(1)優先度(ユーザにとって領域がクリーニングされることの重要性)。(2)フロアタイプ(どのクリーニング戦略(ブラシを使った乾いたクリーニング、湿らせるクリーニング、埃を吸う等)を使用するか?)。(3)アクセシビリティ(当該部分領域に入ることがそもそも許されるかどうか)。
【0062】
さらなる可能性は、例えば、ロボットによってなされた仮説を確認すること、または拒絶することによって、ユーザが自動的な細分化のプロセスに影響を及ぼすことである。この場合、ユーザは、その動作領域の細分化を実行するようにロボットに「依頼」することができる。この後、ユーザは、例えば、地図上にドアを登録することによって、又はロボットによって誤って識別されたドアを排除することによって、細分化に影響を及ぼすことができる。これに続いて、ロボットは、ユーザによって入力された追加情報に基づいて、自動的に地図の新しい細分化を実行することができる。さらに、ユーザは、ロボットがこれらのパラメータを使用して動作領域の適合された細分化を生成できるように、重要パラメータ(例えば、典型的なドアの幅、内壁の厚さ、アパート住居の床平面など)を調整することができる。
【0063】
ロボット動作領域(例えば、アパート住居)のしばしば特定される部分領域(例えば、寝室)は、特定の文化圏では同様である。部屋として認識された部分領域に、ユーザが「寝室」という名前を与える場合、それによって、寝室のさらなる自動的細分化に用いられる基準、特に仮説を生成するために使用される確率モデルを、典型的な寝室に適合させることができる。このようにして、1×2メートルの寸法を有する寝室で見つかった物体は、比較的高い信頼性をもってベッドと解釈され得る。「キッチン」として名付けられた部屋では、同様の寸法の物体がキッチンアイランドであると判定される可能性がある。部分領域の命名は、まず、ロボット動作領域の地図上の部分領域を選択し、次にロボットによって提供されるリストから名前を選択することによって実行される。また、ユーザが部屋の名前を自由に選択することも可能である。ロボットによって生成された地図上の方向をユーザにとって単純化するために、部分領域に対して命名するときに、ユーザは、ロボットが引き続いて動く部分領域を選択することができる。このようにして、ユーザは、図示された部分領域とアパート住居内のロボットの実際の位置との間の直接的な関連を認識することができ、ユーザは部分領域にふさわしい名前を割り当てることができる。
【0064】
ユーザによるロボット動作領域の地図上の部分領域の命名をする場合の前提条件は、
ユーザが寝室をそれと認識できるほど十分良い、動作領域の細分化をロボットが既に生成しているといることである(例えば、図3に示すような粗い細分化)。そのような暫定的な地図で作業したくないユーザは、別の実施形態によれば、最初の探索走行中(すなわち、ロボットの動作開始時)に、ロボットが現在どの部屋にいるかをロボットに知らせることができる。このため、ロボットが現在位置している部屋の命名は、部屋を部分領域に分割するために直接使用することができる。このようにして、高品質の価値の高い分割された地図を、最初からユーザに提示することができる。これを行うために、ユーザは、探索走行の際にロボットに同行することができる。あるいは、ユーザは、ユーザにとって重要な領域にリモコンによりロボットを向け、その後に命名することができる。この際に、ユーザは、前述のキープアウト領域のような特殊なケースをロボットに指摘することができる。
【0065】
さらなる実施形態によれば、ロボットは、探索走行中に生成された仮説に関してユーザに直接質問することによって、地図の細分化を実行するか、または検出された部分領域の特性を改善するように構成されている。ロボットとユーザとの間のこの通信は、モバイルデバイス(例えば、タブレットコンピュータ、電話など)にインストールされたソフトウェアアプリケーションによって比較的容易に可能にされる。これは、特に、ロボットによって表示される地図の品質を向上させるために、地図の第1バージョンがユーザに示される前に行われ得る。このようにして、例えば、ロボットは、椅子を備えたテーブルのために通過が困難な領域が定期的に使用されるダイニングエリアであるかどうかをユーザに尋ねることができる。問題に肯定的に答えられた場合、ロボットはこの回答から自動的に帰納的推論をして当該部分領域に決められた属性を割り当てることができる。ダイニングエリアの場合、ロボットは、この領域が他の領域よりも汚れているとの前提に立っているので、より高いクリーニング優先度をこの領域に割り当てることができる。ユーザは、割り当てられた優先順位を認め、拒否、又は変更することができる。
【0066】
ロボットが新しい、ロボットにとって未知の領域に動員される場合、ロボットは、目的にかなった質問をユーザに質問することにより、例えば、アパート住居(ロボット動作領域)の予想されるサイズ及び室数のような、その領域に関する予備的な情報を受取る。特に、ユーザは、生活領域の通常の細分化からの逸脱、又はオフィスフロアなどの営業的に使用される領域で使用されることをロボットに通知することができる。この情報により、ロボットは、後続する探索走行中に地図のより良い細分化を生成できるように、及び/又は、認識された部分領域に適切な属性(例えば、クリーニング戦略に関する)を割り当てることができるように、その動作領域の細分化に関連するパラメータ(例えば仮説を作成するために使用される確率モデルなど)を適応させることができる。
【0067】
人間のユーザとロボットとの間の相互作用のために、ヒューマン・マシン・インタフェース(HMI)によりロボットからユーザのための情報(例えば、ロボット動作領域の地図など)が表示され、又はロボットを制御するためのユーザ入力を受け取る。HMIは、タブレットコンピュータ(またはパーソナルコンピュータ、携帯電話など)上でソフトウェアアプリケーションによって実現される。ロボットによって生成された地図は、一般にかなり複雑であり、未熟なユーザにとっては解釈が困難である(例えば、図1参照)。ロボットとユーザとの間に「滑らかな」対話を提供するために、ユーザに表示される情報はフィルタリングして処理され得る。これにより、ユーザは、表示された情報を容易に理解し、続いてロボットに所望の指示を与えることができる。ユーザの混乱を避けるために、表示された地図からは細かい部分や障害物を省くことができる。これらは、例えば、テーブル及び椅子の脚部や、散らばった靴や他の物体などである。ユーザは、通常、アパート住居のフロアプランを認識し、このフロアプラン上の個々の部屋を識別することができる。測定データ(図1参照)に基づいてフロアプランを自動生成できるようにするために、ロボットは最初に、例えば図2に示すようなアウトラインの形態でアパート住居の非常に大まかな表現を識別する。このアウトラインには、内壁がマーキングされ、それによって、図3に示すようなアパート住居のフロアプランが作成される。ロボットがそのような動作領域の細分化を自動的に実行する方法は、既に説明したとおりである。
【0068】
人間のユーザは、一般に、図3に従ったフロアプランの表示において、寝室100、廊下200および居間300を識別することに問題はない。ユーザのための表示をさらに単純化するために、部屋は、例えば異なる色の表面として表示される。アパート住居のアウトラインを特定する際に、ロボット動作領域内に完全にある障害物や物体は無視される。この結果、外側に向かって完全に境界が設けられ、この境界の内部には、内壁や壁に接して立つ家具などの多数の障害物が突き出る領域が生じる。これらの障害物も無視され、すなわち、フロアプランを表示するときにフィルタリングされ、ロボット動作全領域の単純化された地図が得られる。
【0069】
次に、ロボット動作領域のこの簡略化された地図は、内壁、ドア及び特異な家具物体などのユーザにとって識別しやすい要素が自動的に追加されて完了され、アパート住居の単純なフロアプランが得られる。このための基礎として、センサデータ(例えば、上述の境界線、図1参照)、ロボットによって自動的に生成されるロボット動作領域の部分領域へ細分化、及び以前のユーザインタラクションからのユーザ入力が用いられる。これから、ロボットは内壁の延びとその前に立っている洋服ダンスに関する仮説を作成し、最終的に地図上に表示することができる。特に、この簡略化された表示は、矩形への連続的な分割によって領域を細分化する図9による上述の方法を使用することによって得ることができる。例えば、ユーザによって命名されたために部屋の命名がわかっている場合、これはまた、地図の単純化された表示において考慮されることができ、これにより、ユーザがナビゲートすることをより容易にする。これは、対応する部屋の名前の表示、又は部屋に典型的な物体の概略的な表示により行われる。例えば、寝室では、ベッドとして識別された物体は、その部屋の中に(模式的に)ベッドとして表示される。ユーザにさらなる目印を設定するために、ロボットに知られている物体の位置、例えば、ロボット基地局が、表示された地図上にマークされ得る。ロボットがWLAN(無線ローカルエリアネットワーク)に接続されている場合、無線ネットワーク内のWLAN基地局(アクセスポイント)または、無線ネットワークに存在している他の装置の位置を、電界強度を分析することによって近似的に決定し、この位置が地図に表示され得る。ロボットにカメラがある場合、画像処理を使用して、テーブルや洋服ダンスの種類などの個々のオブジェクトを識別し、それらを地図に登録することができる。この目的のために、ロボットは典型的な家具の物体の概略図を含むデータベースを参照することができる。例えばRFID(無線識別)などの物体を位置特定し識別するさらなる方法は周知であり、ここでは詳細には説明しない。
【0070】
毎日の使用では、ユーザはロボットに様々な程度の要求をする。例えば、ユ―ザは、アパート住居全体の清掃、例えばリビングルームのようなアパート住居の1つの部屋(図3の部分領域300)の清掃、または、例えば、リビングルームのカーペット(図6の部分領域303)のような部屋の一部の領域の清掃を要求し得る。この際、ユーザは直感的に、この小さな領域を、アパート住居全体の部分領域であるリビングルームの更なる部分領域と見なす。人間のユーザに直感的な、アパート住居の階層的な表現は、ロボット動作領域の細分化および地図上のその表示に反映されるべきである。これは、図1乃至図7の例のアパート住居による実施形態に基づいて以下で説明される。
【0071】
ロボットによって生成された地図のなかで、ユーザが容易に行くべき道がわかるようにするために、まず、図3に示すように、大幅に単純化されたフロアプランがHMI上でユーザに対して表示される。必要に応じて、ユーザが要求した場合、追加の詳細が表示される。例えば、ユーザは、HMIに表示された地図をタップすることによって、または所望の領域を拡大するためにズームジェスチャを使用することによって、簡易フロアプラン(図3)上でリビングルーム300を選択することができる。その結果、対応する地図部分が拡大され、より詳細に表示される。ディスプレイを再びタップする(または、例えばマウスクリック、キーボード入力または音声入力などの他の入力手段によって)、ユーザは領域を選択し、例えば表示された部分領域の即時の清掃、計画策定機能を選択するか、またはさらに詳細を表示させることができる。
【0072】
図4は、2つの異なるタイプの床材、ここではカーペット(符号303)およびタイル張りの床(符号302)であることに従って、リビングルーム300が再び部分領域に分けられた例を示している。図5は、テーブルと椅子を備えたダイニングエリア320をアクセス困難なゾーンとして識別して、リビングルームをさらに細分化した状態を示している。図6では、空いている領域310が、規則的な小さい部分領域311、312、313のさらに細分化された様子を示している。この細分化に使用される方法の選択および順序は、任意に組み合わせることができる。ユーザが建物の異なる階でロボットを使用する場合、この情報は、論理的にロボット動作領域の階層的な細分化にはめ込まれ、それに対応して表示され得る。たとえば、様々な階を有する建物をHMIに模式的に表示することができる。ユーザが、ある階をタップすることによって選択すると、この階用に格納された簡易地図が表示される(図3のものと同様)。この場合、上述したように、ユーザはさらにズームインし、及び/又は、ロボットに指示を与えることができる。さらに、たとえば、ズームアウトのズームジェスチャでは、いろいろな階を有する建物の画像が再び表示される。
【符号の説明】
【0073】
1…ロボット
11…経路セグメント
12…曲線
100、200、300、301~303、310、313…部分領域
500~505、507、508…矩形
W…アパート住居
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10