(57)【要約】【課題】地図の更新を適切に実行可能な技術を提供する。【解決手段】地図作成装置は、移動体に搭載された環境計測センサによって対象領域内の複数の計測点のそれぞれについて測定された複数の部分地図を記憶する。複数の部分地図は、移動体を基準とした固有の座標である部分地図座標を各々備えている。地図作成装置は、複数の部分地図の各々が備える複数の部分地図座標を、共通の１つの固定座標である全体地図座標に変換する。地図作成装置は、複数の部分地図を、変換後の全体地図座標で示される位置および姿勢で、全体地図座標で示される全体地図座標空間へ配置することで第１の全体地図を生成する。地図作成装置は、記憶されている複数の部分地図の記憶優先度を、第１の全体地図に基づいて各々算出する。地図作成装置は、記憶優先度に基づいて、記憶されている複数の部分地図の一部を削除する。【選択図】図１
2020135579.tif 000002
【特許請求の範囲】
【請求項１】
対象領域の地図を作成する地図作成装置であって、
移動体に搭載された環境計測センサによって前記対象領域内の複数の計測点のそれぞれについて測定された複数の部分地図を記憶する部分地図記憶部であって、
前記部分地図は、前記計測点の周囲に存在する複数の計測物の前記計測点からの相対位置または距離を示す地図であり、
前記複数の部分地図は、前記移動体を基準とした固有の座標である部分地図座標を各々備えている、前記部分地図記憶部と、
前記複数の部分地図の各々が備える複数の前記部分地図座標を、共通の１つの固定座標である全体地図座標に変換する座標変換部と、
前記複数の部分地図を、変換後の前記全体地図座標で示される位置および姿勢で、前記全体地図座標で示される全体地図座標空間へ配置することで第１の全体地図を生成する第１の全体地図生成部であって、
配置後に互いに干渉する部分地図を重畳させる前記第１の全体地図生成部と、
前記部分地図記憶部に記憶されている前記複数の部分地図の記憶優先度を、前記第１の全体地図に基づいて各々算出する記憶優先度算出部であって、
前記記憶優先度が高い部分地図ほど前記部分地図記憶部に記憶された状態が長く継続される、前記記憶優先度算出部と、
前記記憶優先度に基づいて、前記部分地図記憶部に記憶されている前記複数の部分地図の一部を削除する削除部と、
を備える、地図作成装置。
【請求項２】
前記記憶優先度算出部は、
前記部分地図記憶部に記憶されている前記複数の部分地図の各々を、前記全体地図座標に基づいて前記第１の全体地図上へ配置することで、前記複数の部分地図の各々について前記第１の全体地図との類似度を算出し、
前記類似度が高い部分地図ほど前記記憶優先度を高くする、請求項１に記載の地図作成装置。
【請求項３】
前記記憶優先度算出部は、
前記第１の全体地図上へ配置された前記複数の部分地図のうち、互いに重畳している２つ以上の部分地図で構成された部分地図グループを抽出し、
前記部分地図グループに含まれている前記２つ以上の部分地図において、グループ内で相対的に新しい部分地図ほど前記記憶優先度を高くする、請求項２に記載の地図作成装置。
【請求項４】
前記第１の全体地図生成部は、互いに重畳する複数の前記部分地図が存在する場合に、重畳する複数の前記部分地図のグループ内において相対的に新しい部分地図ほど前記第１の全体地図への影響度を高くする、請求項１〜３の何れか１項に記載の地図作成装置。
【請求項５】
前記削除部によって一部の部分地図が削除された状態の複数の部分地図を前記全体地図座標空間へ配置することで第２の全体地図を生成する第２の全体地図生成部をさらに備える、請求項１〜４の何れか１項に記載の地図作成装置。
【請求項６】
前記地図作成装置は、前記移動体とは別体に構成されており、
前記地図作成装置は、前記移動体と通信可能な通信インターフェースをさらに備えており、
前記部分地図記憶部は、前記通信インターフェースを介して前記移動体から受信した前記複数の部分地図を記憶する、請求項１〜５の何れか１項に記載の地図作成装置。
【請求項７】
前記地図作成装置は前記移動体に備えられている、請求項１〜５の何れか１項に記載の地図作成装置。
【請求項８】
情報処理装置のコンピュータに読込まれる、対象領域の地図を作成する地図作成プログラムであって、
前記地図作成プログラムは、
移動体に搭載された環境計測センサによって前記対象領域内の複数の計測点のそれぞれについて測定された複数の部分地図を記憶部に記憶する部分地図記憶手段であって、
前記部分地図は、前記計測点の周囲に存在する複数の計測物の前記計測点からの相対位置または距離を示す地図であり、
前記複数の部分地図は、前記移動体を基準とした固有の座標である部分地図座標を各々備えている、前記部分地図記憶手段と、
前記複数の部分地図の各々が備える複数の前記部分地図座標を、共通の１つの固定座標である全体地図座標に変換する座標変換手段と、
前記複数の部分地図を、変換後の前記全体地図座標で示される位置および姿勢で、前記全体地図座標で示される全体地図座標空間へ配置することで第１の全体地図を生成する第１の全体地図生成手段であって、
配置後に互いに干渉する部分地図を重畳させる前記第１の全体地図生成手段と、
前記記憶部に記憶されている前記複数の部分地図の記憶優先度を、前記第１の全体地図に基づいて各々算出する記憶優先度算出手段であって、
前記記憶優先度が高い部分地図ほど前記記憶部に記憶された状態が長く継続される、前記記憶優先度算出手段と、
前記記憶優先度に基づいて、前記記憶部に記憶されている前記複数の部分地図の一部を削除する削除手段と、
して前記情報処理装置を機能させる、地図作成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書に開示する技術は、対象領域の地図を作成する地図作成装置および地図作成プログラムに関する。
【背景技術】
【０００２】
対象領域内の計測データを継続的に取得し、環境地図を更新する技術が知られている。しかし計測データを取得し続けると、時間経過とともに保存した計測データの総量が増加してしまう。非特許文献１には、環境地図への影響が少ない計測データを削除することで、保存した計測データの総量を圧縮する技術が開示されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】H Kretzschmarら著、Information-Theoretic Compression of Pose Graphs for Laser-Based SLAM, IJRR, Vol.31, No. 11, 2012
【発明の概要】
【発明が解決しようとする課題】
【０００４】
非特許文献１の技術では、対象領域内の所定ポイントの環境が変化した場合、この変化後の所定ポイントの計測データが削除対象となってしまう場合がある。変化前の所定ポイントについての過去の計測データが大量に存在するため、変化後の所定ポイントの計測データが環境地図へ与える影響が小さいと判断されてしまうためである。その結果、地図の更新が適切に行われなくなってしまう。本明細書は、地図の更新を適切に実行可能な技術を開示する。
【課題を解決するための手段】
【０００５】
本明細書に開示する地図作成装置の一実施形態は、対象領域の地図を作成する地図作成装置である。地図作成装置は、移動体に搭載された環境計測センサによって対象領域内の複数の計測点のそれぞれについて測定された複数の部分地図を記憶する部分地図記憶部を備える。部分地図は、計測点の周囲に存在する複数の計測物の計測点からの相対位置または距離を示す地図である。複数の部分地図は、移動体を基準とした固有の座標である部分地図座標を各々備えている。地図作成装置は、複数の部分地図の各々が備える複数の部分地図座標を、共通の１つの固定座標である全体地図座標に変換する座標変換部を備える。地図作成装置は、複数の部分地図を、変換後の全体地図座標で示される位置および姿勢で、全体地図座標で示される全体地図座標空間へ配置することで第１の全体地図を生成する第１の全体地図生成部を備える。第１の全体地図生成部は、配置後に互いに干渉する部分地図を重畳させる。地図作成装置は、部分地図記憶部に記憶されている複数の部分地図の部分地図記憶部への記憶優先度を、第１の全体地図に基づいて各々算出する記憶優先度算出部を備える。記憶優先度が高い部分地図ほど、部分地図記憶部に記憶された状態が長く継続される。地図作成装置は、記憶優先度に基づいて、部分地図記憶部に記憶されている複数の部分地図の一部を削除する削除部を備える。
【０００６】
部分地図記憶部に記憶されている複数の部分地図を用いて、第１の全体地図を生成することができる。そして、第１の全体地図に基づいて、部分地図記憶部に記憶されている複数の部分地図の記憶優先度を算出することができる。第１の全体地図は環境変化を反映しているため、第１の全体地図を用いることで、環境変化を反映していない部分地図の記憶優先度を低くすることができる。環境変化を反映していない部分地図を部分地図記憶部から削除することができるため、地図の更新を適切に行うことができる。
【０００７】
記憶優先度算出部は、部分地図記憶部に記憶されている複数の部分地図の各々を、全体地図座標に基づいて第１の全体地図上へ配置することで、複数の部分地図の各々について第１の全体地図との類似度を算出してもよい。記憶優先度算出部は、類似度が高い部分地図ほど記憶優先度を高くしてもよい。効果の詳細は実施例で説明する。
【０００８】
記憶優先度算出部は、第１の全体地図上へ配置された複数の部分地図のうち、互いに重畳している２つ以上の部分地図で構成された部分地図グループを抽出してもよい。記憶優先度算出部は、部分地図グループに含まれている２つ以上の部分地図において、グループ内で相対的に新しい部分地図ほど記憶優先度を高くしてもよい。効果の詳細は実施例で説明する。
【０００９】
第１の全体地図生成部は、互いに重畳する複数の部分地図が存在する場合に、重畳する複数の部分地図のグループ内において相対的に新しい部分地図ほど第１の全体地図への影響度を高くしてもよい。効果の詳細は実施例で説明する。
【００１０】
削除部によって一部の部分地図が削除された状態の複数の部分地図を全体地図座標空間へ配置することで第２の全体地図を生成する第２の全体地図生成部を、地図作成装置はさらに備えてもよい。効果の詳細は実施例で説明する。
【００１１】
地図作成装置は、移動体とは別体に構成されていてもよい。地図作成装置は、移動体と通信可能な通信インターフェースをさらに備えていてもよい。部分地図記憶部は、通信インターフェースを介して移動体から受信した複数の部分地図を記憶してもよい。
【００１２】
地図作成装置は、移動体に備えられていてもよい。
【００１３】
なお、上記の情報処理装置を実現するための地図作成プログラムも、新規で有用である。
【図面の簡単な説明】
【００１４】
【図１】地図生成システムの構成を示す図。
【図２】全体地図および部分地図の具体例を示す図。
【図３】地図管理処理および地図更新処理を説明するフローチャート。
【図４】第１全体地図ＥＭ１を生成する方法の具体例を示す図。
【図５】記憶優先度を算出する方法の具体例を示す図。
【図６】記憶優先度を算出する方法の具体例を示す図。
【発明を実施するための形態】
【実施例１】
【００１５】
（地図作成システム１の構成）
図１のブロック図を用いて、地図作成システム１の構成を説明する。地図作成システム１は、地図作成装置１０、ロボット１１を備えている。地図作成装置１０は、ロボット１１とは別体に構成されている。
【００１６】
（ロボット１１の構成）
ロボット１１は、センサ５０、部分地図取得部５１、データ送信部５２、移動制御部５３を備える。ロボット１１は対象領域内を移動しながら、センサ５０によって対象領域内の環境（例えば、壁等の計測物）を計測する。これにより部分地図取得部５１は、センサ５０から部分地図を取得する。センサ５０の一例としては、LiDAR、カメラ、RADAR、超音波センサ等が挙げられる。
【００１７】
また、ロボット１１は、車輪の回転角を検出する不図示のセンサ（例えば、エンコーダ）を備えている。このセンサによって車輪の回転角を検出することで、ロボット１１の移動方向及び移動量を算出することができる。よって、各計測地点において、ロボット１１を基準とした固有の座標系である部分地図座標系を算出することができる。データ送信部５２は、部分地図および部分地図座標系を、地図作成装置１０に送信する。移動制御部５３は、外部コントローラの操作に基づき、ロボット１１自身の移動を制御する。
【００１８】
（地図作成装置１０の構成）
地図作成装置１０は、対象領域の地図を作成する装置である。地図作成装置１０は、例えば、ＣＰＵ、ＲＯＭ、ＲＡＭ等を備えたコンピュータによって構成することができる。地図作成装置１０は、部分地図受信部２１、部分地図記憶部２３、地図管理部３０、地図更新部４０、を備える。
【００１９】
部分地図受信部２１は、ロボット１１と通信可能な通信インターフェースであり、ロボット１１から部分地図および部分地図座標系を受信する。部分地図記憶部２３は、ロボット１１から受信した部分地図および部分地図座標系を記憶する。部分地図記憶部２３は、ハードディスクやフラッシュメモリなどであってもよい。
【００２０】
地図管理部３０は、第１座標変換部３１、第１全体地図生成部３２、記憶優先度算出部３３、削除部３４を備える。地図更新部４０は、第２座標変換部４１、第２全体地図生成部４２、第２全体地図記憶部４３を備える。第１座標変換部３１〜削除部３４、および、第２座標変換部４１〜第２全体地図記憶部４３は、各々、部分地図記憶部２３にアクセス可能である。これらの内容については、後述する。
【００２１】
（地図の構成要素の説明）
地図の構成要素には、部分地図、第１全体地図ＥＭ１、第２全体地図ＥＭ２が含まれる。第１全体地図ＥＭ１は第１全体地図生成部３２で生成される地図であり、記憶優先度算出部３３で記憶優先度を算出する際に用いられる地図である。第２全体地図ＥＭ２は、地図作成装置１０にて最終的に出力する地図であり、第２全体地図記憶部４３に記憶される地図である。出力された第２全体地図ＥＭ２は、ロボットの経路計画や自己位置推定など、様々な用途に利用される。第１全体地図ＥＭ１の具体例を図２に示す。第１全体地図ＥＭ１は、複数の格子（グリッド）に区分けされている。すなわち第１全体地図ＥＭ１は、格子地図形式で表現されている。各格子は、「１」または「０」によって、その格子が物体に占有されているか否かを表現している。図２では、ハッチングで示されている格子が「１」であり、物体に占有されていることを示している。また白色で示されている格子が「０」であり、物体に占有されていないことを示している。第１全体地図ＥＭ１には、１つの固定の座標系である、全体地図座標系ＥＣ１が設定されている。また第２全体地図ＥＭ２の内容は、第１全体地図ＥＭ１と同様であるため、説明を省略する。
【００２２】
部分地図は、ロボット１１による環境の計測情報である。部分地図の具体例を図２に示す。ロボット１１は、移動中の一定間隔（例えば、一定移動距離）で計測点を設定し、複数の計測点の各々で部分地図を取得する。部分地図は、複数の計測点で生成される局所的な地図である。すなわち部分地図は、計測点の周囲に存在する複数の計測物の、計測点からの相対位置または距離を示す情報である。部分地図は、第１全体地図ＥＭ１と同様に格子地図形式で表現されている。格子のサイズは、部分地図と第１全体地図ＥＭ１とで異なっていてもよい。格子の数や部分地図の形状は、部分地図により異なっていてもよい。複数の部分地図ＰＭ１およびＰＭ２の各々は、ロボット１１を基準とした固有の座標系である部分地図座標系ＰＣ１およびＰＣ２を備えている。部分地図座標系は、ロボット１１からみた座標系である。
【００２３】
（地図管理処理および地図更新処理）
図３のフローチャートを用いて、地図管理処理および地図更新処理を説明する。ステップＳ１０（以下、ステップを省略する）において、ロボット１１を、地図作成対象の領域内で走行させる。前回の測定点から一定距離走行し、今回の測定点に到達すると、センサ５０によって計測が行われて１つの部分地図が生成される。ロボット１１は、生成した部分地図および部分地図座標系を地図作成装置１０へ送信する。部分地図受信部２１は、送信されてきた部分地図および部分地図座標系を受信する。Ｓ１５において、部分地図記憶部２３は、受信した部分地図および部分地図座標系を記憶する。
【００２４】
Ｓ２０において部分地図記憶部２３は、部分地図記憶部２３に記憶されている部分地図のデータ量が、データ保持上限値に到達したか否かを判断する。否定判断される場合（Ｓ２０：ＮＯ）にはＳ２５へ進み、部分地図の取得処理を続行するか否かを判断する。続行する場合（Ｓ２５：ＹＥＳ）にはＳ１０へ戻り、ロボット１１は次の測定点へ移動する。これにより部分地図記憶部２３は、対象領域内の複数の計測点のそれぞれについて測定された複数の部分地図を記憶することができる。一方、部分地図の取得処理を続行しない場合（Ｓ２５：ＮＯ）には、Ｓ６５へ進む。
【００２５】
また、Ｓ２０においてデータ保持上限値に到達したと判断される場合（Ｓ２０：ＹＥＳ）には、Ｓ３０へ進む。Ｓ３０〜Ｓ６０において、地図管理部３０によって、地図管理処理が実行される。具体的に説明する。Ｓ３０において、第１座標変換部３１は、複数の部分地図の各々が備える複数の部分地図座標を、共通の１つの固定座標である全体地図座標に変換する。具体的には、部分地図記憶部２３に記憶された複数の部分地図の各々について、全体地図座標系ＥＣ１上での位置および姿勢を推定する。換言すると、部分地図を取得したロボット１１の、全体地図座標系ＥＣ１上での位置および姿勢を推定する。
【００２６】
図２の例を用いて説明する。部分地図座標系ＰＣ１の原点ＰＯ１が、全体地図座標系ＥＣ１上で占める位置が、部分地図ＰＭ１の全体地図座標系ＥＣ１での位置である。また、部分地図座標系ＰＣ１のｘ、ｙ軸が、全体地図座標系ＥＣ１のｘ、ｙ軸に対して有する傾きが、部分地図ＰＭ１の全体地図座標系ＥＣ１での姿勢である。
これにより、部分地図ＰＭ１やＰＭ２の位置および姿勢を、全体地図座標系ＥＣ１を用いて表現することが可能となる。ロボット１１の全体地図座標系ＥＣ１上での位置および姿勢を推定する方法の一例としては、Graph-based SLAM(Simultaneous Localization And Mapping)法が挙げられる。この方法は公知であるため、ここでは詳細な説明を省略する。
【００２７】
Ｓ４０において、第１全体地図生成部３２は、第１全体地図ＥＭ１を生成する。具体的には、部分地図記憶部２３に記憶されている複数の部分地図を、全体地図座標系ＥＣ１で示される全体地図座標空間へ配置する。このとき、Ｓ３０で変換された全体地図座標系ＥＣ１で示される位置および姿勢で、複数の部分地図が配置される。
【００２８】
配置後に互いに干渉する部分地図は、重畳させて配置する。このとき、重畳する複数の部分地図のグループ内において相対的に新しい部分地図ほど、第１全体地図ＥＭ１への影響度を高くする。影響度を高くする方法の一例としては、古い部分地図を新しい部分地図で上書きしていく方法が挙げられる。
【００２９】
図４の具体例を説明する。全体地図座標系ＥＣ１上の領域Ｒ２に重畳して配置される部分地図ＰＭ２（ｔ−２）、ＰＭ２（ｔ−１）、ＰＭ２（ｔ）のグループが存在する場合を説明する。部分地図ＰＭ２（ｔ）が最新であり、部分地図ＰＭ２（ｔ−２）が最も古い。また、部分地図ＰＭ２（ｔ−２）およびＰＭ２（ｔ−１）に対して、部分地図ＰＭ２（ｔ）は内容が異なっている。これは部分地図ＰＭ２（ｔ−１）の取得時期と部分地図ＰＭ２（ｔ）の取得時期との間で環境変化があったためである。従って、最新の部分地図ＰＭ２（ｔ）のみが、環境変化を反映している。第１全体地図生成部３２は、部分地図ＰＭ２（ｔ−２）上に部分地図ＰＭ２（ｔ−１）を上書きし、その上にさらに部分地図ＰＭ２（ｔ）を上書きする。これにより、第１全体地図ＥＭ１の領域Ｒ２には、環境変化を反映した最新の部分地図ＰＭ２（ｔ）を配置することができる。すなわち、現在の環境を示す最新状態の第１全体地図ＥＭ１を生成することができる。
【００３０】
なお、図４の例では、重畳して配置される複数の部分地図の位置および姿勢が互いに同一であり、完全に重なって重畳される場合を説明したが、この形態に限られない。複数の部分地図の位置および姿勢がある程度異なっていても、一部が互いに重畳する場合には、１つのグループとなりうる。例えば、「互いに重畳する領域が部分地図の面積の８０％以上である」という条件を満たす複数の部分地図によって、１つのグループが形成されてもよい。
【００３１】
また図４の例では見やすさのために、２つの部分地図ＰＭ１およびＰＭ２が、全体地図座標空間の領域Ｒ１およびＲ２の各々へ配置される場合を説明した。しかし実際には、多数の部分地図が、互いに重畳するように隙間なく全体地図座標空間上へ配置される。これにより、欠けた領域のない第１全体地図ＥＭ１を生成できる。
【００３２】
Ｓ５０において、記憶優先度算出部３３は、部分地図記憶部２３に記憶されている複数の部分地図の各々についての記憶優先度を算出する。記憶優先度は、部分地図記憶部２３に記憶させておく優先度を示す情報である。記憶優先度が高い部分地図ほど、部分地図記憶部２３に記憶されている状態が長く継続される。記憶優先度は、Ｓ４０で生成された第１全体地図ＥＭ１に基づいて算出することができる。具体的に説明する。
【００３３】
第１の処理として、記憶優先度算出部３３は、複数の部分地図の各々について第１全体地図ＥＭ１との類似度を算出する。そして、類似度が高い部分地図ほど記憶優先度を高くする。具体的には、部分地図記憶部２３に記憶されている複数の部分地図の各々を、全体地図座標系ＥＣ１に基づいて第１全体地図ＥＭ１上へ配置する。そして、第１全体地図ＥＭ１と部分地図との間で、「１」の占有状態を示す格子の重複割合を算出する。重複割合の高い部分地図ほど、類似度が高いと判断される。記憶優先度は、例えば、０から１までの間の値で表現されてもよい。
【００３４】
図５の具体例を用いて、第１の処理を説明する。部分地図ＰＭ１を全体地図座標系ＥＣ１に基づいて第１全体地図ＥＭ１上の領域Ｒ１へ配置すると、第１全体地図ＥＭ１と部分地図ＰＭ１との間で「１」の占有状態を示す格子の重複割合が高いことが算出される。類似度が高いため、記憶優先度が高い（０．８）と算出される。なお、記憶優先度の数値は一例であり、以下においても同様である。一方、部分地図ＰＭ２ａを全体地図座標系ＥＣ１に基づいて第１全体地図ＥＭ１上の領域Ｒ２へ配置すると、第１全体地図ＥＭ１と部分地図ＰＭ２ａとの間で「１」の占有状態を示す格子の重複割合が低いことが算出される。類似度が低いため、記憶優先度が低い（０．２）と算出される。
【００３５】
第１の処理の効果を説明する。Ｓ４０で説明したように、第１全体地図ＥＭ１は、現在の環境を示す最新状態の地図であるとみなせる。そのため、第１全体地図ＥＭ１との類似度に基づいて記憶優先度を算出することで、現在の環境と乖離した部分地図の記憶優先度を低くすることができる。すなわち、環境の変化に対応していない古い部分地図は、新しい部分地図よりも、部分地図記憶部２３に記憶されている期間を短くすることができる。
【００３６】
第２の処理として、記憶優先度算出部３３は、第１全体地図ＥＭ１上へ配置された複数の部分地図のうち、互いに重畳している２つ以上の部分地図で構成された部分地図グループを抽出する。そして部分地図グループに含まれている２つ以上の部分地図において、グループ内で相対的に新しい部分地図ほど記憶優先度を高くする。
【００３７】
図６の具体例を用いて、第２の処理を説明する。図６の例では、全体地図座標系ＥＣ１上の領域Ｒ１に重畳して配置される部分地図ＰＭ１（ｔ−２）、ＰＭ１（ｔ−１）、ＰＭ１（ｔ）が存在している。部分地図ＰＭ１（ｔ）が最新であり、部分地図ＰＭ１（ｔ−２）が最も古い。また、部分地図ＰＭ１（ｔ−２）、ＰＭ１（ｔ−１）、ＰＭ１（ｔ）は、位置および姿勢が同一であり、内容も同一である。この場合、記憶優先度算出部３３は、部分地図ＰＭ１（ｔ−２）、ＰＭ１（ｔ−１）、ＰＭ１（ｔ）を１つの部分地図グループとして抽出する。そして記憶優先度算出部３３は、部分地図ＰＭ１（ｔ−２）、ＰＭ１（ｔ−１）、ＰＭ１（ｔ）の各々の記憶優先度を、「０．２」、「０．５」、「０．８」、に設定する。
【００３８】
第２の処理の効果を説明する。前述した第１の処理では、第１全体地図ＥＭ１との類似度が高い部分地図ほど記憶優先度を高くしている。すると、環境変化がない領域では、同一内容の部分地図が繰り返し取得されてしまう。そして第２の処理を行わない場合には、同一内容の部分地図の全てにおいて、記憶優先度が同程度に高くなってしまう。同一内容を示す複数の部分地図が、部分地図記憶部２３に長期間記憶されることになる。すなわち、冗長な部分地図が削除されることなく部分地図記憶部２３に記憶されてしまう。そこで第２の処理では、グループ内で相対的に新しい部分地図ほど、記憶優先度を高く設定する処理を実行する。これにより、繰り返し取得された同一内容の部分地図において、重複した冗長な部分地図の記憶優先度を低くすることができる。冗長な部分地図を削除することが可能となる。
【００３９】
なお、図６の例では、重畳して配置される複数の部分地図ＰＭ１（ｔ−２）、ＰＭ１（ｔ−１）、ＰＭ１（ｔ）の位置および姿勢が互いに同一であり、完全に重なって重畳される場合を説明したが、この形態に限られない。複数の部分地図の位置および姿勢がある程度異なっていても、一部が互いに重畳する場合には、１つのグループとなりうる。例えば、「互いに重畳する領域が部分地図の面積の８０％以上である」という条件を満たす複数の部分地図によって、１つのグループが形成されてもよい。
【００４０】
Ｓ６０において、削除部３４は、記憶優先度に基づいて、部分地図記憶部２３に記憶されている複数の部分地図の一部を削除する。具体的には、部分地図記憶部２３に記憶されている部分地図のデータ量が、データ保持上限値よりも小さくなるまで、記憶優先度の低いものから順に削除する。これにより、環境変化を反映していない部分地図を部分地図記憶部２３から削除することができる。後述する第２全体地図ＥＭ２の更新処理を、適切に行うことが可能となる。
【００４１】
Ｓ６５において、第２全体地図記憶部４３に記憶されている第２全体地図ＥＭ２を更新するか否かが判断される。この判断は、例えば、ユーザによる更新指示の入力の有無によって行われてもよい。更新しない場合（Ｓ６５：ＮＯ）にはＳ１０へ戻り、更新する場合（Ｓ６５：ＹＥＳ）にはＳ７０へ進む。
【００４２】
Ｓ７０およびＳ８０において、地図更新部４０によって、第２全体地図ＥＭ２の更新処理が行われる。具体的に説明する。Ｓ７０において、第２座標変換部４１は、複数の部分地図の各々が備える複数の部分地図座標を、共通の１つの固定座標である全体地図座標に変換する。Ｓ７０の処理内容は、Ｓ３０の処理内容と同様であるため、説明は省略する。Ｓ８０において、第２全体地図生成部４２は、第２全体地図ＥＭ２を生成する。Ｓ８０の処理内容は、Ｓ４０の処理内容と同様であるため、説明は省略する。
【００４３】
第２全体地図ＥＭ２の更新処理は、過去に作成した第２全体地図ＥＭ２に対して更新を実行する形態ではない。その理由を説明する。部分地図から全体地図を生成する際には、誤差が発生する。そのため、過去に作成した第２全体地図ＥＭ２に対して部分地図を重畳することで更新する形態とすると、誤差が蓄積するため、第２全体地図ＥＭ２の精度が低下していくおそれがある。しかし本実施例の第２全体地図ＥＭ２の更新処理では、部分地図記憶部２３に記憶されている部分地図を用いて、部分地図間の相対位置関係を補正し、全体地図を毎回作り直す形態としている。これにより、誤差の蓄積を抑制できる。第２全体地図ＥＭ２の精度の低下を抑制することが可能となる。
【００４４】
第１全体地図ＥＭ１は、Ｓ５０で記憶優先度を算出するためだけに使用される。一方、第２全体地図ＥＭ２は、様々な用途に実際に使用される。従って、第１全体地図ＥＭ１の解像度を第２全体地図ＥＭ２よりも低下させてもよい。これにより、記憶優先度の計算速度を高めつつ、実際に使用される地図の精度を高めることが可能となる。
【００４５】
以上、本明細書が開示する技術の実施例について詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
【００４６】
（変形例）
Ｓ３０において、ロボット１１の全体地図座標系ＥＣ１上での位置および姿勢を推定する方法は、Graph-based SLAM法に限られず、様々な手法を利用可能である。例えば、確率論的手法を用いた各種のフィルタを用いてもよい。このようなフィルタの代表例としては、「ベイズフィルタ」が挙げられる。また、ロボット１１の絶対位置を計測できるセンサ（例：ＧＰＳ）の計測データを用いて、ロボット１１の位置および姿勢を推定してもよい。
【００４７】
第１全体地図ＥＭ１を第２全体地図ＥＭ２として流用してもよい。この場合、第２全体地図ＥＭ２の更新処理（Ｓ７０およびＳ８０）を省略することが可能となる。
【００４８】
第１座標変換部３１によって、複数の部分地図の各々が備える複数の部分地図座標が全体地図座標に変換された場合（Ｓ３０）に、変換後の座標を不図示の記憶部に記憶するとしてもよい。そして、不図示の記憶部に記憶されている座標を参照して、第２全体地図生成部４２が第２全体地図ＥＭ２を生成（Ｓ８０）するとしてもよい。これにより、第２座標変換部４１による座標変換処理（Ｓ７０）を省略することができる。地図作成装置１０の処理負担を軽減することが可能となる。
【００４９】
地図作成装置１０がロボット１１と別体に構成されている場合を説明したが、この形態に限られず、地図作成装置１０は様々な構成を有していてもよい。例えば地図作成装置１０は、ロボット１１に搭載されていてもよい。また地図作成装置１０が備えている地図管理部３０や地図更新部４０は、地図作成装置１０とは別体に構成されていてもよい。例えば地図管理部３０が地図作成装置１０とは別体のサーバであり、地図作成装置１０と通信する態様でもよい。
【００５０】
地図作成装置１０はコンピュータに限られず、例えば、インターネットなどのネットワーク上に配置されたサーバであってもよい。地図作成装置１０は、ネットワークを介して、ロボット１１から部分地図を受信してもよい。地図作成装置１０の汎用性を高めることができる。
【００５１】
地図作成装置１０はコンピュータによって構成されるとしたが、この形態に限られない。サーバなどの情報処理装置が備えるコンピュータ（ＣＰＵ）によって地図作成プログラムが読み込まれることによって、情報処理装置が地図作成装置１０と同様の機能を発揮するとしてもよい。
【００５２】
Ｓ４０において、新しい部分地図ほど第１全体地図ＥＭ１への影響度を高くする方法は、新しい部分地図で上書きする方法に限られない。例えば、新しい部分地図ほど重みづけを重くするなどの方法も使用可能である。
【００５３】
部分地図は環境形状を表すデータ形式であればよく、格子地図形式に限られない。例えば、ポイントクラウドの形式でもよい。
【００５４】
Ｓ２０において、データ保持上限値にはデータ量を用いるとしたが、この形態に限られない。部分地図の枚数で上限値を定めてもよい。
【００５５】
地図作成システム１は、ロボット１１の１台の移動体を備える場合を説明したが、この形態に限られない。２台以上のロボットを備える場合においても、本明細書の技術を適用可能である。
【００５６】
本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【００５７】
ロボット１１は、移動体の一例である。センサ５０は、環境計測センサの一例である。
【符号の説明】
【００５８】
１：地図生成システム    １０：地図作成装置    １１：ロボット    ２１：部分地図受信部    ２３：部分地図記憶部    ３０：地図管理部    ３１：第１座標変換部    ３２：第１全体地図生成部    ３３：記憶優先度算出部    ３４：削除部    ４０：地図更新部    ４１：第２座標変換部    ４２：第２全体地図生成部    ４３：第２全体地図記憶部    ５０：センサ
【図１】
2020135579.tif 000003
【図２】
2020135579.tif 000004
【図３】
2020135579.tif 000005
【図４】
2020135579.tif 000006
【図５】
2020135579.tif 000007
【図６】
2020135579.tif 000008