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

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

▶ オムロン株式会社の特許一覧

特開2024-131007移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム
<>
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図1
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図2
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図3
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図4
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図5
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図6
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図7
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図8
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図9
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図10
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図11
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図12
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図13
  • 特開-移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム 図14
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024131007
(43)【公開日】2024-09-30
(54)【発明の名称】移動経路決定システム、自律型移動装置、移動経路決定方法、プログラム
(51)【国際特許分類】
   G01C 21/34 20060101AFI20240920BHJP
   G08G 1/0962 20060101ALI20240920BHJP
   G05D 1/43 20240101ALI20240920BHJP
【FI】
G01C21/34
G08G1/0962
G05D1/02 K
【審査請求】未請求
【請求項の数】13
【出願形態】OL
(21)【出願番号】P 2023041006
(22)【出願日】2023-03-15
(71)【出願人】
【識別番号】000002945
【氏名又は名称】オムロン株式会社
(74)【代理人】
【識別番号】100145403
【弁理士】
【氏名又は名称】山尾 憲人
(74)【代理人】
【識別番号】100189555
【弁理士】
【氏名又は名称】徳山 英浩
(72)【発明者】
【氏名】鳥居 拓耶
【テーマコード(参考)】
2F129
5H181
5H301
【Fターム(参考)】
2F129AA01
2F129AA02
2F129AA03
2F129AA11
2F129AA14
2F129BB19
2F129CC15
2F129CC31
2F129CC33
2F129DD13
2F129DD21
2F129DD62
2F129GG17
2F129GG18
2F129HH02
2F129HH04
2F129HH12
2F129HH20
2F129HH21
5H181AA01
5H181AA21
5H181AA25
5H181AA26
5H181AA27
5H181BB20
5H181CC03
5H181CC04
5H181CC14
5H181FF04
5H181FF27
5H181FF32
5H301BB05
5H301CC03
5H301CC06
5H301GG08
5H301GG09
5H301LL02
5H301LL03
(57)【要約】
【課題】移動経路の決定の精度の向上を可能にする、移動経路決定システム、自律型移動装置、移動経路決定方法、及び、プログラムを提供する。
【解決手段】移動経路決定システム4は、自律型移動装置1の周囲状況に関する入力データの入力に対して自律型移動装置1の移動経路に関する出力データを出力するように学習された学習済みモデルを用いる学習ベースの第1アルゴリズム8を用いて移動経路を決定する第1モードと、予め定められた移動経路の決定規則を用いる非学習ベースの第2アルゴリズム9を用いて移動経路を決定する第2モードとを有し、周囲状況が学習済みモデルにより学習済みの周囲状況である場合に第1モードを実行し、周囲状況が学習済みの周囲状況でない場合に第2モードを実行する機能を有する演算回路7を備える。
【選択図】図1
【特許請求の範囲】
【請求項1】
自律型移動装置の周囲状況に関する入力データの入力に対して前記自律型移動装置の移動経路に関する出力データを出力するように学習された学習済みモデルを用いる学習ベースの第1アルゴリズムを用いて前記移動経路を決定する第1モードと、予め定められた移動経路の決定規則を用いる非学習ベースの第2アルゴリズムを用いて前記移動経路を決定する第2モードと、を有し、
前記周囲状況が前記学習済みモデルにより学習済みの周囲状況である場合に前記第1モードを実行し、前記周囲状況が前記学習済みの周囲状況でない場合に前記第2モードを実行する機能を有する、演算回路、
を備える、
移動経路決定システム。
【請求項2】
前記学習済みの周囲状況は、前記自律型移動装置の周囲に移動体が存在する周囲状況である、
請求項1に記載の移動経路決定システム。
【請求項3】
前記移動体は、移動についての制御、又は、制御される移動動作を予め把握していない移動体である、
請求項2に記載の移動経路決定システム。
【請求項4】
前記学習済みの周囲状況は、第1入力データを前記学習済みモデルに入力して得られる第1の結果と第2入力データを前記学習済みモデルに入力して得られる第2の結果との類似度が閾値以上である周囲状況であり、
前記第1入力データは、前記周囲状況に関する入力データであり、
前記第2入力データは、前記周囲状況に関する入力データの一部に対して変更を行って得られるデータである、
請求項1に記載の移動経路決定システム。
【請求項5】
前記学習済みの周囲状況は、前記自律型移動装置を目的地点まで移動させる定常時とは異なる非定常時の周囲状況である、
請求項1に記載の移動経路決定システム。
【請求項6】
前記決定規則は、前記自律型移動装置の現在位置と前記自律型移動装置の目的地点とに基づいて前記現在位置から前記目的地点までの最短経路を移動経路として決定するように設定される、
請求項1に記載の移動経路決定システム。
【請求項7】
前記演算回路は、与えられた指示通りに前記自律型移動装置を移動させる第3モードを実行する機能を有する、
請求項1に記載の移動経路決定システム。
【請求項8】
前記学習済みの周囲状況は、前記自律型移動装置の周囲に移動体が存在し、かつ、第1入力データを前記学習済みモデルに入力して得られる第1の結果と第2入力データを前記学習済みモデルに入力して得られる第2の結果との類似度が閾値以上である周囲状況であり、
前記第1入力データは、前記周囲状況に関する入力データであり、
前記第2入力データは、前記周囲状況に関する入力データの一部に対して変更を行って得られるデータである、
請求項1に記載の移動経路決定システム。
【請求項9】
請求項1~8のいずれか一つに記載の移動経路決定システムと、
自律型移動装置の周囲状況を取得するセンサシステムと、
前記移動経路決定システムで決定された移動経路に従って移動する移動機構と、
を備える、
自律型移動装置。
【請求項10】
自律型移動装置の周囲状況に関する入力データの入力に対して前記自律型移動装置の移動経路に関する出力データを出力するように学習された学習済みモデルを用いる学習ベースの第1アルゴリズムと、予め定められた移動経路の決定規則を用いる非学習ベースの第2アルゴリズムとにアクセス可能な演算回路で実行される移動経路決定方法であって、
前記周囲状況が前記学習済みの周囲状況であるかどうかの判断に基づいて、前記周囲状況が前記学習済みモデルにより学習済みの周囲状況である場合に前記第1アルゴリズムを用いて前記移動経路を決定し、前記周囲状況が前記学習済みの周囲状況でない場合に前記第2アルゴリズムを用いて前記移動経路を決定する、
移動経路決定方法。
【請求項11】
前記自律型移動装置の周囲に移動体が存在する場合に前記第1アルゴリズムを用いて前記移動経路を決定し、
前記移動体は、移動についての制御、又は、制御される移動動作を予め把握していない移動体である、
請求項10に記載の移動経路決定方法。
【請求項12】
第1入力データを前記学習済みモデルに入力して得られる第1の結果と第2入力データを前記学習済みモデルに入力して得られる第2の結果との類似度が閾値以上である場合に前記第1アルゴリズムを用いて前記移動経路を決定し、
前記第1入力データは、前記周囲状況に関する入力データであり、
前記第2入力データは、前記周囲状況に関する入力データの一部に対して変更を行って得られるデータである、
請求項10に記載の移動経路決定方法。
【請求項13】
演算回路に、請求項10~12のいずれか一つに記載の移動経路決定方法を実行させるための、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、移動経路決定システム、自律型移動装置、移動経路決定方法、及び、プログラムに関する。
【背景技術】
【0002】
特許文献1は、人混みなどの交通環境下においても、自律移動型のロボットが交通参加者との干渉を回避しながら目的地まで円滑に移動するように、ロボットの経路を決定できる経路決定装置などを提供する。経路決定装置は、CNNを用いて、ロボットと交通参加者との干渉が回避されるように、暫定移動速度指令v_cnnを決定し、ロボットが現在位置から暫定移動速度指令v_cnnで移動すると想定したときに、ロボットに最も近い交通参加者との距離dist及びロボットの暫定移動速度指令v_cnnを独立変数として含む目的関数G(v)が最大値になるように、DWAを用いて、ロボットの移動速度指令vを決定する。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】国際公開第2020/136977号
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に開示された経路決定装置は、CNNを用いて経路(移動経路)を決定する。一般に、このような学習済みモデルを用いる学習ベースのアルゴリズムでは、常に最適な経路が決定されるとは限らない。これは、移動経路の決定の精度の低下の一因となる。
【0005】
本開示は、移動経路の決定の精度の向上を可能にする、移動経路決定システム、自律型移動装置、移動経路決定方法、及び、プログラムを提供する。
【課題を解決するための手段】
【0006】
本開示の一態様にかかる移動経路決定システムは、自律型移動装置の周囲状況に関する入力データの入力に対して前記自律型移動装置の移動経路に関する出力データを出力するように学習された学習済みモデルを用いる学習ベースの第1アルゴリズムを用いて前記移動経路を決定する第1モードと、予め定められた移動経路の決定規則を用いる非学習ベースの第2アルゴリズムを用いて前記移動経路を決定する第2モードと、を有し、前記周囲状況が前記学習済みモデルにより学習済みの周囲状況である場合に前記第1モードを実行し、前記周囲状況が前記学習済みの周囲状況でない場合に前記第2モードを実行する機能を有する、演算回路、を備える。
【0007】
本開示の一態様にかかる自律型移動装置は、上記の移動経路決定システムと、自律型移動装置の周囲状況を取得するセンサシステムと、前記移動経路決定システムで決定された移動経路に従って移動する移動機構と、を備える。
【0008】
本開示の一態様にかかる移動経路決定方法は、自律型移動装置の周囲状況に関する入力データの入力に対して前記自律型移動装置の移動経路に関する出力データを出力するように学習された学習済みモデルを用いる学習ベースの第1アルゴリズムと、予め定められた移動経路の決定規則を用いる非学習ベースの第2アルゴリズムとにアクセス可能な演算回路で実行される移動経路決定方法であって、前記周囲状況が前記学習済みの周囲状況であるかどうかの判断に基づいて、前記周囲状況が前記学習済みモデルにより学習済みの周囲状況である場合に前記第1アルゴリズムを用いて前記移動経路を決定し、前記周囲状況が前記学習済みの周囲状況でない場合に前記第2アルゴリズムを用いて前記移動経路を決定する。
【0009】
本開示の一態様にかかるプログラムは、演算回路に、上記の移動経路決定方法を実行させるための、プログラムである。
【発明の効果】
【0010】
本開示の態様は、移動経路の決定の精度の向上を可能にする。
【図面の簡単な説明】
【0011】
図1】実施の形態1にかかる自律型移動装置のブロック図
図2】実施の形態1にかかる学習済みモデルの推論プログラムの一例のブロック図
図3】実施の形態1にかかる第2アルゴリズムによる移動経路の第1例の説明図
図4】実施の形態1にかかる第2アルゴリズムによる移動経路の第2例の説明図
図5】実施の形態1にかかる第1アルゴリズムによる移動経路の第1例の説明図
図6】実施の形態1にかかる第1アルゴリズムによる移動経路の第2例の説明図
図7】実施の形態1にかかる自律型移動装置の移動経路の決定のフローチャート
図8】実施の形態1にかかる自律型移動装置の移動経路の一例の説明図
図9】実施の形態2にかかる自律型移動装置の移動経路の決定のフローチャート
図10】実施の形態2にかかる第1アルゴリズムによる移動経路の一例の説明図
図11】実施の形態2にかかる第1入力データと第2入力データの移動経路の比較の第1例の説明図
図12】実施の形態2にかかる第1入力データと第2入力データの移動経路の比較の第2例の説明図
図13】実施の形態3にかかる自律型移動装置の移動経路の決定のフローチャート
図14】実施の形態4にかかる自律型移動装置の移動経路の決定のフローチャート
【発明を実施するための形態】
【0012】
[1.実施の形態]
以下、場合によって図面を参照しながら、本開示の実施の形態について説明する。ただし、以下の実施の形態は、本開示を説明するための例示であり、本開示を以下の内容(例えば、各構成要素の形状、寸法、配置等)に限定する趣旨ではない。上下左右等の位置関係は、特に断らない限り、図面に示す位置関係に基づくものとする。以下の実施の形態において説明する各図は、模式的な図であり、各図中の各構成要素の大きさ及び厚さそれぞれの比が、必ずしも実際の寸法比を反映しているとは限らない。また、各要素の寸法比率は図面に図示された比率に限られるものではない。
【0013】
なお、以下の説明において、複数ある構成要素を互いに区別する必要がある場合には、「第1」、「第2」等の接頭辞を構成要素の名称に付すが、構成要素に付した符号により互いに区別可能である場合には、文章の読みやすさを考慮して、「第1」、「第2」等の接頭辞を省略する場合がある。
【0014】
[1.1 実施の形態1]
[1.1.1 構成]
図1は、実施の形態1にかかる自律型移動装置1のブロック図である。自律型移動装置1は、周囲状況に応じて自身の移動経路を決定する。自律型移動装置1の例としては、AMR(Autonomous Mobile Robot)、モバイルマニピュレータ、電動車椅子、人(例えば、視覚障碍者)を支援する自律走行型デバイス等が挙げられる。
【0015】
自律型移動装置1は、センサシステム2と、移動機構3と、移動経路決定システム4と、を備える。
【0016】
センサシステム2は、自律型移動装置1の周囲状況を示す情報を取得する。周囲状況は、自律型移動装置1の移動方向に移動体が存在する状況を含み得る。移動体は、自律型移動装置1の移動経路の決定に影響を及ぼす物体である。別の観点から、移動体は、自律型移動装置1が衝突を避けるべき物体である。一般に、移動体は視認可能である。移動体の状態には、移動している状態と、停止している状態とが含まれ得る。移動体は、他律的に、例えば人に操作されることにより移動可能であってもよいし、自律的に移動可能であってもよい。本実施の形態では、移動体は、人(例えば、歩行者)である。以下では、「移動体」を「人」と表記する場合があるが、これは移動体を人に限定する趣旨ではなく、単に文章の煩雑さを避けて説明を分かりやすくするためである。したがって、移動体は、人に限らず、人以外の動物等の生物であってもよい。移動体は、生物に限らず、無生物であってもよい。無生物の例としては、二輪車、車椅子、自動車、船舶、航空機等の乗り物、ドローン等を含む移動物体が挙げられる。移動体は、AMR、AGV、フォークリフト、モバイルマニピュレータ、視覚障害者を支援する自律走行型デバイス等も含み得る。移動体は、物体の全体に限らず、物体の一部であってもよい。
【0017】
センサシステム2で取得される周囲状況の情報は、周囲状況の画像又は距離のデータを含み得る。周囲状況の画像は、例えば、自律型移動装置1の移動方向の画像を含む。自律型移動装置1の移動方向の画像は、例えば、自律型移動装置1の前方の画像である。画像は、静止画像又は動画像を含み得る。センサシステム2は、周囲状況の画像のデータを取得するための画像センサを含んでよい。画像センサは、特に限定されないが、周囲状況の深度を取得できることが好ましく、RGBDカメラ、ステレオカメラであるとよい。画像センサが、単眼のRGBカメラである場合には、センサシステム2は、周囲状況の深度を取得するためにLidarを備えてよい。周囲状況の距離は、例えば、自律型移動装置1の周囲にある物体までの距離を含む。センサシステム2は、周囲状況の距離のデータを取得するための距離センサを含んでよい。距離センサは、特に限定されないが、Lidarであるとよい。
【0018】
移動機構3は、自律型移動装置1の自律型移動を可能にする機構である。特に、移動機構3は、水平面内において、自律型移動装置1の自律型移動を可能にする機構である。移動機構3には、様々な種類がある。本実施の形態では、移動機構3は、車輪型の構造である。移動機構3は、1以上の駆動輪を含む複数の車輪、及び、1以上の駆動輪を回転させるモータを備える。移動機構3は、車輪型の構造ではなく、二足歩行型等の脚型の構造であってもよい。
【0019】
移動経路決定システム4は、自律型移動装置1の周囲状況に応じて自律型移動装置1の移動経路を決定する。移動経路決定システム4は、インターフェース5と、記憶装置6と、演算回路7と、を備える。
【0020】
インターフェース5は、移動経路決定システム4への情報の入力、及び、移動経路決定システム4からの情報の出力に利用される。インターフェース5は、入出力装置51と、通信装置52と、を含む。入出力装置51は、ユーザからの情報の入力のための入力装置、及び、ユーザへの情報の出力のための出力装置としての機能を有する。入出力装置51は、1以上のヒューマン・マシン・インターフェースを備える。ヒューマン・マシン・インターフェースの例としては、キーボード、ポインティングデバイス(マウス、トラックボール等)、タッチパッド等の入力装置、ディスプレイ、スピーカ等の出力装置、タッチパネル等の入出力装置が挙げられる。通信装置52は、外部装置又はシステムと通信可能に接続される。本実施の形態では、通信装置52は、通信ネットワークを通じたセンサシステム2及び移動機構3との通信に用いられる。通信装置52は、1以上の通信インターフェースを備える。通信装置52は、通信ネットワークに接続可能であり、通信ネットワークを通じた通信を行う機能を有する。通信装置52は、通信プロトコルに準拠している。通信プロトコルは、周知の様々な有線及び無線通信規格から選択され得る。
【0021】
記憶装置6は、演算回路7が利用する情報及び演算回路7で生成される情報を記憶するために用いられる。記憶装置6は、1以上のストレージ(非一時的な記憶媒体)を含む。ストレージは、例えば、ハードディスクドライブ、光学ドライブ、及びソリッドステートドライブ(SSD)のいずれであってもよい。また、ストレージは、内蔵型、外付け型、およびNAS(network-attached storage)型のいずれであってもよい。
【0022】
記憶装置6に記憶される情報は、第1アルゴリズム8と、第2アルゴリズム9と、補助情報10と、を含む。第1アルゴリズム8と、第2アルゴリズム9と、補助情報10とは常に記憶装置6に記憶されている必要はなく、演算回路7で必要とされるときに記憶装置6に記憶されていればよい。
【0023】
第1アルゴリズム8は、学習済みモデル80を用いる学習ベースのアルゴリズムである。学習済みモデル80は、自律型移動装置1の周囲状況に関する入力データの入力に対して自律型移動装置1の移動経路に関する出力データを出力するように学習される。
【0024】
入力データは、特に、自律型移動装置1の周囲に移動体が存在する周囲状況に関する。入力データは、自律型移動装置1に関する自分側データと、移動体に関する相手側データとの少なくとも一方を含む。自分側データは、自律型移動装置1の位置又は姿勢の少なくとも一つを含む。相手側データは、移動体の位置、姿勢又は骨格の少なくとも一つを含む。
【0025】
入力データは、センサシステム2から得られる自律型移動装置1の周囲状況の画像及び距離のデータを用いて決定される。例えば、自分側データは、センサシステム2から得られる自律型移動装置1の周囲状況の距離のデータから自己位置推定技術等を用いて抽出したデータに基づいて決定される。相手側データは、センサシステム2から得られる自律型移動装置1の周囲状況の画像のデータから骨格推定技術又は顔姿勢推定技術等の画像処理技術等を用いて抽出したデータに基づいて決定される。
【0026】
移動体は、移動についての制御、又は、制御される移動動作を予め把握していない移動体である。「移動についての制御を予め把握していない」とは、移動体検出システム4が、移動体の移動がどのように制御されるかについての情報(例えば、移動体の移動の規則)を有していないことを意味する。「制御される移動動作を予め把握していない」とは、移動体検出システム4が、移動体がどのような移動動作を行うかの情報(例えば、移動体の移動経路自体)を有していないことを意味する。換言すれば、移動についての制御、又は、制御される移動動作を予め把握していない移動体は、自律型移動装置1にとって移動経路が未知の(確定できない)移動体であるといえる。別の観点から、移動についての制御、又は、制御される移動動作を予め把握していない移動体は、自律型移動装置1が検出する移動体のうち、「移動についての制御、又は、制御される移動動作を予め把握している移動体」以外の移動体である。「移動についての制御、又は、制御される移動動作を予め把握している移動体」は、例えば、自律型移動装置1が移動する場所に配置される、決まった開閉動作をするゲート装置等が挙げられる。また、同じ移動体であっても、遠距離から移動体を検出し、移動体の移動経路が予め決定されていれば、「移動についての制御、又は、制御される移動動作を予め把握している移動体」となり得る一方で、近距離に移動体が突然現れ、移動体の移動経路がまだ決定されていなければ、「移動についての制御、又は、制御される移動動作を予め把握していない移動体」となり得る。
【0027】
出力データは、特に、移動体との衝突を回避する最短の移動経路に関する。出力データは、自律型移動装置1の移動経路の決定に用いられる情報を含む。移動経路に関する出力データは、自律型移動装置1の移動経路の決定に用いられる情報の例としては、自律型移動装置1の移動目標値が含まれる。自律型移動装置1の移動目標置は、自律型移動装置1の目標位置又は目標姿勢の少なくとも一つを含み得る。
【0028】
このように、学習済みモデル80は、自律型移動装置1の周囲に移動体が存在する周囲状況において移動体と衝突しない最短の移動経路を学習している。学習済みモデル80において、学習済みの周囲状況は自律型移動装置1の周囲に移動体が存在する周囲状況である。特に本実施の形態では、自律型移動装置1の周囲に移動体が存在する周囲状況は、自律型移動装置1が移動体とすれ違う状況に対応する。
【0029】
図2は、学習済みモデル80の推論プログラムの一例のブロック図である。学習済みモデル80は、入力データD1の入力に対して、出力データD2を出力する。入力データD1は、自律型移動装置1の位置を示すデータI11、自律型移動装置1の姿勢を示すデータI12、移動体の位置を示すデータI21、移動体の体姿勢を示すデータI22、及び、移動体の顔姿勢を示すデータI23を含む。出力データD2は、自律型移動装置1の目標位置を示すデータO21、及び、自律型移動装置1の目標姿勢を示すデータO12を示す。
【0030】
学習済みモデル80は、第1~第5ネットワーク機構811~815と、第1~第5アテンション機構821~825と、結合部83と、出力部84と、を含む。
【0031】
第1~第5ネットワーク機構811~815は、時系列順のデータI11~I15から特徴量をそれぞれ抽出する。第1~第5ネットワーク機構811~815は、例えば、長・短記憶(Long short-term memory;LSTM)又はゲート付き回帰型ユニット(Gated recurrent unit;GRU)等の回帰型ニューラルネットワーク(Recurrent neural network;RNN)のアーキテクチャを含む。
【0032】
第1~第5アテンション機構821~825は、第1~第5ネットワーク機構811~815にそれぞれ接続され、テンポラルアテンション機構を含む。これによって、例えば、時系列順のデータI11において、最も重要と考えられる時点のデータI11の特徴量が抽出され、結合部83に入力される。
【0033】
結合部83は、データI11,I21,I21~I23の特徴量をまとめて出力部84に入力する。結合部83は、第1~第5アテンション機構821~825からの最も重要と考えられる時点のデータI11,I21,I21~I23の特徴量を、出力部84に入力する。
【0034】
出力部84は、結合部83からの特徴量から、出力データD2を出力する。出力部84は、例えば、全結合層を含む。全結合層は、例えば、ソフトマックス関数を含む。
【0035】
第1アルゴリズム8は、入力データD1を学習済みモデル80に入力し、学習済みモデル80から出力データD2を出力させる。出力データD2は、自律型移動装置1の目標位置を示すデータO21、及び、自律型移動装置1の目標姿勢を示すデータO12を含む。第1アルゴリズム8を用いれば、自律型移動装置1の位置及び姿勢並びに移動体の位置、体姿勢及び顔姿勢に基づいて、自律型移動装置1の目標位置及び目標姿勢が得られる。したがって、自律型移動装置1の移動経路が決定可能である。
【0036】
第2アルゴリズム9は、予め定められた移動経路の決定規則を用いる非学習ベースのアルゴリズムである。第2アルゴリズム9は、入力として、開始地点(現在位置)と、目的地点(ゴール位置)と、自律型移動装置1の周囲の地図情報(マップ情報)と、自律型移動装置1の周囲に存在する移動体の移動予測の結果とを用いて、出力として、開始地点から目的地点からまでの最短経路を求める。最短経路を求める方法としては、探索ベースの手法を用いることができる。開始地点から目的地点からまでの最短経路は、移動体と衝突しないように設定されるため、移動体の移動予測の結果により変化し得る。最短経路を設定するアルゴリズム、及び、移動体の移動予測のアルゴリズムは、従来周知のアルゴリズムを適用することができる。
【0037】
補助情報10は、第1アルゴリズム8又は第2アルゴリズム9で移動経路を決定する際に必要な情報を含み得る。本実施の形態では、補助情報10は、開始地点、目的地点、地図情報、及び、移動経路が予め登録されている移動体を含み得る。開始地点、目的地点、及び、移動経路が予め登録されている移動体は事前に与えられ得る。地図情報は、事前に与えられてもよいし、センサシステム2を用いて自動的に生成されてもよい。
【0038】
演算回路7は、移動経路決定システム4の動作を制御する回路である。演算回路7は、インターフェース5に接続され、記憶装置6にアクセス可能(つまり、第1アルゴリズム8、第2アルゴリズム9及び補助情報10にアクセス可能)である。演算回路7は、例えば、1以上のプロセッサ(マイクロプロセッサ)と1以上のメモリとを含むコンピュータシステムにより実現され得る。1以上のプロセッサが(1以上のメモリ又は記憶装置6に記憶された)プログラムを実行することで、演算回路7としての機能を実現する。プログラムは、ここでは記憶装置6に予め記録されているが、インターネット等の電気通信回線を通じて、又はメモリカード等の非一時的な記録媒体に記録されて提供されてもよい。
【0039】
演算回路7は、自律型移動装置1の移動経路を決定する移動経路決定処理を実行する。移動経路決定処理において、演算回路7は、第1モードと、第2モードとを有する。第1モードは、第1アルゴリズム8を用いて移動経路を決定する。第2モードは、第2アルゴリズム9を用いて移動経路を決定する。
【0040】
図3及び図4を参照して、第2アルゴリズム9による移動経路の決定について説明する。図3及び図4は、施設100において、自律型移動装置1が、開始地点P1から目的地点P2まで移動する場合を示す。
【0041】
図3は、第2アルゴリズム9による移動経路の第1例の説明図である。第1例では、自律型移動装置1の周囲に移動体200が存在していない。そのため、第2アルゴリズム9は、移動体200の移動予測の結果に左右されず、開始地点P1から目的地点P2までの最短経路を、移動経路M11として決定する。
【0042】
図4は、第2アルゴリズム9による移動経路の第2例の説明図である。第2例では、自律型移動装置1の周囲に移動体200が存在する。第2アルゴリズム9は、移動体200の移動予測の結果から、移動体200と衝突する可能性がある領域R1を避けた開始地点P1から目的地点P2までの最短経路を、移動経路M12として決定する。移動経路M12は、領域R1を迂回するため、移動経路M11よりも長い。
【0043】
領域R1が大きいほど、移動経路M12は、移動経路M11より長くなる可能性がある。領域R1の大きさは、移動体200の移動予測の精度に依存する可能性が高い。移動体200の移動予測の精度が悪いほど、領域R1は広くなり、移動経路M12は、領域R1を避けて大回りに設定され得る。つまり、移動体200の移動予測の精度が低いと衝突リスクを考慮して、移動体200から離れるように移動経路が生成される。
【0044】
このように、第2アルゴリズム9は、自律型移動装置1の周囲に移動体200が存在しない場合は、自律型移動装置1の移動経路を精度よく決定できる可能性が高い。一方、第2アルゴリズム9は、自律型移動装置1の周囲に移動体200が存在する場合は、移動体200の移動予測の精度の影響を受けやすいから、自律型移動装置1の移動経路を精度よく決定できる可能性が低くなりやすい。つまり、第2アルゴリズム9は、自律型移動装置1の周囲に移動体200が存在しなければ効率が良いが、移動体200の移動予測の結果の精度が悪いと効率が悪くなる傾向がある。
【0045】
図5及び図6を参照して、第1アルゴリズム8による移動経路の決定について説明する。図5及び図6は、図3及び図4と同様に、施設100において、自律型移動装置1が、開始地点P1から目的地点P2まで移動する場合を示す。
【0046】
図5は、第1アルゴリズム8による移動経路の第1例の説明図である。第1例では、自律型移動装置1の周囲に移動体200が存在する。第1アルゴリズム8は、学習済みモデル80を用いて移動経路M21を決定する。上述したように、学習済みモデル80は、自律型移動装置1の周囲に移動体200が存在する周囲状況において移動体200と衝突しない最短の移動経路を学習している。よって、第1アルゴリズム8による移動経路M21は、第2アルゴリズム9による移動経路M12よりも短くなる可能性が高い。
【0047】
図6は、第1アルゴリズム8による移動経路の第2例の説明図である。第2例では、自律型移動装置1の周囲に移動体200が存在していない。移動体200が存在しない場合、第1アルゴリズム8は、学習済みモデル80に、移動体200に関する情報(位置、体姿勢及び顔姿勢)を入力できない。移動体200が存在しない周囲状況は、学習済みモデル80にとっては未学習の周囲状況にあたる。この場合、第1アルゴリズム8は、移動経路M21より長い移動経路M22を決定したり、場合によっては、移動経路を決定するタスクを完了できなかったりする。つまり、学習ベースの第1アルゴリズム8は、常に最適(タクトタイムが短い)な移動経路を出力するとは限らない。特に、第1アルゴリズム8は、学習済みモデル80を用いるため、出力データを生成する処理の中身がブラックボックスである。また、学習済みモデル80の精度は、学習済みモデル80の機械学習に用いた学習用データセットの種類及び数に依存し得る。不足しているデータがあると、適切でない移動経路が生成され得る。
【0048】
このように、第1アルゴリズム8は、自律型移動装置1の周囲状況が、学習済みモデル80にとって学習済みの周囲状況である場合には、自律型移動装置1の移動経路を精度よく決定できる可能性が高い。一方、第1アルゴリズム8は、自律型移動装置1の周囲状況が、学習済みモデル80にとって学習済みの周囲状況でない場合(つまり、未学習の周囲状況である場合)には、自律型移動装置1の移動経路を精度よく決定できる可能性が低くなりやすい。本実施の形態では、第1アルゴリズム8は、自律型移動装置1の周囲に移動体200が存在すれば効率が良いが、自律型移動装置1の周囲に移動体200が存在しなければ効率が悪くなる傾向がある。
【0049】
演算回路7は、自律型移動装置1の移動経路の決定にあたって、第1アルゴリズム8と第2アルゴリズム9とを使い分ける。図7は、自律型移動装置1の演算回路7が実行する移動経路の決定のフローチャートである。
【0050】
演算回路7は、センサシステム2から周囲状況を取得する(S11)。
【0051】
演算回路7は、周囲状況に基づいて、自律型移動装置1の周囲に移動体が存在するかどうかを判断する(S12)。一例として、センサシステム2から得られる自律型移動装置1の周囲状況の画像及び距離のデータを用いて、移動体が存在するかどうかが判断される。本実施の形態では、自律型移動装置1の周囲に移動体が存在する周囲状況は、学習済みの周囲状況にあたる。よって、このステップS12は、周囲状況が学習済みの周囲状況であるかどうかを判断することに等しい。
【0052】
演算回路7は、自律型移動装置1の周囲に移動体が存在することを確認すると(S12;YES)、第1モードを実行する。第1モードでは、演算回路7は、第1アルゴリズム8を選択し(S13)、第1アルゴリズム8を用いて、自律型移動装置1の移動経路を決定する(S14)。これは、本実施の形態では、周囲状況が学習済みの周囲状況であることを確認し、第1アルゴリズム8を用いて移動経路を決定することに等しい。
【0053】
演算回路7は、自律型移動装置1の周囲に移動体が存在しないことを確認すると(S12;NO)、第2モードを実行する。第2モードでは、演算回路7は、第2アルゴリズム9を選択し(S15)、第2アルゴリズム9を用いて、自律型移動装置1の移動経路を決定する(S16)。これは、本実施の形態では、周囲状況が学習済みの周囲状況でないことを確認し、第2アルゴリズム9を用いて移動経路を決定することに等しい。
【0054】
演算回路7は、決定した移動経路に基づいて、移動機構3を駆動する(S17)。
【0055】
その後、ステップS11に戻り、演算回路7は、再び、第1アルゴリズム8と第2アルゴリズム9とのいずれを選択するかを決定する。ここで、第1アルゴリズム8と第2アルゴリズム9との切り替えの判断は、例えば、1秒間隔で実行されてよい。
【0056】
図8は、自律型移動装置1の移動経路の一例の説明図である。図8は、施設110において、自律型移動装置1が、開始地点P1から目的地点P2まで移動する場合を示す。
【0057】
図8に示すように、施設110には、狭い通路120がある。自律型移動装置1から見て通路120の先に移動体200が存在する。狭い通路120において、自律型移動装置1と移動体200とがすれ違う可能性が高い。開始地点P1においては、演算回路7は、自律型移動装置1の周囲に移動体200が存在すると判断する。よって、演算回路7は、第1アルゴリズム8を選択し、第1アルゴリズム8を用いて、自律型移動装置1の移動経路M1を決定する。自律型移動装置1の周囲に移動体200が存在すると判断している間は、第1アルゴリズム8により決定された移動経路M1に沿って自律型移動装置1が移動し、地点P3に到達する。地点P3において、移動体200とのすれ違いが終了する。地点P3においては、演算回路7は、自律型移動装置1の周囲に移動体200が存在しないと判断する。よって、演算回路7は、第2アルゴリズム9を選択し、第2アルゴリズム9を用いて、自律型移動装置1の移動経路M2を決定する。自律型移動装置1の周囲に移動体200が存在しないと判断している間は、第2アルゴリズム9により決定された移動経路M2に沿って自律型移動装置1が移動し、目的地点P2に到達する。
【0058】
移動経路決定システム4は、自律型移動装置1が開始地点P1から地点P3まで移動する期間T1においては第1アルゴリズム8を使用して移動経路M1を決定し、地点P3から目的地点P2まで移動する期間T2においては第2アルゴリズム9を使用して移動経路M2を決定する。
【0059】
このように、移動経路決定システム4は、自律型移動装置1の周囲状況に応じて、学習ベースの第1アルゴリズム8と非学習ベースの第2アルゴリズム9とから、自律型移動装置1の移動経路を精度よく決定できるほうを選択して、移動経路を決定する。そのため、移動経路決定システム4は、移動経路の決定の精度の向上を可能にする。
【0060】
[1.1.2 効果等]
以上述べた移動経路決定システム4は、自律型移動装置1の周囲状況に関する入力データD1の入力に対して自律型移動装置1の移動経路に関する出力データD2を出力するように学習された学習済みモデル80を用いる学習ベースの第1アルゴリズム8を用いて移動経路を決定する第1モードと、予め定められた移動経路の決定規則を用いる非学習ベースの第2アルゴリズム9を用いて移動経路を決定する第2モードと、を有し、周囲状況が学習済みモデル80により学習済みの周囲状況である場合に第1モードを実行し、周囲状況が学習済みの周囲状況でない場合に第2モードを実行する機能を有する、演算回路7を備える。この構成は、移動経路の決定の精度の向上を可能にする。
【0061】
移動経路決定システム4において、学習済みの周囲状況は、自律型移動装置1の周囲に移動体200が存在する周囲状況である。この構成は、自律型移動装置1の周囲に移動体200が存在する場合の移動経路の決定の精度の向上を可能にする。
【0062】
移動経路決定システム4において、移動体200は、移動についての制御、又は、制御される移動動作を予め把握していない移動体である。この構成は、移動経路が未知の移動体が存在する場合の移動経路の決定の精度の向上を可能にする。
【0063】
移動経路決定システム4において、決定規則は、自律型移動装置1の現在位置と自律型移動装置1の目的地点とに基づいて現在位置から目的地点までの最短経路を移動経路として決定するように設定される。この構成は、自律型移動装置1の周囲に移動体200が存在しない場合の移動経路の決定の精度の向上を可能にする。
【0064】
以上述べた自律型移動装置1は、移動経路決定システム4と、自律型移動装置1の周囲状況を取得するセンサシステム2と、移動経路決定システム4で決定された移動経路に従って移動する移動機構3と、を備える。
【0065】
以上述べた移動経路決定システム4は、以下の移動経路決定方法を実行しているといえる。移動経路決定方法は、自律型移動装置1の周囲状況に関する入力データD1の入力に対して自律型移動装置1の移動経路に関する出力データD2を出力するように学習された学習済みモデル80を用いる学習ベースの第1アルゴリズム8と、予め定められた移動経路の決定規則を用いる非学習ベースの第2アルゴリズム9とにアクセス可能な演算回路7で実行される移動経路決定方法であって、周囲状況が学習済みの周囲状況であるかどうかを判断に基づいて、周囲状況が学習済みモデル80により学習済みの周囲状況である場合に第1アルゴリズム8を用いて移動経路を決定し、周囲状況が学習済みの周囲状況でない場合に第2アルゴリズム9を用いて移動経路を決定する。この構成は、移動経路の決定の精度の向上を可能にする。
【0066】
移動経路決定方法において、自律型移動装置1の周囲に移動体が存在する場合に第1アルゴリズム8を用いて移動経路を決定する。移動体200は、移動についての制御、又は、制御される移動動作を予め把握していない移動体である。この構成は、移動経路の決定の精度の向上を可能にする。
【0067】
移動経路決定システム4は、演算回路7を利用して実現されている。つまり、移動経路決定システム4が実行する移動経路決定方法は、演算回路7がプログラムを実行することにより実現され得る。このプログラムは、演算回路7に、移動経路決定方法を実行させるためのコンピュータプログラムである。このようなプログラムは、移動経路の決定の精度の向上を可能にする。
【0068】
[1.2 実施の形態2]
[1.2.1 構成]
図1に示す実施の形態1にかかる自律型移動装置1と同様に、実施の形態2にかかる自律型移動装置1は、センサシステム2、移動機構3、及び、移動経路決定システム4を備える。実施の形態2にかかる移動経路決定システム4は、演算回路7による移動経路決定方法が実施の形態1と異なる。
【0069】
図9は、実施の形態2にかかる自律型移動装置の演算回路7が実行する移動経路の決定のフローチャートである。
【0070】
演算回路7は、センサシステム2から周囲状況を取得する(S21)。
【0071】
演算回路7は、周囲状況に基づいて、自律型移動装置1の周囲に移動体が存在するかどうかを判断する(S22)。
【0072】
演算回路7は、自律型移動装置1の周囲に移動体が存在することを確認すると(S22;YES)、自律型移動装置1の周囲状況に関する学習済みモデル80の類似度が閾値以上であるかどうかを判断する(S23)。ここで、類似度は、第1入力データを学習済みモデル80に入力して得られる第1の結果と第2入力データを学習済みモデル80に入力して得られる第2の結果との類似度である。第1入力データ及び第2入力データについては後述する。
【0073】
演算回路7は、自律型移動装置1の周囲に移動体が存在することを確認し、かつ、類似度が閾値以上であることを確認すると(S23;YES)、第1モードを実行する。第1モードでは、演算回路7は、第1アルゴリズム8を選択し(S24)、第1アルゴリズム8を用いて、自律型移動装置1の移動経路を決定する(S25)。
【0074】
演算回路7は、自律型移動装置1の周囲に移動体が存在しないことを確認する(S22;NO)か、類似度が閾値以上ではないことを確認する(S23;NO)と、第2モードを実行する。第2モードでは、演算回路7は、第2アルゴリズム9を選択し(S26)、第2アルゴリズム9を用いて、自律型移動装置1の移動経路を決定する(S27)。これは、本実施の形態では、周囲状況が学習済みの周囲状況でないことを確認し、第2アルゴリズム9を用いて移動経路を決定することに等しい。
【0075】
演算回路7は、決定した移動経路に基づいて、移動機構3を駆動する(S28)。
【0076】
このように、実施の形態2では、学習済みの周囲状況は、自律型移動装置1の周囲に移動体が存在し、かつ、入力データを学習済みモデル80に入力して得られる第1の結果と検証データを学習済みモデル80に入力して得られる第2の結果との類似度が閾値以上である周囲状況である。つまり、実施の形態2では、自律型移動装置1の周囲に移動体が存在する場合でも、類似度が閾値未満である周囲状況は、学習済みの周囲状況とは判断されない。
【0077】
つまり、自律型移動装置1の周囲に移動体200が存在する場合であっても、移動体200は、膨大な移動経路を進み得る。そのため、移動体200が移動する可能性があるすべてに移動経路を考慮して学習済みモデル80を構築することは現実的に難しく、自律型移動装置1の周囲に移動体200が存在する場合であっても、特定の周囲状況においては、学習が不十分、つまりは、学習用データセットの量が不十分であるために、自律型移動装置1の移動経路を適切に決定できない場合があり得る。
【0078】
図10は、第1アルゴリズム8による移動経路の一例の説明図である。図10では、自律型移動装置1の周囲に移動体200が存在する。移動体200が移動経路M31で移動する周囲状況について学習が十分にされているが、移動体200が移動経路M32で移動する周囲状況について学習が十分にされていないとする。この場合、移動体200が移動経路M31で移動する周囲状況については、第1アルゴリズム8は、学習済みモデル80により適切な移動経路M21を決定することができる。一方で、移動体200が移動経路M32で移動する周囲状況については、第1アルゴリズム8は、学習済みモデル80により適切な移動経路を決定できず、例えば、移動体200に衝突する可能性があるように移動経路M23を決定してしまう可能性がある。
【0079】
学習済みモデル80にとって学習済みの周囲状況では、入力データの変化に対する出力データの変化は比較的小さいが、学習済みモデル80にとって学習済みでない周囲状況では、入力データの変化に対する出力データの変化は比較的大きくなる傾向が見られる。そこで、本実施の形態では、自律型移動装置1の周囲に移動体200が存在することに加えて、類似度が閾値以上であることを、学習済みの周囲状況であることの条件としている。
【0080】
類似度は、例えば、第1の結果を示すベクトルと第2の結果を示すベクトルとの間の距離で与えられ得る。類似度は、例えば、尤度、出力値(例えば、進行方向、速度等)、判断結果(減速、停止)間のばらつきであってもよい。第1の結果及び第2の結果は、学習済みモデル80の出力データであってもよいし、学習済みモデル80の中間データであってもよい。学習済みモデル80の中間データは、例えば、図2を参照すると、結合部83から出力される特徴量を示すデータであってよい。
【0081】
第1入力データは、センサシステム2から得られる周囲状況に関する入力データである。第2入力データは、センサシステム2から得られる周囲状況に関する入力データの一部に対して変更を行って得られるデータである。変更の例としては、入力データに対して部分的に予め定めた量以下の変更を加えること、入力データに含まれる複数のデータのうちの一部のデータの値を一定値変更すること、入力データの元になる周囲状況の画像のデータに含まれる多くの情報のうちの特定の種類の情報に対して予め定めた程度の変更を加えること、入力データの元になる周囲状況の画像のデータに異なる種類の所定量のデータを一部追加すること、入力データの元になる周囲状況の画像から抽出したデータの一部に一定程度内の変更を加えること、時系列順の周囲状況の画像のデータの範囲を一定時間以内で入力データと異ならせること、が挙げられる。時系列順の周囲状況の画像のデータの範囲を一定時間以内で入力データと異ならせるとは、例えば、入力データが第1時間を中心とする時系列順のデータである場合に、第1時間の一定時間前又は後の第2時間を中心とする時系列順のデータを第2入力データとすることである。このような変更により得られる第2入力データは、第1入力データの一部について一定範囲内又は一定量内で異なる情報となっているデータであるといえる。第2入力データは、類似度を求めるために仮想的に生成される検証データである。変更の程度は、第1入力データと第2入力データとが、同じ周囲状況に対応する範囲で設定されるとよい。
【0082】
図11及び図12を参照して、第1入力データと第2入力データについて説明する。
【0083】
図11は、第1入力データと第2入力データの移動経路の比較の第1例の説明図である。第1例は、学習済みの周囲状況に対応する。自律型移動装置1の移動経路I311及び移動体200の移動経路I312は、第1入力データに対応する。自律型移動装置1の移動経路O31は、学習済みモデル80に第1入力データ(移動経路I311,I312)を入力して得られる出力データであり、第1の結果に対応する。自律型移動装置1の移動経路I321及び移動体200の移動経路I322は、第2入力データに対応する。自律型移動装置1の移動経路O32は、学習済みモデル80に第2入力データ(移動経路I321,I322)を入力して得られる出力データであり、第2の結果に対応する。自律型移動装置1の移動経路O31,32は、実質的に同一であり、この場合に、類似度は、閾値以上である。
【0084】
図12は、第1入力データと第2入力データの移動経路の比較の第2例の説明図である。第2例は、学習済みでない周囲状況に対応する。自律型移動装置1の移動経路I411及び移動体200の移動経路I412は、第1入力データに対応する。自律型移動装置1の移動経路O41は、学習済みモデル80に第1入力データ(移動経路I411,I412)を入力して得られる出力データであり、第1の結果に対応する。自律型移動装置1の移動経路I421及び移動体200の移動経路I422は、第2入力データに対応する。自律型移動装置1の移動経路O42は、学習済みモデル80に第2入力データ(移動経路I421,I422)を入力して得られる出力データであり、第2の結果に対応する。自律型移動装置1の移動経路O41,42は、大きく異なり、この場合に、類似度は、閾値未満である。
【0085】
このように、本実施の形態では、自律型移動装置1の周囲に移動体200が存在し、かつ、類似度が閾値以上である場合に、演算回路7は、第1アルゴリズム8を用いて移動経路を決定する。そのため、自律型移動装置1の周囲状況が学習済みモデル80にとって未学習の周囲状況であるにもかかわらずに、学習済みモデル80を用いて移動経路を決定する可能性を低減でき得る。これによって、移動経路の決定の精度の向上を可能にする。
【0086】
[1.2.2 効果等]
以上述べた移動経路決定システム4において、学習済みの周囲状況は、自律型移動装置1の周囲に移動体200が存在し、かつ、第1入力データを学習済みモデル80に入力して得られる第1の結果と第2入力データを学習済みモデル80に入力して得られる第2の結果との類似度が閾値以上である周囲状況である。第1入力データは、周囲状況に関する入力データである。第2入力データは、周囲状況に関する入力データの一部に対して変更を行って得られるデータである。この構成は、移動経路の決定の精度の向上を可能にする。
【0087】
移動経路決定方法において、第1入力データを学習済みモデル80に入力して得られる第1の結果と第2入力データを学習済みモデル80に入力して得られる第2の結果との類似度が閾値以上である場合に前記第1アルゴリズムを用いて前記移動経路を決定する。第1入力データは、周囲状況に関する入力データであり、第2入力データは、周囲状況に関する入力データの一部に対して変更を行って得られるデータである。この構成は、移動経路の決定の精度の向上を可能にする。
【0088】
[1.3 実施の形態3]
[1.3.1 構成]
図1に示す実施の形態1にかかる自律型移動装置1と同様に、実施の形態3にかかる自律型移動装置1は、センサシステム2、移動機構3、及び、移動経路決定システム4を備える。実施の形態3にかかる移動経路決定システム4は、演算回路7による移動経路決定方法が実施の形態1と異なる。
【0089】
図13は、実施の形態3にかかる自律型移動装置の演算回路7が実行する移動経路の決定のフローチャートである。
【0090】
演算回路7は、センサシステム2から周囲状況を取得する(S31)。
【0091】
演算回路7は、自律型移動装置1の周囲状況に関する学習済みモデル80の類似度が閾値以上であるかどうかを判断する(S32)。
【0092】
演算回路7は、類似度が閾値以上であることを確認すると(S32;YES)、第1モードを実行する。第1モードでは、演算回路7は、第1アルゴリズム8を選択し(S33)、第1アルゴリズム8を用いて、自律型移動装置1の移動経路を決定する(S34)。これは、本実施の形態では、周囲状況が学習済みの周囲状況であることを確認し、第1アルゴリズム8を用いて移動経路を決定することに等しい。
【0093】
演算回路7は、類似度が閾値以上ではないことを確認する(S32;NO)と、第2モードを実行する。第2モードでは、演算回路7は、第2アルゴリズム9を選択し(S35)、第2アルゴリズム9を用いて、自律型移動装置1の移動経路を決定する(S36)。これは、本実施の形態では、周囲状況が学習済みの周囲状況でないことを確認し、第2アルゴリズム9を用いて移動経路を決定することに等しい。
【0094】
演算回路7は、決定した移動経路に基づいて、移動機構3を駆動する(S37)。
【0095】
このように、実施の形態3では、学習済みの周囲状況は、入力データを学習済みモデル80に入力して得られる第1の結果と検証データを学習済みモデル80に入力して得られる第2の結果との類似度が閾値以上である周囲状況である。
【0096】
[1.3.2 効果等]
以上述べた移動経路決定システム4において、学習済みの周囲状況は、第1入力データを学習済みモデル80に入力して得られる第1の結果と第2入力データを学習済みモデル80に入力して得られる第2の結果との類似度が閾値以上である周囲状況である。第1入力データは、周囲状況に関する入力データである。第2入力データは、周囲状況に関する入力データの一部に対して変更を行って得られるデータである。この構成は、移動経路の決定の精度の向上を可能にする。
【0097】
[1.4 実施の形態4]
[1.4.1 構成]
図1に示す実施の形態1にかかる自律型移動装置1と同様に、実施の形態4にかかる自律型移動装置1は、センサシステム2、移動機構3、及び、移動経路決定システム4を備える。実施の形態4にかかる移動経路決定システム4は、演算回路7による移動経路決定方法が実施の形態1と異なる。
【0098】
図14は、実施の形態4にかかる自律型移動装置の演算回路7が実行する移動経路の決定のフローチャートである。
【0099】
演算回路7は、センサシステム2から周囲状況を取得する(S41)。
【0100】
演算回路7は、自律型移動装置1の周囲状況が非定常時の周囲状況であるかどうかを判断する(S42)。
【0101】
演算回路7は、自律型移動装置1の周囲状況が非定常時の周囲状況であることを確認すると(S42;YES)、第1モードを実行する。第1モードでは、演算回路7は、第1アルゴリズム8を選択し(S43)、第1アルゴリズム8を用いて、自律型移動装置1の移動経路を決定する(S44)。これは、本実施の形態では、周囲状況が学習済みの周囲状況であることを確認し、第1アルゴリズム8を用いて移動経路を決定することに等しい。
【0102】
演算回路7は、自律型移動装置1の周囲状況が非定常時の周囲状況ではないことを確認する(S42;NO)と、第2モードを実行する。第2モードでは、演算回路7は、第2アルゴリズム9を選択し(S45)、第2アルゴリズム9を用いて、自律型移動装置1の移動経路を決定する(S46)。これは、本実施の形態では、周囲状況が学習済みの周囲状況でないことを確認し、第2アルゴリズム9を用いて移動経路を決定することに等しい。
【0103】
演算回路7は、決定した移動経路に基づいて、移動機構3を駆動する(S47)。
【0104】
このように、実施の形態4では、学習済みの周囲状況は、非定常時の周囲状況である。本実施の形態では、非定常時の周囲状況は、定常時の周囲状況とは異なる。「定常時」には、異常の発生していない時、予定通り移動している時、を含む。「非定常時」には、異常時、予定に組み込んでいないことが起こった時、低頻度の事象が起こった時、予定から逸脱している時、を含む。本実施の形態では、定常時の周囲状況は、自律型移動装置1を目的地点まで移動させる状況である。非定常時の周囲状況は、緊急回避が必要な状況である。緊急回避が必要な状況は、自律型移動装置1に向かって異常な速度で移動体が向かっている状況が考えられる。学習済みの周囲状況が非定常時の周囲状況である場合には、学習済みモデル80は、移動体の緊急回避が必要な周囲状況に関する入力データの入力に対して、移動体を回避する移動経路に関する出力データを出力するように学習される。
【0105】
[1.4.2 効果等]
以上述べた移動経路決定システム4において、学習済みの周囲状況は、自律型移動装置1を目的地点まで移動させる定常時とは異なる非定常時の周囲状況である。この構成は、移動経路の決定の精度の向上を可能にする。
【0106】
[2.変形例]
本開示の実施の形態は、上記実施の形態に限定されない。上記実施の形態は、本開示の課題を達成できれば、設計等に応じて種々の変更が可能である。以下に、上記実施の形態の変形例を列挙する。以下に説明する変形例は、適宜組み合わせて適用可能である。
【0107】
なお、以下では、上記の実施の形態1~4のいずれにおいても適用可能であっても、実施の形態1において用いた符号に言及するが、これは、単に記載を簡略化するためであって、実施の形態2~4の適用を排除する趣旨ではない。
【0108】
一変形例において、演算回路7は、第3モードを実行する機能を有してよい。第3モードは、第1モード又は第2モードとは異なり、自律型移動装置1の周囲状況に応じて移動経路を決定しない。第3モードでは、演算回路7は、与えられた指示通りに自律型移動装置1を移動させる。指示は、人によりリアルタイムで与えられてもよいし、事前に与えられて記憶装置6に格納されてもよい。例えば、第3モードは、遠隔操作器を介して人から与えられた指示通りに自律型移動装置1を移動させる遠隔操作モードであり得る。第3モードは、予め与えられた指示通りに自律型移動装置1を移動させる定型走行モードであり得る。定型走行モードでは、例えば、自律型移動装置1は、一定速度で直進してよいし、予め定められたパターン(例えば、L字、S字、C字等の決められたパターン)で移動してよい。
【0109】
一変形例において、学習済みモデル80に用いられる推論プログラムは、図2の例に限定されず、従来周知の種々の推論プログラムが利用され得る。推論プログラムは、例えば、回帰モデルである。回帰モデルの例としては、決定木、線形回帰、ランダムフォレスト、サポートベクターマシン、ガウス過程回帰、ニューラルネットワーク等が挙げられる。線形回帰の例としては、多重線形回帰、リッジ(Ridge)回帰、ラッソ(Lasso)回帰が挙げられる。
【0110】
一変形例において、センサシステム2の構成は特に制限されない。センサシステム2は、自律型移動装置1の前方向、後ろ方向、左方向、及び、右方向の画像を取得する複数の画像センサを用いてよい。センサの種類、数、及び、配置は、目的とする自律型移動装置1の周囲状況を表すデータに応じて適宜設定される。
【0111】
一変形例において、移動経路決定システム4は、必ずしも、移動機構を有していない装置にも適用できる。例えば、移動経路決定システム4は、人に視覚的又は聴覚的の少なくとも一方により移動経路を提示する提示装置に適用できる。提示装置は、人(例えば、聴覚障碍者、視覚障碍者)の移動の支援に利用でき得る。
【0112】
[3.態様]
上記実施の形態及び変形例から明らかなように、本開示は、下記の態様を含む。
【0113】
[態様1]
自律型移動装置の周囲状況に関する入力データの入力に対して前記自律型移動装置の移動経路に関する出力データを出力するように学習された学習済みモデルを用いる学習ベースの第1アルゴリズムを用いて前記移動経路を決定する第1モードと、予め定められた移動経路の決定規則を用いる非学習ベースの第2アルゴリズムを用いて前記移動経路を決定する第2モードと、を有し、
前記周囲状況が前記学習済みモデルにより学習済みの周囲状況である場合に前記第1モードを実行し、前記周囲状況が前記学習済みの周囲状況でない場合に前記第2モードを実行する機能を有する、演算回路、
を備える、
移動経路決定システム。
【0114】
[態様2]
前記学習済みの周囲状況は、前記自律型移動装置の周囲に移動体が存在する周囲状況である、
態様1の移動経路決定システム。
【0115】
[態様3]
前記移動体は、移動についての制御、又は、制御される移動動作を予め把握していない移動体である、
態様2の移動経路決定システム。
【0116】
[態様4]
前記学習済みの周囲状況は、第1入力データを前記学習済みモデルに入力して得られる第1の結果と第2入力データを前記学習済みモデルに入力して得られる第2の結果との類似度が閾値以上である周囲状況であり、
前記第1入力データは、前記周囲状況に関する入力データであり、
前記第2入力データは、前記周囲状況に関する入力データの一部に対して変更を行って得られるデータである、
態様1~3のいずれか一つの移動経路決定システム。
【0117】
[態様5]
前記学習済みの周囲状況は、前記自律型移動装置を目的地点まで移動させる定常時とは異なる非定常時の周囲状況である、
態様1の移動経路決定システム。
【0118】
[態様6]
前記決定規則は、前記自律型移動装置の現在位置と前記自律型移動装置の目的地点とに基づいて前記現在位置から前記目的地点までの最短経路を移動経路として決定するように設定される、
態様1~5のいずれか一つの移動経路決定システム。
【0119】
[態様7]
前記演算回路は、与えられた指示通りに前記自律型移動装置を移動させる第3モードを実行する機能を有する、
態様1~6のいずれか一つの移動経路決定システム。
【0120】
[態様8]
前記学習済みの周囲状況は、前記自律型移動装置の周囲に移動体が存在し、かつ、第1入力データを前記学習済みモデルに入力して得られる第1の結果と第2入力データを前記学習済みモデルに入力して得られる第2の結果との類似度が閾値以上である周囲状況であり、
前記第1入力データは、前記周囲状況に関する入力データであり、
前記第2入力データは、前記周囲状況に関する入力データの一部に対して変更を行って得られるデータである、
態様1~7のいずれか一つの移動経路決定システム。
【0121】
[態様9]
態様1~8のいずれか一つの移動経路決定システムと、
自律型移動装置の周囲状況を取得するセンサシステムと、
前記移動経路決定システムで決定された移動経路に従って移動する移動機構と、
を備える、
自律型移動装置。
【0122】
[態様10]
自律型移動装置の周囲状況に関する入力データの入力に対して前記自律型移動装置の移動経路に関する出力データを出力するように学習された学習済みモデルを用いる学習ベースの第1アルゴリズムと、予め定められた移動経路の決定規則を用いる非学習ベースの第2アルゴリズムとにアクセス可能な演算回路で実行される移動経路決定方法であって、
前記周囲状況が前記学習済みの周囲状況であるかどうかの判断に基づいて、前記周囲状況が前記学習済みモデルにより学習済みの周囲状況である場合に前記第1アルゴリズムを用いて前記移動経路を決定し、前記周囲状況が前記学習済みの周囲状況でない場合に前記第2アルゴリズムを用いて前記移動経路を決定する、
移動経路決定方法。
【0123】
[態様11]
前記自律型移動装置の周囲に移動体が存在する場合に前記第1アルゴリズムを用いて前記移動経路を決定し、
前記移動体は、移動についての制御、又は、制御される移動動作を予め把握していない移動体である、
態様10の移動経路決定方法。
【0124】
[態様12]
第1入力データを前記学習済みモデルに入力して得られる第1の結果と第2入力データを前記学習済みモデルに入力して得られる第2の結果との類似度が閾値以上である場合に前記第1アルゴリズムを用いて前記移動経路を決定し、
前記第1入力データは、前記周囲状況に関する入力データであり、
前記第2入力データは、前記周囲状況に関する入力データの一部に対して変更を行って得られるデータである、
態様10の移動経路決定方法。
【0125】
[態様13]
演算回路に、態様10の移動経路決定方法を実行させるための、
プログラム。
【0126】
態様2~8は、任意の要素であり、必須ではない。
【0127】
[4.用語]
本開示では、機械学習に関する用語を以下のように定義して用いる。
【0128】
「学習済みモデル」とは「学習済みパラメータ」が組み込まれた「推論プログラム」をいう。
【0129】
「学習済みパラメータ」とは、学習用データセットを用いた学習の結果、得られたパラメータ(係数)をいう。学習済みパラメータは、学習用データセットを学習用プログラムに対して入力することで、一定の目的のために機械的に調整されることで生成される。学習済みパラメータは、学習の目的にあわせて調整されているものの、単体では単なるパラメータ(数値等の情報)にすぎず、これを推論プログラムに組み込むことで初めて学習済みモデルとして機能する。例えば、ディープラーニングの場合には、学習済みパラメータの中で主要なものとしては、各ノード間のリンクの重み付けに用いられるパラメータ等がこれに該当する。
【0130】
「推論プログラム」とは、組み込まれた学習済みパラメータを適用することで、入力に対して一定の結果を出力することを可能にするプログラムをいう。例えば、入力として与えられた画像に対して、学習の結果として取得された学習済みパラメータを適用し、当該画像に対する結果(認証や判定)を出力するための一連の演算手順を規定したプログラムである。
【0131】
「学習用データセット」とは、訓練データセットともいい、生データに対して、欠測値や外れ値の除去等の前処理や、ラベル情報(正解データ)等の別個のデータの付加等、あるいはこれらを組み合わせて、変換・加工処理を施すことによって、対象とする学習の手法による解析を容易にするために生成された二次的な加工データをいう。学習用データセットには、生データに一定の変換を加えていわば「水増し」されたデータを含むこともある。
【0132】
「生データ」とは、ユーザやベンダ、その他の事業者や研究機関等により一次的に取得されたデータであって、データベースに読み込むことができるよう変換・加工処理されたものをいう。
【0133】
「学習用プログラム」とは、学習用データセットの中から一定の規則を見出し、その規則を表現するモデルを生成するためのアルゴリズムを実行するプログラムをいう。具体的には、採用する学習手法による学習を実現するために、コンピュータに実行させる手順を規定するプログラムがこれに該当する。
【産業上の利用可能性】
【0134】
本開示は、移動経路決定システム、自律型移動装置、移動経路決定方法、及び、プログラムに適用可能である。具体的には、周囲状況に応じて移動経路を決定する移動経路決定システム、移動経路決定システムを備える自律型移動装置、周囲状況に応じて移動経路を決定する移動経路決定方法、及び、移動経路決定方法を実行させるためのコンピュータプログラムに、本開示は適用可能である。
【0135】
特に、本開示は、歩行者(移動体)とロボット(自律型移動装置)が移動する空間において、歩行者とロボットの安全・効率的なすれ違いを実現するため、歩行者の動きに基づいてロボットの行動(移動経路)を生成する場合に適用可能である。つまり、歩行者がロボットの移動方向に侵入してくる場合は回避、歩行者がロボットを回避してくる場合は侵入等、ロボットの動作を切り替えることができる。これによって、歩行者との衝突やタイムロスを避けることが可能になり、安全で効率的なロボットの走行が可能となる。したがって、本開示を、人とロボットが共存する工場等でロボットによる運搬を実施する場合、非効率な(安全を重視しすぎる)走行をせずに,人と衝突することなくタクトタイムも短い運搬ができ、関連作業者のタクトタイムロスを減らすことができる。
【符号の説明】
【0136】
1 自律型移動装置
2 センサシステム
3 移動機構
4 移動経路決定システム
7 演算回路
8 第1アルゴリズム
80 学習済みモデル
D1 入力データ
D2 出力データ
9 第2アルゴリズム
200 移動体
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14