(57)【要約】      （修正有）【課題】移動体の速度に関し、周囲の状況に応じた速度で移動することができ、高速移動と安全性の確保とを両立できる移動体を提供する。【解決手段】移動体１は、周囲情報を取得するセンサ１１と、移動体１の周囲の情報である訓練用入力情報と、その情報に応じた速度である訓練用出力情報との複数の組の学習結果である学習器が記憶される記憶部１２と、周囲情報を学習器に適用して速度を取得する速度取得部１３と、現在位置取得部１５と、移動機構１４と、現在位置を用いて移動機構１４を制御する移動制御部１７とを備える。また、移動制御部１７は、移動体１の速度が、取得された速度以下となるように制御する。このようにして、移動体１は、周囲の状況に応じた速度で移動することができ、高速移動と安全性の確保とを両立できるようになる。【選択図】図１
2020107024.tif 000002
【特許請求の範囲】
【請求項１】
自律的に移動する移動体であって、
移動体の周囲の情報である訓練用入力情報と、当該周囲の情報に応じた前記移動体の速度である訓練用出力情報との組を複数用いて学習された学習器が記憶される記憶部と、
前記移動体の周囲の情報である周囲情報を取得するセンサと、
前記周囲情報を前記学習器に適用することによって、当該周囲情報に対応する前記移動体の速度を取得する速度取得部と、
前記移動体の現在位置を取得する現在位置取得部と、
前記移動体を移動させる移動機構と、
前記現在位置を用いて前記移動機構を制御する移動制御部と、を備え、
前記移動制御部は、前記移動体の速度が前記速度取得部によって取得された速度以下となるように制御する、移動体。
【請求項２】
前記センサは、複数方向に関して周囲の物体までの距離を測定する測距センサである、請求項１記載の移動体。
【請求項３】
移動体の周囲の情報である訓練用入力情報と、当該周囲の情報に応じた前記移動体の速度である訓練用出力情報との複数の組の学習結果である学習器であって、
自律的に移動する移動体の周囲の情報である周囲情報が適用されると、当該周囲情報に応じた前記移動体の速度を取得することができる、学習器。
【請求項４】
訓練情報受付部と、学習器製造部と、学習器出力部とを用いて処理される学習器製造方法であって、
前記訓練情報受付部が、移動体の周囲の情報である訓練用入力情報と、当該周囲の情報に応じた前記移動体の速度である訓練用出力情報との組を複数受け付ける訓練情報受付ステップと、
前記学習器製造部が、前記訓練用入力情報と前記訓練用出力情報との複数の組を学習することによって学習器を製造する学習器製造ステップと、
前記学習器出力部が、前記学習器を出力する学習器出力ステップと、を備えた学習器製造方法。
【請求項５】
前記学習器製造方法は、速度受付部と、加速度生成部と、速度変更部とをさらに用いて処理され、
前記速度受付部が、前記訓練用入力情報に対応する移動体の速度を受け付ける速度受付ステップと、
前記加速度生成部が、前記速度受付ステップにおいて受け付けられた速度から加速度を生成する加速度生成ステップと、
前記速度変更部が、前記加速度生成ステップにおいて生成された減速の加速度の絶対値が閾値を超える場合には、前記速度受付ステップにおいて受け付けられた速度を、当該速度よりも小さい速度に変更する速度変更ステップと、をさらに備え、
前記訓練情報受付ステップでは、前記速度変更ステップにおける速度の変更が行われた場合には、前記速度変更ステップで変更された速度である訓練用出力情報を受け付ける、請求項４記載の学習器製造方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自律的に移動する移動体等に関する。
【背景技術】
【０００２】
従来の移動体において、移動体の周囲に存在する障害物の検知を行い、障害物を検知した場合には、その障害物との衝突を防ぐために、例えば減速したり停止したりしていた（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−１０３２２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
移動体が見通しのよい移動領域を移動している場合には、遠くの障害物を検知でき、容易に障害物との衝突を回避できるため、移動速度を上げることができる。一方、移動体が見通しのよくない移動領域を移動している場合には、移動体にとって死角となる位置から障害物が飛び出してくるおそれがある。そのような危険性を考慮すると、安全性を向上させるために、移動体がどのような移動領域を移動している場合であっても、最高速度を、死角からの障害物の飛び出しに応じて停止や減速を適切に行うことができる速度に設定する必要があった。その結果として、移動体の移動速度が全体として低下してしまい、効率的な移動を実現できないという問題があった。
【０００５】
本発明は、上記課題を解決するためになされたものであり、高速な移動と、安全性の確保とを両立することができる移動体等を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明による移動体は、自律的に移動する移動体であって、移動体の周囲の情報である訓練用入力情報と、周囲の情報に応じた移動体の速度である訓練用出力情報との組を複数用いて学習された学習器が記憶される記憶部と、移動体の周囲の情報である周囲情報を取得するセンサと、周囲情報を学習器に適用することによって、周囲情報に対応する移動体の速度を取得する速度取得部と、移動体の現在位置を取得する現在位置取得部と、移動体を移動させる移動機構と、現在位置を用いて移動機構を制御する移動制御部と、を備え、移動制御部は、移動体の速度が速度取得部によって取得された速度以下となるように制御する、ものである。
このような構成により、移動体の周囲の状況に応じた速度以下となるように、移動体の速度を制御することができる。したがって、例えば、減速や停止の可能性が低い、見通しのよい移動環境においては速度を上げることができ、高速な移動を実現できる。また、例えば、減速や停止の可能性が高い、見通しのよくない移動環境においては低速移動を行うことができ、安全性を確保することができる。このようにして、高速な移動と、安全性の確保とを両立することが可能となる。
【０００７】
また、本発明による移動体では、センサは、複数方向に関して周囲の物体までの距離を測定する測距センサであってもよい。
このような構成により、測距結果に応じた周囲情報を用いて、速度を取得することができる。
【０００８】
また、本発明による学習器は、移動体の周囲の情報である訓練用入力情報と、周囲の情報に応じた移動体の速度である訓練用出力情報との複数の組の学習結果である学習器であって、自律的に移動する移動体の周囲の情報である周囲情報が適用されると、周囲情報に応じた移動体の速度を取得することができる、ものである。
このような構成により、この学習器を用いることによって、移動体の周囲の状況に応じた速度を容易に取得することができるようになる。また、そのようにして取得した速度以下で移動体を移動させることによって、移動体の高速での移動と、安全性の確保とを両立させることができるようになる。
【０００９】
また、本発明による学習器製造方法は、訓練情報受付部と、学習器製造部と、学習器出力部とを用いて処理される学習器製造方法であって、訓練情報受付部が、移動体の周囲の情報である訓練用入力情報と、周囲の情報に応じた移動体の速度である訓練用出力情報との組を複数受け付ける訓練情報受付ステップと、学習器製造部が、訓練用入力情報と訓練用出力情報との複数の組を学習することによって学習器を製造する学習器製造ステップと、学習器出力部が、学習器を出力する学習器出力ステップと、を備えたものである。
このような構成により、移動体の周囲の状況に応じた速度を取得するために用いられる学習器を製造することができるようになる。
【００１０】
また、本発明による学習器製造方法では、学習器製造方法は、速度受付部と、加速度生成部と、速度変更部とをさらに用いて処理され、速度受付部が、訓練用入力情報に対応する移動体の速度を受け付ける速度受付ステップと、加速度生成部が、速度受付ステップにおいて受け付けられた速度から加速度を生成する加速度生成ステップと、速度変更部が、加速度生成ステップにおいて生成された減速の加速度の絶対値が閾値を超える場合には、速度受付ステップにおいて受け付けられた速度を、速度よりも小さい速度に変更する速度変更ステップと、をさらに備え、訓練情報受付ステップでは、速度変更ステップにおける速度の変更が行われた場合には、速度変更ステップで変更された速度である訓練用出力情報を受け付けてもよい。
このような構成により、移動体の速度の変化に応じて、学習に用いられる訓練情報を自動的に生成することができるようになる。
【発明の効果】
【００１１】
本発明によれば、高速な移動と安全性の確保とを両立することができる移動体等を提供することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施の形態による移動体の構成を示すブロック図
【図２】同実施の形態による学習器製造装置の構成を示すブロック図
【図３】同実施の形態による移動体の動作を示すフローチャート
【図４】同実施の形態による学習器製造装置の動作を示すフローチャート
【図５Ａ】同実施の形態における測距センサを有する移動体の一例を示す図
【図５Ｂ】同実施の形態におけるイメージセンサを有する移動体の一例を示す図
【図６Ａ】同実施の形態における移動体の移動状況の一例を示す図
【図６Ｂ】同実施の形態における移動体の移動状況の一例を示す図
【図６Ｃ】同実施の形態における移動体の移動状況の一例を示す図
【発明を実施するための形態】
【００１３】
以下、本発明による移動体について、実施の形態を用いて説明する。なお、以下の実施の形態において、同じ符号を付した構成要素及びステップは同一または相当するものであり、再度の説明を省略することがある。本実施の形態による移動体は、移動体の周囲の状況に応じた速度で移動することによって、減速や停止の可能性が低い場合には高速移動を行うことができ、減速や停止の可能性が高い場合には低速移動を行うようにすることができる。
【００１４】
図１は、本実施の形態による移動体１の構成を示すブロック図である。本実施の形態による移動体１は、自律的に移動するものであり、センサ１１と、記憶部１２と、速度取得部１３と、移動機構１４と、現在位置取得部１５と、障害物検知部１６と、移動制御部１７とを備える。なお、移動体１が自律的に移動するとは、移動体１がユーザ等から受け付ける操作指示に応じて移動するのではなく、自らの判断によって目的地に移動することであってもよい。その目的地は、例えば、手動で決められたものであってもよく、または、自動的に決定されたものであってもよい。また、その目的地までの移動は、例えば、移動経路に沿って行われてもよく、または、そうでなくてもよい。また、自らの判断によって目的地に移動するとは、例えば、進行方向、移動や停止などを移動体１が自ら判断することによって、目的地まで移動することであってもよい。また、例えば、移動体１が、障害物に衝突しないように移動することであってもよい。移動体１は、例えば、台車であってもよく、移動するロボットであってもよい。ロボットは、例えば、エンターテインメントロボットであってもよく、監視ロボットであってもよく、搬送ロボットであってもよく、清掃ロボットであってもよく、動画や静止画を撮影するロボットであってもよく、その他のロボットであってもよい。
【００１５】
センサ１１は、移動体１の周囲の情報である周囲情報を取得する。センサ１１が取得する周囲情報には、移動体１の移動方向の前方の情報であることが好適である。また、移動体１の移動方向の前方右側の障害物や、前方左側の障害物も検知することができるようにするため、周囲情報には、移動体１の移動方向の前方の所定の角度範囲（例えば、少なくとも４５度から１２０度程度の範囲等）の情報が少なくとも含まれていることがさらに好適である。センサ１１は、図５Ａで示されるように、複数方向に関して周囲の物体までの距離を測定する測距センサであってもよく、図５Ｂで示されるように、移動体１の周囲の撮影画像を取得するイメージセンサであってもよい。図５Ａ，図５Ｂは、移動体１を上方から見た平面図である。センサ１１が測距センサである場合には、周囲情報は所定の角度ごとの距離となる。センサ１１がイメージセンサである場合には、周囲情報は撮影画像となる。
【００１６】
なお、移動体１が任意の方向に移動できる場合には、センサ１１が測距センサであるときには、全方位について測距を行うものであることが好適であり、センサ１１がイメージセンサであるときには、任意の方向の撮影画像を取得できることが好適である。移動体１の任意の方向が、移動方向の前方になりうるからである。任意の方向の撮影画像を取得できるイメージセンサは、例えば、全方位の撮影画像を取得できるイメージセンサであってもよく、３６０度についてパン（横振り）可能なイメージセンサであってもよい。なお、上記のように、センサ１１が、移動体１の周囲の任意の方向の情報を取得することができる場合であっても、センサ１１によって取得される周囲情報は、移動方向の前方の情報であることが好適である。
【００１７】
測距センサは、例えば、レーザセンサや、超音波センサ、マイクロ波を用いた距離センサ、ステレオカメラによって撮影されたステレオ画像を用いた距離センサなどであってもよい。レーザセンサは、レーザレンジセンサ（レーザレンジスキャナ）であってもよい。なお、それらの測距センサについてはすでに公知であり、それらの説明を省略する。本実施の形態では、センサ１１が測距センサであり、その測距センサがレーザレンジセンサである場合について主に説明する。また、センサ１１は、１個のレーザレンジセンサを有していてもよく、または、２個以上のレーザレンジセンサを有していてもよい。後者の場合には、２個以上のレーザレンジセンサによって、全方向がカバーされてもよい。また、測距センサが超音波センサや、マイクロ波を用いた距離センサなどである場合に、測距センサの測距方向を回転させることによって複数方向の距離を測定してもよく、複数方向ごとに配置された複数の測距センサを用いて複数方向の距離を測定してもよい。複数方向の距離を測定するとは、例えば、あらかじめ決められた角度範囲や全周囲（３６０度）について、あらかじめ決められた角度間隔で複数方向の距離を測定することであってもよい。その角度間隔は、例えば、１度間隔や２度間隔、５度間隔などのように一定であってもよい。測距センサから得られる情報は、例えば、移動体１のある向きを基準とした複数の方位角のそれぞれに関する周辺の物体までの距離であってもよい。その距離を用いることによって、移動体１のローカル座標系において、移動体１の周囲にどのような物体が存在するのかを知ることができるようになる。
【００１８】
イメージセンサは、例えば、ＣＣＤイメージセンサや、ＣＭＯＳイメージセンサなどであってもよい。イメージセンサは、例えば、イメージセンサ上に結像させるためのレンズ等の光学系を含んでいてもよい。また、イメージセンサは、単眼であってもよく、双眼（ステレオカメラ）であってもよい。イメージセンサは、通常、動画を撮影するもの、すなわち、連続した画像フレームを取得するものである。そのフレームレートは、移動速度に対して十分大きいものであることが好適である。例えば、フレームレートは、約３０ｆｐｓなどであってもよい。
【００１９】
記憶部１２では、移動体の周囲の情報である訓練用入力情報と、その周囲の情報に応じた移動体の速度である訓練用出力情報との組を複数用いて学習された学習器が記憶される。訓練用入力情報と訓練用出力情報との組を訓練情報と呼ぶこともある。学習器は、例えば、ニューラルネットワーク（ＮＮ：Neural Network）の学習結果であってもよく、サポートベクターマシン（ＳＶＭ：Support Vector Machine）やサポートベクター回帰（ＳＶＲ：Support Vector Regression）の学習結果であってもよく、または、それ以外の機械学習の学習結果であってもよい。
【００２０】
ニューラルネットワークは、例えば、畳み込みニューラルネットワーク（ＣＮＮ：Convolutional Neural Network）であってもよく、それ以外のニューラルネットワーク（例えば、全結合層から構成されるニューラルネットワーク等）であってもよい。また、ニューラルネットワークが少なくとも１個の中間層（隠れ層）を有する場合には、そのニューラルネットワークの学習は、深層学習（ディープラーニング、Deep Learning）であると考えてもよい。また、機械学習にニューラルネットワークを用いる場合において、そのニューラルネットワークの層数、各層におけるノード数、各層の種類（例えば、畳み込み層、全結合層など）等については、適宜、選択したものを用いてもよい。なお、入力層と出力層のノード数は、通常、訓練情報に含まれる入力と出力とによって決まることになる。
【００２１】
なお、学習器が記憶部１２で記憶されているとは、例えば、学習器そのもの（例えば、入力に対して値を出力する関数や学習結果のモデル等）が記憶されていることであってもよく、学習器を構成するために必要なパラメータ等の情報が記憶されていることであってもよい。後者の場合であっても、そのパラメータ等の情報を用いて学習器を構成できるため、実質的に学習器が記憶部１２で記憶されていると考えることができるからである。本実施の形態では、学習器そのものが記憶部１２で記憶されている場合について主に説明する。
【００２２】
記憶部１２に学習器が記憶される過程は問わない。例えば、記録媒体を介して学習器が記憶部１２で記憶されるようになってもよく、通信回線等を介して送信された学習器が記憶部１２で記憶されるようになってもよい。記憶部１２での記憶は、ＲＡＭ等における一時的な記憶でもよく、または、長期的な記憶でもよい。記憶部１２は、所定の記録媒体（例えば、半導体メモリや磁気ディスク、光ディスクなど）によって実現されうる。
【００２３】
ここで、学習器の生成について説明する。図２は、本実施の形態による学習器製造装置２の構成を示すブロック図である。本実施の形態による学習器製造装置２は、速度受付部２１と、加速度生成部２２と、速度変更部２３と、訓練情報受付部２４と、学習器製造部２５と、学習器出力部２６とを備える。
【００２４】
学習器の生成に用いられる訓練情報（教師データ）を取得する際に用いられる移動体は、自律的に移動する移動体であってもよく、自律的に移動しない移動体であってもよい。自律的に移動する移動体を用いて訓練情報を取得する場合には、ある時点における移動体の速度が、速度受付部２１で受け付けられ、また、その時点の移動体の周囲の情報である訓練用入力情報が、訓練情報受付部２４で受け付けられてもよい。自律的に移動する移動体を用いて訓練情報を取得する場合には、その移動体として、例えば、移動体１が用いられてもよい。なお、自律的に移動する移動体を用いて訓練情報を取得する場合に、その移動体の移動は、実空間における移動であってもよく、または、シミュレーションでの移動であってもよい。また、いずれの場合であっても、移動する障害物（例えば、他の移動体や人間等）が存在する環境、すなわち、死角からの障害物の飛び出しがありうる環境において訓練情報が取得されることが好適である。また、移動体１が移動する移動環境と同じ移動環境、または似たような移動環境において訓練情報が取得されることが好適である。シミュレーションによって訓練情報を取得する場合にも、移動体１が移動する移動環境と同様の環境となっている仮想的な移動環境におけるシミュレーションが行われることが好適である。訓練情報の取得のために自律的に移動する移動体は、例えば、あらかじめ生成された経路に沿って移動してもよく、または、ダイナミックウィンドウアプローチ（Dynamic Window Approach）などのように、目的地までの経路をリアルタイムで生成しながら移動してもよい。いずれの場合であっても、訓練情報の取得のために移動する移動体は、障害物を検知したときには、その障害物と衝突しないように減速したり、停止したり、迂回したりすることが好適である。
【００２５】
なお、あらかじめ経路が生成される場合には、例えば、状態空間探索法によって移動経路が生成されてもよく、または、ノード探索法によって移動経路が生成されてもよい。状態空間探索法によって経路生成を行う場合には、移動体の移動可能領域を示す地図情報を用いて、例えば、ＲＲＴ（Rapidly-exploring Random Tree）、ラプラスポテンシャル法、熱ポテンシャル法等の公知のアルゴリズムを用いて経路の探索を行ってもよい。状態空間探索法では、あらかじめノード等の設定されていない空間において、移動しない障害物を回避するように移動経路が取得されることになる。ノード探索法によって経路探索を行う場合には、あらかじめノードやリンクの設定されている地図情報を用いて、例えば、ダイクストラ法、Ａ＊アルゴリズム、ベルマン−フォード法、ワーシャル−フロイド法等の公知のアルゴリズムを用いて経路の探索を行ってもよい。ノード探索法では、あらかじめ定められたノードをつなげた移動経路が取得されることになる。
【００２６】
訓練情報を取得するために移動する移動体が自律的に移動しないものである場合には、例えば、操作者が、移動体と有線または無線で接続されたリモートコントロール機器を用いて操作してもよい。この場合には、移動体の移動方向や速度は、操作者によって操作されることになる。また、この場合には、移動体にとって死角となる位置から障害物が飛び出してきたとしても、その障害物との衝突を適切に回避できる速度となるように、操作者によって移動体の移動速度がコントロールされることが好適である。すなわち、見通しのよい移動環境においては高速となり、見通しのよくない移動環境においては、見通しのよい移動環境よりも低速となるように操作されることが好適である。
【００２７】
本実施の形態では、訓練情報を取得するために移動する移動体が、自律的に移動する場合について主に説明する。また、本実施の形態では、学習器製造装置２が、訓練情報の取得のために移動している移動体から直接リアルタイムで、周囲の情報である訓練用入力情報や、速度を受け付ける場合について主に説明する。
【００２８】
速度受付部２１は、訓練情報受付部２４で受け付けられる訓練用入力情報に対応する移動体の速度を受け付ける。すなわち、訓練用入力情報である移動体の周囲の情報が取得された時点の移動体の速度を受け付ける。この速度は、０以上の大きさを持つスカラー量、すなわち、前進方向への速度の大きさであってもよい。また、受け付けられた速度がベクトルである場合には、スカラーに変換されてもよい。なお、この速度は、図示しない記録媒体で記憶されてもよい。速度受付部２１は、受け付けた速度を加速度生成部２２と速度変更部２３とに渡す。
【００２９】
速度受付部２１は、例えば、有線または無線の通信回線を介して送信された速度を受信してもよい。なお、速度受付部２１は、受け付けを行うためのデバイス（例えば、モデムやネットワークカードなど）を含んでもよく、または含まなくてもよい。また、速度受付部２１は、ハードウェアによって実現されてもよく、または所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【００３０】
加速度生成部２２は、速度受付部２１によって受け付けられた速度から加速度を生成し、速度変更部２３に渡す。この加速度の生成において、速度受付部２１が過去に受け付けた速度も用いられてもよい。例えば、速度受付部２１が速度Ｖ（Ｔ）を時間間隔ΔＴごとに受け付ける場合には、加速度生成部２２は、時刻Ｔの加速度Ａ（Ｔ）を、次式のように算出してもよい。
Ａ（Ｔ）＝（Ｖ（Ｔ）−Ｖ（Ｔ−１））／ΔＴ
【００３１】
なお、時刻Ｔは、時刻を示す整数であり、隣接する時刻の時間間隔、例えば時刻Ｔ−１から時刻Ｔまでの時間間隔がΔＴであるとする。また、１回目の速度が受け付けられた場合には、それよりもΔＴだけ以前の速度が存在しないため、加速度を計算できない。したがって、その場合には、例えば、加速度を計算しなくてもよく、または、加速度を０にしてもよい。
【００３２】
速度変更部２３は、加速度生成部２２によって生成された減速の加速度の絶対値が閾値を超えるかどうか判断する。すなわち、速度変更部２３は、生成された加速度が減速を示しているかどうか、また、その加速度の絶対値が閾値を超えるかどうか判断することになる。加速度が負の値である場合に、加速度が減速を示していると判断され、そうでない場合に、加速度が減速を示していないと判断されてもよい。そして、生成された加速度が減速を示しており、かつ、加速度の絶対値が閾値を超えている場合には、速度変更部２３は、速度受付部２１によって受け付けられた速度を、その速度よりも小さい速度に変更する。すなわち、減速するように速度が変更されることになる。なお、速度変更部２３は、生成された減速の加速度の絶対値が閾値と同じ場合には、上記の速度の変更を行ってもよく、または、行わなくてもよい。
【００３３】
減速の加速度の絶対値が閾値を超える場合とは、自律移動を行っている移動体が、例えば、移動体にとって死角となる位置から飛び出してきた障害物を検知して、急減速を行っている状況に対応する。したがって、閾値は、例えば、死角からの障害物の飛び出しがない状況における移動では取り得ない値に設定されてもよい。また、そのような状況においては、減速前の速度が周囲の状況に適しておらず、高すぎたことになるため、より小さい速度に変更されることになる。そのため、この速度の変更によって、見通しのよい移動環境においては高速となり、見通しのよくない移動環境においては、見通しのよい移動環境よりも低速となることが好適である。
【００３４】
また、変更後の速度は、あらかじめ決められた１個または複数の値であってもよく、または、あらかじめ決められていない値であってもよい。変更後の速度が１個の値である場合には、その１個の速度は、死角となる位置からの障害物の飛び出しがあったとしても、障害物との衝突を適切に回避することができる速度に設定されてもよい。その速度は、通常、徐行の速度である。また、変更後の速度があらかじめ決められた複数の値である場合には、例えば、減速の加速度の絶対値が大きいほど、変更後の速度が小さくなってもよい。また、変更後の速度があらかじめ決められていない場合には、例えば、変更後の速度は、変更前の速度に０．３や０．５などの１よりも小さい係数を掛けた値であってもよい。その係数は、例えば、あらかじめ決められた値であってもよく、減速の加速度の絶対値が大きいほど、小さな値となる係数であってもよい。
【００３５】
なお、速度変更部２３は、速度の変更を行った場合には、変更後の速度を訓練情報受付部２４に渡し、速度の変更を行わなかった場合には、変更していない速度、すなわち速度受付部２１によって受け付けられた速度を訓練情報受付部２４に渡してもよい。
【００３６】
また、速度変更部２３は、生成された減速の加速度の絶対値が閾値を超えていない場合に、速度受付部２１で受け付けられた速度に端数処理を行うことによって、訓練用出力情報が離散的な有限個数となるようにしてもよい。この場合には、生成された減速の加速度の絶対値が閾値を超えていないときであっても、速度変更部２３は、例えば、速度受付部２１で受け付けられた速度を、その速度よりも小さくなるように丸めてもよい。その端数処理は、例えば、移動体の速度が、４０（ｍ／分）以上であれば、４０（ｍ／分）に丸め、３０（ｍ／分）以上、４０（ｍ／分）未満であれば、３０（ｍ／分）に丸め、２０（ｍ／分）以上、３０（ｍ／分）未満であれば、２０（ｍ／分）に丸めるなどのように決まっていてもよい。なお、この端数処理によっても、受け付けられた速度が、より小さい速度に変更されることになるが、その変更の程度は、生成された減速の加速度の絶対値が閾値を超えている場合における速度の変更の程度よりも小さいものであってもよい。また、丸めの最小単位以下の速度については、例えば、その最小単位となるように切り上げの丸めが行われてもよく、または、端数処理が行われなくてもよい。例えば、上記のように、１０（ｍ／分）単位で丸めが行われる場合には、１０（ｍ／分）未満の速度は、１０（ｍ／分）に切り上げられてもよく、または、そのまま変更されなくてもよい。
【００３７】
訓練情報受付部２４は、移動体の周囲の情報である訓練用入力情報と、その周囲の情報に応じた移動体の速度である訓練用出力情報との組を複数受け付ける。訓練情報受付部２４が受け付ける訓練用入力情報は、移動体１のセンサ１１が取得する周囲情報と同じ種類の情報であることが好適である。すなわち、センサ１１によって、移動体１の周囲の物体までの距離が取得される場合には、訓練用入力情報も移動体の周囲の物体までの距離であることが好適であり、センサ１１によって、移動体１の周囲の撮影画像が取得される場合には、訓練用入力情報も移動体の周囲の撮影画像であることが好適である。訓練情報受付部２４は、速度変更部２３による速度の変更が行われた場合には、速度変更部２３によって変更された速度である訓練用出力情報を受け付け、速度変更部２３による速度の変更が行われなかった場合には、速度受付部２１によって受け付けられた速度である訓練用出力情報を受け付けてもよい。なお、上記のように、速度変更部２３によって、速度の端数処理が行われた場合には、訓練用出力情報は、端数処理後の速度であってもよい。また、訓練用出力情報である速度は、スカラー量であってもよい。なお、訓練用出力情報は、見通しのよい移動環境においては高速となり、見通しのよくない移動環境においては、見通しのよい移動環境よりも低速となることが好適である。
【００３８】
なお、訓練情報受付部２４は、受け付けを行うためのデバイスを含んでもよく、または含まなくてもよい。また、訓練情報受付部２４は、ハードウェアによって実現されてもよく、または所定のデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【００３９】
通常、ΔＴごとに、速度の受け付けと加速度の生成とが行われ、その加速度が所定の条件を満たす場合には、速度の変更も行われることになる。そして、訓練情報受付部２４は、ΔＴごとに、移動体の周囲の情報である訓練用入力情報と、移動体の速度である訓練用出力情報とを含む訓練情報を受け付けることになる。訓練用出力情報である速度は、移動体の移動速度であることもあるが、上記のように、その移動速度が変更された後の速度であることもある。移動体による一連の移動が行われ、訓練情報の受け付けが繰り返されることによって、訓練情報受付部２４は、複数の訓練情報を受け付けることになる。その受け付けられた複数の訓練情報は、図示しない記録媒体で記憶されてもよい。
【００４０】
学習器製造部２５は、訓練用入力情報と訓練用出力情報との複数の組を学習することによって学習器を製造する。この学習器は、移動体の周囲の情報である訓練用入力情報と、その周囲の情報に応じた移動体の速度である訓練用出力情報との複数の組の機械学習の結果である。したがって、例えば、その学習器に、自律的に移動する移動体１の周囲の情報である周囲情報が適用されると、その周囲情報に応じた移動体１の速度を取得することができることになる。この学習の詳細については後述する。
【００４１】
学習器出力部２６は、学習器製造部２５によって製造された学習器を出力する。学習器出力部２６によって出力された学習器が、図１で示される移動体１の記憶部１２で記憶されることになる。ここで、この出力は、例えば、所定の機器への通信回線を介した送信でもよく、記録媒体への蓄積でもよく、他の構成要素への引き渡しでもよい。なお、学習器出力部２６は、出力を行うデバイス（例えば、通信デバイスなど）を含んでもよく、または含まなくてもよい。また、学習器出力部２６は、ハードウェアによって実現されてもよく、または、それらのデバイスを駆動するドライバ等のソフトウェアによって実現されてもよい。
【００４２】
なお、学習器製造装置２が、訓練情報を取得するために移動する移動体から速度や周囲の情報をリアルタイムで受け付ける場合について主に説明したが、そうでなくてもよい。それらの情報は、あらかじめ図示しない記録媒体に蓄積されていてもよい。そして、学習器製造装置２は、その記録媒体から、順次または一括して、速度や周囲の情報を読み出すことによって受け付けてもよい。また、学習器製造装置２は、他の装置から送信された速度や周囲の情報を、順次または一括して受信することによって受け付けてもよい。
【００４３】
また、学習器製造装置２が、速度をも受け付ける場合について説明したが、そうでなくてもよい。例えば、上記のように、訓練情報を取得するために移動する移動体が、操作者によって、理想的な移動となるようにリモートコントロールされる場合には、その移動に応じて取得された速度と、周囲の情報との組が、訓練情報受付部２４で受け付けられてもよい。この場合にも、速度については端数処理が行われてもよい。その受け付けは、例えば、有線または無線の通信回線を介して送信された情報の受信でもよく、所定の記録媒体（例えば、磁気ディスクや半導体メモリなど）から読み出された情報の受け付けでもよい。この場合には、学習器製造装置２は、速度受付部２１、加速度生成部２２、及び速度変更部２３を備えていなくてもよい。
【００４４】
また、訓練情報を取得するために、複数の自律的に移動する移動体を実移動させたり、シミュレーション上で移動させたりする場合に、速度受付部２１や訓練情報受付部２４は、複数の移動体から情報を受け付けてもよい。そのようにすることで、より多くの訓練情報をより短期間に収集することができ、訓練情報の収集効率を向上させることができるようになる。
【００４５】
次に、学習器製造部２５による機械学習について説明する。この機械学習は、教師有り学習であり、ニューラルネットワークの学習であってもよく、サポートベクターマシンやサポートベクター回帰の学習であってもよく、または、それ以外の機械学習であってもよい。なお、訓練用出力情報が、少数の多段階である場合には、機械学習は、例えば、ニューラルネットワークや、多値分類を行うサポートベクターマシンであってもよい。訓練用出力情報が少数の多段階である場合としては、例えば、速度変更部２３によって速度の端数処理も行われている場合が挙げられる。一方、訓練用出力情報が、多数の多段階または所定の範囲の実数である場合には、機械学習は、サポートベクター回帰であってもよい。訓練用出力情報が多数の多段階または所定の範囲の実数である場合としては、例えば、速度変更部２３によって速度の端数処理が行われてない場合が挙げられる。
【００４６】
ここでは、訓練用入力情報が、（１）測距結果に応じたものである場合、（２）撮影画像に応じたものである場合に分けて説明する。
【００４７】
（１）訓練用入力情報が測距結果に応じたものである場合
この場合には、訓練用入力情報は、測距結果そのものであってもよい。訓練用入力情報が測距結果そのものである場合には、測距方向ごとの周囲の物体までの距離の集合が、訓練用入力情報であってもよい。例えば、センサ１１がレーザレンジセンサであり、移動方向の前方について、１度ごとに１２０度の範囲に関する測距を行う場合には、１２０個の測距結果が、訓練用入力情報となる。なお、その測距結果は、例えば、前処理によって正規化されてもよい。例えば、レーザレンジセンサの最長測定距離が「１」となり、最短測定距離が「０」となるように正規化されてもよい。
【００４８】
また、測距結果を用いて、測距方向ごとに、あらかじめ決められた閾値距離以内に障害物が存在するかどうかを示す情報の集合を生成し、その生成した情報を訓練用入力情報としてもよい。例えば、センサ１１がレーザレンジセンサであり、移動方向の前方について１度ごとに１２０度の範囲に関する測距を行う場合には、測距方向ごとに、測定結果が閾値距離以下であるときには、移動体の近くに障害物が存在することを示す情報（例えば、「１」であってもよい。）となり、測定結果が閾値距離を超えるときには、移動体の近くに障害物が存在しないことを示す情報（例えば、「０」であってもよい。）となるように訓練用入力情報が生成されてもよい。この場合には、例えば、移動体の近くに障害物が存在するかどうかを示す１２０個の２値の情報が、訓練用入力情報となる。
【００４９】
なお、（１）の訓練用入力情報を用いた学習をニューラルネットワークで行う場合には、そのニューラルネットワークの各層は、例えば、全結合層であってもよい。
【００５０】
（２）訓練用入力情報が撮影画像に応じたものである場合
この場合には、訓練用入力情報は、撮影画像そのものであってもよい。この場合には、例えば、畳み込みニューラルネットワークによる学習が行われてもよい。その畳み込みニューラルネットワークは、物体カテゴリ認識で用いられる畳み込みニューラルネットワークと同様の構成であってもよい。そして、物体カテゴリの代わりに、複数段階の速度である訓練用出力情報が用いられてもよい。物体カテゴリ認識で用いられる畳み込みニューラルネットワークの各層は、例えば、入力層側から順番に、複数の畳み込み層を有していてもよい。また、少なくとも１つの畳み込み層の後段に、プーリング層が存在してもよい。また、複数の畳み込み層の後段に、全結合層が１以上存在してもよい。また、出力層の直前に、ソフトマックス層が存在してもよい。
【００５１】
上記（１）、（２）のいずれであっても、学習器がニューラルネットワークである場合には、例えば、過剰適合とならないようにパラメータ更新が行われることが好適であり、また、誤差逆伝播法などを用いて学習が行われてもよい。なお、機械学習における学習方法としては、公知の方法を用いることができ、その詳細な説明を省略する。
【００５２】
なお、機械学習で用いられる訓練用入力情報や訓練用出力情報は、上記のように、前処理の行われた情報であってもよい。訓練用入力情報について、例えば、正規化や２値変換等の前処理が行われてもよい。また、訓練用出力情報について、例えば、端数処理等の前処理が行われてもよい。
【００５３】
図１に戻り、速度取得部１３は、センサ１１によって取得された周囲情報を、記憶部１２で記憶されている学習器に適用することによって、その周囲情報に対応する移動体１の速度を取得する。具体的には、速度取得部１３は、センサ１１によって取得された周囲情報を学習器に入力することによって、その学習器の出力である速度を取得することができる。なお、周囲情報を学習器に入力する際に、例えば、周囲情報そのものを入力してもよく、周囲情報に所定の前処理を行った後に入力してもよい。例えば、前述のように、訓練用入力情報が正規化されたり、２値の情報に変換されたりして学習が行われた場合には、周囲情報を学習器に適用する際にも、同様の処理を行ってから適用してもよい。
【００５４】
移動機構１４は、移動体１を移動させる。移動機構１４は、例えば、移動体１を全方向に移動できるものであってもよく、または、そうでなくてもよい。全方向に移動できるとは、任意の方向に移動できることである。移動機構１４は、例えば、走行部（例えば、車輪など）と、その走行部を駆動する駆動手段（例えば、モータやエンジンなど）とを有していてもよい。また、移動機構１４は、車輪等の速度を取得できる機構、例えば、エンコーダ等を有していてもよい。なお、移動機構１４が、移動体１を全方向に移動できるものである場合には、その走行部は、全方向移動車輪（例えば、オムニホイール、メカナムホイールなど）であってもよい。この移動機構１４としては、公知のものを用いることができるため、その詳細な説明を省略する。
【００５５】
現在位置取得部１５は、移動体１の現在位置を取得する。現在位置の取得は、例えば、無線通信を用いて行われてもよく、周囲の物体までの距離の測定結果を用いて行われてもよく、周囲の画像を撮影することによって行われてもよく、現在位置を取得できるその他の手段を用いてなされてもよい。無線通信を用いて現在位置を取得する方法としては、例えば、ＧＰＳ（Global Positioning System）を用いる方法や、屋内ＧＰＳを用いる方法、最寄りの無線基地局を用いる方法などが知られている。また、例えば、周囲の物体までの距離の測定結果を用いたり、周囲の画像を撮影したりすることによって現在位置を取得する方法としては、例えば、ＳＬＡＭ（Simultaneous Localization and Mapping）などによって知られている方法を用いてもよい。周囲の物体までの距離の測定結果としては、例えば、測距センサであるセンサ１１の測定結果を用いてもよい。また、周囲の撮影画像としては、例えば、イメージセンサであるセンサ１１によって取得された撮影画像を用いてもよい。また、あらかじめ作成された地図（例えば、周囲の物体までの距離の測定結果や撮影画像を有する地図など）が記憶されている場合には、現在位置取得部１５は、地図を用いて、周囲の物体までの距離の測定結果に対応する位置を特定することによって現在位置を取得してもよく、周囲の画像を撮影し、地図を用いて、その撮影結果に対応する位置を特定することによって現在位置を取得してもよい。また、現在位置取得部１５は、例えば、自律航法装置を用いて現在位置を取得してもよい。また、現在位置取得部１５は、移動体１の向き（方向）を含む現在位置を取得することが好適である。その方向は、例えば、北を０度として、時計回りに測定された方位角によって示されてもよく、その他の方向を示す情報によって示されてもよい。その向きは、電子コンパスや地磁気センサによって取得されてもよい。
【００５６】
障害物検知部１６は、移動体１の周囲に存在する障害物を検知する。障害物検知部１６は、例えば、移動体１の周囲に関する測距結果を用いて障害物を検知してもよく、移動体１の周囲の撮影画像を用いて障害物を検知してもよい。測距結果を用いて障害物を検知する場合であって、センサ１１が測距センサである場合には、障害物検知部１６は、センサ１１によって取得された測距結果を用いて障害物検知を行ってもよい。また、障害物検知用の測距センサを移動体１が有している場合には、障害物検知部１６は、その測距センサによって取得された測距結果を用いて障害物検知を行ってもよい。また、撮影画像を用いて障害物を検知する場合であって、センサ１１がイメージセンサである場合には、障害物検知部１６は、センサ１１によって取得された撮影画像を用いて障害物検知を行ってもよい。また、障害物検知用のイメージセンサを移動体１が有している場合には、障害物検知部１６は、そのイメージセンサによって取得された撮影画像を用いて障害物検知を行ってもよい。
【００５７】
測距結果を用いて障害物検知を行う場合には、障害物検知部１６は、例えば、測距センサによって測定された距離によって、移動体１の近くに物体が存在することが分かったときに、その物体を障害物として検知してもよい。例えば、測距センサによって測定された周囲の物体までの距離が所定の閾値以下になった場合に、障害物検知部１６は、その物体を障害物として検知してもよい。その周囲の物体までの距離は、例えば、測距センサからの距離であってもよく、移動体１の外縁からの距離であってもよく、移動体１の外縁を仮想的に膨張させた位置からの距離であってもよく、その他の基準からの距離であってもよい。その閾値は、１個であってもよく、または、２個以上存在してもよい。
【００５８】
撮影画像を用いて障害物検知を行う場合には、障害物検知部１６は、例えば、イメージセンサによって撮影された撮影画像によって、移動体１の近くに物体が存在することが分かったときに、その物体を障害物として検知してもよい。その物体認識は、例えば、パターンマッチング等によって行われてもよく、畳み込みニューラルネットワークを用いたセグメンテーションによって行われてもよく、その他の方法によって行われてもよい。撮影画像に含まれる物体が、移動体１の近くに存在するかどうかは、その物体の種類と、撮影画像における物体の大きさ（例えば、長さや面積等）とを用いて判断されてもよい。例えば、撮影画像に含まれる物体の実サイズが大きい場合（例えば、その物体が他の移動体である場合等）には、撮影画像における物体の大きさがそれほど大きくなくても、その物体が移動体１の近くに存在すると判断されてもよい。一方、例えば、撮影画像に含まれる物体の実サイズが小さい場合（例えば、その物体が小型の段ボール箱である場合等）には、撮影画像における物体の大きさが大きいときにのみ、その物体が移動体１の近くに存在すると判断されてもよい。なお、障害物の検知方法としては、公知の方法を用いることができ、その詳細な説明を省略する。
【００５９】
移動制御部１７は、現在位置取得部１５によって取得された現在位置を用いて移動機構１４を制御することによって、移動体１の移動を制御する。移動の制御は、移動体１の移動の向きや、移動の開始・停止などの制御であってもよい。例えば、移動経路が設定されている場合には、移動制御部１７は、移動体１がその移動経路に沿って移動するように、移動機構１４を制御してもよい。より具体的には、移動制御部１７は、現在位置取得部１５によって取得される現在位置が、その移動経路に沿ったものになるように、移動機構１４を制御してもよい。また、移動制御部１７は、地図を用いて、移動の制御を行ってもよい。また、移動制御部１７は、ダイナミックウィンドウアプローチ等のように、動的に経路を生成しながら移動制御を行ってもよい。移動制御部１７による移動機構１４の制御は公知であるため、その詳細な説明を省略する。
【００６０】
なお、移動制御部１７は、移動体１の速度が速度取得部１３によって取得された速度以下となるように制御する。したがって、例えば、移動制御部１７は、指令速度が、速度取得部１３によって取得された速度より大きい場合に、取得された速度となるように、または、取得された速度未満の速度となるように指令速度を変更してもよい。なお、指令速度が速度ベクトルである場合には、その速度ベクトルの大きさが、取得された速度以下となるように、指令速度である速度ベクトルの各成分に１より小さい正の実数が乗算されてもよい。また、例えば、移動制御部１７は、指令速度が、速度取得部１３によって取得された速度となるように、または、その速度未満となるように、指令速度を生成してもよい。なお、指令速度が速度ベクトルである場合には、その速度ベクトルの大きさが、取得された速度以下となるように、指令速度が生成されてもよい。移動制御部１７への影響を小さくする観点からは、指令速度が取得された速度よりも大きい場合に、取得された速度となるように指令速度が変更され、それ以外の場合に、速度の変更は行われないことが好適である。この場合には、移動制御部１７は、指令速度を生成する際に、高速移動を行うように（すなわち、周囲に障害物が存在しないと仮定した速度で移動を行うように）指令速度を生成することが好適である。
【００６１】
また、移動制御部１７は、障害物検知部１６によって検知された障害物への衝突を防ぐように移動機構１４を制御する。移動制御部１７は、例えば、移動体１の周囲に設定されている領域である停止領域に存在する障害物が検知された場合には、移動体１が停止するように移動機構１４を制御し、停止領域において障害物は検知されていないが、停止領域の外側に設定されている領域である減速領域に存在する障害物が検知された場合には、移動体１がその時点の速度よりも減速するように移動機構１４を制御してもよい。移動体１が減速される場合に、その減速後の速度が決まっていてもよく、または、そうでなくてもよい。後者の場合には、例えば、その時点の速度に対して相対的に決まる速度（例えば、５０％の速度など）となるように減速が行われてもよい。また、移動制御部１７は、検知された障害物への衝突を回避するため、例えば、その障害物を迂回する経路を移動体１が通るように移動機構１４を制御してもよい。その場合には、移動制御部１７は、その検知された障害物の位置を通らない移動経路を新たに生成し、それに応じた移動を行うようにしてもよい。
【００６２】
次に、移動体１の動作について図３のフローチャートを用いて説明する。
（ステップＳ１０１）移動制御部１７は、移動を行うかどうか判断する。そして、移動を行う場合には、ステップＳ１０２に進み、そうでない場合には、移動を行うと判断するまでステップＳ１０１の処理を繰り返す。なお、移動制御部１７は、例えば、移動経路に応じた自律的な移動を行っている場合に、移動を行うと判断してもよい。また、移動制御部１７は、例えば、目的地に到達した場合に、移動を行わないと判断してもよい。
【００６３】
（ステップＳ１０２）現在位置取得部１５は、現在位置を取得する。
【００６４】
（ステップＳ１０３）センサ１１は、移動体１に関する周囲情報を取得する。
【００６５】
（ステップＳ１０４）速度取得部１３は、ステップＳ１０３で取得された周囲情報を、記憶部１２で記憶されている学習器に適用することによって、周囲情報に対応する速度を取得する。
【００６６】
（ステップＳ１０５）移動制御部１７は、ステップＳ１０２で取得された現在位置を用いて移動機構１４を制御することによって、移動体１の移動制御を行う。この移動制御において、移動制御部１７は、移動体１の速度が、ステップＳ１０４で取得された速度を超えないように、すなわち、その速度以下となるように制御を行う。この移動制御は、例えば、目的地に向かう自律的な移動の制御であってもよい。このステップＳ１０５の制御が繰り返されることによって、移動体１が出発地から目的地に到達してもよい。
【００６７】
（ステップＳ１０６）障害物検知部１６は、障害物の検知を行う領域に障害物が存在するかどうか判断する。そして、障害物が存在する場合には、ステップＳ１０７に進み、そうでない場合には、ステップＳ１０１に戻り、移動が継続されることになる。
【００６８】
（ステップＳ１０７）移動制御部１７は、ステップＳ１０６における障害物の検知に応じた制御を行う。その制御は、例えば、移動体１を停止させる制御や、減速させる制御である。そして、ステップＳ１０１に戻る。なお、障害物の検知に応じて移動体１を減速させた場合には、移動制御部１７は、移動速度の上限を減速後のものに制限した上で、ステップＳ１０１に戻って移動を継続してもよい。その場合には、障害物が検知されなくなったとき（ステップＳ１０６でＮＯと判断されたとき）に、移動速度の上限の制限を解除してもよい。また、障害物の検知に応じて移動体１を停止させた場合には、移動制御部１７は、障害物検知部１６によって障害物が検知されなくなるまで停止を継続し、障害物が検知されなくなってから（例えば、障害物である人間が移動してから）、ステップＳ１０１に戻って移動を再開してもよい。
【００６９】
なお、図３のフローチャートにおける処理の順序は一例であり、同様の結果を得られるのであれば、各ステップの順序を変更してもよい。例えば、周囲情報を用いて現在位置が取得される場合には、周囲情報の取得（ステップＳ１０３）の後に、現在位置の取得（ステップＳ１０２）が行われてもよい。また、図３のフローチャートにおいて、電源オフや処理終了の割り込みにより処理は終了する。
【００７０】
次に、学習器製造装置２の動作について図４のフローチャートを用いて説明する。このフローチャートでは、学習器製造装置２が、訓練情報の取得のために自律的に移動する移動体からリアルタイムで、速度や周囲の情報を受信する場合について説明する。
【００７１】
（ステップＳ２０１）速度受付部２１は、訓練情報の取得のために自律的に移動する移動体の速度を受け付けたかどうか判断する。そして、その速度を受け付けた場合には、ステップＳ２０２に進み、そうでない場合には、その速度を受け付けるまでステップＳ２０１の処理を繰り返す。
【００７２】
（ステップＳ２０２）加速度生成部２２は、受け付けられた速度を用いて、加速度を生成する。
【００７３】
（ステップＳ２０３）速度変更部２３は、加速度が減速を示しており、かつ、その絶対値が閾値を超えているかどうか判断する。そして、加速度が減速を示しており、かつ、その絶対値が閾値を超えている場合には、ステップＳ２０４に進み、そうでない場合には、ステップＳ２０５に進む。
【００７４】
（ステップＳ２０４）速度変更部２３は、ステップＳ２０１で受け付けられた速度を、その速度よりも小さい速度に変更する。
【００７５】
（ステップＳ２０５）訓練情報受付部２４は、訓練情報を受け付ける。その訓練情報は、ステップＳ２０１で受け付けられた速度に対応する、移動体の周囲の情報である訓練用入力情報と、速度受付部２１で受け付けられた速度、または速度変更部２３によって変更された速度である訓練用出力情報とを含む情報である。受け付けられた訓練情報は、図示しない記録媒体で記憶されてもよい。
【００７６】
なお、ステップＳ２０３においてＮＯと判断された場合であっても、速度変更部２３は、速度の端数処理を行ってもよい。その場合には、ステップＳ２０５において受け付けられる訓練用出力情報は、速度変更部２３によって変更された速度であってもよい。
【００７７】
（ステップＳ２０６）訓練情報受付部２４は、訓練情報の受け付けを終了するかどうか判断する。そして、訓練情報の受け付けを終了する場合には、ステップＳ２０７に進み、そうでない場合には、ステップＳ２０１に戻る。なお、訓練情報受付部２４は、例えば、あらかじめ決められた個数の訓練情報が受け付けられた場合に、訓練情報の受け付けを終了すると判断してもよく、訓練情報の取得のための移動体の移動が終了した場合に、訓練情報の受け付けを終了すると判断してもよい。
【００７８】
（ステップＳ２０７）学習器製造部２５は、訓練情報受付部２４によって受け付けられた複数の訓練情報を用いて機械学習を行うことにより、学習器を製造する。
【００７９】
（ステップＳ２０８）学習器出力部２６は、ステップＳ２０７で製造された学習器を出力する。そして、学習器を製造する一連の処理は終了となる。
【００８０】
なお、図４のフローチャートにおける処理の順序は一例であり、同様の結果を得られるのであれば、各ステップの順序を変更してもよい。
【００８１】
次に、本実施の形態による移動体１及び学習器製造装置２の動作について、具体例を用いて説明する。この具体例では、センサ１１がレーザレンジセンサであるとする。
【００８２】
まず、訓練情報を取得するために、自律的に移動する複数の移動体を同じ移動領域（例えば、ある工場内など）において動作させる。そして、その移動時の速度や周囲の情報を学習器製造装置２が受信するものとする。また、この具体例では、減速の加速度の絶対値が閾値を超えている場合には、受け付けられた速度が１０（ｍ／分）に変更され、そうでない場合であっても、１０，２０，３０，４０（ｍ／分）のいずれかの最も近い速度となるように、受け付けられた速度の端数が切り捨てられるものとする。具体的には、速度３５（ｍ／分）は、速度３０（ｍ／分）に変更されるものとする。なお、受け付けられた速度が１０（ｍ／分）未満である場合には、１０（ｍ／分）に切り上げの端数処理が行われるものとする。具体的には、速度８．５（ｍ／分）は、速度１０（ｍ／分）に変更されるものとする。
【００８３】
訓練情報を取得するために移動体を移動させると、それに応じて移動体から、速度と、その速度で移動している際の周囲の測距結果とが学習器製造装置２に送信される。速度が受信されると加速度が生成され（ステップＳ２０１，Ｓ２０２）、その加速度が減速の加速度であり、絶対値が閾値を超えている場合には、速度が１０（ｍ／分）に変更され、そうでない場合であっても、上記のように端数処理が行われる（ステップＳ２０３，Ｓ２０４）。そして、変更後の速度と、移動体から受信された周囲の測距結果とを含む訓練情報が訓練情報受付部２４で受け付けられ、図示しない記録媒体に蓄積される（ステップＳ２０５）。そのようにして、訓練情報が順次、蓄積されていくことになる（ステップＳ２０１〜Ｓ２０６）。その後、訓練情報の取得するために移動していた移動体が、移動を停止すると、蓄積された訓練情報を用いて学習器が製造され、出力される（ステップＳ２０７，Ｓ２０８）。この学習器は、移動体１の周囲の測距結果が入力されると、それに応じて、１０，２０，３０，４０（ｍ／分）のいずれかの速度が出力されるものである。
【００８４】
そのようにして製造された学習器が記憶部１２に蓄積された後に、移動体１が動作することになる。移動体１は、あらかじめ決められた出発地から目的地までを自律的に移動するものとする。また、移動体１は、出発地から目的地までの経路を、高速で移動するための指令速度（例えば、周囲に障害物がないと仮定した場合における指令速度）を生成するものとする。その自律的な移動において、現在位置が取得され、周囲の測距結果が取得される（ステップＳ１０１〜Ｓ１０３）。その後、周囲の測距結果を学習器に入力することによって、速度が取得される（ステップＳ１０４）。
【００８５】
移動体１が図６Ａで示されるように、障害物Ｂ１，Ｂ２の間を移動しているが、図中の矢印で示される移動方向の前方には障害物が存在しない場合には、例えば、測距結果の入力に応じた学習器からの出力は４０（ｍ／分）となる。したがって、移動制御部１７は、速度が４０（ｍ／分）以下となるように移動制御を行うことになる（ステップＳ１０５）。すなわち、指令速度が４０（ｍ／分）を超えている場合には、４０（ｍ／分）に変更され、指令速度が４０（ｍ／分）以下である場合には，その指令速度がそのまま用いられることになる。
【００８６】
一方、移動体１が図６Ｂで示されるように、障害物Ｂ１，Ｂ２の間を移動しており、移動方向の前方にも障害物Ｂ１，Ｂ２の一部が存在していることによって死角は存在するが、障害物Ｂ１，Ｂ２との距離はそれほど近くない場合には、例えば、測距結果の入力に応じた学習器からの出力は２０（ｍ／分）となる。したがって、移動制御部１７は、速度が２０（ｍ／分）以下となるように移動制御を行うことになる（ステップＳ１０５）。
【００８７】
また、移動体１が図６Ｃで示されるように、障害物Ｂ１，Ｂ２の間を移動しており、移動方向の前方にも障害物Ｂ１，Ｂ２の一部が存在していることによって死角が存在し、さらに、障害物Ｂ２との距離が近い場合には、例えば、測距結果の入力に応じた学習器からの出力は１０（ｍ／分）となる。したがって、移動制御部１７は、速度が１０（ｍ／分）以下となるように移動制御を行うことになる（ステップＳ１０５）。
【００８８】
また、移動体１の移動中に障害物が検知された場合には、その障害物の検知に応じて、障害物との衝突が回避されるように移動制御が行われることになる（ステップＳ１０６，Ｓ１０７）。
【００８９】
なお、この具体例では、移動制御部１７の指令速度が、学習器を用いて得られた速度よりも低い場合には、その指令速度がそのまま用いられ、指令速度が、学習器を用いて得られた速度よりも高い場合には、その指令速度が、学習器を用いて得られた速度に変更される場合について説明したが、そうでなくてもよい。例えば、周囲情報を学習器に適用することによって得られた速度で移動するように移動制御されてもよい。
【００９０】
以上のように、本実施の形態による移動体１によれば、周囲情報を学習器に適用することによって得られた適切な速度によって走行することができる。したがって、例えば、減速や停止の可能性が低い、見通しのよい移動環境においては速度を上げることができ、高速な移動を実現できる。また、例えば、減速や停止の可能性が高い、見通しのよくない移動環境においては低速走行を行うことができ、仮に死角から他の移動体等が飛び出してきた場合であっても、衝突を回避することができ、安全性を確保することができる。このようにして、移動体１に関して、高速な移動と、安全性の確保とを両立することが可能となり、効率的な移動を安全に実現することができるようになる。
【００９１】
また、本実施の形態による学習器製造装置２によれば、訓練情報を取得するための移動体の実移動やシミュレーション上での移動に応じて、移動体１の移動時に用いられる学習器を生成することができるようになる。また、速度変更部２３を備えることによって、訓練情報を取得するために移動する移動体の加速度に応じて、速度を適切に変更することができるようになる。また、速度変更部２３によって、移動体の速度に関する端数処理を行うこともでき、学習器から出力される速度が、複数の段階になるようにすることもできる。
【００９２】
なお、本実施の形態において、周囲情報や、学習時に用いられる訓練用入力情報である移動体の周囲の情報は、一定範囲の時系列に沿った情報であってもよい。例えば、最新の周囲情報と、それよりもΔＴだけ以前の周囲情報とが、学習器に適用されてもよい。また、同様にして、移動体の最新の周囲の情報と、それよりもΔＴだけ以前の周囲の情報とを含む訓練用入力情報が、学習に用いられてもよい。そのようにすることで、より精度の高い速度の取得を行うことができると考えられる。
【００９３】
また、本実施の形態において、訓練情報を取得するために移動する移動体が、自律的に移動するものである場合には、加速度に関する所定の条件が満たされるときに、受け付けられた速度を変更すると説明したが、そうでなくてもよい。例えば、自律的に移動する移動体の速度について移動平均処理を行うことによって、移動体の速度が時系列に沿って平滑化されることになる。例えば、移動体が急減速した場合には、その急減速が行われた位置に対応する移動平均後の速度は、その急減速後の速度に応じて低下することになる。したがって、自律的に移動する移動体の速度として、移動平均後の速度を用いる場合には、その移動体によって取得された周囲の情報である訓練用入力情報と、移動平均後の速度である訓練用出力情報とが訓練情報受付部２４において受け付けられるようにしてもよい。
【００９４】
また、上記実施の形態において、各処理または各機能は、単一の装置または単一のシステムによって集中処理されることによって実現されてもよく、または、複数の装置または複数のシステムによって分散処理されることによって実現されてもよい。
【００９５】
また、上記実施の形態において、各構成要素間で行われる情報の受け渡しは、例えば、その情報の受け渡しを行う２個の構成要素が物理的に異なるものである場合には、一方の構成要素による情報の出力と、他方の構成要素による情報の受け付けとによって行われてもよく、または、その情報の受け渡しを行う２個の構成要素が物理的に同じものである場合には、一方の構成要素に対応する処理のフェーズから、他方の構成要素に対応する処理のフェーズに移ることによって行われてもよい。
【００９６】
また、上記実施の形態において、各構成要素が実行する処理に関係する情報、例えば、各構成要素が受け付けたり、取得したり、選択したり、生成したり、送信したり、受信したりした情報や、各構成要素が処理で用いる閾値や数式、アドレス等の情報等は、上記説明で明記していなくても、図示しない記録媒体において、一時的に、または長期にわたって保持されていてもよい。また、その図示しない記録媒体への情報の蓄積を、各構成要素、または、図示しない蓄積部が行ってもよい。また、その図示しない記録媒体からの情報の読み出しを、各構成要素、または、図示しない読み出し部が行ってもよい。
【００９７】
また、上記実施の形態において、各構成要素等で用いられる情報、例えば、各構成要素が処理で用いる閾値やアドレス、各種の設定値等の情報がユーザによって変更されてもよい場合には、上記説明で明記していなくても、ユーザが適宜、それらの情報を変更できるようにしてもよく、または、そうでなくてもよい。それらの情報をユーザが変更可能な場合には、その変更は、例えば、ユーザからの変更指示を受け付ける図示しない受付部と、その変更指示に応じて情報を変更する図示しない変更部とによって実現されてもよい。その図示しない受付部による変更指示の受け付けは、例えば、入力デバイスからの受け付けでもよく、通信回線を介して送信された情報の受信でもよく、所定の記録媒体から読み出された情報の受け付けでもよい。
【００９８】
また、上記実施の形態において、移動体１、または学習器製造装置２に含まれる２以上の構成要素が通信デバイスや入力デバイス等を有する場合に、２以上の構成要素が物理的に単一のデバイスを有してもよく、または、別々のデバイスを有してもよい。
【００９９】
また、上記実施の形態において、各構成要素は専用のハードウェアにより構成されてもよく、または、ソフトウェアにより実現可能な構成要素については、プログラムを実行することによって実現されてもよい。例えば、ハードディスクや半導体メモリ等の記録媒体に記録されたソフトウェア・プログラムをＣＰＵ等のプログラム実行部が読み出して実行することによって、各構成要素が実現されうる。その実行時に、プログラム実行部は、記憶部や記録媒体にアクセスしながらプログラムを実行してもよい。また、そのプログラムは、サーバなどからダウンロードされることによって実行されてもよく、所定の記録媒体（例えば、光ディスクや磁気ディスク、半導体メモリなど）に記録されたプログラムが読み出されることによって実行されてもよい。また、このプログラムは、プログラムプロダクトを構成するプログラムとして用いられてもよい。また、そのプログラムを実行するコンピュータは、単数であってもよく、複数であってもよい。すなわち、集中処理を行ってもよく、または分散処理を行ってもよい。
【０１００】
また、本発明は、以上の実施の形態に限定されることなく、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【０１０１】
以上より、本発明による移動体等によれば、高速な移動と安全性の確保とを両立できるという効果が得られ、例えば、自律的に移動する移動体等として有用である。
【符号の説明】
【０１０２】
１  移動体、２  学習器製造装置、１１  センサ、１２  記憶部、１３  速度取得部、１４  移動機構、１５  現在位置取得部、１７  移動制御部、２１  速度受付部、２２  加速度生成部、２３  速度変更部、２４  訓練情報受付部、２５  学習器製造部、２６  学習器出力部
【図１】
2020107024.tif 000003
【図２】
2020107024.tif 000004
【図３】
2020107024.tif 000005
【図４】
2020107024.tif 000006
【図５Ａ】
2020107024.tif 000007
【図５Ｂ】
2020107024.tif 000008
【図６Ａ】
2020107024.tif 000009
【図６Ｂ】
2020107024.tif 000010
【図６Ｃ】
2020107024.tif 000011