(57)【要約】【課題】人混みなどの交通環境下においても、移動装置が交通参加者との干渉を回避しながら目的地まで円滑に移動するように、移動装置の経路を決定できる経路決定装置などを提供することを目的とする。【解決手段】経路決定装置1は、CNNを用いて、ロボット2と交通参加者との干渉が回避されるように、暫定移動速度指令v_cnnを決定し、ロボット2が現在位置から指令v_cnnで移動すると想定したときに、ロボット2に最も近い交通参加者との距離distを、指令v_cnnの信頼度Pに応じて決定し、距離dist及びロボット2の移動速度指令vを独立変数として含む目的関数Gが最大値になるように、DWAを用いて、ロボット2の移動速度指令vを決定する。【選択図】図16
2020160603.tif 000002
【特許請求の範囲】
【請求項１】
移動装置が目的地まで移動するときの経路を、交通参加者が当該目的地までの交通環境に存在する条件下で決定する経路決定装置であって、
所定の予測アルゴリズムを用いて、前記移動装置と前記交通参加者との干渉が回避されるように、前記移動装置の経路の予測結果である予測経路を決定する予測経路決定部と、
当該予測経路の信頼度を算出する信頼度算出部と、
前記移動装置が現在位置から前記予測経路で移動すると想定したときの、前記移動装置に最も近い前記交通参加者と当該移動装置との距離である交通参加者距離を、前記予測経路の前記信頼度に応じて決定する距離決定部と、
前記交通参加者距離及び前記移動装置の速度を独立変数として含む目的関数が最大値になるように、所定の制御アルゴリズムを用いて、前記移動装置の前記経路を決定する経路決定部と、
を備えることを特徴とする経路決定装置。
【請求項２】
請求項１に記載の経路決定装置において、
前記所定の予測アルゴリズムは、ニューラルネットワークであり、
前記信頼度算出部は、当該ニューラルネットワークの出力のばらつきを表すばらつきパラメータを算出し、当該ばらつきパラメータと前記信頼度との関係を表すモデルを用いて、前記信頼度を算出することを特徴とする経路決定装置。
【請求項３】
請求項１又は２に記載の経路決定装置において、
前記距離決定部は、前記移動装置の前記予測経路の周辺領域を複数のセルに分割したときに、前記信頼度に基づいて、当該複数のセルの各々におけるコスト値の大小を算出し、当該コスト値の大小に基づいて、前記交通参加者距離を決定することを特徴とする経路決定装置。
【請求項４】
請求項１ないし３のいずれかに記載の経路決定装置において、
前記所定の制御アルゴリズムは、Dynamic Window Approach を適用したアルゴリズムであることを特徴とする経路決定装置。
【請求項５】
請求項１ないし４のいずれかに記載の経路決定装置と、
移動機構と、
前記経路決定装置によって決定された経路で移動するように前記移動機構を制御する制御部と、
を備えることを特徴とするロボット。
【請求項６】
移動装置が目的地まで移動するときの経路を、交通参加者が当該目的地までの交通環境に存在する条件下で決定する経路決定方法であって、
所定の予測アルゴリズムを用いて、前記移動装置と前記交通参加者との干渉が回避されるように、前記移動装置の経路の予測値である予測経路を決定し、
当該予測経路の信頼度を算出し、
前記移動装置が現在位置から前記予測経路で移動すると想定したときの、前記移動装置に最も近い前記交通参加者と当該移動装置との距離である交通参加者距離を、前記信頼度に応じて決定し、
前記交通参加者距離及び前記移動装置の速度を独立変数として含む目的関数が最大値になるように、所定の制御アルゴリズムを用いて、前記移動装置の前記経路を決定することを特徴とする経路決定方法。
【請求項７】
請求項６に記載の経路決定方法において、
前記所定の予測アルゴリズムは、ニューラルネットワークであり、
当該ニューラルネットワークの出力のばらつきを表すばらつきパラメータを算出し、
当該ばらつきパラメータと前記信頼度との関係を表すモデルを用いて、前記信頼度を算出することを特徴とする経路決定方法。
【請求項８】
請求項６又は７に記載の経路決定方法において、
前記移動装置の周辺領域を複数のセルに分割したときに、前記信頼度に基づいて、当該複数のセルの各々における安全性の高低を算出し、
当該安全性の高低に基づいて、前記交通参加者距離を決定することを特徴とする経路決定方法。
【請求項９】
請求項６ないし８のいずれかに記載の経路決定方法において、
前記所定の制御アルゴリズムは、Dynamic Window Approach を適用したアルゴリズムであることを特徴とする経路決定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットなどの移動装置の経路を決定する経路決定装置などに関する。
【背景技術】
【０００２】
従来、移動装置としてのロボットの経路を決定する経路決定装置として、特許文献１に記載されたものが知られている。この経路決定装置では、歩行者などの交通参加者の速度に基づいて、ロボットが交通参加者に干渉する可能性があると予想される干渉可能性時間が算出され、さらに、交通参加者が所定時間後に移動すると想定される仮想障害物領域が算出される。そして、干渉可能性時間及び仮想障害物領域に基づいて、ロボットの経路が決定される。それにより、ロボットと交通参加者との干渉が回避される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００９−１１０４９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記従来の経路決定装置によれば、交通参加者の干渉可能性時間及び仮想障害物領域を用いている関係上、歩行者などの実際の交通参加者が予測不可能な軌跡で移動したときには、ロボットと交通参加者の干渉状態が頻発してしまう。その結果、ロボットの停止状態が頻発してしまい、商品性が低いという問題がある。特に、人混みが存在する交通環境下では、この問題が顕著になる。
【０００５】
本発明は、上記課題を解決するためになされたもので、人混みなどの交通環境下においても、移動装置が交通参加者との干渉を回避しながら目的地まで円滑に移動するように、移動装置の経路を決定できる経路決定装置などを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するために、請求項１に係る経路決定装置は、移動装置が目的地まで移動するときの経路を、交通参加者が目的地までの交通環境に存在する条件下で決定する経路決定装置であって、所定の予測アルゴリズムを用いて、移動装置と交通参加者との干渉が回避されるように、移動装置の経路の予測結果である予測経路を決定する予測経路決定部と、予測経路の信頼度を算出する信頼度算出部と、移動装置が現在位置から予測経路で移動すると想定したときの、移動装置に最も近い交通参加者と移動装置との距離である交通参加者距離を、予測経路の信頼度に応じて決定する距離決定部と、交通参加者距離及び移動装置の速度を独立変数として含む目的関数が最大値になるように、所定の制御アルゴリズムを用いて、移動装置の経路を決定する経路決定部と、を備えることを特徴とする。
【０００７】
この経路決定装置によれば、所定の予測アルゴリズムを用いて、移動装置と交通参加者との干渉が回避されるように、移動装置の経路の予測結果である予測経路が決定される。さらに、予測経路の信頼度が算出され、移動装置が現在位置から予測経路で移動すると想定したときの、移動装置に最も近い交通参加者と移動装置との距離である交通参加者距離が、予測経路の信頼度に応じて決定される。そして、交通参加者距離及び移動装置の速度を独立変数として含む目的関数が最大値になるように、所定の制御アルゴリズムを用いて、移動装置の経路が決定される。このように、予測経路の信頼度に応じて決定された交通参加者距離を用いて、移動装置の経路が決定されるので、移動装置の経路は、予測経路の信頼度が高いときには、予測経路又はそれに近い経路になるように決定され、一方、予測経路の信頼度が低いときには、予測経路と異なる経路になるように決定されることになる。
【０００８】
それにより、人混みなどの、予測経路の誤差が大きくなる交通条件下においても、自律移動型の移動装置が交通参加者との干渉を回避しながら目的地まで円滑に移動するように、移動装置の経路を決定することができる。その結果、移動装置の商品性を向上させることができる（なお、本明細書における「移動装置の経路を決定する」ことは、移動装置の移動方向及び移動速度を表す値（例えば、後述する移動速度指令）を所定の制御周期で逐次、決定することを含む。さらに、本明細書における「交通参加者」は、歩行者及び車両などの移動可能対象に加えて、不動の障害物も含むとともに、屋外に限らず、屋内に存在する対象も含む。さらに、「交通環境」は、屋外を移動する際の環境に限らず、屋内を移動する際の環境も含む）。
【０００９】
請求項２に係る発明は、請求項１に記載の経路決定装置において、所定の予測アルゴリズムは、ニューラルネットワークであり、信頼度算出部は、ニューラルネットワークの出力のばらつきを表すばらつきパラメータを算出し、ばらつきパラメータと信頼度との関係を表すモデルを用いて、信頼度を算出することを特徴とする。
【００１０】
この経路決定装置によれば、ニューラルネットワークの出力のばらつきを表すばらつきパラメータと信頼度との関係を表すモデルを用いて、信頼度が算出される。この場合、ニューラルネットワークの出力のばらつきは、ニューラルネットワークのモデル化誤差すなわち予測誤差を表すものであるので、そのようなぱらつきパラメータと信頼度との関係を表すモデルを用いることによって、予測経路の信頼度を精度よく算出することができる。
【００１１】
請求項３に係る発明は、請求項１又は２に記載の経路決定装置において、距離決定部は、移動装置の予測経路の周辺領域を複数のセルに分割したときに、信頼度に基づいて、複数のセルの各々におけるコスト値の大小を算出し、コスト値の大小に基づいて、交通参加者距離を決定することを特徴とする。
【００１２】
この経路決定装置によれば、移動装置の予測経路の周辺領域を複数のセルに分割したときに、信頼度に基づいて、複数のセルの各々におけるコスト値の大小が算出され、このコスト値の大小に基づいて、交通参加者距離が決定されるので、交通参加者距離を迅速に決定することができる。
【００１３】
請求項４に係る発明は、請求項１ないし３のいずれかに記載の経路決定装置において、所定の制御アルゴリズムは、Dynamic Window Approach を適用したアルゴリズムであることを特徴とする。
【００１４】
一般に、Dynamic Window Approach は、他の手法と比べて、移動装置の経路決定に要する時間を短縮できるとともに、演算負荷を低減できるという特性を備えている。したがって、この経路決定装置によれば、Dynamic Window Approach を適用したアルゴリズムを用いることによって、経路決定に要する時間の短縮化と演算負荷の低減化を実現しながら、移動装置の経路を決定することができる。
【００１５】
前述した目的を達成するために、請求項５に係るロボットは、請求項１ないし４のいずれかに記載の経路決定装置と、移動機構と、経路決定装置によって決定された経路で移動するように移動機構を制御する制御部と、を備えることを特徴とする。
【００１６】
このロボットによれば、交通参加者との干渉を回避しながら目的地まで円滑に移動することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施形態に係る経路決定装置を適用したロボットの外観を示す図である。
【図２】ロボットによる案内システムの構成を示す図である。
【図３】ロボットの電気的な構成を示すブロック図である。
【図４】学習装置の構成を示すブロック図である。
【図５】第１歩行者の歩行経路を取得するときの斜視図である。
【図６】図５の歩行経路の取得結果の一例を示す図である。
【図７】歩行経路の取得開始時における第２歩行者の配置の第１パターンを示す図である。
【図８】第２歩行者の配置の第２パターンを示す図である。
【図９】第２歩行者の配置の第３パターンを示す図である。
【図１０】第２歩行者の配置の第４パターンを示す図である。
【図１１】第２歩行者の配置の第５パターンを示す図である。
【図１２】第２歩行者の配置の第６パターンを示す図である。
【図１３】第２歩行者の配置の第７パターンを示す図である。
【図１４】シミュレーション環境下の仮想ロボット視点での画像を示す図である。
【図１５】図１４の画像から作成したマスク画像を示す図である。
【図１６】経路決定装置などの機能を示すブロック図である。
【図１７】移動制御処理を示すフローチャートである。
【図１８】暫定移動速度指令の信頼度が高いときの経路決定を示す図である。
【図１９】暫定移動速度指令の信頼度が低いときの経路決定を示す図である。
【発明を実施するための形態】
【００１８】
以下、図面を参照しながら、本発明の一実施形態に係る経路決定装置について説明する。図１に示すように、本実施形態の経路決定装置１は、移動装置としての倒立振子型のロボット２に適用されたものであり、後述する手法によって、交通参加者の存在確率が高い条件下で、ロボット２の経路を決定するものである。
【００１９】
このロボット２は、自律移動型のものであり、図２に示す案内システム３で用いられる。この案内システム３は、ショッピングモールや空港などにおいて、ロボット２が利用者を先導しながらその目的地（例えば店舗や搭乗ゲート）まで案内する形式のものである。
【００２０】
図２に示すように、案内システム３は、所定の領域内を自律移動する複数のロボット２と、複数のロボット２とは別体に設けられ、利用者の目的地が入力される入力装置４と、ロボット２及び入力装置４と相互に無線通信可能なサーバ５とを備えている。
【００２１】
この入力装置４は、パソコンタイプのものであり、利用者（又は操作者）のマウス及びキーボードの操作によって、利用者の目的地が入力されたときに、それを表す無線信号をサーバ５に送信する。サーバ５は、入力装置４からの無線信号を受信すると、内部の地図データに基づき、利用者の目的地自体又は目的地までの中継地点を目的地Ｐｏｂｊに設定し、それを表す目的地信号をロボット２に送信する。
【００２２】
後述するように、ロボット２内の制御装置１０（制御部）は、サーバ５からの目的地信号を無線通信装置１４を介して受信したときには、その目的地信号に含まれる目的地Ｐｏｂｊを読み込み、この目的地Ｐｏｂｊまでの経路を決定する。
【００２３】
次に、ロボット２の機械的な構成について説明する。図１に示すように、ロボット２は、本体２０と、本体２０の下部に設けられた移動機構２１などを備えており、この移動機構２１によって路面上を全方位に移動可能に構成されている。
【００２４】
この移動機構２１は、具体的には、例えば特開２０１７−５６７６３号のものと同様に構成されているので、その詳細な説明はここでは省略するが、円環状の芯体２２、複数のローラ２３、第１アクチュエータ２４（図３参照）及び第２アクチュエータ２５（図３参照）などを備えている。
【００２５】
複数のローラ２３は、芯体２２の円周方向（軸心周り方向）に等角度間隔で並ぶように、芯体２２に外挿されており、複数のローラ２３の各々は、芯体２２の軸心周りに、芯体２２と一体に回転可能になっている。また、各ローラ２３は、各ローラ２３の配置位置における芯体２２の横断面の中心軸（芯体２２の軸心を中心とする円周の接線方向の軸）周りに回転可能になっている。
【００２６】
さらに、第１アクチュエータ２４は、電動機で構成されており、後述する制御入力信号が制御装置１０から入力されたときに、図示しない駆動機構を介して、芯体２２をその軸心周りに回転駆動する。
【００２７】
一方、第２アクチュエータ２５も、第１アクチュエータ２４と同様に、電動機で構成されており、制御入力信号が制御装置１０から入力されたときに、図示しない駆動機構を介して、ローラ２３をその軸心周りに回転駆動する。それにより、本体２０は、路面上を全方位に移動するように、第１アクチュエータ２４及び第２アクチュエータ２５によって駆動される。以上の構成により、ロボット２は、路面上を全方位に移動可能になっている。
【００２８】
次に、ロボット２の電気的な構成について説明する。図３に示すように、ロボット２は、制御装置１０、カメラ１１、ＬＩＤＡＲ１２、加速度センサ１３及び無線通信装置１４をさらに備えている。
【００２９】
この制御装置１０（制御部）は、ＣＰＵ、ＲＡＭ、ＲＯＭ、Ｅ２ＰＲＯＭ、Ｉ／Ｏインターフェース及び各種の電気回路（いずれも図示せず）などからなるマイクロコンピュータで構成されている。このＥ２ＰＲＯＭ内には、ロボット２が案内する場所の地図データ及びＣＮＮ（Convolutional Neural Network）が記憶されている。この場合、ＣＮＮとしては、後述する学習装置３０によって、ＣＮＮのモデルパラメータすなわち結合層の重み及びバイアス項が十分に学習されたものが記憶されている。
【００３０】
カメラ１１は、ロボット２の周辺環境を撮像し、それを表す画像信号を制御装置１０に出力する。また、ＬＩＤＡＲ１２は、レーザ光を用いて、周辺環境内の対象物までの距離などを計測し、それを表す計測信号を制御装置１０に出力する。さらに、加速度センサ１３は、ロボット２の加速度を検出して、それを表す検出信号を制御装置１０に出力する。
【００３１】
制御装置１０は、以上のカメラ１１の画像信号及びＬＩＤＡＲ１２の計測信号を用いて、amlc（adaptive Monte Carlo localization）手法により、ロボット２の自己位置を推定する。また、制御装置１０は、ＬＩＤＡＲ１２の計測信号及び加速度センサ１３の検出信号に基づいて、ロボット２の後述するｘ軸速度ｖ＿ｘ及びｙ軸速度ｖ＿ｙを算出する。
【００３２】
さらに、制御装置１０には、無線通信装置１４が電気的に接続されており、制御装置１０は、この無線通信装置１４を介してサーバ５との間で無線通信を実行する。
【００３３】
次に、本実施形態の経路決定装置１の構成及び経路決定方法の原理について説明する。まず、図４に示す学習装置３０について説明する。この学習装置３０は、後述するＣＮＮのモデルパラメータ（結合層の重み及びバイアス項）の学習などを実行するためのものであり、ＬＩＤＡＲ３１、歩行経路取得部３２、学習用データ取得部３３及びＣＮＮ学習部３４を備えている。これらの要素３２〜３４は、具体的には、図示しないコントローラなどによって構成されている。
【００３４】
まず、一般的な歩行者の歩行経路を学習するために、図５に示すように、第１歩行者Ｍ１を基準となる歩行者として設定し、この第１歩行者Ｍ１が歩行開始地点Ｐｓ（図６参照）から目的地点Ｐｏ（図６参照）まで歩行する場合において、歩行開始時に、その進行方向に複数の第２歩行者Ｍ２が不規則な配置で存在する人混みの交通環境下を設定する。
【００３５】
次いで、ＬＩＤＡＲ３１を用いて、第１歩行者Ｍ１が歩行開始地点Ｐｓから目的地点Ｐｏまで実際に歩行したときの位置の変化と、複数の第２歩行者Ｍ２の位置の変化とを計測し、その計測結果を歩行経路取得部３２に出力する。
【００３６】
そして、歩行経路取得部３２では、ＬＩＤＡＲ３１の計測結果に基づき、第１歩行者Ｍ１の歩行開始地点Ｐｓから目的地点Ｐｏまでの歩行経路Ｒｗを、例えば図６に示すように逐次、取得して記憶する。同図に示すように、第１歩行者Ｍ１の歩行経路Ｒｗは、第１歩行者Ｍ１の進行方向に延びる軸をｘ軸と規定し、第１歩行者Ｍ１の進行方向に直交する軸をｙ軸と規定したときの、２次元のｘ−ｙ座標値として取得される。なお、以下の説明におけるｘ軸及びｙ軸の定義は、図６と同じである。
【００３７】
このｘ軸の原点は、第１歩行者Ｍ１の歩行開始地点Ｐｓに設定され、ｙ軸の原点は、第１歩行者Ｍ１の進行方向の右側の所定位置に設定される。さらに、第１歩行者Ｍ１の歩行開始地点Ｐｓから目的地点Ｐｏに到達するまでの間における第２歩行者Ｍ２の位置が、第１歩行者Ｍ１の歩行経路Ｒｗと紐付けた状態で歩行経路取得部３２に取得される。
【００３８】
これに加えて、歩行経路取得部３２では、第１歩行者Ｍ１の歩行経路Ｒｗが、第２歩行者Ｍ２の歩行パターンを図７〜１３にそれぞれ示す第１〜第７パターンに切り換えながら取得される。この場合、第１及び第２パターンはそれぞれ、図７及び図８に示すように、１０人及び５人の第２歩行者Ｍ２が、その一部が第１歩行者Ｍ１とすれ違いながらｘ軸と平行に第１歩行者Ｍ１側に向かって歩行するパターンである。
【００３９】
また、第３及び第４パターンはそれぞれ、図９及び図１０に示すように、１０人及び５人の第２歩行者Ｍ２が、その一部が第１歩行者Ｍ１と交差しながら、第１歩行者Ｍ１の右側から左側に向かって歩行するパターンである。さらに、第５及び第６パターンはそれぞれ、図１１及び図１２に示すように、第３及び第４パターンとは逆に、１０人及び５人の第２歩行者Ｍ２が、その一部が第１歩行者Ｍ１と交差しながら、第１歩行者Ｍ１の左側から右側に向かって歩行するパターンである。
【００４０】
これに加えて、第７パターンは、図１３に示すように、１０人のうちの５人の第２歩行者Ｍ２が、第１歩行者Ｍ１の右側から左側に向かって歩行し、残りの５人の第２歩行者Ｍ２が第１歩行者Ｍ１の左側から右側に向かって歩行するとともに、それらの一部が第１歩行者Ｍ１と交差しながら歩行するパターンである。
【００４１】
以上のように、歩行経路取得部３２では、第１歩行者Ｍ１の歩行経路Ｒｗが第２歩行者Ｍ２の位置と紐付けた状態で取得され、それらの取得結果が学習用データ取得部３３に出力される。
【００４２】
学習用データ取得部３３では、歩行経路Ｒｗなどの取得結果が歩行経路取得部３２から入力されると、これに基づき、以下に述べる手法により、学習用データを取得／作成する。まず、ｇａｚｅｂｏシミュレータなどのシミュレーション環境下で、前述した第２歩行者Ｍ２に相当する仮想第２歩行者Ｍ２’（図１４参照）と、ロボット２に相当する仮想ロボット（図示せず）を作成する。
【００４３】
次いで、仮想ロボットを、前述した第１歩行者Ｍ１の歩行経路Ｒｗに追従するように移動させながら、仮想第２歩行者Ｍ２’を、歩行経路取得部３２で取得された第２歩行者Ｍ２の位置に従って移動させる。
【００４４】
その移動中において、仮想ロボットの前方の視覚的環境の画像を所定周期でサンプリングし、そのサンプリング結果に基づいて、ＳＳＤ（Single Shot MultiBox Detector）手法により、マスク画像を逐次作成する。例えば、図１４に示すように、シミュレーション環境下で、３人の仮想第２歩行者Ｍ２’が仮想ロボットの前方に位置している場合には、ＳＳＤ手法により、３人の仮想第２歩行者Ｍ２’の位置を取得することにより、図１５に示すマスク画像が作成される。
【００４５】
同図に示すように、このマスク画像では、３人の仮想第２歩行者Ｍ２’の位置が３つの矩形のボックスＢとして表示される。同図において、３つのボックスＢの破線で示す領域は実際には赤色で表示され、それ以外の点描で示す領域は実際には黒色で表示される。
【００４６】
これと同時に、マスク画像の上端部には、サンプリング時の目的地点Ｐｏが矩形の白色ボックスとして表示される。この目的地点Ｐｏは、仮想ロボットの現時点の自己位置を基準としたときの前方の中央位置を０ｄｅｇとして、−９０ｄｅｇ〜９０ｄｅｇの範囲内の値として設定される。
【００４７】
さらに、このマスク画像の下端には、サンプリング時の仮想ロボットの仮想ｘ軸速度ｖ＿ｘ’及び仮想ｙ軸速度ｖ＿ｙ’が、２つの矩形の白色ボックスとして表示される。これらの仮想ｘ軸速度ｖ＿ｘ’及び仮想ｙ軸速度ｖ＿ｙ’はそれぞれ、仮想ロボットのｘ軸方向及びｙ軸方向の速度成分であり、仮想ロボットの最小移動速度ｖ＿ｍｉｎ（例えば値０）と最大移動速度ｖ＿ｍａｘの範囲内の値として設定される。この場合の仮想ロボットのｘ軸方向及びｙ軸方向は、前述した図７などと同様に定義される。
【００４８】
これに加えて、学習用データ取得部３３では、サンプリング時の仮想ロボットの移動方向指令が、「左方向」、「中央方向」及び「右方向」の３つの方向を要素とするベクトル値として設定される。この移動方向指令の場合、例えば、仮想ロボットが直進しているときには、「中央方向」が値１に設定され、それ以外の「左方向」及び「右方向」が値０に設定される。
【００４９】
また、仮想ロボットが右方向に移動しているときには、「右方向」が値１に設定され、それ以外の方向が値０に設定される。この場合、「右方向」は仮想ロボットが直進方向に対して所定角度θ以上、右側の方向に移動するときに値１に設定される。さらに、仮想ロボットが左方向に移動しているときには、「左方向」が値１に設定され、それ以外の方向が値０に設定される。この場合、「左方向」は仮想ロボットが直進方向に対して所定角度θ以上、左側の方向に移動するときに値１に設定される。
【００５０】
次いで、学習用データ取得部３３では、学習用データとして、前述したマスク画像（図１５参照）と移動方向指令とを１組のデータとして紐付けしたものが、前述した所定周期で逐次作成される。そして、最終的に、多数組（数千組以上）の学習用データが作成されたタイミングで、これらの学習用データがＣＮＮ学習部３４に出力される。なお、学習用データ取得部３３において、学習用データを所定周期で作成する毎に、この学習用データをＣＮＮ学習部３４に出力するように構成してもよい。
【００５１】
ＣＮＮ学習部３４では、学習用データ取得部３３から多数組の学習用データが入力されると、これらの学習用データを用いて、ＣＮＮのモデルパラメータの学習が実行される。具体的には、１組の学習用データにおけるマスク画像をＣＮＮに入力し、そのときのＣＮＮの出力に対して、移動方向指令を教師データとして用いる。
【００５２】
この場合、ＣＮＮの出力層は、３ユニットで構成されており、これらの３ユニットからの３つのｓｏｆｔｍａｘ値を要素とする指令（以下「ＣＮＮ出力指令」という）がＣＮＮから出力される。このＣＮＮ出力指令は、移動方向指令と同じ３つの方向（「左方向」、「中央方向」及び「右方向」）を要素とする指令で構成されている。
【００５３】
次いで、移動方向指令とＣＮＮ出力指令の損失関数（例えば平均２乗和誤差）を用い、勾配法により、ＣＮＮの結合層の重み及びバイアス項を演算する。すなわち、ＣＮＮのモデルパラメータの学習演算を実行する。そして、以上の学習演算を学習用データの組数分（すなわち数千回分）、実行することにより、ＣＮＮ学習部３４におけるＣＮＮのモデルパラメータの学習演算が終了する。
【００５４】
さらに、このＣＮＮ学習部３４では、モデルパラメータの学習演算が終了したＣＮＮを用いて、ＣＮＮ出力の信頼度Ｐの学習が以下に述べるように実行される。具体的には、ドロップアウト手法により、ＣＮＮ出力の標準偏差σ及び信頼度Ｐの関係が十分に推論演算され、その演算データがサンプリングされる。
【００５５】
そして、サンプリングされたＣＮＮ出力の標準偏差σ及び信頼度Ｐの演算データに対して、最小２乗法などの回帰分析アルゴリズムを適用することにより、後述する式（６），（７）が導出される。この学習装置３０では、以上のように、ＣＮＮのモデルパラメータの学習及びＣＮＮ出力の信頼度Ｐの学習が実行される。
【００５６】
次に、図１６を参照しながら、本実施形態の経路決定装置１などの構成について説明する。経路決定装置１は、以下に述べる手法によって、ロボット２の経路としての移動速度指令ｖを決定（算出）するものであり、この移動速度指令ｖは、ロボット２のｘ軸速度ｖ＿ｘ及びｙ軸速度ｖ＿ｙの目標となる目標ｘ軸速度ｖ＿ｘ＿ｃｍｄ及び目標ｙ軸速度ｖ＿ｙ＿ｃｍｄを要素とするものである。
【００５７】
同図に示すように、経路決定装置１は、マスク画像作成部５０、移動方向決定部５１、暫定移動速度決定部５２及び移動速度決定部５３を備えており、これらの要素５０〜５３は、具体的には、制御装置１０によって構成されている。なお、以下に述べる各種の制御処理は所定の制御周期ΔＴで実行されるものとする。
【００５８】
まず、マスク画像作成部５０について説明する。このマスク画像作成部５０では、カメラ１１からの画像信号及びＬＩＤＡＲ１２からの計測信号が入力されると、前述したＳＳＤ手法により、マスク画像が作成される。
【００５９】
このマスク画像内には、前述した図１５のマスク画像のボックスＢと同様に、前方の交通参加者のボックス（図示せず）が表示され、仮想ｘ軸速度ｖ＿ｘ’、仮想ｙ軸速度ｖ＿ｙ’及び目的地点Ｐｏに代えて、ロボット２のｘ軸速度ｖ＿ｘ、ｙ軸速度ｖ＿ｙ及び目的地Ｐｏｂｊ（いずれも図示せず）が表示される。
【００６０】
この場合、交通参加者の位置及びサイズは、カメラ１１の画像信号及びＬＩＤＡＲ１２の計測信号に基づいて決定される。また、ロボット２のｘ軸速度ｖ＿ｘ及びｙ軸速度ｖ＿ｙは、ＬＩＤＡＲ１２の計測信号及び加速度センサ１３の検出信号に基づいて決定される。さらに、目的地Ｐｏｂｊは、サーバ５からの目的地信号によって決定される。以上のように作成されたマスク画像は、マスク画像作成部５０から移動方向決定部５１に出力される。
【００６１】
移動方向決定部５１は、前述したＣＮＮ学習部３４でモデルパラメータが学習されたＣＮＮ（図示せず）を備えており、このＣＮＮを用いて、ロボット２の移動方向を以下のように決定する。
【００６２】
まず、移動方向決定部５１では、マスク画像作成部５０からのマスク画像がＣＮＮに入力されると、前述したＣＮＮ出力指令がＣＮＮから出力される。次いで、ＣＮＮ出力指令の３つの要素（「左方向」、「中央方向」及び「右方向」）のうち、最大値の要素の方向がロボット２の移動方向として決定される。そして、以上のように決定されたロボット２の移動方向は、移動方向決定部５１から暫定移動速度決定部５２に出力される。
【００６３】
この暫定移動速度決定部５２では、移動方向決定部５１からのロボット２の移動方向と、ロボット２のｘ軸速度ｖ＿ｘ及びｙ軸速度ｖ＿ｙとに基づき、暫定移動速度指令ｖ＿ｃｎｎを算出する。この暫定移動速度指令ｖ＿ｃｎｎは、ロボット２のｘ軸速度の暫定値ｖ＿ｘ＿ｃｎｎ及びｙ軸速度の暫定値ｖ＿ｙ＿ｃｎｎを要素とするものである。次いで、以上のように決定されたロボット２の暫定移動速度指令ｖ＿ｃｎｎは、暫定移動速度決定部５２から移動速度決定部５３に出力される。
【００６４】
この移動速度決定部５３では、暫定移動速度指令ｖ＿ｃｎｎに基づき、ＤＷＡ（Dynamic Window Approach）を適用したアルゴリズムにより、移動速度指令ｖが決定される。この移動速度指令ｖは、目標ｘ軸速度ｖ＿ｘ＿ｃｍｄ及び目標ｙ軸速度ｖ＿ｙ＿ｃｍｄを要素とするものであり、Dynamic Windowで決定される。また、これらの２つの速度ｖ＿ｘ＿ｃｍｄ，ｖ＿ｙ＿ｃｍｄは、後述する移動制御処理において、ロボット２のｘ軸速度及びｙ軸速度の目標値として用いられる。
【００６５】
移動速度指令ｖは、具体的には、下式（１）に示すように定義された目的関数Ｇ（ｖ）が最大値になるように決定される。
Ｇ（ｖ）＝ α・ｃｎｎ（ｖ）＋ β・ｄｉｓｔ（ｖ）              ・・・（１）
【００６６】
上式（１）のα，βは、所定の重みパラメータであり、ロボット２の動特性に基づいて決定される。また、上式（１）のｃｎｎ（ｖ）は、下式（２）によって算出される関数である。
【００６７】
【数１】
2020160603.tif 000003
【００６８】
さらに、上式（１）のｄｉｓｔ（ｖ）は、ロボット２がｘ軸速度の暫定値ｖ＿ｘ＿ｃｎｎ及びｙ軸速度の暫定値ｖ＿ｙ＿ｃｎｎで移動すると想定したときの、ロボット２に最も近接する交通参加者（障害物）との距離を表す距離関数値であり、この距離関数値ｄｉｓｔ（ｖ）は以下に述べるコストマップ手法によって算出される。
【００６９】
まず、前述した暫定移動速度指令ｖ＿ｃｎｎからロボット２の進行方向を求め、この進行方向の周辺領域を複数のセルを設定する。そして、各セルのコスト値Ｃ＿Ｖａｌｕｅを下式（３），（４）により算出する。
【００７０】
・ｄ＜ｒ＿ｉｎｆのとき
Ｃ＿Ｖａｌｕｅ＝ｄ／ｒ＿ｉｎｆ                                ・・・（３）
・ｄ≧ｒ＿ｉｎｆのとき
Ｃ＿Ｖａｌｕｅ＝１                                            ・・・（４）
【００７１】
上式（３）のｄは、各セルにおいて交通参加者に最も近い距離である。また、ｒ＿ｉｎｆは、Dynamic Windowにおいて、交通参加者からのコストの影響範囲を決定する影響範囲パラメータであり、下式（５）に示す加重平均演算式により算出される。
ｒ＿ｉｎｆ＝ｒ＿ｍａｘ・（１−Ｐ(σ)）＋ｒ＿ｍｉｎ・Ｐ(σ)      ・・・（５）
【００７２】
この式（５）のｒ＿ｍａｘ，ｒ＿ｍｉｎはそれぞれ、影響範囲パラメータの所定の最大値及び所定の最小値であり、ロボット２の動特性に基づいて決定される。また、Ｐ(σ)は、前述したＣＮＮ学習部３４で学習された信頼度であり、下式（６），（７）により算出される。
【００７３】
・σｉ＜Ｔｉのとき
Ｐ（σ）＝ａｉ・σｉ＋ｂｉ                                        ・・・（６）
・σｉ≧Ｔｉのとき
Ｐ（σ）＝０                                                  ・・・（７）
【００７４】
上式（６）において、σｉは、前述したように、ＣＮＮ学習部３４で推論演算をＮ回実行したときのＣＮＮ出力（Softmax値）の標準偏差である。また、ｉは推定クラスであり、推論演算をＮ回実行したときの最大クラス（maximum voting class）が割り当てられる。また、ａｉ，ｂｉは、回帰分析アルゴリズムにより導出されるモデルパラメータである。さらに、Ｔｉは、各クラスのσｉの最大値である。
【００７５】
以上の式（３）〜（７）によって各セルのコスト値Ｃ＿Ｖａｌｕｅを算出し、それらの算出結果において、最もコスト値Ｃ＿Ｖａｌｕｅの高いセルから交通参加者までの距離が前述した距離関数値ｄｉｓｔ（ｖ）に設定される。
【００７６】
距離関数値ｄｉｓｔ（ｖ）は、以上の手法によって算出されるので、ＣＮＮ出力すなわち暫定移動速度指令ｖ＿ｃｎｎの信頼度Ｐ(σ)が高いほど、より大きい値になるように算出されることになる。すなわち、影響範囲パラメータｒ＿ｉｎｆは、上式（５）の加重平均演算式で算出される関係上、暫定移動速度指令ｖ＿ｃｎｎの信頼度Ｐ(σ)が大きいほど、より小さい値になるように算出される。一方、前述した式（３）を参照すると明らかなように、コスト値Ｃ＿Ｖａｌｕｅは、影響範囲パラメータｒ＿ｉｎｆが小さいほど、より大きくなるように算出されることになる。
【００７７】
その結果、コスト値Ｃ＿Ｖａｌｕｅは、暫定移動速度指令ｖ＿ｃｎｎの信頼度Ｐ(σ)が大きいほど、より大きい値として算出されることになる。すなわち、距離関数値ｄｉｓｔ（ｖ）は、暫定移動速度指令ｖ＿ｃｎｎの信頼度Ｐ(σ)が高いほど、より大きい値として算出されることになる。
【００７８】
以上の理由により、暫定移動速度指令ｖ＿ｃｎｎの信頼度Ｐ(σ)が高い条件下では、前述した式（１）の右辺第２項が大きくなるのに伴い、右辺第１項を大きくする必要がなくなることで、ｖ＝ｖ＿ｃｎｎが成立するように、移動速度指令ｖが決定されることになる。すなわち、ＣＮＮ出力である暫定移動速度指令ｖ＿ｃｎｎの信頼度Ｐ(σ)が高い条件下では、暫定移動速度指令ｖ＿ｃｎｎがそのまま移動速度指令ｖとして算出されることになる。
【００７９】
例えば、図１８に示すように、二人の交通参加者（歩行者）７０，７１がロボット２の進行方向に存在する場合において、ＣＮＮ出力である暫定移動速度指令ｖ＿ｃｎｎの信頼度Ｐ(σ)が高いときには、ｖ＝ｖ＿ｃｎｎが成立することになる。
【００８０】
一方、図１９に示すように、二人の交通参加者７２，７３がロボット２の進行方向に存在する場合において、暫定移動速度指令ｖ＿ｃｎｎの信頼度Ｐ(σ)が低い条件下では、移動速度指令ｖは、暫定移動速度指令ｖ＿ｃｎｎと異なる方向の指令として算出されることになる。この場合、両図１７，１８において、半径の異なる複数の円で示す領域（ハッチングで示す領域）は、歩行者からのコストの影響範囲を表しており、この影響範囲は、影響範囲パラメータｒ＿ｉｎｆが大きいほど、より広い範囲になる。
【００８１】
なお、本実施形態では、移動方向決定部５１及び暫定移動速度決定部５２が予測経路決定部に相当し、暫定移動速度指令ｖ＿ｃｎｎが予測経路に相当する。さらに、移動速度決定部５３が信頼度算出部、距離決定部及び経路決定部に相当し、移動速度指令ｖが移動装置の速度及び移動装置の経路に相当する。また、距離関数値ｄｉｓｔが交通参加者距離に相当し、標準偏差σがばらつきパラメータに相当する。
【００８２】
本実施形態の経路決定装置１では、以上のように、目標ｘ軸速度ｖ＿ｘ＿ｃｍｄ及び目標ｙ軸速度ｖ＿ｙ＿ｃｍｄを要素とする移動速度指令ｖが決定される。
【００８３】
次に、図１７を参照しながら、移動制御処理について説明する。この移動制御処理は、ロボット２が上述した２つの目標速度ｖ＿ｘ＿ｃｍｄ，ｖ＿ｙ＿ｃｍｄで移動するように、移動機構２１の２つのアクチュエータ２４，２５を制御するためのものであり、制御装置１０によって所定の制御周期ΔＴで実行される。
【００８４】
同図に示すように、まず、各種データを読み込む（図１７／ＳＴＥＰ１）。この各種データは、前述したカメラ１１、ＬＩＤＡＲ１２、加速度センサ１３及び無線通信装置１４から制御装置１０に入力された信号のデータである。
【００８５】
次いで、前述した目的地信号に含まれる目的地Ｐｏｂｊを読込済みであるか否かを判定する（図１７／ＳＴＥＰ２）。この判定が否定であるとき（図１７／ＳＴＥＰ２…ＮＯ）、すなわち目的地信号をサーバ５から受信してないときには、そのまま本処理を終了する。
【００８６】
一方、この判定が肯定であるとき（図１７／ＳＴＥＰ２…ＹＥＳ）には、前述した図１６の手法により、目標ｘ軸速度ｖ＿ｘ＿ｃｍｄ及び目標ｙ軸速度ｖ＿ｙ＿ｃｍｄを算出する（図１７／ＳＴＥＰ３）。
【００８７】
次いで、目標ｘ軸速度ｖ＿ｘ＿ｃｍｄ及び目標ｙ軸速度ｖ＿ｙ＿ｃｍｄに応じて、所定の制御アルゴリズムにより、ｘ軸制御入力Ｕｘ及びｙ軸制御入力Ｕｙを算出する（図１７／ＳＴＥＰ４）。この場合、所定の制御アルゴリズムとしては、マップ検索などのフィードフォワード制御アルゴリズムや、フィードバック制御アルゴリズムを用いればよい。
【００８８】
次に、ｘ軸制御入力Ｕｘ対応する制御入力信号を第１アクチュエータ２４に出力するとともに、ｙ軸制御入力Ｕｙに対応する制御入力信号を第２アクチュエータ２５に出力する（図１７／ＳＴＥＰ５）。その後、本処理を終了する。それにより、ロボット２の実際のｘ軸速度ｖ＿ｘ及びｙ軸速度ｖ＿ｙが、目標ｘ軸速度ｖ＿ｘ＿ｃｍｄ及び目標ｙ軸速度ｖ＿ｙ＿ｃｍｄになるよう制御される。その結果、ロボット２は、これらの目標速度ｖ＿ｘ＿ｃｍｄ，ｖ＿ｙ＿ｃｍｄで決まる経路に沿って、前方の交通参加者をよけながら目的地Ｐｏｂｊに向かって移動することになる。
【００８９】
以上のように、本実施形態の経路決定装置１によれば、ＣＮＮを用いて、ロボット２と交通参加者との干渉が回避されるように、暫定移動速度指令ｖ＿ｃｎｎが決定される。さらに、暫定移動速度指令ｖ＿ｃｎｎの信頼度Ｐ(σ)が算出され、ロボット２が現在位置から暫定移動速度指令ｖ＿ｃｎｎで移動すると想定したときの、ロボット２に最も近い交通参加者とロボット２との距離を表す距離関数値ｄｉｓｔ（ｖ）が、信頼度Ｐ(σ)に応じて決定される。
【００９０】
そして、距離関数値ｄｉｓｔ（ｖ）及びロボット２の移動速度指令ｖを独立変数として含む目的関数Ｇ（ｖ）が最大値になるように、ＤＷＡを用いて、ロボット２の移動速度指令ｖが決定される。このように、暫定移動速度指令ｖ＿ｃｎｎの信頼度Ｐ(σ)に応じて決定された距離ｄｉｓｔ（ｖ）を用いて、ロボット２の移動速度指令ｖが決定されるので、ロボット２の移動速度指令ｖは、暫定移動速度指令ｖ＿ｃｎｎの信頼度Ｐ(σ)が高いときには、暫定移動速度指令ｖ＿ｃｎｎ又はそれに近い値になるように決定される。一方、暫定移動速度指令ｖ＿ｃｎｎの信頼度Ｐ(σ)が低いときには、ロボット２の移動速度指令ｖは、暫定移動速度指令ｖ＿ｃｎｎと異なる値になるように決定されることになる。
【００９１】
それにより、人混みなどの、暫定移動速度指令ｖ＿ｃｎｎの誤差が大きくなる交通条件下においても、自律移動型のロボット２が交通参加者との干渉を回避しながら目的地まで円滑に移動するように、ロボット２の移動速度指令ｖを決定することができる。
【００９２】
また、信頼度Ｐ(σ)が、これとＣＮＮ出力の標準偏差σとの関係を定義したモデル式（６）を用いて算出される。この場合、ＣＮＮ出力の標準偏差σは、ＣＮＮの出力のばらつきを表すものであるので、ＣＮＮモデル化誤差すなわち予測誤差を表すものに相当する。したがって、そのような標準偏差σと信頼度Ｐ(σ)との関係を定義したモデル式（６）を用いることによって、ＣＮＮ出力である暫定移動速度指令ｖ＿ｃｎｎの信頼度Ｐ(σ)を精度よく算出することができる。それにより、ロボット２の移動速度指令ｖを精度よく決定することができる。
【００９３】
さらに、ロボット２の暫定移動速度指令ｖ＿ｃｎｎが表す進行方向の周辺領域を複数のセルに分割したときに、信頼度Ｐ(σ)に基づいて、複数のセルの各々におけるコスト値の大小が算出され、このコスト値の大小に基づいて、距離関数値ｄｉｓｔ（ｖ）が決定されるので、この距離関数値ｄｉｓｔ（ｖ）を迅速に決定することができる。以上のように、ＤＷＡを適用したアルゴリズムを用いることによって、ロボット２の移動速度指令ｖを、その演算時間の短縮化と演算負荷の低減化を実現しながら決定することができる。
【００９４】
以上の手法により、人混みなどの、ＣＮＮを用いて決定された移動方向の誤差が大きくなる交通条件下においても、自律移動型のロボット２が交通参加者との干渉を回避しながら目的地Ｐｏｂｊまで円滑に移動するように、ロボット２の経路に相当する移動速度指令ｖを決定することができる。それにより、ロボット２が交通参加者に干渉する状態の発生を低下させることができ、商品性を向上させることができる。
【００９５】
なお、実施形態は、移動装置として、ロボット２を用いた例であるが、本発明の移動装置は、これに限らず、目的地まで移動するものであればよい。例えば、車両、車両型のロボット及び２足歩行型のロボットを用いてもよい。
【００９６】
また、実施形態は、所定の予測アルゴリズムとしてＣＮＮを用いた例であるが、本発明の予測アルゴリズムは、これに限らず、ロボットの経路の予測値である予測経路を決定できるものであればよい。例えば、所定の予測アルゴリズムとして、ＲＮＮ（Recurrent Neural Network）及びＤＱＮ（deep Q-network）などを用いてもよい。
【００９７】
さらに、実施形態は、ニューラルネットワークとして、ＣＮＮを用いた例であるが、これに代えて、ＲＮＮ（Recurrent Neural Network）及びＤＱＮ（deep Q-network）などを用いてもよい。
【００９８】
一方、実施形態は、ばらつきパラメータとして、標準偏差σを用いた例であるが、本発明のばらつきパラメータは、これに限らず、ニューラルネットワークの出力のばらつきを表すものであればよい。例えば、ニューラルネットワークの出力とその期待値との２乗平均誤差、すなわち標準偏差σの２乗値を用いてもよい。
【００９９】
また、実施形態は、ばらつきパラメータと信頼度との関係を表すモデルとして、モデル式（６）を用いた例であるが、本発明のモデルは、これに限らず、ばらつきパラメータと信頼度との関係を表すものであればよい。例えば、モデルとして、ばらつきパラメータと信頼度との関係を表すマップを用いてもよい。
【０１００】
さらに、実施形態は、移動機構として、芯体２２及び複数のローラ２３を備えた移動機構２１を用いた例であるが、本発明の移動機構は、これに限らず、ロボットを全方位に移動させることが可能なものであればよい。例えば、移動機構として、球体と複数のローラを組み合わせ、これらのローラによって球体を回転駆動することにより、ロボットを全方位に移動させる構成のものを用いてもよい。
【０１０１】
一方、実施形態は、ＣＮＮをロボット２の制御装置１０のＥ２ＰＲＯＭ内に記憶させた例であるが、ＣＮＮをサーバ５側に記憶させ、経路決定の演算をサーバ５側で実施し、これをロボット２に送信するように構成してもよい。
【０１０２】
また、実施形態は、移動速度決定部５３において、ロボット２の移動速度として、ｘ軸速度ｖ＿ｘ及びｙ軸速度ｖ＿ｙを要素とする移動速度指令ｖをＤＷＡ手法により算出した例であるが、これに代えて、移動速度決定部５３において、ロボット２の移動速度として、ｘ軸速度ｖ＿ｘ及び角速度ωをＤＷＡ手法により算出してもよい。
【符号の説明】
【０１０３】
１  経路決定装置
２  ロボット（移動装置）
１０  制御装置（制御部）
２１  移動機構
５１  移動方向決定部（予測経路決定部）
５２  暫定移動速度決定部（予測経路決定部）
５３  移動速度決定部（信頼度算出部、距離決定部、経路決定部）
７０〜７３  交通参加者
Ｐｏｂｊ  目的地
ｖ＿ｃｎｎ  暫定移動速度指令（予測経路）
ｖ  移動速度指令（移動装置の速度、移動装置の経路）
ｄｉｓｔ  距離関数値（交通参加者距離）
Ｐ  信頼度
Ｇ  目的関数
σ  標準偏差（ばらつきパラメータ）
Ｖ＿Ｖａｌｕｅ  コスト値
【図１】
2020160603.tif 000004
【図２】
2020160603.tif 000005
【図３】
2020160603.tif 000006
【図４】
2020160603.tif 000007
【図５】
2020160603.tif 000008
【図６】
2020160603.tif 000009
【図７】
2020160603.tif 000010
【図８】
2020160603.tif 000011
【図９】
2020160603.tif 000012
【図１０】
2020160603.tif 000013
【図１１】
2020160603.tif 000014
【図１２】
2020160603.tif 000015
【図１３】
2020160603.tif 000016
【図１４】
2020160603.tif 000017
【図１５】
2020160603.tif 000018
【図１６】
2020160603.tif 000019
【図１７】
2020160603.tif 000020
【図１８】
2020160603.tif 000021
【図１９】
2020160603.tif 000022