(57)【要約】  【構成】  ロボット制御システム１００は、中央制御装置１０、ロボット１２および位置検出システム１４を含む。中央制御装置１０は、代表移動軌跡に関する情報を記憶する流れデータベース１１８を備え、大量に蓄積された人々の移動行動情報、および位置検出システム１４によって随時検出される環境内の人（９６）の位置履歴を利用して、代表移動軌跡ごとに人の流れの状態を判別し、環境内における人の流れの発生、終息および継続などを予測する。そして、中央制御装置１０によって予測された人の流れ情報に基づいて、ロボット１２の行動が決定される。  【効果】  予め環境内に設定した代表移動軌跡の流れの状態を判別することによって、環境内における人の流れを予測できるので、人の流れに応じた自然な行動をロボットに実行させることができる。【選択図】  図１
2012203646.tif 000002
【特許請求の範囲】
【請求項１】
環境内の人の流れを予測する流れ状態判別装置であって、
前記環境内において蓄積した複数の人の移動行動情報に基づいて予め作成される１または複数の代表移動軌跡に関する情報を記憶する記憶手段、
前記環境内に存在する複数の人の位置履歴を検出する検出手段、
前記検出手段によって検出した前記位置履歴に基づいて、前記環境内に存在する複数の人のそれぞれについて、いずれの前記代表移動軌跡に属するかを判定する軌跡判定手段、
前記代表移動軌跡のそれぞれについて、前記判定手段によって当該代表移動軌跡に属すると判断された人から特徴量を抽出する抽出手段、および
前記抽出手段によって抽出された前記特徴量に基づいて、前記代表移動軌跡のそれぞれについて人の流れの状態を判別する状態判別手段を備える、流れ状態判別装置。
【請求項２】
前記状態判別手段は、前記人の流れの状態を示すラベルを付与した教師データを用いて作成される、機械学習の手法を用いた判別機を含む、請求項１記載の流れ判別装置。
【請求項３】
環境内の人の流れを予測する流れ状態判別方法であって、
（ａ）前記環境内における複数の人の移動行動情報を蓄積し、
（ｂ）前記ステップ（ａ）で蓄積した移動行動情報に基づいて、前記環境内の人が通る代表的な移動経路を１または複数の代表移動軌跡として設定し、
（ｃ）前記ステップ（ｂ）で設定した代表移動軌跡のそれぞれについて、人の流れの状態を判別するための判別機を作成し、
（ｄ）前記環境内に存在する複数の人の位置履歴を検出し、
（ｅ）前記ステップ（ｄ）で検出された複数の人の位置履歴に基づいて、当該複数の人のそれぞれがいずれの前記代表移動軌跡に属するかを判定し、
（ｆ）前記代表移動軌跡のそれぞれについて、前記ステップ（ｅ）で当該代表移動軌跡に属すると判断された人から特徴量を抽出し、そして
（ｇ）前記代表移動軌跡のそれぞれについて、前記ステップ（ｃ）で作成した判別機によって前記ステップ（ｆ）で抽出した特徴量を判別させることにより、人の流れの状態を判別する、流れ状態判別方法。
【請求項４】
環境内において蓄積した複数の人の移動行動情報に基づいて予め作成される１または複数の代表移動軌跡に関する情報を記憶する記憶手段を有する、流れ状態判別装置のプロセサを、
前記環境内に存在する複数の人の位置履歴を検出する検出手段、
前記検出手段によって検出した前記位置履歴に基づいて、前記環境内に存在する複数の人のそれぞれについて、いずれの前記代表移動軌跡に属するかを判定する軌跡判定手段、
前記代表移動軌跡のそれぞれについて、前記判定手段によって当該代表移動軌跡に属すると判断された人から特徴量を抽出する抽出手段、および
前記抽出手段によって抽出された前記特徴量に基づいて、前記代表移動軌跡のそれぞれについて人の流れの状態を判別する状態判別手段として機能させる、流れ状態判別プログラム。
【請求項５】
人と共存する環境に配置されてサービスを提供するロボットを含むロボット制御システムであって、
前記環境内において蓄積した複数の人の移動行動情報に基づいて予め作成される１または複数の代表移動軌跡に関する情報を記憶する記憶手段、
前記環境内に存在する複数の人の位置履歴を検出する検出手段、
前記検出手段によって検出した前記位置履歴に基づいて、前記環境内に存在する複数の人のそれぞれについて、いずれの前記代表移動軌跡に属するかを判定する軌跡判定手段、
前記代表移動軌跡のそれぞれについて、前記判定手段によって当該代表移動軌跡に属すると判断された人から特徴量を抽出する抽出手段、
前記抽出手段によって抽出された前記特徴量に基づいて、前記代表移動軌跡のそれぞれについて人の流れの状態を判別する状態判別手段、および
前記状態判別手段によって判別された結果に基づいて、前記ロボットの動作を制御する制御手段を備える、ロボット制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は流れ状態判別装置、流れ状態判別方法、流れ状態判別プログラムおよびそれらを用いたロボット制御システムに関し、特にたとえば、予め蓄積された複数の人の移動行動情報を利用して環境内の人の流れを予測する、新規な、流れ状態判別装置、流れ状態判別方法、流れ状態判別プログラムおよびそれらを用いたロボット制御システムに関する。
【背景技術】
【０００２】
従来技術の一例として、非特許文献１には、広域で安定したセンシングが可能な環境設置のユビキタスセンサと、直感的な情報提供が可能な人型のロボットとを組み合わせた、ネットワークロボットに関する技術が開示されている。非特許文献１の技術では、大量に蓄積された人々の移動軌跡情報（移動行動情報）から、空間の利用状況や人々の大局行動のパターンを分析する。そして、その分析結果を用いて、その人が行きそうな場所や起こしそうな局所行動を推定することによって、適切なサービスの提供相手をロボットが自動的に選択できるようにしている。
【非特許文献１】神田崇行,Dylan F. Glas,塩見昌裕,荻田紀博,「移動する人にサービス提供するロボットのための環境情報構造化」，（日本ロボット学会誌 27(4), 449-459, 2009-05-15）
【発明の概要】
【発明が解決しようとする課題】
【０００３】
非特許文献１の技術では、或る人が行きそうな場所や起こしそうな局所行動を予測する、つまり対象となる人の単独の行動を予測しており、人の流れについては予測されていない。すなわち、大量に蓄積された人々の移動行動情報を利用して、環境内の人の流れを予測するような技術は、これまで実現されていない。
【０００４】
それゆえに、この発明の主たる目的は、新規な、流れ状態判別装置、流れ状態判別方法、流れ状態判別プログラムおよびそれらを用いたロボット制御システムを提供することである。
【０００５】
この発明の他の目的は、環境内の人の流れを予測できる、流れ状態判別装置、流れ状態判別方法、流れ状態判別プログラムおよびそれらを用いたロボット制御システムを提供することである。
【課題を解決するための手段】
【０００６】
この発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明などは、本発明の理解を助けるために後述する実施の形態との対応関係を示したものであって、この発明を何ら限定するものではない。
【０００７】
第１の発明は、環境内の人の流れを予測する流れ状態判別装置であって、環境内において蓄積した複数の人の移動行動情報に基づいて予め作成される１または複数の代表移動軌跡に関する情報を記憶する記憶手段、環境内に存在する複数の人の位置履歴を検出する検出手段、検出手段によって検出した位置履歴に基づいて、環境内に存在する複数の人のそれぞれについていずれの代表移動軌跡に属するかを判定する軌跡判定手段、代表移動軌跡のそれぞれについて判定手段によって当該代表移動軌跡に属すると判断された人から特徴量を抽出する抽出手段、および抽出手段によって抽出された特徴量に基づいて、代表移動軌跡のそれぞれについて人の流れの状態を判別する状態判別手段を備える、流れ状態判別装置である。
【０００８】
第１の発明では、流れ状態判別装置（１０）は、代表移動軌跡（Ｆ）に関する情報を記憶する記憶手段（１１８）を備え、環境内における人の流れの発生、終息および継続などを予測する。代表移動軌跡は、環境内で観測された代表的な流れを示し、大量に蓄積された人々の移動行動情報に基づいて予め作成される。検出手段（１４，１１２，１１６，Ｓ７）は、たとえば環境内に存在する全ての人（９６）の数秒間ないし数十秒間の直近の位置履歴を検出する。軌跡判定手段（１１２，Ｓ９）は、たとえばＤＰマッチング等の手法を用いて各人の位置履歴と各代表移動軌跡との類似度を算出することによって、各人がいずれの代表移動軌跡に属しているかを判定する。抽出手段（１１２，Ｓ１７）は、各代表移動軌跡のそれぞれについて、その代表移動軌跡に属する人々から、総人数、平均移動速度、人密度およびグループ数などの特徴量を抽出する。状態判別手段（１１２，Ｓ１９）は、抽出手段によって抽出された特徴量に基づき、各代表移動軌跡のそれぞれについて、「もうすぐ流れが発生する」、「もうすぐ流れがなくなる」、「流れのある状況が続く」、「流れのない状況が続く」等の人の流れの状態を判別する。
【０００９】
第１の発明によれば、予め環境内に設定した代表移動軌跡の流れの状態を判別することによって、環境内における人の流れを予測できる。
【００１０】
第２の発明は、第１の発明に従属し、状態判別手段は、人の流れの状態を示すラベルを付与した教師データを用いて作成される、機械学習の手法を用いた判別機を含む。
【００１１】
第２の発明では、状態判別手段（１１２，Ｓ１９）は、ＳＶＭなどの機械学習の手法を用いた判別機を含む。判別機は、たとえば、「もうすぐ流れが発生する」や「もうすぐ流れがなくなる」等の人の流れの状態を示すラベルを予め付与された複数の教師データから特徴量を抽出し、学習することによって構築される。
【００１２】
第２の発明によれば、各代表移動軌跡の流れの状態を適切に判別でき、環境内における人の流れを精度よく予測できる。
【００１３】
第３の発明は、環境内の人の流れを予測する流れ状態判別方法であって、（ａ）環境内における複数の人の移動行動情報を蓄積し、（ｂ）ステップ（ａ）で蓄積した移動行動情報に基づいて、環境内の人が通る代表的な移動経路を１または複数の代表移動軌跡として設定し、（ｃ）ステップ（ｂ）で設定した代表移動軌跡のそれぞれについて、人の流れの状態を判別するための判別機を作成し、（ｄ）環境内に存在する複数の人の位置履歴を検出し、（ｅ）ステップ（ｄ）で検出された複数の人の位置履歴に基づいて、当該複数の人のそれぞれがいずれの代表移動軌跡に属するかを判定し、（ｆ）代表移動軌跡のそれぞれについて、ステップ（ｅ）で当該代表移動軌跡に属すると判断された人から特徴量を抽出し、そして（ｇ）代表移動軌跡のそれぞれについて、ステップ（ｃ）で作成した判別機によってステップ（ｆ）で抽出した特徴量を判別させることにより、人の流れの状態を判別する、流れ状態判別方法である。
【００１４】
第３の発明では、環境内で大量に蓄積された人々の移動行動情報を利用して、その環境内における人の流れの発生、終息および継続などを予測する。先ず、ステップ（ａ）では、位置検出システム（１４）等を利用して、たとえば、１週間程度の間、環境内に存在する全ての人の移動行動情報を検出してデータベースに蓄積する。ステップ（ｂ）では、蓄積した移動行動情報に基づいて、環境内の人が通る代表的な移動経路を１または複数の代表移動軌跡（Ｆ）として設定する。ステップ（ｃ）では、たとえばＳＶＭなどの機械学習の手法を用いて、代表移動軌跡のそれぞれについて、「もうすぐ流れが発生する」や「もうすぐ流れがなくなる」等の人の流れの状態を判別するための判別機を作成する。ステップ（ｄ）では、環境内に存在する全ての人（９６）の数秒間ないし数十秒間の直近の位置履歴を検出する（Ｓ７）。ステップ（ｅ）では、たとえばＤＰマッチング等の手法を用いて各人の位置履歴と各代表移動軌跡との類似度を算出することによって、各人がいずれの代表移動軌跡に属しているかを判定する（Ｓ９）。ステップ（ｆ）では、各代表移動軌跡のそれぞれについて、その代表移動軌跡に属する人々から、総人数、平均移動速度、人密度およびグループ数などの特徴量を抽出する（Ｓ１７）。そして、ステップ（ｇ）において、代表移動軌跡のそれぞれについて、ステップ（ｃ）で作成した判別機によってステップ（ｆ）で抽出した特徴量を判別させることにより、「もうすぐ流れが発生する」や「もうすぐ流れがなくなる」等の人の流れの状態を判別する（Ｓ１９）。
【００１５】
第３の発明によれば、予め環境内に設定した代表移動軌跡の流れの状態を判別することによって、環境内における人の流れを予測できる。
【００１６】
第４の発明は、環境内において蓄積した複数の人の移動行動情報に基づいて予め作成される１または複数の代表移動軌跡に関する情報を記憶する記憶手段を有する、流れ状態判別装置のプロセサを、環境内に存在する複数の人の位置履歴を検出する検出手段、検出手段によって検出した位置履歴に基づいて、環境内に存在する複数の人のそれぞれについて、いずれの代表移動軌跡に属するかを判定する軌跡判定手段、代表移動軌跡のそれぞれについて、判定手段によって当該代表移動軌跡に属すると判断された人から特徴量を抽出する抽出手段、および抽出手段によって抽出された特徴量に基づいて、代表移動軌跡のそれぞれについて人の流れの状態を判別する状態判別手段として機能させる、流れ状態判別プログラムである。
【００１７】
第４の発明においても、第１の発明と同様に、予め環境内に設定した代表移動軌跡の流れの状態を判別することによって、環境内における人の流れを予測できる。
【００１８】
第５の発明は、人と共存する環境に配置されてサービスを提供するロボットを含むロボット制御システムであって、環境内において蓄積した複数の人の移動行動情報に基づいて予め作成される１または複数の代表移動軌跡に関する情報を記憶する記憶手段、環境内に存在する複数の人の位置履歴を検出する検出手段、検出手段によって検出した位置履歴に基づいて、環境内に存在する複数の人のそれぞれについて、いずれの代表移動軌跡に属するかを判定する軌跡判定手段、代表移動軌跡のそれぞれについて、判定手段によって当該代表移動軌跡に属すると判断された人から特徴量を抽出する抽出手段、抽出手段によって抽出された特徴量に基づいて、代表移動軌跡のそれぞれについて人の流れの状態を判別する状態判別手段、および状態判別手段によって判別された結果に基づいて、ロボットの動作を制御する制御手段を備える、ロボット制御システムである。
【００１９】
第５の発明では、ロボット制御システム（１００）は、人と共存する環境において、案内や荷物運搬などのサービスを提供するロボット（１２）を含む。記憶手段（１０，１１８）は、代表移動軌跡（Ｆ）に関する情報を記憶する。代表移動軌跡は、環境内で観測された代表的な流れを示し、大量に蓄積された人々の移動行動情報に基づいて予め作成される。検出手段（１４，１１２，１１６，Ｓ７）は、たとえば環境内に存在する全ての人（９６）の数秒間ないし数十秒間の直近の位置履歴を検出する。軌跡判定手段（１０，１１２，Ｓ９）は、たとえばＤＰマッチング等の手法を用いて各人の位置履歴と各代表移動軌跡との類似度を算出することによって、各人がいずれの代表移動軌跡に属しているかを判定する。抽出手段（１０，１１２，Ｓ１７）は、各代表移動軌跡のそれぞれについて、その代表移動軌跡に属する人々から、総人数、平均移動速度、人密度およびグループ数などの特徴量を抽出する。状態判別手段（１０，１１２，Ｓ１９）は、抽出手段によって抽出された特徴量に基づき、各代表移動軌跡のそれぞれについて、「もうすぐ流れが発生する」、「もうすぐ流れがなくなる」、「流れのある状況が続く」、「流れのない状況が続く」等の人の流れの状態を判別する。制御手段（１０，６２，１１２，Ｓ２３）は、状態判別手段によって判別された結果、すなわち予測した環境内の人の流れに基づいて、ロボットの動作を制御する。たとえば、ロボットのタスクが観光案内である場合には、賑やかな場所、つまり流れのある状況が続く場所やもうすぐ流れが生じる場所、或いは複数の流れがある場所などを通るように、ロボットの動作を制御する。
【００２０】
第５の発明によれば、予め環境内に設定した代表移動軌跡の流れの状態を判別することによって、環境内における人の流れを予測できるので、人の流れに応じた自然な行動をロボットに実行させることができる。
【発明の効果】
【００２１】
この発明によれば、予め環境内に設定した代表移動軌跡の流れの状態を判別することによって、環境内における人の流れを予測できる。
【００２２】
この発明の上述の目的、その他の目的、特徴および利点は、図面を参照して行う後述の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【００２３】
【図１】この発明の一実施例のロボット制御システムの構成を示す図解図である。
【図２】図１の移動ロボットの外観を正面から見た様子を示す図解図である。
【図３】図１の移動ロボットの電気的構成を示すブロック図である。
【図４】図１の位置検出システムが適用された環境の様子を概略的に示す図解図である。
【図５】図１の位置検出システムの構成を示す図解図である。
【図６】図１のロボット制御システムが適用される環境の地図の一例を示す図解図である。
【図７】図６の環境において観測される代表的な流れ（代表移動軌跡）の一例を示す図解図である。
【図８】図６の環境を複数の領域に区分した様子の一例を示す図解図である。
【図９】図８の領域の１つに設定される代表移動軌跡の一例を示す図解図である。
【図１０】図１の流れデータベースに記憶されるテーブルの一例を示す図解図である。
【図１１】図１の中央制御装置のＣＰＵが実行する全体処理の一例を示すフロー図である。
【発明を実施するための形態】
【００２４】
図１を参照して、この発明の一実施例であるロボット制御システム１００は、中央制御装置１０、ロボット１２、および位置検出システム１４を含み、ショッピングセンタ、イベント会場、美術館および遊園地などの複数の人々が存在する様々な環境に適用される。ロボット制御システム１００では、中央制御装置１０が流れ状態判別装置として機能し、予め大量に蓄積された人々の移動行動情報を利用して、環境内における人の流れの発生、終息および継続などを予測する。そして、中央制御装置１０によって予測された人の流れ情報に基づいて、ロボット１２の行動が決定される。
【００２５】
先ず、図２および図３を参照して、ロボット１２について説明する。ロボット１２は、身体動作や発話を用いて人との間でコミュニケーション行動を実行する、相互作用指向のロボット（コミュニケーションロボット）である。ロボット１２は、配置された環境内において、案内、荷物運搬、客引き、エンタテインメント、掃除および巡回監視などの様々なサービスを提供する（タスクを実行する）。
【００２６】
図２は、ロボット１２の外観を示す正面図であり、この図２を参照して、ロボット１２のハードウェアの構成について説明する。ロボット１２は、台車２０を含み、この台車２０の下面には、ロボット１２を自律移動させる２つの車輪２２および１つの従輪２４が設けられる。２つの車輪２２は車輪モータ２６（図３参照）によってそれぞれ独立に駆動され、ロボット１２を前後左右任意の方向に動かすことができる。また、従輪２４は車輪２２を補助する補助輪である。このように、ロボット１２は、配置された環境内を自由に移動可能なものである。ただし、ロボット１２の移動機構は、車輪タイプに限定されず、公知の移動機構を適宜採用でき、たとえば２足歩行タイプの移動機構を採用することもできる。
【００２７】
台車２０の上には、円柱形のセンサ取付パネル２８が設けられ、このセンサ取付パネル２８には、赤外線距離センサ３０が取り付けられる。この赤外線距離センサ３０は、ロボット１２と周囲の物体（人や障害物など）との距離を計測するものである。
【００２８】
また、センサ取付パネル２８の上には、胴体３２が直立するように設けられる。胴体３２の前方中央上部（胸に相当する位置）には、上述した赤外線距離センサ３０がさらに設けられる。これは、ロボット１２の前方の主として人との距離を計測する。また、胴体３２には、１つの全方位カメラ３４が設けられる。全方位カメラ３４は、たとえば背面側上端部のほぼ中央から延びる支柱３６上に設けられる。全方位カメラ３４は、ロボット１２の周囲を撮影するものであり、後述する眼カメラ６０とは区別される。この全方位カメラ３４としては、たとえばＣＣＤやＣＭＯＳのような固体撮像素子を用いるカメラを採用することができる。なお、これら赤外線距離センサ３０および全方位カメラ３４の設置位置は当該部位に限られず適宜変更され得る。
【００２９】
胴体３２の両側面上端部（肩に相当する位置）のそれぞれには、肩関節３８Ｒおよび３８Ｌによって、上腕４０Ｒおよび４０Ｌが設けられる。図示は省略するが、肩関節３８Ｒおよび３８Ｌのそれぞれは、直交する３軸の自由度を有する。すなわち、肩関節３８Ｒは、直交する３軸のそれぞれの軸廻りにおいて上腕４０Ｒの角度を制御できる。肩関節３８Ｒの或る軸（ヨー軸）は、上腕４０Ｒの長手方向に平行な軸であり、他の２軸（ピッチ軸、ロール軸）は、それにそれぞれ異なる方向から直交する軸である。同様に、肩関節３８Ｌは、直交する３軸のそれぞれの軸廻りにおいて上腕４０Ｌの角度を制御できる。肩関節３８Ｌの或る軸（ヨー軸）は、上腕４０Ｌの長手方向に平行な軸であり、他の２軸（ピッチ軸、ロール軸）は、それにそれぞれ異なる方向から直交する軸である。
【００３０】
また、上腕４０Ｒおよび４０Ｌのそれぞれの先端には、肘関節４２Ｒおよび４２Ｌを介して、前腕４４Ｒおよび４４Ｌが設けられる。図示は省略するが、肘関節４２Ｒおよび４２Ｌは、それぞれ１軸の自由度を有し、この軸（ピッチ軸）の軸廻りにおいて前腕４４Ｒおよび４４Ｌの角度を制御できる。
【００３１】
前腕４４Ｒおよび４４Ｌのそれぞれの先端には、手に相当する球体４６Ｒおよび４６Ｌがそれぞれ固定的に設けられる。ただし、指や掌の機能が必要な場合には、人の手の形をした「手」を用いることも可能である。
【００３２】
また、図示は省略するが、台車２０の前面、肩関節３８Ｒ，３８Ｌを含む肩に相当する部位、上腕４０Ｒ，４０Ｌ、前腕４４Ｒ，４４Ｌおよび球体４６Ｒ，４６Ｌには、それぞれ、接触センサ（図３で接触センサ４８として包括的に示す。）が設けられている。台車２０の前面の接触センサ４８は、台車２０への人や他の障害物の接触を検知する。したがって、ロボット１２の移動中に障害物との接触があると、それを検知し、直ちに車輪２２の駆動を停止してロボット１２の移動を急停止させることができる。また、その他の接触センサ４８は、主に、人がロボット１２の当該各部位に触れたかどうかを検知する。なお、接触センサ４８の設置位置はこれらに限定されず、適宜な位置（胸、腹、脇、背中、腰など）に設けられてよい。
【００３３】
胴体３２の中央上部（首に相当する位置）には首関節５０が設けられ、さらにその上には頭部５２が設けられる。図示は省略するが、首関節５０は、３軸の自由度を有し、３軸の各軸廻りに角度制御可能である。或る軸（ヨー軸）はロボット１２の真上（鉛直上向き）に向かう軸であり、他の２軸（ピッチ軸、ロール軸）は、それぞれ、それと異なる方向で直交する軸である。
【００３４】
頭部５２には、口に相当する位置に、スピーカ５４が設けられる。スピーカ５４は、ロボット１２が、それの周辺の人に対して音声ないし音によってコミュニケーションを取るために用いられる。また、耳に相当する位置には、マイク５６Ｒおよび５６Ｌが設けられる。以下、右耳に相当するマイク５６Ｒと左耳に相当するマイク５６Ｌとをまとめて「マイク５６」ということがある。マイク５６は、周囲の音、とりわけコミュニケーションを実行する対象である人の声を取り込む。さらに、目に相当する位置には、眼球部５８Ｒおよび５８Ｌが設けられる。眼球部５８Ｒおよび５８Ｌは、それぞれ眼カメラ６０Ｒおよび６０Ｌを含む。以下、右の眼球部５８Ｒと左の眼球部５８Ｌとをまとめて「眼球部５８」ということがあり、また、右の眼カメラ６０Ｒと左の眼カメラ６０Ｌとをまとめて「眼カメラ６０」ということがある。
【００３５】
眼カメラ６０は、ロボット１２に接近した人の顔や他の部分ないし物体などを撮影して、それに対応する映像信号を取り込む。眼カメラ６０としては、上述した全方位カメラ３４と同様のカメラを用いることができる。たとえば、眼カメラ６０は眼球部５８内に固定され、眼球部５８は眼球支持部（図示せず）を介して頭部５２内の所定位置に取り付けられる。図示は省略するが、眼球支持部は、２軸の自由度を有し、それらの各軸廻りに角度制御可能である。たとえば、この２軸の一方は、頭部５２の上へ向かう方向の軸（ヨー軸）であり、他方は、一方の軸に直交しかつ頭部５２の正面側（顔）が向く方向に直交する方向の軸（ピッチ軸）である。眼球支持部がこの２軸の各軸廻りに回転されることによって、眼球部５８ないし眼カメラ６０の先端（正面）側が変位され、カメラ軸すなわち視線方向が移動される。なお、上述のスピーカ５４、マイク５６および眼カメラ６０の設置位置は、これらに限定されず、適宜な位置に設けてられてよい。
【００３６】
図３は、ロボット１２の電気的な構成を示すブロック図である。図３に示すように、ロボット１２は、全体を制御するＣＰＵ６２を含む。ＣＰＵ６２は、マイクロコンピュータ或いはプロセサとも呼ばれ、バス６４を介して、メモリ６６、モータ制御ボード６８、センサ入力／出力ボード７０および音声入力／出力ボード７２等に接続される。
【００３７】
メモリ６６は、図示は省略するが、ＲＯＭやＨＤＤおよびＲＡＭを含む。ＲＯＭやＨＤＤには、ロボット１２の制御プログラムが予め記憶される。たとえば、人との間でコミュニケーション行動を実行するための行動制御プログラム、環境内を移動するための移動制御プログラム、および外部コンピュータとの間で必要な情報（制御データなど）を送受信するための通信プログラム等である。また、ＲＯＭやＨＤＤには、コミュニケーション行動を実行する際にスピーカ５４から発生すべき音声または声の音声データ（音声合成データ）、および配置される環境の地図データなどが適宜記憶される。また、ＲＡＭは、ワークメモリやバッファメモリとして用いられる。
【００３８】
モータ制御ボード６８は、たとえばＤＳＰで構成され、各腕や首関節５０および眼球部５８などの各軸モータの駆動を制御する。すなわち、モータ制御ボード６８は、ＣＰＵ６２からの制御データを受け、右眼球部５８Ｒの２軸のそれぞれの角度を制御する２つのモータ（図３では、まとめて「右眼球モータ」と示す。）７４の回転角度を制御する。同様に、モータ制御ボード６８は、ＣＰＵ６２からの制御データを受け、左眼球部５８Ｌの２軸のそれぞれの角度を制御する２つのモータ（図３では、まとめて「左眼球モータ」と示す。）７６の回転角度を制御する。
【００３９】
また、モータ制御ボード６８は、ＣＰＵ６２からの制御データを受け、右肩関節３８Ｒの直交する３軸のそれぞれの角度を制御する３つのモータと右肘関節４２Ｒの角度を制御する１つのモータとの計４つのモータ（図３では、まとめて「右腕モータ」と示す。）７８の回転角度を調節する。同様に、モータ制御ボード６８は、ＣＰＵ６２からの制御データを受け、左肩関節３８Ｌの直交する３軸のそれぞれの角度を制御する３つのモータと左肘関節４２Ｌの角度を制御する１つのモータとの計４つのモータ（図３では、まとめて「左腕モータ」と示す。）８０の回転角度を調節する。
【００４０】
さらに、モータ制御ボード６８は、ＣＰＵ６２からの制御データを受け、首関節５０の直交する３軸のそれぞれの角度を制御する３つのモータ（図３では、まとめて「頭部モータ」と示す。）８２の回転角度を制御する。さらにまた、モータ制御ボード６８は、ＣＰＵ６２からの制御データを受け、車輪２２を駆動する２つのモータ（図３では、まとめて「車輪モータ」と示す。）２６の回転角度を制御する。
【００４１】
なお、この実施例では、車輪モータ２６を除くモータは、制御を簡素化するために、ステッピングモータ或いはパルスモータを用いるようにしてある。ただし、車輪モータ２６と同様に、直流モータを用いるようにしてもよい。
【００４２】
センサ入力／出力ボード７０もまた、同様に、ＤＳＰで構成され、各センサからの信号を取り込んでＣＰＵ６２に与える。すなわち、赤外線距離センサ３０のそれぞれからの反射時間に関するデータが、センサ入力／出力ボード７０を通してＣＰＵ６２に入力される。また、全方位カメラ３４からの映像信号が、必要に応じてセンサ入力／出力ボード７０で所定の処理を施された後、ＣＰＵ６２に入力される。眼カメラ６０からの映像信号も、同様にして、ＣＰＵ６２に入力される。また、上述した複数の接触センサ４８からの信号がセンサ入力／出力ボード７０を介してＣＰＵ６２に与えられる。
【００４３】
音声入力／出力ボード７２もまた、同様に、ＤＳＰで構成され、ＣＰＵ６２から与えられる音声合成データに従った音声または声がスピーカ５４から出力される。また、マイク５６からの音声入力が、音声入力／出力ボード５６を介してＣＰＵ６２に取り込まれる。
【００４４】
また、ＣＰＵ６２は、バス６４を介して通信ＬＡＮボード８４に接続される。通信ＬＡＮボード８４は、ＤＳＰで構成され、ＣＰＵ６２から送られる送信データを無線通信装置８６に与え、無線通信装置８６から送信データを、たとえば、無線ＬＡＮのようなネットワークを介して外部コンピュータに送信する。また、通信ＬＡＮボード８４は、無線通信装置８６を介してデータを受信し、受信したデータをＣＰＵ６２に与える。つまり、この通信ＬＡＮボード８４および無線通信装置８６によって、ロボット１２は外部コンピュータ（中央制御装置１０や位置検出システム１４）などと無線通信を行うことができる。
【００４５】
続いて、位置検出システム１４について説明する。図４は、位置検出システム１４が適用された環境の様子を概略的に示す図解図であり、図５は、位置検出システム１４の電気的な構成を示す図解図である。図４および図５に示すように、位置検出システム１４は、位置検出処理を実行するコンピュータ９０、環境内に設置される複数のレーザレンジファインダ（ＬＲＦ）９２および無線ＩＤタグリーダ９４、ならびに各人９６に装着される無線ＩＤタグ９８を含む。
【００４６】
位置検出システム１４のコンピュータ９０は、パーソナルコンピュータやワークステーションのような汎用のコンピュータである。このコンピュータ９０には、たとえばＲＳ-２３２Ｃのような汎用のインタフェースを介して、複数のＬＲＦ９２および無線ＩＤタグリーダ９４が接続される。これらの機器９２，９４によって検出されたデータは、コンピュータ９０に送信され、その検出時刻と共にコンピュータ９０のメモリの所定領域や外部のデータベースに適宜記憶される。また、コンピュータ９０のメモリには、ＸＹ２次元平面座標系で表される各機器９２，９４の位置データや、環境の地図データが予め記憶されている。
【００４７】
ＬＲＦ９２は、レーザを照射し、物体に反射して戻ってくるまでの時間から当該物体までの距離を計測するセンサであり、たとえば、トランスミッタから照射したレーザを回転ミラーで反射させて、前方を扇状に一定角度ずつスキャンする。ＬＲＦ９２は、たとえば、高さ約９０ｃｍの台座の上に設置される。ＬＲＦ９２としては、ＳＩＣＫ社製のＬＲＦ(型式 LMS 200)や、ＨＯＫＵＹＯ社製のＬＲＦ(型式 UTM‐30LX)等を用いることができる。
【００４８】
位置検出システム１４では、コンピュータ９０が、所定頻度（たとえば３７.５回／秒）でＬＲＦ９２からのセンサ情報（距離情報）を取得し、パーティクルフィルタや人形状モデルを用いて、人９６の現在位置の変化を推定する。たとえば、ＬＲＦ９２によってスキャンされると、人９６が存在しない可視区域、人９６が存在する陰区域および人９６のエッジが検出される。また、実空間に対応する仮想空間に対してパーティクルを均等にばら撒き、ＬＲＦ９２毎に尤度を求める。さらに、ＬＲＦ９２毎の尤度を統合することで、各パーティクルが更新される。そして、更新された各パーティクルによって人９６の現在位置の変化が推定される。なお、尤度は、可視区域では一定値とし、陰区域では一定値とエッジの尤度との和となる。このようにして推定された現在位置の変化に基づいて人９６の位置を求め、その位置の平面座標を示す数値（位置データ）を、時刻データと対応付けて、移動行動情報（移動軌跡データ）として人９６ごとに分けて蓄積していく。また、たとえば、各人９６の移動軌跡における一定時間ごとの変化量を時間で微分することによって、各人９６の移動速度を算出する。なお、このようなＬＲＦを用いた人の位置検出の詳細については、本件出願人が先に出願した特開２００９−１６８５７８号公報に記載されているので参照されたい。
【００４９】
無線ＩＤタグ９８は、環境内に存在する各人９６に装着される。無線ＩＤタグ９８としては、たとえばＲＦＩＤ（Radio Frequency Identification）タグを用いることができる。ＲＦＩＤは、電磁波を利用した非接触ＩＣタグによる自動認識技術のことである。具体的には、ＲＦＩＤタグは、識別情報用のメモリや通信用の制御回路等を備えるＩＣチップおよびアンテナ等を含む。ＲＦＩＤタグのメモリには、人９６を識別可能な情報が予め記憶され、その識別情報が所定周波数の電磁波・電波などによってアンテナから出力される。
【００５０】
無線ＩＤタグリーダ９４は、たとえば環境内の天井に敷設されたレールに設置され、上述の無線ＩＤタグ９８からの出力情報を検出する。具体的には、無線ＩＤタグリーダ９４は、無線ＩＤタグ９８から送信される識別情報の重畳された電波を、アンテナを介して受信し、電波信号を増幅し、当該電波信号から識別情報を分離し、当該情報を復調（デコード）する。また、無線ＩＤタグリーダ９４は、検出した電波強度に基づいて、無線ＩＤタグ９８との距離を検出する。
【００５１】
この実施例では、コンピュータ９０は、たとえば５回／秒の頻度で無線ＩＤタグリーダ９４によって検出される無線ＩＤタグ９８からのセンサ情報（識別情報および距離情報）を取得する。そして、取得した識別情報に基づいて、その無線ＩＤタグ９８を所持している人９６を特定する。また、同一の無線ＩＤタグ９８に対して３つの無線ＩＤタグリーダ９４から取得した距離情報と、予め記憶した無線ＩＤタグリーダ９４の位置データとに基づいて、その無線ＩＤタグ９８を所持している人９６の位置座標を特定する。
【００５２】
そして、位置検出システム１２のコンピュータ９０は、各機器９２，９４によって検出されたセンサ情報（測位データ）或いはセンサ情報から推定した情報を統合し、各人９６の位置座標（Ｘ，Ｙ）をその検出時刻ｔに対応付けて、メモリ或いはデータベースに記憶する。つまり、人９６（識別情報またはＩＤ番号）ごとに、時系列データとしてその移動軌跡が記憶される。このような移動行動情報は、中央制御装置１０からの要求に応じて、或いは所定時間ごとに、中央制御装置１０に随時送信される。
【００５３】
なお、位置検出システム１４は、各人９６の位置座標ないし位置履歴を検出できるものであれば、上述の構成のものに限定されず、たとえば、赤外線センサ、ビデオカメラ、床センサ、或いはＧＰＳ等を適宜利用するものであってもよい。また、人９６を個別に識別する必要がない場合には、無線ＩＤタグリーダ９４および無線ＩＤタグ９８を必ずしも備える必要はない。
【００５４】
図１に戻って、中央制御装置（流れ状態判別装置）１０は、コンピュータ１１０を含み、上述のような位置検出システム１４から随時送信される各人９６の移動行動情報、および予め大量に蓄積された人々の移動行動情報に基づいて、環境内における人の流れの状態（流れの発生や終息、継続など）を予測する。
【００５５】
コンピュータ１１０は、たとえば、ＣＰＵ１１２、メモリ１１４、通信装置１１６、入力装置および表示装置などを備える汎用のパーソナルコンピュータやワークステーションである。コンピュータ１１０のメモリ１１２は、ＨＤＤやＲＯＭおよびＲＡＭを含む。ＨＤＤないしＲＯＭには、中央制御装置１０の動作を制御するためのプログラムが記憶されており、ＣＰＵ１１２は、このプログラムに従って処理を実行する。たとえば、ＨＤＤないしＲＯＭには、環境内の人の流れを予測するための予測プログラム（軌跡判定プログラム、特徴量抽出プログラムおよび流れ状態判別プログラム等）、およびロボット１２や位置検出システム１４等の外部コンピュータとの間で必要な情報（ロボット１２の制御データや人９６の移動行動情報など）を送受信するための通信プログラム等が記憶される。ＲＡＭは、ＣＰＵ１１２の作業領域またはバッファ領域として使用される。通信装置１１６は、たとえば無線ＬＡＮやインタネットのようなネットワークを介して、外部コンピュータと通信するためのものである。
【００５６】
また、中央制御装置１０のコンピュータ１１０には、流れデータベース（ＤＢ）１１８が接続される。流れＤＢ１１８は、詳細は後述するように、代表移動軌跡Ｆの軌跡データなどが記憶されるデータベースである（図１０参照）。なお、流れＤＢ１１８は、図１に示すようにコンピュータ１１０の外部に設けられてもよいし、コンピュータ１１０内のＨＤＤ等に設けられてもよい。
【００５７】
このような中央制御装置１０では、上述のように、適用環境において予め大量に蓄積された人々の移動行動情報を利用する。この実施例では、大量に蓄積された人々の移動行動情報に基づいて、代表移動軌跡Ｆおよび人の流れの状態を判別するための判別機が予め作成される。図６は、中央制御装置１０（ロボット制御システム１００）が適用される環境（商業施設）の一例を示す地図である。図６に示すように、この環境の中央部にはエスカレータ（Ｅｓｃ）があり、その左側には階段がある。また、図６に斜線で示す部分は、店舗や柱などの構造物が存在し、人９６やロボット１２の通路とはならない部分である。
【００５８】
以下、予め作成される代表移動軌跡Ｆおよび判別機について説明する。先ず、位置検出システム１４などを用いて、一定期間（たとえば１週間）、環境内に存在する全ての人の位置履歴（移動行動情報）を検出してデータベースに蓄積していく。蓄積した移動行動情報を分析すると、環境内の人々が通る道（つまり人の流れが生じる経路）は或る程度決まっていることが分かるので、代表的な移動経路を代表移動軌跡Ｆとして設定する。具体例を挙げて説明すると、図７に示すように、蓄積した移動行動情報を分析した結果、環境内の通路を右から左へ移動する、或いは左から右へ移動する主要な流れの存在が観測されたとする。また、階段やエスカレータから主要な流れに合流したり、主要な流れから階段やエスカレータに向かったり、柱に沿って移動したりする中程度の流れや、立ち止まっている人を避けるための副次的な流れの存在が観測されたとする。このような場合、これらの観測された代表的な流れ（移動経路）のそれぞれが、代表移動軌跡Ｆとして設定され得る。なお、代表移動軌跡Ｆは、１つであってもよいし、複数であってもよい。
【００５９】
なお、適用環境の全体を１つの領域とし、上述のような代表的な流れのそれぞれを代表移動軌跡Ｆとすることもできるが、環境を複数の領域に区分して、上述のような代表的な流れの一部分のそれぞれを代表移動軌跡Ｆとすることもできる。たとえば、図８に示すように、環境を複数の領域に区分して管理し、図９に示すように、領域ごとに代表移動軌跡Ｆを設定することもできる。なお、環境の区分の仕方、すなわち領域の大きさ、数および形状などは、適用環境に応じて適宜設定され、たとえば、格子状に規則正しく区分することもできるし、不定形状に不規則に区分することもできる。また、このような環境の区分は、開発者や管理者が手動で詳細に設定するようにしてもよいし、ｋ−ｍｅａｎｓ法などを利用して自動的に設定するようにしてもよい。
【００６０】
このような代表移動軌跡Ｆに関する情報は、流れＤＢ１１８に記憶される。図１０には、流れＤＢ１１８に記憶されるテーブルの一例を示す。図１０に示すように、流れＤＢ１１８には、各代表移動軌跡Ｆに設定されたＩＤに対応付けて、各代表移動軌跡Ｆの軌跡データが記憶される。軌跡データには、移動軌跡を構成する座標（Ｘ，Ｙ）が含まれる。また、軌跡データには、その座標で行われた行動態様（Ａ）を含むようにしてもよい。行動態様（Ａ）としては、移動速度に基づいて推定される「立ち止まる」、「ゆっくり進む」および「早歩きで進む」などが含まれる。たとえば、ＩＤが「Ｆａ」である代表移動軌跡Ｆに対応付けて、「（Ｘａ１，Ｙａ１，Ａａ１），（Ｘａ２，Ｙａ２，Ａａ２），…」の軌跡データが記憶される。
【００６１】
代表移動軌跡Ｆが設定（作成）されると、続いて、機械学習の手法を用いて、代表移動軌跡Ｆごとに人の流れの状態を判別するための判別機を作成する。機械学習の手法としては、サポートベクターマシン（ＳＶＭ）、ニューラルネットワーク、ブースティング等の公知の手法を用いることができる。以下には、一例としてＳＶＭを用いる場合について説明するが、ＳＶＭは広く一般的な方法であるため、詳細な説明は省略する。
【００６２】
ＳＶＭは、予めラベル付けがされた複数の教師データ（データセット）から特徴量を抽出し、学習することによって構築される。ここで、複数の教師データは、開発者などによって予め作成されるものであり、教師データのそれぞれには、人の流れの状態についてのラベルが手作業で付与される。教師データは、たとえば、ｎ秒間の移動軌跡などの時系列データであり、蓄積した移動行動情報を開発者などが複数人で観察して、その流れの状態であるとして異論のない部分が教師データとして扱われる。ただし、機械的に教師データを定義することも可能である。
【００６３】
教師データに付与されるラベルとしては、「もうすぐ流れが発生する」、「もうすぐ流れがなくなる（終息する）」、「流れのある状況が続く（継続する）」、「流れのない状況が続く」、「流れがある」、「流れがない」、「流れの停滞が生じる（混雑する）」、「流れの停滞が解消される」等がある。なお、「人の流れ」とは、複数の人の移動態様を全体的な視点で表現するものであり、どのような状態を「流れがある」や「流れがない」等と判断するか、また、どのような状態のラベルを採用するかは、開発者などが適宜設定できる。
【００６４】
また、教師データから抽出される特徴量としては、その軌跡（流れ）に存在する総人数、平均移動速度、人密度（単位長さ当たりの人数）、およびグループ数などがある。ただし、特徴量の種類および数は、一意に定まっているわけではなく、適用環境や代表移動軌跡Ｆに応じて、様々な統計量が特徴量として用いられ得る。
【００６５】
中央制御装置１０では、このような機械学習の手法による判別機を用いて、各代表移動軌跡Ｆの人の流れの状態を判別し、環境内の人の流れを予測する。以下、中央制御装置１０が環境内の人の流れを予測する方法（動作）について説明する。
【００６６】
先ず、環境内に存在する人９６がどの代表移動軌跡Ｆに属しているか（乗っているか）を判定することによって、各人９６を代表移動軌跡Ｆのいずれかに振り分ける。ただし、どの代表移動軌跡Ｆにも属さない人９６も存在し得る。判定結果は、メモリ１１２等に適宜記憶される。具体的には、環境内に存在する全ての人について、数秒間ないし数十秒間の直近の移動軌跡データ（位置履歴データ）を位置検出システム１４から取得し、メモリ１１２等に一時記憶する。そして、取得した各人９６の移動軌跡データのそれぞれと代表移動軌跡Ｆのそれぞれとを比較して、各人９６の移動軌跡データと所定値以上の類似度を有する代表移動軌跡Ｆが存在する場合に、その人９６はその代表移動軌跡Ｆに属していると判断する。また、所定値以上の類似度を有する複数の代表移動軌跡Ｆが存在する場合には、類似度が最も大きい代表移動軌跡Ｆに属していると判断し、所定値以上の類似度を有する代表移動軌跡Ｆがない場合は、どの代表移動軌跡Ｆにも属さないと判断する。各人９６の移動軌跡データと代表移動軌跡Ｆとの類似度の判定には、ＤＰマッチング等の公知の手法を用いるとよい。なお、ＤＰマッチングを用いて軌跡の類似度を判定する手法については、本件出願人が先に出願した特開２０１０−２３１４７０号公報に記載されているので参照されたい。
【００６７】
各人９６の各代表移動軌跡Ｆへの振り分けが終了すると、各代表移動軌跡Ｆのそれぞれについて人の流れの状態を判別する。具体的には、代表移動軌跡Ｆのそれぞれについて、その代表移動軌跡Ｆに属する人々から特徴量、たとえば、総人数、平均移動速度、人密度およびグループ数などを抽出する。そして、抽出した特徴量を上述の予め作成した判別機によって判別させることにより、その代表移動軌跡Ｆの人の流れの状態を判別する。つまり、代表移動軌跡Ｆのそれぞれが、「もうすぐ（たとえば数十秒後）流れが発生する」、「もうすぐ流れがなくなる（終息する）」、「流れのある状況が続く」および「流れのない状況が続く」等のいずれの状態であるかを判別する。代表移動軌跡Ｆごとに判別されたこれらの流れ情報を統合することによって、環境内の或る場所にもうすぐ流れが発生する、或る場所の流れがもうすぐなくなる等が分かる。すなわち、環境内における人の流れの発生、終息および継続などを予測することができる。
【００６８】
そして、ロボット制御システム１００では、このように中央制御装置１０によって予測された環境内の人の流れに関する情報は、ロボット１２の行動の決定（選択）に利用される。この実施例では、中央制御装置１０は、ロボット制御装置としても機能し、環境内の人の流れに応じた制御データが、中央制御装置１０からロボット１２に対して送信される。ロボット１２は、中央制御装置１０から送信される制御データに従って動作を制御する。
【００６９】
たとえば、ロボット１２のタスクが観光案内である場合には、ロボット１２は、賑やかな場所、つまり流れのある状況が続く場所やもうすぐ流れが生じる場所、或いは複数の流れがある場所などを通るように制御される。また、たとえば、ロボット１２のタスクが荷物運搬である場合には、ロボット１２は、空いている場所、つまり流れのない状況が続く場所やもうすぐ流れがなくなる場所を通るように制御される。さらに、たとえば、ロボット１２のタスクが流れ制御（誘導整理）である場合には、混雑している場所に移動し、その場所の状態がもうすぐ流れがなくなる状態になるまで、その場所で人に声をかけるように制御される。ただし、これらは単なる例示であり、環境内の人の流れに応じてどのようにロボット１２の行動を制御するかは、適宜決定できる。
【００７０】
なお、中央制御装置１０からロボット１２に対して制御データを送信する代わりに、環境内の人の流れに関する情報自体をロボット１２に送信し、ロボット１２（ＣＰＵ６２）自身が、環境内の人の流れに応じて自身の行動を決定することもできる。また、環境内の人の流れに応じたロボット１２の制御データを生成する他のコンピュータを、中央制御装置１０とロボット１２との間に介在させ、ロボット制御装置として機能させることもできる。さらに、位置検出システム１４のコンピュータ９０の機能を、中央制御装置１０のコンピュータ１１０が実行することもできる。
【００７１】
続いて、フロー図を用いてロボット制御システム１００（中央制御装置１０）の動作を説明する。具体的には、図１に示したコンピュータ１１０のＣＰＵ１１２が、図１１に示すフロー図に従って全体処理を実行する。
【００７２】
図１１を参照して、ＣＰＵ１１２は、ステップＳ１で終了処理があるか否かを判断する。たとえば、この全体処理を終了するための操作がオペレータ等によって行われたか否かを判断する。ステップＳ１で“ＹＥＳ”の場合、すなわち終了処理がある場合には、この全体処理を終了する。一方、ステップＳ１で“ＮＯ”の場合には、処理はステップＳ３に進む。
【００７３】
ステップＳ３では、人９６のＩＤを示す変数Ｘを初期化する（Ｘ＝０）。たとえば、環境内に存在する人９６のＩＤを０〜Ｌとした場合、Ｘ＝０に設定する。続くステップＳ５では、Ｘ＝Ｌか否かを判断する。つまり、環境内に存在する全ての人９６に対して軌跡判定処理（ステップＳ７およびＳ９の処理）を実行したか否かを判断する。ステップＳ５で“ＹＥＳ”の場合、すなわち環境内に存在する全ての人９６に対して軌跡判定処理を行った場合には、ステップＳ１３に進む。一方、ステップＳ５で“ＮＯ”の場合、すなわち軌跡判定処理を行っていない人９６が存在する場合には、ステップＳ７に進む。
【００７４】
ステップＳ７では、ＩＤがＸの人９６の位置履歴を取得する。すなわち、当該人９６の数秒間ないし数十秒間の直近の位置履歴データ（移動行動情報）を、通信装置１１６を介して位置検出システム１４から取得する。続くステップ９では、当該人９６の移動行動情報と代表移動軌跡Ｆのそれぞれとを比較して、当該人９６がどの代表移動軌跡Ｆに属しているかを判定する。すなわち、ＤＰマッチング等を用いて当該人９６の位置履歴データと各代表移動軌跡Ｆとの類似度を算出する。そして、たとえば所定値以上の類似度を有する代表移動軌跡Ｆが存在する場合には、その人９６はその代表移動軌跡Ｆに属していると判定する。この判定結果は、メモリ１１４等に適宜記憶される。続くステップＳ１１では、変数Ｘをインクリメントして（Ｘ＝Ｘ＋１）、ステップＳ５に戻る。
【００７５】
ステップＳ１３では、代表移動軌跡ＦのＩＤ（Ｆａ，Ｆｂ，Ｆｃ，…）を示す変数Ｙを初期化する（Ｙ＝０）。たとえば、環境内に設定した代表移動軌跡のＩＤを０〜Ｍとした場合、Ｙ＝０に設定する。続くステップＳ１５では、Ｙ＝Ｍか否かを判断する。つまり、環境内に設定した全ての代表移動軌跡Ｆに対して流れ状態判別処理（ステップＳ１７およびＳ１９の処理）を実行したか否かを判断する。ステップＳ１５で“ＹＥＳ”の場合、すなわち環境内に設定した全ての代表移動軌跡Ｆに対して流れ状態判定処理を行った場合には、ステップＳ２３に進む。一方、ステップＳ１５で“ＮＯ”の場合、すなわち流れ状態判定処理を行っていない代表移動軌跡Ｆが存在する場合には、ステップＳ１７に進む。
【００７６】
ステップＳ１７では、ＩＤがＹの代表移動軌跡Ｆに属する人々から特徴量を抽出する。すなわち、ステップＳ９で当該代表移動軌跡Ｆに属すると判定された人９６から、その代表移動軌跡Ｆに属する人の総数、平均移動速度、人密度、およびグループ数など特徴量を抽出する。続くステップＳ１９では、判別機を利用して人の流れの状態を判別する。すなわち、ステップＳ１７で抽出した特徴量を予め作成した判別機によって判別させることにより、その代表移動軌跡Ｆの人の流れの状態を判別する。たとえば、「もうすぐ流れが発生する」や「もうすぐ流れがなくなる」等のいずれの状態であるかを判別する。この判別結果は、メモリ１１４等に適宜記憶される。
【００７７】
ステップＳ２３では、環境内の人の流れに応じた制御データをロボット１２に送信する。たとえば、ロボット１２に設定されたタスクが観光案内である場合には、もうすぐ流れが生じる場所などを通るようにロボット１２を制御するための制御データを作成し、通信装置１１６を介してロボット１２に送信する。
【００７８】
この実施例によれば、予め環境内に設定した代表移動軌跡Ｆの流れの状態を判別することによって、環境内の或る場所にもうすぐ流れが発生する、或る場所の流れがもうすぐなくなる等が予測できる。すなわち、環境内における人の流れの発生、終息および継続などを予測することができる。
【００７９】
また、環境内の人の流れを予測できるので、人の流れに応じた自然な行動をロボット１２に実行させることができる。
【００８０】
なお、上述の実施例では、代表移動軌跡Ｆに属する人々の特徴量から、その代表移動軌跡Ｆの人の流れの状態を判別するようにした、つまり代表移動軌跡Ｆａの特徴量から代表移動軌跡Ｆａの人の流れの状態を判別したが、これに限定されない。たとえば、代表移動軌跡Ｆ同士の相関関係を予め計算しておくことによって、或る代表移動軌跡Ｆに属する人々の特徴量から、他の代表移動軌跡Ｆの人の流れの状態を判別することもできる。また、たとえば、或る領域内に含まれる代表移動軌跡群（代表移動軌跡Ｆの集まり）に属する人々の特徴量から、その領域の人の流れの状態を判別することもできる。
【００８１】
また、上述の実施例では、ロボット１２の一例として、身体動作や発話を用いて人との間でコミュニケーション行動を実行する相互作用指向のロボットを挙げて説明したが、ロボット１２の種類は特に限定されない。
【００８２】
さらに、上述の実施例では、予測した人の流れの情報に基づいて、ロボット１２の行動を制御するようにしたが、これに限定されず、デジタルサイネージや信号機などの他の機器の制御に利用することもできるし、警備員などの人に指示を出すこともできる。たとえば、デジタルサイネージを制御するときには、デジタルサイネージの視野範囲が、流れがある状態やもうすぐ流れる状態になったときのみに、広告を提示するような使用方法が考えられる。
【００８３】
なお、上で挙げた時間や回数などの具体的数値は、いずれも単なる一例であり、必要に応じて適宜変更可能である。
【符号の説明】
【００８４】
１０  …中央制御装置（流れ状態判別装置）
１２  …ロボット
１４  …位置検出システム
６２  …ロボットのＣＰＵ
６６  …ロボットのメモリ
８６  …ロボットの通信装置
９０  …位置検出システムのコンピュータ
９２  …レーザレンジファインダ
９４  …無線ＩＤタグリーダ
１００  …ロボット制御システム
１１０  …中央制御装置のコンピュータ
１１２  …中央制御装置のＣＰＵ
１１４  …中央制御装置のメモリ
１１６  …中央制御装置の通信装置
１１８  …流れデータベース
Ｆ  …代表移動軌跡
【図１】
2012203646.tif 000003
【図２】
2012203646.tif 000004
【図３】
2012203646.tif 000005
【図４】
2012203646.tif 000006
【図５】
2012203646.tif 000007
【図６】
2012203646.tif 000008
【図７】
2012203646.tif 000009
【図８】
2012203646.tif 000010
【図９】
2012203646.tif 000011
【図１０】
2012203646.tif 000012
【図１１】
2012203646.tif 000013