(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024039143
(43)【公開日】2024-03-22
(54)【発明の名称】軌道設定装置、軌道設定方法、及びプログラム
(51)【国際特許分類】
G05D 1/43 20240101AFI20240314BHJP
G05D 1/683 20240101ALI20240314BHJP
【FI】
G05D1/02 H
G05D1/12 Z
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022143477
(22)【出願日】2022-09-09
(71)【出願人】
【識別番号】504174135
【氏名又は名称】国立大学法人九州工業大学
(71)【出願人】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】100103894
【弁理士】
【氏名又は名称】家入 健
(72)【発明者】
【氏名】田向 権
(72)【発明者】
【氏名】石田 裕太郎
(72)【発明者】
【氏名】柴田 智広
(72)【発明者】
【氏名】山下 勝司
(72)【発明者】
【氏名】藪下 英典
【テーマコード(参考)】
5H301
【Fターム(参考)】
5H301AA02
5H301BB14
5H301CC03
5H301CC06
5H301CC08
5H301CC10
5H301GG08
5H301LL02
5H301LL06
5H301LL11
(57)【要約】
【課題】環境地図を作成する必要がなく処理量を低減できること。
【解決手段】人に追従して移動するロボットの軌道を設定する軌道設定装置は、物体を検出する検出手段と、人とロボットとの距離に基づいてロボットの速度を算出し、速度とロボットのヨー角候補とに基づいて、時刻tのロボットの位置を算出する位置算出手段と、算出されたロボットの位置に対する人の位置のポテンシャルと、算出されたロボットの位置から最も近い障害物のポテンシャルと、ロボットのヨーレート候補に基づいて算出した時刻tのロボットのヨー角と算出されたロボットの位置及び人の位置を通る線の角度との角度差と、を評価パラメータとして含む評価関数を用いて評価を行うことで、複数のヨー角候補及びヨーレート候補の中から1組のヨー角候補及びヨーレート候補を選択し、ロボットの軌道を設定する軌道設定手段と、を備える。
【選択図】
図2
【特許請求の範囲】
【請求項1】
人に追従して移動するロボットの軌道を設定する軌道設定装置であって、
物体を検出する検出手段と、
前記検出手段により検出された人とロボットとの距離に基づいて該ロボットの速度を算出し、該算出した速度とロボットのヨー角候補とに基づいて、時刻tの前記ロボットの位置を算出する位置算出手段と、
少なくとも、前記位置算出手段により算出されたロボットの位置に対する前記検出手段により検出された人の位置のポテンシャルと、前記位置算出手段により算出されたロボットの位置から最も近い、前記検出手段により検出された障害物のポテンシャルと、前記ロボットのヨーレート候補に基づいて算出した時刻tのロボットのヨー角と前記位置算出手段により算出されたロボットの位置及び前記検出手段により検出された人の位置を通る線の角度との角度差と、を評価パラメータとして含む評価関数を用いて評価を行うことで、複数の前記ヨー角候補及びヨーレート候補の中から1組の前記ヨー角候補及びヨーレート候補を選択し、前記ロボットの軌道を設定する軌道設定手段と、
を備える、軌道設定装置。
【請求項2】
請求項1記載の軌道設定装置であって、
前記評価関数は、前記ロボットのヨー角候補と前回選択したヨー角候補との差分を前記評価パラメータとして更に含む、軌道設定装置。
【請求項3】
請求項1又は2記載の軌道設定装置であって、
前記評価関数は、前記ロボットのヨーレート候補と前回選択したヨーレート候補との差分を前記評価パラメータとして更に含む、軌道設定装置。
【請求項4】
請求項1又は2記載の軌道設定装置であって、
前記軌道設定手段は、前記各評価パラメータに予め設定された重み付け係数を夫々乗算し、足し合わせた演算結果が最小となる前記ヨー角候補及びヨーレート候補を選択し、前記ロボットの軌道を設定する、軌道設定装置。
【請求項5】
請求項1又は2記載の軌道設定装置であって、
前記位置算出手段は、前記検出手段により検出された人とロボットとの距離に比例した前記ロボットの速度を算出する、軌道設定装置。
【請求項6】
人に追従して移動するロボットの軌道を設定する軌道設定方法であって、
前記人とロボットとの距離に基づいて該ロボットの速度を算出し、該算出した速度とロボットのヨー角候補とに基づいて、時刻tの前記ロボットの位置を算出するステップと、
少なくとも、前記算出されたロボットの位置に対する前記人の位置のポテンシャルと、前記算出されたロボットの位置から最も近い障害物のポテンシャルと、前記ロボットのヨーレート候補に基づいて算出した時刻tのロボットのヨー角と前記算出されたロボットの位置及び前記人の位置を通る線との角度差と、を評価パラメータとして含む評価関数を用いて評価を行うことで、複数の前記ヨー角候補及びヨーレート候補の中から1組の前記ヨー角候補及びヨーレート候補を選択し、前記ロボットの軌道を設定するステップと、
を含む軌道設定方法。
【請求項7】
人と該人に追従して移動するロボットとの距離に基づいて該ロボットの速度を算出し、該算出した速度とロボットのヨー角候補とに基づいて、時刻tの前記ロボットの位置を算出する処理と、
少なくとも、前記算出されたロボットの位置に対する前記人の位置のポテンシャルと、前記算出されたロボットの位置から最も近い障害物のポテンシャルと、前記ロボットのヨーレート候補に基づいて算出した時刻tのロボットのヨー角と前記算出されたロボットの位置及び前記人の位置を結ぶ線との角度差と、を評価パラメータとして含む評価関数を用いて評価を行うことで、複数の前記ヨー角候補及びヨーレート候補の中から1組の前記ヨー角候補及びヨーレート候補を選択し、前記ロボットの軌道を設定する処理と、
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動ロボットの軌道を設定する軌道設定装置、軌道設定方法、及びプログラムに関する。
【背景技術】
【0002】
自己位置推定及び環境地図を用いてロボットの軌道を設定する軌道設定装置が知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
上記軌道設定装置において、環境地図を作成する必要があるため、処理量が増加する虞がある。
【0005】
本発明は、このような問題点を解決するためになされたものであり、環境地図を作成する必要がなく処理量を低減できる軌道設定装置、軌道設定方法、及びプログラムを提供することを主たる目的とする。
【課題を解決するための手段】
【0006】
上記目的を達成するための本発明の一態様は、
人に追従して移動するロボットの軌道を設定する軌道設定装置であって、
物体を検出する検出手段と、
前記検出手段により検出された人とロボットとの距離に基づいて該ロボットの速度を算出し、該算出した速度とロボットのヨー角候補とに基づいて、時刻tの前記ロボットの位置を算出する位置算出手段と、
少なくとも、前記位置算出手段により算出されたロボットの位置に対する前記検出手段により検出された人の位置のポテンシャルと、前記位置算出手段により算出されたロボットの位置から最も近い、前記検出手段により検出された障害物のポテンシャルと、前記ロボットのヨーレート候補に基づいて算出した時刻tのロボットのヨー角と前記位置算出手段により算出されたロボットの位置及び前記検出手段により検出された人の位置を通る線の角度との角度差と、を評価パラメータとして含む評価関数を用いて評価を行うことで、複数の前記ヨー角候補及びヨーレート候補の中から1組の前記ヨー角候補及びヨーレート候補を選択し、前記ロボットの軌道を設定する軌道設定手段と、
を備える、軌道設定装置
である。
この一態様において、前記評価関数は、前記ロボットのヨー角候補と前回選択したヨー角候補との差分を前記評価パラメータとして更に含んでいてもよい。
この一態様において、前記評価関数は、前記ロボットのヨーレート候補と前回選択したヨーレート候補との差分を前記評価パラメータとして更に含んでいてもよい。
この一態様において、前記軌道設定手段は、前記各評価パラメータに予め設定された重み付け係数を夫々乗算し、足し合わせた演算結果が最小となる前記ヨー角候補及びヨーレート候補を選択し、前記ロボットの軌道を設定してもよい。
この一態様において、前記位置算出手段は、前記検出手段により検出された人とロボットとの距離に比例した前記ロボットの速度を算出してもよい。
上記目的を達成するための本発明の一態様は、
人に追従して移動するロボットの軌道を設定する軌道設定方法であって、
前記人とロボットとの距離に基づいて該ロボットの速度を算出し、該算出した速度とロボットのヨー角候補とに基づいて、時刻tの前記ロボットの位置を算出するステップと、
少なくとも、前記算出されたロボットの位置に対する前記人の位置のポテンシャルと、前記算出されたロボットの位置から最も近い障害物のポテンシャルと、前記ロボットのヨーレート候補に基づいて算出した時刻tのロボットのヨー角と前記算出されたロボットの位置及び前記人の位置を通る線との角度差と、を評価パラメータとして含む評価関数を用いて評価を行うことで、複数の前記ヨー角候補及びヨーレート候補の中から1組の前記ヨー角候補及びヨーレート候補を選択し、前記ロボットの軌道を設定するステップと、
を含む軌道設定方法
であってもよい。
上記目的を達成するための本発明の一態様は、
人と該人に追従して移動するロボットとの距離に基づいて該ロボットの速度を算出し、該算出した速度とロボットのヨー角候補とに基づいて、時刻tの前記ロボットの位置を算出する処理と、
少なくとも、前記算出されたロボットの位置に対する前記人の位置のポテンシャルと、前記算出されたロボットの位置から最も近い障害物のポテンシャルと、前記ロボットのヨーレート候補に基づいて算出した時刻tのロボットのヨー角と前記算出されたロボットの位置及び前記人の位置を結ぶ線との角度差と、を評価パラメータとして含む評価関数を用いて評価を行うことで、複数の前記ヨー角候補及びヨーレート候補の中から1組の前記ヨー角候補及びヨーレート候補を選択し、前記ロボットの軌道を設定する処理と、
をコンピュータに実行させるプログラム
であってもよい。
【発明の効果】
【0007】
本発明によれば、環境地図を作成する必要がなく処理量を低減できる軌道設定装置、軌道設定方法、及びプログラムを提供することができる。
【図面の簡単な説明】
【0008】
【
図1】フォローミー制御の制御系を説明するための図である。
【
図2】本実施形態に係る軌道設定装置の概略的なシステム構成を示すブロック図である。
【
図3】移動ロボットの速度vと、人及び移動ロボットの間の距離dと、の関係の一例を示す図である。
【
図5】本実施形態に係る軌道設定方法のフローを示すフローチャートである。
【
図6】障害物点群を占有格子マップの各グリッドに近似した図である。
【
図7】a個のポテンシャル配列を占有格子マップ上に投影する方法を示す図である。
【
図9】各処理をパイプラインで接続して実行する方法を示す図である。
【発明を実施するための形態】
【0009】
実施形態1
以下、図面を参照して本発明の実施形態について説明する。高齢化社会において、人の生活をサポートするロボットの開発が望まれている。例えば、カフェテリアなどで配膳をサポートする機能や、空港、ショッピングモールなどの大型施設で案内やおもてなしを行う機能、などは、高齢者の自立的な生活に重要となる。
【0010】
そのような重要な機能を実現するために、人を認識し、その人に追従して移動する、所謂フォローミー制御(人追従認識制御)を行う移動ロボットの開発が行われている。本実施形態に係る軌道設定装置は、上記フォローミー制御を行う移動ロボットに搭載され、移動ロボットの軌道を設定する。
【0011】
ここで、上述した移動ロボットのフォローミー制御について、詳細に説明する。
図1は、フォローミー制御の制御系を説明するための図である。
【0012】
移動ロボットは、例えば、LRF(Laser rangefinder)により、追従する人の脚部を検出する(ステップS101)。移動ロボットは、人の脚部のポイントクラウドをクラスタリングし(ステップS102)、人の脚らしさ判定を行う(ステップS103)。移動ロボットは、カメラにより撮影された画像に対して画像処理を行い、追従する人及びその脚部の形状を認識する(ステップS104)。
【0013】
移動ロボットは、脚らしさ判定の結果及び画像処理の認識結果に基づいて、パーティクルフィルタを適用し(ステップS105)、追従する人の座標位置(Waypoint)を算出する(ステップS106)。移動ロボットは、人の移動に応じて、その人の座標位置を生成する。移動ロボットは、生成した人の座標位置を追従する移動制御を行う。
【0014】
移動ロボットは、上述した処理と同時に、例えば、LRF及びRGB-Dなどのカメラにより、障害物点群を生成する(ステップS107)。移動ロボットは、生成した障害物点群に基づいて、障害物のマッピングを行い(ステップS108)、障害物のポテンシャルを算出する(ステップS109)。
【0015】
移動ロボットは、上述した人の座標位置を追従しつつ、障害物のポテンシャルに基づいて障害物を回避するような、各時刻で未来の応答を予測しながら最適化を行うモデル予測制御を行う(ステップS110)。
【0016】
ところで、従来の軌道設定装置は、自己位置推定及び環境地図を用いて移動ロボットの軌道を設定している。このため、軌道設定装置は、環境地図を作成する必要があるため、処理量が増加する虞がある。
【0017】
これに対し、本実施形態に係る軌道設定装置は、上述の如く、先行する人と移動ロボットとの相対的な位置関係を用いて移動ロボットの軌道を設定するため、環境地図を作成する必要がなく処理量を低減できる。
【0018】
図2は、本実施形態に係る軌道設定装置の概略的なシステム構成を示すブロック図である。本実施形態に係る軌道設定装置1は、物体を検出するセンサ2と、移動ロボットの位置を算出する位置算出部3と、移動ロボットの軌道を設定する軌道設定部4と、を備えている。
【0019】
なお、軌道設定装置1は、例えば、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などのプロセッサと、RAM(Random Access Memory)やROM(Read Only Memory)などの内部メモリと、HDD(Hard Disk Drive)やSDD(Solid State Drive)などのストレージデバイスと、ディスプレイなどの周辺機器を接続するための入出力I/Fと、装置外部の機器と通信を行う通信I/Fと、を備えた通常のコンピュータのハードウェア構成を有する。
【0020】
軌道設定装置1は、例えば、プロセッサが内部メモリを利用しながら、ストレージデバイスや内部メモリなどに格納されたプログラムを実行することで、後述の各機能的な構成要素を実現することができる。
【0021】
センサ2は、検出手段の一具体例である。センサ2は、移動ロボットに搭載されたLRFやカメラなどで構成されている。
【0022】
位置算出部3は、位置算出手段の一具体例である。位置算出部3は、e時刻の移動ロボットの位置を算出する。まず、位置算出部3は、センサ2により検出された追従する人(以下、単に人)と移動ロボットとの距離に基づいて、移動ロボットの速度を算出する。
【0023】
位置算出部3は、センサ2により検出された人と移動ロボットとの距離に比例した移動ロボットの速度を算出してもよい。これにより、移動ロボットが人に接近するに従って減速することで安全性を向上させ、移動ロボットが人から離間するに従って増速することで、追従性を向上させている。
【0024】
図3は、移動ロボットの速度vと、人及び移動ロボットの距離dと、の関係の一例を示す図である。位置算出部3は、例えば、下記式を用いて、移動ロボットの速度vを算出する。
【数1】
【0025】
上記式において、v
minは移動ロボットの最低速度、v
maxは移動ロボットの最高速度、dは移動ロボットと人との距離、d
minは移動ロボットと人との最低距離、d
maxは移動ロボットと人との最高距離、αは速度係数である。αは(v
max-v
min)/(d
max-d
min)により算出される。v
min、v
max、d
min、及びd
maxは、予め位置算出部3に設定されていてもよい。例えば、
図3に示すように、v
min=0.0、v
max=0.6、d
min=1.0、d
max=2.0に設定されている。
【0026】
図4は、移動ロボットの移動方向を示す図である。
図4に示す如く、移動ロボットは、人を追従するため、移動範囲が広く略全方位に移動可能である。
図4及び後述の式において、xy
dirは移動ロボットのヨー角候補[rad]、Nは移動ロボットのヨー角候補の数、xy
dir_stepはヨー角候補間の差分[rad]、yawは移動ロボットのヨーレート候補[rad/s]、Mは移動ロボットのヨーレート候補の数、yaw
stepはヨーレート候補間の差分[rad/s]、Lは1軌道上の座標の数、eval
stepは予測の間隔[s]、φ
t-1は1時刻前の移動ロボットのヨー角[rad]である。
【0027】
例えば、0からxydir_step差分で増加させて、N個のヨー角候補xydirが生成される。位置算出部3は、上記算出した速度vと、移動ロボットのヨー角候補xydirと、に基づき、下記式を用いて移動ロボットの移動を直線近似し、e時刻の移動ロボットの2次元座標位置(xte、yte)を算出してもよい。
【0028】
例えば、0から差分yaw
stepで増加させて、M個のヨーレート候補yawが生成される。位置算出部3は、移動ロボットのヨーレート候補yawに基づき、下記式を用いて、e時刻の移動ロボットのヨー角φ
teを算出してもよい。
【数2】
【0029】
位置算出部3は、
図4に示す如く、移動ロボットのヨーレート候補yawに基づき、最後時刻e=Lの移動ロボットのヨー角φ
tLを算出する。
【0030】
位置算出部3は、複数のヨー角候補xydirに対して、夫々、e時刻の移動ロボットの位置(xte、yte)を算出する。また、位置算出部3は、複数のヨーレート候補yawに対して、夫々、e時刻の移動ロボットのヨー角φteを算出する。
【0031】
軌道設定部4は、軌道設定手段の一具体例である。軌道設定部4は、評価関数を用いて、複数のヨー角候補及びヨーレート候補の中から1組のヨー角候補及びヨーレート候補を選択することで、移動ロボットの軌道を設定する。
【0032】
評価関数は、少なくとも、位置算出部3により算出された移動ロボットの位置に対するセンサ2により検出された人の位置のWaypointポテンシャルと、位置算出部3により算出された移動ロボットの位置から最も近い、センサ2により検出された障害物のポテンシャルと、移動ロボットのヨーレート候補に基づいて算出したe時刻の移動ロボットのヨー角と位置算出部3により算出された移動ロボットの位置及びセンサ2により検出された人の位置を通る線の角度との角度差と、を評価パラメータとして含む。
【0033】
軌道設定部4は、位置算出部3により算出された移動ロボットの位置(xte、yte)と、センサ2により検出された人の位置(xw、yw)と、に基づいて、下記式を用いて、Waypointポテンシャルpwを算出する。
【0034】
上記人の位置(x
w、y
w)は、例えば、センサ2により検出された人の各部のうち、移動ロボットから最近傍の部分の位置である。下記式において、σ
wx、σ
wyは、ポテンシャルの分散である。Waypointポテンシャルp
wが低いほど、移動ロボットの人に対する追従性がよくなる。
【数3】
【0035】
軌道設定部4は、位置算出部3により算出された移動ロボットの位置(x
te、y
te)と、センサ2により検出された最近傍の障害物の位置(x
o、y
o)と、に基づいて、下記式を用いて、障害物ポテンシャルp
oを算出する。下記式において、σ
ox、σ
oyは、ポテンシャルの分散である。この障害物ポテンシャルが低いほど、移動ロボットが障害物を回避し易くなる。
【数4】
【0036】
軌道設定部4は、位置算出部3により算出されたe時刻の移動ロボットのヨー角φteと、位置算出部3により算出された移動ロボットの位置(xte、yte)と、センサ2により検出された人の位置(xop、yop)と、に基づいて、下記式を用いて、角度差angleを算出する。
【0037】
atan2(y、x)は、原点とある点(x、y)が成す角度を返す関数である。したがって、atan2(y
op-y
te、x
op-x
te)は、位置算出部3により算出された移動ロボットの位置(x
te、y
te)及びセンサ2により検出された人の位置(x
op、y
op)を通る線の角度を示す。
【数5】
【0038】
なお、評価関数の評価パラメータに、上記移動ロボットと人との角度差angleを含めているのは、移動ロボットのカメラの画角内に人が入るようにするためだけでなく、移動ロボットと、人との方向を合わせることで、移動ロボットと人との間のインターラクション性を向上させるためである。この角度差が小さいほど、移動ロボットと人との間のインターラクション性が向上する。
【0039】
軌道設定部4は、下記式を用いて、上記算出した各評価パラメータpw、po、angleに予め設定された重み付け係数ww、wp、wangleを夫々乗算し、足し合わせた評価関数の評価値Wを算出する。
W=wwpw+wppo+wangleangle
【0040】
なお、重み付け係数ww、wp、wangleは、予め軌道設定部4に設定されているが、ユーザは入力装置などを介して、これら設定値を任意の値に設定変更できる。例えば、移動ロボットの人に対する追従性を重視したい場合、Waypointポテンシャルの重み付け係数wwを他の重み付け係数に対して相対的に大きく設定してもよい。障害物の回避を重視したい場合、障害物ポテンシャルの重み付け係数wpを他の重み付け係数に対して相対的に大きく設定してもよい。人とのインターラクション性を重視したい場合、角度差の重み付け係数wangleを相対的に大きく設定してもよい。
【0041】
軌道設定部4は、各ヨー角候補xydirに対する評価パラメータpw、poを算出し、各ヨーレート候補yawに対する評価パラメータangleを算出する。そして、軌道設定部4は、各ヨー角候補xydir及びヨーレート候補yawに対する評価関数の評価値Wを夫々算出する。
【0042】
軌道設定部4は、上記算出した評価値Wが最小となるヨー角候補xydir及びヨーレート候補yawを選択し、移動ロボットの軌道を設定する。
【0043】
続いて、本実施形態に係る軌道設定方法について説明する。
図5は、本実施形態に係る軌道設定方法のフローを示すフローチャートである。位置算出部3は、センサ2により検出された人と移動ロボットとの距離に基づいて、移動ロボットの速度を算出する(ステップS501)。
【0044】
軌道設定部4は、位置算出部3により算出された移動ロボットの位置(xte、yte)と、センサ2により検出された人の位置(xw、yw)と、に基づいて、Waypointポテンシャルpwを算出する(ステップS502)。
【0045】
軌道設定部4は、位置算出部3により算出された移動ロボットの位置(xte、yte)と、センサ2により検出された最近傍の障害物の位置(xo、yo)と、に基づいて、障害物ポテンシャルpoを算出する(ステップS503)。
【0046】
軌道設定部4は、位置算出部3により算出された最後時刻Lの移動ロボットのヨー角φtLと、位置算出部3により算出された移動ロボットの位置(xte、yte)と、センサ2により検出された人の位置(xop、yop)と、に基づいて、角度差angleを算出する(ステップS504)。
【0047】
軌道設定部4は、算出した各評価パラメータpw、po、angleに予め設定された重み付け係数ww、wp、wangleを夫々乗算し、足し合わせた評価関数の評価値Wを算出する(ステップS505)。
【0048】
軌道設定部4は、上記算出した評価値Wが最小となるヨー角候補xydir及びヨーレート候補yawを選択し、移動ロボットの軌道を設定する(ステップS506)。
【0049】
以上、本実施形態に係る軌道設定装置1において、位置算出部3は、センサ2により検出された人と移動ロボットとの距離に基づいて移動ロボットの速度を算出し、算出した速度と移動ロボットのヨー角候補とに基づいて、時刻tの移動ロボットの位置を算出する。軌道設定部4は、少なくとも、位置算出部3により算出されたロボットの位置に対するセンサ2により検出された人の位置のポテンシャルと、位置算出部3により算出された移動ロボットの位置から最も近い、センサ2により検出された障害物のポテンシャルと、移動ロボットのヨーレート候補に基づいて算出した時刻tの移動ロボットのヨー角と位置算出部3により算出された移動ロボットの位置及びセンサ2により検出された人の位置を通る線の角度との角度差と、を評価パラメータとして含む評価関数を用いて評価を行うことで、複数のヨー角候補及びヨーレート候補の中から1組のヨー角候補及びヨーレート候補を選択し、移動ロボットの軌道を設定する。
【0050】
これにより、先行する人と移動ロボットとの相対的な位置関係を用いて移動ロボットの軌道を設定するため、環境地図を作成する必要がなく処理量を低減できる。また、評価関数の評価パラメータとして、Waypointポテンシャル及び障害物のポテンシャルを含めることで、人に対する追従性及び障害物の回避性を向上させるだけでなく、移動ロボットと人との角度差をさらに含めることで、移動ロボットと、人との方向を合わせることで、移動ロボットと人との間のインターラクション性を向上させることができる。
【0051】
実施形態2
本実施形態2において、評価関数は、上記実施形態1に係る評価パラメータに加えて、今回選択した移動ロボットのヨー角候補と前回選択したヨー角候補との差分を評価パラメータとして更に含む。
【0052】
今回選択した移動ロボットのヨー角候補と前回選択したヨー角候補との差分、すなわち、移動方向の変化が小さいほど、移動ロボットはスムーズに動作できる。このように、移動ロボットの動作性に関する評価パラメータを更に含む評価関数を用いて評価を行うことで、移動ロボットがスムーズに動作できる、より最適な移動ロボットの軌道を設定できる。
【0053】
軌道設定部4は、下記式を用いて、今回選択した移動ロボットのヨー角候補xydirと前回選択したヨー角候補xydir_prevとの差分diffxydirを算出する。
diffxydir=|xydir-xydir_prev|
【0054】
軌道設定部4は、下記式を用いて、算出した各評価パラメータpw、po、diffxydir、angleに予め設定された重み付け係数ww、wp、wxydiff、wangleを夫々乗算し、足し合わせた評価関数の評価値Wを算出する。
W=wwpw+wppo+wxydiffdiffxydir+wangleangle
【0055】
ヨー角候補の重み付け係数wxydiffは、予め軌道設定部4に設定されている。なお、移動ロボットをスムーズに動作させたいなどの動作性を重視する場合、ヨー角候補の重み付け係数wxydiffを他の重み付け係数に対して相対的に大きく設定してもよい。
【0056】
軌道設定部4は、上記算出した評価値Wが最小となるヨー角候補xydir及びヨーレート候補yawを選択し、移動ロボットの軌道を設定する。
【0057】
実施形態3
本実施形態3において、評価関数は、上記実施形態2に係る評価パラメータに加えて、今回選択した移動ロボットのヨーレート候補yawと前回選択したヨーレート候補yawとの差分を評価パラメータとして更に含む。
【0058】
今回選択した移動ロボットのヨーレート候補と前回選択したヨーレート候補との差分、すなわち、移動方向の速度変化が小さいほど、移動ロボットはスムーズに動作できる。このように、移動ロボットの動作性に関する評価パラメータを更に含む評価関数を用いて評価を行うことで、移動ロボットがスムーズに動作できる、より最適な移動ロボットの軌道を設定できる。
【0059】
軌道設定部4は、下記式を用いて、今回選択した移動ロボットのヨーレート候補yawと前回選択したヨーレート候補yawprevとの差分diffyawを算出する。
diffyaw=|yaw-yawprev|
【0060】
軌道設定部4は、下記式を用いて、算出した各評価パラメータpw、po、diffxydir、diffyaw、angleに予め設定された重み付け係数ww、wp、wxydiff、wyaw、wangleを夫々乗算し、足し合わせた評価関数の評価値Wを算出する。
W=wwpw+wppo+wxydiffdiffxydir+wyawdiffyaw+wangleangle
【0061】
ヨーレート候補の重み付け係数wyawは、予め軌道設定部4に設定されている。なお、移動ロボットをスムーズに動作させたいなどの動作性を重視する場合、ヨーレート候補の重み付け係数wyawを他の重み付け係数に対して相対的に大きく設定してもよい。
【0062】
軌道設定部4は、上記算出した評価値Wが最小となるヨー角候補xydir及びヨーレート候補yawを選択し、移動ロボットの軌道を設定する。
【0063】
なお、本実施形態3において、評価関数は、上記実施形態1に係る評価パラメータに加えて、今回選択した移動ロボットのヨーレート候補yawと前回選択したヨーレート候補yawprevとの差分diffyawを評価パラメータとして更に含む構成であってもよい。
【0064】
実施形態4
本実施形態4において、軌道設定装置1は、後述の如く、移動ロボットの予測軌道と占有格子マップとの関係を、LUT(ルックアップテーブル)として予め計算し、そのLUTを用いて、障害物ポテンシャルを算出する。
【0065】
移動ロボットは、例えば、LRF及びRGB-Dなどのカメラにより、障害物点群を生成する。なお、障害物点群は、後述の如く、占有格子マップの各グリッドに近似されるため、疎でよい。
【0066】
軌道設定装置1は、
図6に示す如く、生成された障害物点群を占有格子マップの各グリッドに近似して、マッピングを行う。例えば、obj
sparse個の障害物点群の場合、その計算回数は、obj
sparse回となる。
【0067】
軌道設定装置1は、
図7(a)に示す如く、障害物ポテンシャルを表すa個のポテンシャル配列を算出する。障害物を限りなく薄く考えた場合、障害物ポテンシャルは、障害物を中心とし衝突の危険性を示したもので、障害物に近づくほど衝突の危険性が高くなりポテンシャルが高くなる。
【0068】
障害物ポテンシャルは、上述の障害物ポテンシャルpoの算出方法で算出される。ここで、障害物ポテンシャルの範囲は、移動ロボットの半径rとポテンシャルの分散σoにより決定される。
【0069】
a個は、下記式により算出される。dは、ポテンシャルが十分小さくなる障害物からの距離を示す。resolutionは、占有格子マップのグリッド間隔である。
a=(2×(d/resolution))2
【0070】
軌道設定装置1は、
図7(a)に示す如く、a個のポテンシャル配列の中心を、占有格子マップの各グリッドに近似した障害物点群の各点にそれぞれ合わせ、a個のポテンシャル配列を占有格子マップ上に投影することで、
図7(b)に示す如く、障害物ポテンシャルマップを生成する。なお、ポテンシャル配列を占有格子マップ上に投影した際に、ポテンシャルが重なる点は、高い方の値を採用する。
【0071】
障害物ポテンシャルマップのデータ型は、占有格子マップ型であり、各グリッドの座標および、そのグリッドの値(障害物ポテンシャルの大きさ、スカラ値)を有する。各グリッド値は、移動ロボットを中心(xr=0、yr=0)として、上記障害物ポテンシャルpoの式を用いて算出される。
【0072】
軌道設定装置1は、
図8に示す如く、移動ロボットの予測軌道を、占有格子マップの各グリッドに近似した予測軌道点を求める。軌道設定装置1は、予測軌道点と、障害物ポテンシャルマップと、の関係を算出し、予測軌道点と、障害物ポテンシャルとを対応付けたLUTを生成する。
【0073】
例えば、LUTにおいて、予測軌道点1の座標(5、-2)、予測軌道点2の座標(4、-1)、予測軌道点3の座標(3、-1)、・・・に夫々、障害物ポテンシャルが対応付けられる。これにより、予測軌道点から、LUTを参照するだけで障害物ポテンシャルを即座に得ることができる。
【0074】
本実施形態3に係る軌道設定装置1は、
図9に示す如く、各処理をパイプラインで接続して実行する。例えば、従来、P
sample個の予測軌道点と、obj
real個の障害物点群との間で、最近傍を探索した場合、その探索回数は、P
sample×obj
realとなる。したがって、全体の計算量は、点群生成計算と、探索計算P
sample×obj
realと、ポテンシャル計算P
sampleと、を加算したものになる。
【0075】
なお、実際の値として、例えば、Psampleは、1625であり、objrealは、~308280であり、objsparseは、~9600であり、aは~144となっている。
【0076】
一方で、本実施形態3における計算量は、
図9に示すように、マッピング計算obj
sparse回と、ポテンシャル生成計算obj
sparse×aと、ポテンシャル計算P
sampleと、を加算したものとなる。したがって、P
sample×obj
real>obj
sparse×aであることから、本実施形態3における計算量は、従来と比較して、大幅に少なく抑えることができ、処理の高速化が可能となる。
【0077】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他のさまざまな形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【0078】
本発明は、例えば、
図5に示す処理を、プロセッサにコンピュータプログラムを実行させることにより実現することも可能である。
【0079】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。
【0080】
プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0081】
なお、上述した各実施形態に係る軌道設定装置1を構成する各部は、プログラムにより実現するだけでなく、その一部または全部を、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)などの専用のハードウェアにより実現することもできる。
【符号の説明】
【0082】
1 軌道設定装置、2 センサ、3 位置算出部、4 軌道設定部