(57)【特許請求の範囲】
【請求項１】
周囲の物理環境を観測する第１観測部と、前記第１観測部の観測結果に基づき物理的操作または情報処理を実施する操作部と、前記操作部の動作を定義する定義データと、前記定義データにしたがって前記操作部の動作を制御する操作指示部と、を備えた実世界インターフェースシステムが提供するサービスを制御するシステムであって、
前記第１観測部とは異なる観測対象の観測、あるいは同一の観測対象に対し異なる手段で観測を行う第２観測部と、
前記操作部が前記第１観測部の観測結果に基づき動作した場合にはその動作した結果として前記第２観測部で得られる観測データに基づき前記定義データを更新し、前記操作部が前記第１観測部の観測結果に加えて前記第２観測部の観測結果に基づき動作した場合にはその動作した結果として前記第１観測部で得られる観測データに基づき前記定義データを更新する、更新部と、
を備え、
前記定義データは、前記実世界インターフェースシステムがサービスを提供する場所の地図を記述した地図データ、および前記操作部が前記地図上で移動すべき経路を記述した経路データとして構成されている
ことを特徴とするサービス制御システム。
【請求項２】
前記第２観測部が観測する対象は、前記操作部が実施する物理的操作または情報処理を含み、
前記更新部は、前記定義データが定義する前記操作部の動作と、前記第２観測部によって観測された前記操作部の動作との間の差分が小さくなるように、前記定義データを更新する
ことを特徴とする請求項１記載のサービス制御システム。
【請求項３】
請求項１記載のサービス制御システムと、
前記実世界インターフェースシステムと、
を備えたことを特徴とするサービスシステム。
【請求項４】
前記地図データは前記第２観測部の観測データに基づき生成され、
前記操作部は、前記地図データが定義する地形にしたがって自律搬送車が荷物を自律的に搬送する機能部として構成されており、
前記第１観測部は、前記自律搬送車とその周囲に存在する物体との間の距離を計測する距離センサを用いて構成されており、
前記第２観測部は、前記第２観測部と、前記自律搬送車およびその周囲に存在する物体との間の距離を、前記第１観測部の観測範囲よりも広い領域内において観測する広域距離センサを用いて構成されており、
前記操作指示部は、前記第２観測部の観測結果に基づき前記地形上における前記自律搬送車の概略移動先を制御するとともに、前記第１観測部の観測結果に基づき前記地図上における前記自律搬送車の位置および姿勢を推定し、その結果に基づき前記自律搬送車の前記概略移動先よりも詳細な移動先を制御し、
前記更新部は、前記第１観測部の観測結果と前記地図データが合致するように前記地図データを更新する
ことを特徴とする請求項３記載のサービスシステム。
【請求項５】
前記操作部は、前記地図データが定義する地形および経路にしたがって自律搬送車が荷物を自律的に搬送する機能部として構成されており、
前記第１観測部は、前記自律搬送車とその周囲に存在する物体との間の距離を計測する距離センサを用いて構成されており、
前記第２観測部は、前記自律搬送車が前記地形上で移動する軌跡を観測するように構成されており、
前記操作指示部は、前記第１観測部の観測結果に基づき前記地図上における前記自律搬送車の位置および姿勢を推定し、その結果に基づき、前記経路データが記述する経路にしたがって前記自律搬送車が移動するように前記自律搬送車の移動先を制御し、
前記更新部は、前記自律搬送車が前記経路データによって指示された経路のとおり移動するように、前記第２観測部の観測データから得られる前記自律搬送車の移動軌跡と前記更新前の経路データの差に基づき前記経路データを更新する
ことを特徴とする請求項３記載のサービスシステム。
【請求項６】
前記操作部は、自律搬送車が荷物を自律的に搬送する機能部として構成されており、
前記定義データは、前記自律搬送車が前記荷物を搬送する手順を定義したアルゴリズムを記述したプログラムおよび関連するパラメータとして構成されており、
前記第１観測部は、前記自律搬送車が前記荷物を搬送する場所の地形を観測するレイアウト観測部、または前記荷物の保管状況を観測する保管状況観測部の少なくとも一つと、前記自律搬送車に対する搬送指示を受け付ける搬送指示受付部とで構成されており、
前記第２観測部は、前記自律搬送車による前記荷物の搬送状況を観測するように構成されており、
前記操作指示部は、前記プログラムおよび前記パラメータにしたがって前記自律搬送車が前記荷物を搬送する動作を制御し、
前記更新部は、前記プログラムおよび前記パラメータにしたがって前記自律搬送車が前記荷物を搬送する動作をシミュレートした結果と、前記第２観測部の観測結果とが合致するように、前記プログラムおよび前記パラメータを更新する
ことを特徴とする請求項３記載のサービスシステム。
【請求項７】
前記定義データは、前記プログラムおよび前記パラメータの組み合わせをあらかじめ複数保持しており、
前記更新部は、前記シミュレートの結果と前記第２観測部の観測結果とが合致するように、前記組み合わせを選択する
ことを特徴とする請求項６記載のサービスシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機械が実世界の状態を把握して自律的に物理動作または情報処理を実施するサービスを提供するシステムに関する。
【背景技術】
【０００２】
機械が実世界の状態を把握・認識し、その認識結果に基づき機械が実世界に対し有用な働きかけを行うシステムの代表的なものとして、ロボットがある。下記特許文献１では、レール等の設置を必要とせずに、自律移動ロボットを所望の経路に従って移動させるために、ロボットの移動量から自分の位置を認識し、走行ルールに従って地図情報に基づき経路を探索し、その経路に沿うようにロボットを制御する方法が示されている。
【０００３】
一方、人とインタラクションを行うシステムも、人を実世界の構成要素ととらえることにより、その状態に基づき機械が働きかけを行うシステムの一つと位置づけることができる。下記特許文献２では、ユーザからの作用を入力とし、その入力に基づき決定された作用を、ユーザに対し行う方法が示されている。同文献では、入力される作用に応じて、機械が内部にもつデータ構造を所定の方法で更新することにより、よりユーザのアクションに適した反応が行われるように、ユーザインタフェースの挙動が、徐々に進化・更新していく仕組みを備えている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１０−１９１５０２号公報
【特許文献２】特開２００７−２６５４３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記特許文献１では、経路を探索するルールが一定であるため、ロボットが移動する環境条件が変化した場合や、移動目的が変更されたときに、必ずしも適切な移動経路の決定がされ、あるいは決定された経路どおりの移動が正確に行われるとは限らない。すなわち、動作の決定方法や制御方法は、対象や目的等のさまざまな外部条件の変化にともなってそれが適切なものとなるように変化することが望まれる。
【０００６】
上記特許文献２では、ユーザからの入力操作のされ方に応じ、その反応となる作用がより適切になるような作用決定方法の更新手段を示しており、前述の外部条件の変化に伴い発生する課題の一つの解決手段となっている。しかしながら本技術では、ユーザインタフェースのためにユーザの入力操作を受け付ける手段と、作用決定方法を更新するための情報としてユーザの入力操作を受け付ける手段とが同一であるため、それによって得られる情報が、作用決定方法を更新するための情報として必ずしも十分にはなっていない。すなわちシステムがより適切な反応を行うようになるために必要な情報、言い換えるとシステムが進化・更新するための情報が、システム自らによって得られる情報のみに限られており、システムの挙動を外部から、すなわち第３者の立場からの視点では評価していない。そのため、上記進化・更新が実際に適切なものになっているかどうかを正確に判断することは難しい。
【０００７】
本発明は、上記のような課題に鑑みてなされたものであり、機械が実世界の状態に基づき実世界に対し有用な働きかけを行うサービスシステムにおいて、環境条件や目的等が変化したときでも、その働きかけがより適切なものとなるように変化させることを目的とする。
【課題を解決するための手段】
【０００８】
本発明に係るサービス制御システムは、実世界インターフェースシステムが備える第１観測部とは異なる物理環境を観測する第２観測部を備え、実世界インターフェースシステムが第１観測部の観測結果に基づき動作した場合と第２観測部の観測結果に基づき動作した場合との間の差分が小さくなるように、実世界インターフェースシステムの動作を調整する。
【発明の効果】
【０００９】
本発明に係るサービス制御システムによれば、実世界の状態に基づき機械等が実世界に対し有用な働きかけを行うサービスシステムにおいて、環境条件やサービス目的等が変化しても、第２観測部の観測結果による客観的な尺度に基づいて、その働きかけがシステム要件の観点からより適切なものとなるように、実世界インターフェースシステムの動作を適合させることができる。
【図面の簡単な説明】
【００１０】
【図１】本発明に係るサービスシステム１０００の基本概念を説明する機能ブロック図である。
【図２】実施形態１に係るサービスシステム１０００の機能ブロック図である。
【図３】距離センサ２１０の具体例を示す図である。
【図４】距離センサ２１０を用いて測定されたセンシングデータの例を示す図である。
【図５】地図データ２３１の例を示す図である。
【図６】マッチング処理の概要を示す図である。
【図７】経路データ２３３の一例を示す図である。
【図８】実施形態１に係るサービスシステム１０００が地図データ２３１を更新する手順を説明するフローチャートである。
【図９】実施形態２に係るサービスシステム１０００の機能ブロック図である。
【図１０】実施形態２に係るサービスシステム１０００が経路データ２３３を更新する手順を説明するフローチャートである。
【図１１】実施形態３に係るサービスシステム１０００の機能ブロック図である。
【図１２】実施形態３に係るサービスシステム１０００が、搬送計画を作成するためのアルゴリズムやパラメータを更新する手順を説明するフローチャートである。
【発明を実施するための形態】
【００１１】
＜本発明の基本概念＞
図１は、本発明に係るサービスシステム１０００の基本概念を説明する機能ブロック図である。サービスシステム１０００は、サービス制御システム１００、実世界インターフェースシステム２００を有する。実世界インターフェースシステム２００は、物理的動作または情報処理を実施することによってサービスを提供するシステムである。サービス制御システム１００は、実世界インターフェースシステム２００の動作を制御するシステムである。
【００１２】
実世界インターフェースシステム２００は、第１観測部２１０、操作部２２０、操作指示部２３０を有する。第１観測部２１０は、実世界インターフェースシステム２００周囲の物理環境を観測し、その観測結果を第１観測情報として操作指示部２３０に出力する。操作部２２０は、例えば荷物搬送などの物理的動作によるサービスを提供するロボット、情報処理サービスを提供するコンピュータ、などの動作を実施する機能部によって構成されている。操作指示部２３０は、第１観測部２１０の観測結果に基づき操作指示情報を出力し、操作部２２０の動作を制御する。
【００１３】
サービス制御システム１００は、第２観測部１１０、更新指示部１２０を有する。第２観測部１１０は、実世界インターフェースシステム２００周囲の、第１観測部２１０が観測するものとは異なる物理環境を観測し、その観測結果を第２観測情報として更新支持部１２０へ出力する。更新指示部１２０は、操作指示部２３０が内部的に使用する情報と第２観測情報を用いて、操作指示部２３０が操作部２２０を制御する際の制御パラメータやアルゴリズムなどを更新する。
【００１４】
第１観測部２１０は、実世界インターフェースシステム２００がサービスを提供する際に自ら周囲の状況を観測してサービス動作を調整するための機能部である。これに対し第２観測部１１０は、実世界インターフェース２００の外部から第１観測部２１０とは異なる観点で実世界インターフェースシステム２００の動作を観測する機能部であり、実世界インターフェース２００にとっては客観的第３者による動作監視をする機能部であるといえる。
【００１５】
このように、サービスを提供するシステム自身が取得する主観的な情報に加えて、外部の第３者による客観的な観測結果を併用することにより、主観的観測のみでは得られない情報を得ることができるので、操作部２２０のサービス動作をより適切に更新することができると考えられる。
【００１６】
例えば、第１観測部２１０による観測結果と第２観測部１１０による観測結果が異なる場合、いずれか一方の観測結果を用いて操作指示部２３０のアルゴリズムを更新し、両者の観測結果の間にずれが生じないようにすることが考えられる。あるいは、操作部２２０が第１観測情報に基づき動作する場合と第２観測情報に基づき動作する場合とで動作結果が異なる場合には、両者の動作結果の間に相違が生じないように、制御パラメータを補正するような用途が考えられる。
【００１７】
なお、第１観測部２１０による観測結果と第２観測部１１０による観測結果のいずれを優先すべきかは、サービスシステム１０００が提供するサービスの性質によって異なると考えられる。例えば全体最適を優先するサービスである場合、第２観測部１１０はサービスシステム１０００全体を俯瞰的に観測し、第１観測部２１０は比較的近距離の観測結果に基づき動作を微調整する、といった用途が考えられる。
【００１８】
以上、本発明に係るサービスシステム１０００の概念を説明した。以下では、本発明に係るサービスシステム１０００の具体的な実施形態を説明する。
【００１９】
＜実施の形態１＞
図２は、本発明の実施形態１に係るサービスシステム１０００の機能ブロック図である。本実施形態１に係るサービスシステム１０００は、人が操縦することなく目的地まで自動的に到達することができる自律搬送車を用いて、物流倉庫などで物を搬送するサービスを提供するシステムである。
【００２０】
本実施形態１において、実世界インターフェースシステム２００は、自律搬送車が荷物を搬送するシステムである。第１観測部２１０は距離センサとして構成され、操作部２２０は自律搬送車として構成されている。操作指示部２３０は、地図データ２３１、位置推定部２３２、経路データ２３３、移動制御部２３４を有する。
【００２１】
距離センサ２１０は、自律搬送車２２０とその周辺物体との間の距離を測定し、距離センサデータ２１１として位置推定部２３２に出力する。自律搬送車２２０は、移動制御部２３４からの指示にしたがって荷物などを搬送する。
【００２２】
地図データ２３１は、自律搬送車２２０が荷物などを搬送する場所の実測地図を記述したデータである。位置推定部２３２は、距離センサデータ２１１と地図データ２３１を比較対照することにより、自律搬送車２２０の位置と姿勢を推定し、移動制御部２３４に出力する。経路データ２３３は、自律搬送車２２０が地図データ２３１上で移動すべき軌跡を記述したデータである。移動制御部２３４は、位置推定部２３２の推定結果に基づき、自律搬送車２２０が経路データ２３３にしたがって移動するように、自律搬送車２２０の動作を制御する。自律搬送車２２０の制御については後述する。
【００２３】
本実施形態１において、サービス制御システム２００は、地図データ２３１を更新することによって自律搬送車２２０の移動経路を更新制御するシステムである。第２観測部１１０は、広域距離センサとして構成されている。更新指示部１２０は、地形検出部１２１と地図更新部１２２を有する。
【００２４】
広域距離センサ１１０は、距離センサ２１０よりも計測範囲が広い距離センサであり、自律搬送車２２０が移動する場所の地形を広範囲で計測してその結果を広域距離センサデータ１１１として出力する。地形検出部１２１は、広域距離センサデータ１１１に基づき自律搬送車２２０が移動する場所の地形を検出する。地図更新部１２２は、地形検出部１２１の検出結果と距離センサデータ２１１を用いて、地図データ２３１を最新の状態に更新する。この更新処理については後述する。
【００２５】
以上、本実施形態１に係るサービスシステム１０００の構成について説明した。以下では、距離センサ２１０と地図データ２３１を用いて自律搬送車２２０を経路データ２３３にしたがって移動させる方法について説明する。
【００２６】
図３は、距離センサ２１０の具体例を示す図である。距離センサ２１０は、距離センサ２１０周辺の複数の方向について、周辺物３００と距離センサ２１０の間の距離を計測する。距離センサ２１０の具体的な仕様として様々なものが考えられるが、ここでは図３に示すように、ある高さの水平面上を距離センサ２１０の正面に対して−９０°から＋９０°の方向に、１°毎の合計１８１通りの異なる方向について、周辺物３００までの距離データが瞬時に計測できるものを想定する。距離センサ２１０は、自律搬送車２２０に搭載されているものとする。
【００２７】
図４は、距離センサ２１０を用いて測定されたセンシングデータの例を示す図である。各センシングデータは、角度φと距離ｄの組み合わせとして（φ０，ｄ０）， （φ１，ｄ１），・・・，（φｉ，ｄｉ），・・・として表される。各変数の数字の添え字ｉはデータ番号を示し、φｉはｉ番目の測定方向を示し、ｄｉはφｉ方向における周辺物３００までの距離を示す。距離センサ２１０は、正面に対して−９０°から＋９０°の方向に１°毎の合計１８１通りの異なる方向について計測できるものを想定するので、φ０＝−９０°，φ１＝−８９°，・・・，φ１８０＝＋９０°となる。
【００２８】
図５は、地図データ２３１の例を示す図である。地図データ２３１は、距離センサ２１０による測定高さ断面上の周辺物３００の存在を、図５に示すようなディジタル画像として表したものである。同画像では、周辺物の境界部分を黒色で表現している。
【００２９】
自律搬送車２２０は、平らな地面上を移動するものと仮定する。その移動によって変化する位置姿勢に関する自由度は、位置について（ｘ，ｙ）の２パラメータ、姿勢について自律搬送車２２０が向く方向角度に関するθの１パラメータ、合計３パラメータによって表すことができる。これらのパラメータを表す座標系は、図５に示すような地図データ２３１を表す座標系と一致させるものとする。
【００３０】
自律搬送車２２０の位置姿勢を推定するとは、任意の位置姿勢にある自律搬送車２２０のセンシングデータから、上記（ｘ，ｙ，θ）の３パラメータを求めることを意味する。本機能を実現する手段としていくつかの方法が考えられるが、ここではその最も基本的な方法となるマッチング処理による方法を説明する。
【００３１】
マッチング処理による方法とは、計測されたセンシングデータを、さまざまな位置および姿勢（方向）で地図に重ね合わせ、最もよく当てはまる位置および姿勢を探し出し、これをもって自律搬送車２２０の位置姿勢パラメータの推定値とするというものである。その原理は、自律搬送車がその位置および姿勢にあるときに、計測されたデータと同じデータが最も高い確率で得られるであろうという考え方に基づいている。
【００３２】
図６は、マッチング処理の概要を示す図である。地図データ２３１と距離センサデータ２１１とが与えられたとき、位置推定部２３２は、上述の方法によって最も当てはまると判断される自律搬送車２２０の位置および姿勢を求める。このときの平行移動成分（ｘ，ｙ）と回転成分θが、自律搬送車２２０の位置姿勢推定値となる。
【００３３】
次に、自律搬送車２２０がすすむべき移動経路を定義する経路データ２３３について説明する。経路データ２３３とは、自律搬送車２２０が通るべき軌跡を直線や曲線として地図上にあらわした移動軌跡をもとに、これを数値的にデータ化したものである。
【００３４】
図７は、経路データ２３３の一例を示す図である。スタートポイント７０１は自律搬送車２２０が現在いる位置を示し、ゴールポイント７０２は目的地となる位置を示す。スタートポイント７０１とゴールポイント７０２を結ぶ曲線７０３が自律搬送車２２０の移動経路となる。移動経路を経路データ２３３として記述する具体的な記述方法としては、経路を表す直線や曲線上に点を高密度でプロットし、その点の地図上での座標値を （ｘ０， ｙ０）， （ｘ１，ｙ１），・・・，（ｘｅ，ｙｅ）の形式で順次表すことが考えられる。（ｘ０，ｙ０）はスタートポイント７０１、（ｘｅ，ｙｅ）はゴールポイント７０２を示す。
【００３５】
位置推定部２３２は、上述の位置姿勢推定方法によって逐次自律搬送車２２０の位置姿勢を求める。移動制御部２３４は、位置姿勢の推定結果と経路データ２３３を比較することにより、自律搬送車２２０の移動方向や移動速度などを決定し、これに基づき自律搬送車２２０の移動装置を制御して自律搬送車２２０を移動させる。
【００３６】
サービス制御システム１００は、地図データ２３１を更新する機能を有する。一般的な物流倉庫では、物の移動のみならず、棚や各種物流機器などの配置換えがある程度の頻度で実施される。よって一旦作成した地図データ２３１であっても、それが時間とともに実際の形状を忠実に表すものでなくなることがあり得る。これに対処するため、サービス制御システム１００は、地図データ２３１を実態にあったものに修正する。以下、その具体的な手法について説明する。
【００３７】
広域距離センサ１１０は、自律搬送車２２０が移動する場所の現在の３次元形状がどのようになっているかを正しく認識することができるものである、数百メートル先の地形であっても数ｃｍ程度の空間的サンプリングレートにて、誤差１ｃｍ程度で地形を計測することができるものである。このような広域距離センサは、現在すでに一般的に商用レベルで利用されるようになっているため、その仕組み等についての詳細な説明は省略する。
【００３８】
広域距離センサ１１０は、物流倉庫等の自律搬送車２２０が動く環境の３次元形状を、人による操作、あるいはあらかじめ設定した自動操作により、１箇所あるいは数箇所から計測する。広域距離センサ１１０が計測した環境の３次元形状を、ある断面、すなわち自律搬送車２２０の距離センサが取り付けられている高さの平面で切断したものが、地図データ２３１とほぼ同等なものになる。
【００３９】
ただし、この方法で取得された環境の形状情報は、地図データ２３１に比べ、欠損部が多いという欠点をもつ。このため、上記の断面情報を直接地図データ２３１として用いることはできない。これは、計測する各点のサンプリングレートが上述のように数ｃｍ間隔であるとはいえ、地図として用いるには疎であること、また、環境内で広域距離センサ１１０から見て手前にある物体によって遮蔽され、その奥にある物体や壁などが計測できないこと、などの問題によるものである。
【００４０】
そこで本実施形態１において、地形検出部１２１は、広域距離センサ１１０が取得した断面情報に基づき、地図データ２３１に関する地形データを作成する。地形データとは、地図データ２３１を作成するにあたって、ある場所における物の存在の有無など、その地図データが実態を正しく表したものとなるための条件である。具体的にはそれぞれの場所を、（１）物が存在している、（２）物は存在していない、（３）不明である、の３つの状態に分類して表現したものなどが考えられる。
【００４１】
地図更新部１２２は、上述の地形データ、自律搬送車２２０が移動中に得た距離センサデータ２１１、現在の地図データ２３１を用いて、以下の手順により地図データ２３１を更新する。
【００４２】
地図更新部１２２は、まず地形データと距離センサデータ２１１を比較し、距離センサデータ２１１が地形データに矛盾無く当てはまる、自律搬送車２２０の位置姿勢を求める。これは上述の、地図データ２３１と距離センサデータ２１１とのマッチングにより自律搬送車２２０の位置姿勢を求める手法と同一の考え方に基づくものである。具体的には、さまざまな位置姿勢に距離センサデータ２１１を置き、地形データと照らし合わせ、本来物がないところに物があるように計測されている、あるいは本来物があるところに物がないように計測されている、といった矛盾が最も少ない位置姿勢をもって、求めるべき位置姿勢とする方法が考えられる。より詳しくは、矛盾の発生ごとに適当な値を加える評価値を定義し、この評価値が最も低いものを求めるべき位置姿勢とする方法が考えられる。
【００４３】
地図更新部１２２は次に、求めた位置姿勢に合わせた距離センサデータ２１１と現在の地図データ２３１を比較し、地図データ２３１を補正する。具体的には、距離センサデータ２１１上で物があると判断された地図データ２３１上の点が空白点（物が存在していない点）となっていればそこを存在点（物が存在している点）に補正し、距離センサデータ２１１上で物がないと判断された地図データ２３１上の点が存在点となっていればそこを空白点に補正する、などの方法が考えられる。
【００４４】
更新指示部１２０は、以上の処理を、自律搬送車２２０が移動しながら得られる距離センサデータ２１１に対して順次実施する。これにより、地図データ２３１が全体にわたり更新されていく。距離センサ２１０は、自律搬送車２２０が移動するごとに連続して上述の３６１点のデータを得ることができるので、自律搬送車２２０が移動を続けると、計測できる点の数は極めて多くまた密になる。さらに、ある場所からは遮蔽物に隠れて計測できなかった物であっても、自律搬送車２２０が遮蔽物の近くに移動すれば計測できるようになる。
【００４５】
図８は、本実施形態１に係るサービスシステム１０００が地図データ２３１を更新する手順を説明するフローチャートである。本フローは、例えば実世界インターフェースシステム２００がサービスを提供していないときに実施することができる。以下、図８の各ステップについて説明する。
【００４６】
（図８：ステップＳ８０１〜Ｓ８０２）
広域距離センサ１１０は、自律搬送車２２０が移動する場所の環境全体にわたって、地形を計測する（Ｓ８０１）。更新指示部１２０は、広域距離センサデータ１１１に基づき、環境の断面図となる断面情報を作成する（Ｓ８０２）。
【００４７】
（図８：ステップＳ８０３〜Ｓ８０４）
地形検出部１２１は、ステップＳ８０２で得られた断面情報に基づき、上述の地形データを作成する（Ｓ８０３）。更新指示部１２０は、移動制御部２３４に指示を出して自律搬送車２２０を経路データ２３３に沿って移動させ、距離センサデータ２１１を順次取得する（Ｓ８０４）。
【００４８】
（図８：ステップＳ８０５）
地図更新部１２２は、地形データと距離センサデータ２１１を比較し、上述の手順にしたがって、現在の地図データ２３１を更新する。
【００４９】
＜実施の形態１：補足＞
本実施形態１におけるデータ通信方式としては、地図更新部１２２を自律搬送車２２０上に搭載し、広域距離センサ１１０と地図更新部１２２の間で無線ネットワークを通してデータを送受信する構成、地図更新部１２２は自律搬送車２２０の外部に置き、地図更新部１２２と自律搬送車２２０との間で無線ネットワークを通してデータを送受信する構成、などが考えられる。
【００５０】
図８で説明したフローを実運用上で実施するタイミングとしては、例えばある一定期間を経るごとに自律搬送車２２０を空（カラ）走行させて実施する、あるいは広域距離センサ１１０による計測を実施した前後に自律搬送車２２０が動きながら距離センサデータ２１１をログデータとしていったん保存しておき、後にこれらデータを用いて地図データを更新する、などが考えられる。
【００５１】
＜実施の形態１：まとめ＞
以上のように、本実施形態１に係るサービスシステム１０００は、広域距離センサ１１０と距離センサ２１０を併用し、これらが計測した結果を比較対照して地図データ２３１を更新する。これにより、複数の観点に基づく観測結果を利用して地図データ２３１を補正することができるので、実世界インターフェースシステム２００自身の観測結果に基づきサービスを提供する場合と比較して、実世界インターフェースシステム２００が提供するサービスにとって求められるサービス品質に適した自律搬送車２２０の動作を、より適正に維持することができる。
【００５２】
また、本実施形態１に係るサービスシステム１０００は、広域距離センサ１１０を単独で用いた場合において生じる、観測点が疎になる問題、および遮蔽物によって欠損点が生じる問題を、距離センサ２１０によって補完することができる。
【００５３】
＜実施の形態２＞
本発明の実施形態２では、実施形態１と同様に、物流倉庫などで用いられる自律搬送車を対象とするが、ここでは経路データ２３３を設定する手順について述べる。
【００５４】
本実施形態２においては、搬送経路をあらかじめ経路データ２３３として人あるいはシステムが設定する。この搬送経路は複数設定しておき、搬送実施時に適切な経路を操作者あるいはシステムが選択し、自律搬送車２２０が所望の経路に沿って移動すれるようにする。経路データ２３３にしたがって自律搬送車２２０を移動させるための制御方法は、実施形態１で述べたとおりである。
【００５５】
地図データ２３１が更新される、あるいは周囲環境内に置かれた物が移動するなどによって環境形状が変化すると、自律搬送車２２０は、あらかじめ設定した経路データ２３３とは異なる軌跡で移動する。これは、従来設定していた経路データ２３３と地図データ２３１との間の相対的な位置関係がずれてしまうことなどが原因である。そこで本実施形態２では、自律搬送車２２０の移動軌跡を外部から観測し、実際の移動軌跡と設定した経路データとの間の差を求め、経路データ２３３を補正する。補正方法としては、発生したずれを打ち消す方向に経路データ２３３を移動させるのが基本である。
【００５６】
図９は、本実施形態２に係るサービスシステム１０００の機能ブロック図である。実施形態１と同様の構成については適宜説明を省略し、実施形態１と異なる部分を中心に説明する。
【００５７】
本実施形態２において、更新指示部１２０は、比較部１２３と経路更新部１２４を有する。これらの動作については後述する。
【００５８】
本実施形態２において、第２観測部１１０は、自律搬送車２２０の動きを外部から観測する軌跡観測部として構成されている。具体的には、移動環境の天井に設置した天井カメラがその一例として考えられる。自律搬送車２２０が移動する場所に軌跡観測部１１０を多数設置することにより、自律搬送車２２０が移動しうるすべての領域を撮影することができる。軌跡観測部１１０は、観測結果に基づき自律搬送車２２０の位置を認識する。
【００５９】
自律搬送車２２０の位置を認識する手法としては、自律搬送車２２０の一部分を抽出する手段と、その位置を求める手段とによって実現される。自律搬送車２２０の一部分を抽出する手段は、自律搬送車２２０にあらかじめ決められた形状や色のマークを貼り付け、これをテンプレートマッチングによる画像処理で見つける方法や、自律搬送車２２０の形状や色をあらかじめ搬送車モデルとして記憶しておき、そのモデルと撮影画像とを照合することにより、自律搬送車２２０の上面部すなわち天井カメラから見える部分を抽出する方法、などがある。自律搬送車２２０の位置を認識する手法としては、抽出したマーカあるいは自律搬送車２２０上面部の重心等の特定の位置について、環境内における座標値を算出することが考えられる。以下の説明では、この点を対象点と呼ぶことにする。対象点の座標値の算出方法としては、自律搬送車２２０が平面運動するので対象点の地面からの高さは一定とし、この高さを表す平面と、カメラから対象点に向かう方向の交点を、対象点の３次元位置として求める方法や、前述の天井カメラをすべてステレオカメラとして、抽出した対象点の３次元位置を求める方法などがある。いずれの方法でも、カメラの設置位置や設置方向およびズーム等のカメラ内部パラメータを固定とし、カメラキャリブレーションを実施してそれらの値をあらかじめ求めておくことにより、上述の３次元座標値を、環境に対する同一の座標系において求めることができる。このようにして求めた対象点の位置をもって、自律搬送車２２０の位置とする。
【００６０】
軌跡観測部１１０は、以上述べた方法によって自律搬送車２２０の位置を時系列として求めることにより、自律搬送車２２０の実際の軌跡を数値としてあらわした軌跡データ１１２を得ることができる。次に、この軌跡データ１１２を用いて、経路データ２３３を補正する方法について述べる。
【００６１】
前述のとおり、経路データ２３３は地図上の曲線として設定されている。軌跡観測部１１０の観測値から得られた軌跡データ１１２を経路データ２３３上に重ねて描くことを考える。このとき、上述の誤差の蓄積などの原因により、経路データ２３３と軌跡データ１１２が同じものとして重ならないことがありえる。この場合、自律搬送車２２０は設定した経路とは異なる軌跡で移動していることになる。経路データ２３３が示す軌跡と実際に観測された軌跡との差が、意図した経路と実際の経路との間のおおよその差を示すものと考えられる。
【００６２】
比較部１２３は、経路データ２３３と軌跡データ１１２の間の差分を求める。経路更新部１２４は、経路データ２３３を、上記差分と逆の方向に補正する。これにより、あらかじめ設定した経路データ２３３と実際の軌跡データ１１２との間で差が生じても、本来意図した経路に沿って自律搬送車２２０が移動することになる。ただし発生する差が補正量と必ずしも同じになるとは限らないので、補正量は、差の絶対値と同じにする方法に限らず、差の絶対値に０以上１以下のある値を乗じ補正量を小さくする、観測と補正を繰り返すことによって意図した経路に近くなるように補正量を収束させていく、などの方法が考えられる。また差の絶対値があらかじめ定めた閾値より大きいときは補正を実施せず、異常状態としてシステム管理者に通知するなど、実際的な対処方法を導入することも考えられる。
【００６３】
図１０は、本実施形態２に係るサービスシステム１０００が経路データ２３３を更新する手順を説明するフローチャートである。本フローは、例えば実世界インターフェースシステム２００がサービスを提供していないときに実施することができる。以下、図１０の各ステップについて説明する。
【００６４】
（図１０：ステップＳ１００１〜Ｓ１００２）
軌跡観測部１１０は、自律搬送車２２０の移動軌跡を計測する（Ｓ１００１）。軌跡観測部１１０は、撮影結果に基づき、自律搬送車２２０の軌跡データ１１２を算出する（Ｓ１００２）。
【００６５】
（図１０：ステップＳ１００３〜Ｓ１００４）
比較部１２３は、軌跡データ１１２と、あらかじめ設定されている経路データ２３３とを比較し、経路データ２３３の補正量を決定する（Ｓ１００３）。経路更新部１２４は、決定された補正量にしたがい、経路データ２３３を補正・更新する（Ｓ１００４）。
【００６６】
＜実施の形態２：補足＞
本実施形態２におけるデータ通信方式としては、経路更新部１２４を自律搬送車２２０上に搭載し、軌跡観測部１１０との間で無線ネットワークを通してデータを送受信する構成、経路更新部１２４は自律搬送車２２０の外部に置き、経路更新部１２４と自律搬送車２２０との間で無線ネットワークを通して経路情報を送受信する構成などが考えられる。
【００６７】
＜実施の形態２：まとめ＞
以上のように、本実施形態２に係るサービスシステム１０００は、軌跡観測部１１０が自律搬送車２２０の移動軌跡を観測し、これに基づき経路データ２３３を更新する。これにより、経路データ２３３が意図した経路とは異なることを自律搬送車２２０自身が検知できない場合であっても、軌跡観測部１１０による客観的な観測結果に基づいてこれを補正することができる。
【００６８】
＜実施の形態３＞
本発明の実施形態３では、物流倉庫などにおける自律搬送車を用いた搬送システムの全体的な計画制御について説明する。搬送システムでは、搬送に関するおおまかな指示が出されると、倉庫内のレイアウト情報や現在の荷物の保管状況情報などと搬送指示を照らし合わせて、指示された物品の移動先や経路が計画される。この計画を搬送システムが自動的に決定するための方法としては、搬送の順番や移動経路などを、搬送時間や移動量等の移動コストを評価基準とした最適化問題を解くことにより決定する方法が考えられる。この用いるアルゴリズムは実際的なものが既に開発されており、本実施形態３ではこれを用いることを前提とするので、その詳細については省略する。
【００６９】
図１１は、本実施形態３に係るサービスシステム１０００の機能ブロック図である。本実施形態３において、第２観測部１１０は全体状況観測部として構成されている。第１観測部２１０は、搬送指示受付部２１２、レイアウト観測部２１３、保管状況観測部２１４を有する。操作指示部２３０は、搬送計画作成・指示部として構成されている。実世界インターフェースシステム２００は、荷物を搬送する搬送システムとして構成されている。更新指示部１２０は、搬送シミュレータ１２５、アルゴリズム選択・パラメータ設定部１２６を有する。
【００７０】
搬送指示受付部２１２は、キーボードやマウス等によってユーザからの搬送指示を受け付ける。レイアウト観測部２１３は、倉庫の形状や棚の配置を広域距離センサ等で観測し、図面等のレイアウト情報として抽出する。保管状況観測部２１４は、ＩＣタグなどを用いて棚ごとにどの程度の量の物品が保管されているかを観測し、保管状況情報として抽出する。
【００７１】
搬送計画作成・指示部２３０は、搬送の順番や移動経路などの計画を作成し、これに基づき自律搬送車２２０の動作を制御する。搬送計画作成・指示部２３０は、第１観測部２１０から得られる上記各観測情報を入力とし、これを用いて上記アルゴリズムを用いて搬送計画を作成し、自律搬送車２２０に対し、スタートポイント、エンドポイント、積み荷指示、経路選択、荷降ろし等を指示する。
【００７２】
搬送計画作成・指示部２３０が搬送計画や指示を作成するための方法について、同じ問題設定であってもこれを解くアルゴリズムがいくつか準備されていることが多く、またそれぞれの方法においては設定すべきパラメータがいくつかある。よってより適切な搬送計画を得るには、アルゴリズムの選択とパラメータの設定が重要となる。一般には、これを過去の経験や、ヒューリスティックな考察により操作者が決定する。
【００７３】
搬送システムが搬送物の状況や空間の空き状況などを常に正確に把握することができれば理想どおりの制御を実施できるが、一般にはそれらを把握しきれないため、結果的に全体の挙動が必ずしも理想的なものにならず、また用いるアルゴリズムの選択やパラメータ設定が最適なものかどうかを確認することも困難となる。そこで本実施形態３では、アルゴリズムやパラメータを実際の搬送状況に基づき変更・修正する。
【００７４】
全体状況観測部１１０は、対象となる物流倉庫等の屋内全体の状況を観測するため、カメラ、ＩＣタグ、距離センサ、重量センサ等のセンサを備える。搬送シミュレータ１２５は、搬送計画作成・指示部２３０が現在利用している、あるいは現在は利用していないが選択し利用可能なアルゴリズムやパラメータが何であるかの情報と、搬送計画作成・指示部２３０が把握する搬送指示、レイアウト、保管状況等の入力情報を吸い上げ、理論的にはどのような搬送を実施できるかをシミュレートする。搬送シミュレータ１２５は、設定されたアルゴリズムとパラメータにしたがい、搬送計画作成・指示部２３０と同じ搬送計画と指示を作成する機能と、その指示が自律搬送車２２０に対し発せられたときに、どのような物の移動が実施されるのかを予測する。具体的には物流現場の物の流れを模擬するシミュレータが商用レベルでいくつか実用化されており、それを利用して搬送シミュレータ１２５を構成することが考えられる。その詳細な説明はここでは省く。
【００７５】
アルゴリズム選択・パラメータ設定部１２６は、搬送シミュレータ１２５が予測した物の動きと、全体状況観測部１１０による観測で得られた全体状況データ１１３を比較し、その違いを評価する。この違いが、搬送システム２００が意図する物の流れと実際の物の流れとの差である。アルゴリズム選択・パラメータ設定部１２６は、この差をなるべく小さくするように、搬送計画作成・指示部２３０が用いるアルゴリズムやパラメータを変更する。具体的には、搬送シミュレータ１２５が用いるアルゴリズムやパラメータを様々に変更させ、上記差が最も小さくなるものをもって、現在の最適なアルゴリズムあるいはパラメータとし、これを搬送計画作成・指示部２３０が用いるように搬送システム２００を更新する方法が一例として考えられる。
【００７６】
図１２は、本実施形態３に係るサービスシステム１０００が、搬送計画を作成するためのアルゴリズムやパラメータを更新する手順を説明するフローチャートである。以下、図１２の各ステップについて説明する。
【００７７】
（図１２：ステップＳ１２０１〜Ｓ１２０２）
全体状況観測部１１０は、倉庫等全体における搬送状況を計測する（Ｓ１２０１）。搬送シミュレータ１２５は、どのような搬送が理論的に実施できるのかを、実際に使われるアルゴリズムやパラメータにしたがってシミュレート算出する（Ｓ１２０２）
【００７８】
（図１２：ステップＳ１２０３〜Ｓ１２０４）
アルゴリズム選択・パラメータ設定部１２６は、搬送シミュレータ１２５のシミュレーション結果と、全体状況観測部１１０が観測した実際の搬送状況とを比較し、アルゴリズムやパラメータの変更方法を決定する（Ｓ１２０３）。アルゴリズム選択・パラメータ設定部１２６は、決定された変更方法にしたがい、搬送計画作成・指示部２３０が実際に用いる搬送計画作成のためのアルゴリズムやパラメータを変更する（Ｓ１２０４）。
【００７９】
＜実施の形態３：補足＞
本実施形態３において、搬送シミュレータ１２５や搬送計画作成・指示部２３０を、自律搬送車２２０とは別の場所にある固定された計算機によって構成する構成が考えられる。この場合は、全体状況観測部１１０、アルゴリズム選択・パラメータ設定部１２６、搬送計画作成・指示部２３０等は、有線あるいは無線ネットワークで接続する構成をとることが考えられる。それらと自律搬送車２２０とは、無線ネットワークを介して制御情報等を送受信することが考えられる。
【００８０】
＜実施の形態３：まとめ＞
以上のように、本実施形態３に係るサービスシステム１０００は、全体状況観測部１１０が観測した搬送状況と、搬送シミュレータ１２５によるシミュレーション結果とを比較し、最適な搬送計画作成アルゴリズムやパラメータを選択することができる。
【００８１】
本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。上記実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることもできる。また、ある実施形態の構成に他の実施形態の構成を加えることもできる。また、各実施形態の構成の一部について、他の構成を追加・削除・置換することもできる。
【００８２】
上記各構成、機能、処理部、処理手段等は、それらの一部や全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に格納することができる。
【符号の説明】
【００８３】
１００：サービス制御システム、１１０：第２観測部、１１１：広域距離センサデータ、１１２：軌跡データ、１１３：全体状況データ、１２０：更新指示部、１２１：地形検出部、１２２：地図更新部、１２３：比較部、１２４：経路更新部、１２５：搬送シミュレータ、１２６：アルゴリズム選択・パラメータ設定部、２００：実世界インターフェースシステム、２１０：第１観測部、２１１：距離センサデータ、２１２：搬送指示受付部、２１３：レイアウト観測部、２１４：保管状況観測部、２２０：操作部、２３０：操作指示部、２３１：地図データ、２３２：位置推定部、２３３：経路データ、２３４：移動制御部、１０００：サービスシステム。
【図１】
0006037608.tif 000002
【図２】
0006037608.tif 000003
【図３】
0006037608.tif 000004
【図４】
0006037608.tif 000005
【図５】
0006037608.tif 000006
【図６】
0006037608.tif 000007
【図７】
0006037608.tif 000008
【図８】
0006037608.tif 000009
【図９】
0006037608.tif 000010
【図１０】
0006037608.tif 000011
【図１１】
0006037608.tif 000012
【図１２】
0006037608.tif 000013