〔第1実施形態〕
以下、図1等を参照して、第1実施形態に係る案内ロボットの一例について概要を説明する。なお、以下では、一例として、図示のように、案内ロボット10を設置した状態において、重力方向(垂直方向)を-Z方向とし、Z方向を上下方向とする。また、Z方向に対して垂直な面(水平面)内において互いに直交する方向をX方向及びY方向とする。すなわち、Z方向に垂直な面をXY面とする。また、案内ロボット10の正面についての方向すなわち前後方向をX方向とし、左右方向をY方向とする。図1は、案内ロボット10の一構成例を示す概念的な斜視図であり、図2は、案内ロボット10の各部に設けられる各構成要素の配置の一例について概略を概念的に示すための正面図である。
例えば図1に示すように、本実施形態に係る案内ロボット10は、利用者との対話を行う主要部分(インターフェース)としての人型の立体構造部11と、立体構造部11を載置させる台座部12とを備える。
案内ロボット10のうち、立体構造部11は、人体の一部を模した形状の頭状部やこれを支持する胴体状部を有する。より具体的には、立体構造部11は、人型の立体構造物として認識される構成となるように、Z方向について最上部に設けられ球形に近い形状を有する頭状部HDと、頭状部HDの下側に設けられて頭状部HDを支持する円錐台状の胴体状部TRとを有して、人間を模した形状になっている。図示の例では、頭状部HDは、胴体状部TR上において、例えばY軸の周りに回転可能となっている。また、胴体状部TRは、上下方向(Z方向)について3段構造になっており、上段側に位置して上半身に相当する胸部TR1と、中段に位置して下半身に相当する腰部TR2と、下方側に位置して台座部12に接続固定されている座部TR3とで構成されている。これらのうち、胸部TR1及び腰部TR2は、Z軸の周りに回転駆動する。すなわち、頭状部HDや胸部TR1、腰部TR2が動くことで、種々の体勢あるいは姿勢をとり、例えば人間がうなずく動作のような動きといった種々の動き方が可能になっている。
一方、座部TR3は、台座部12に対して固定されており、例えば台座部12と一体化されていてもよい。ここでは、座部TR3と台座部12とをまとめて固定部FIとする。なお、詳しくは後述するが、固定部FIには、案内ロボット10の動作制御を行うための種々の構成要素が設けられている。
また、立体構造部11は、人の音声や指示等を理解可能とすべく入力部としてのマイクMC(音声認識部)を有するとともに、出力部として音声を発するスピーカSK(音声出力部)を有することで、情報案内の提供等の人に対する接客対応を可能としている。
特に、本実施形態では、案内ロボット10は、立体構造部11を構成する可動部分である上部側のうち、最も上方側に位置する頭状部HDに、連続撮像を行うカメラ等で構成される撮像部CAを有しており、案内ロボット10が設置された周囲の状況すなわち環境を捉えたり、案内の提供を受ける利用者の様子を撮像したりすることが可能となっている。また、案内ロボット10において、立体構造部11の頭状部HDや胴体状部TRを適宜動かすことで、撮像部CAは、姿勢を変化させつつ上下方向や左右方向の広い範囲について、利用者の存在を検知できる。例えば、対話時において、撮像部CAで利用者の顔を含む上半身を捉えることができるように位置合わせすることができる。
案内ロボット10は、撮像部CAやマイクMC、さらには、後述する各種センサによって、案内ロボット10を設置した箇所における周囲の状況に関する情報、つまり周囲環境に関する環境情報や、対話を行う相手である利用者の状態に関する利用者情報を取得する。
また、図2に示すように、立体構造部11は、顔パネル部FPを備えている。顔パネル部FPは、例えば液晶パネルや有機ELパネル等で構成され、頭状部HDのうち、顔に相当する箇所である正面側に設けられている。例えば、顔パネル部FPに目鼻口等の画像を表示させることで、頭状部HDに顔のような画像を設けることで、最上部にある頭状部HDが人型のロボットの頭部であることを利用者に認識させることができる。図1や図2の例では、大きな目玉のようなものを表示させている。なお、本実施形態では、顔パネル部FPにおいて、各種案内は行わず、専ら立体構造部11の顔としての表現をするための画像表示を行うが、顔パネル部FPにおいて、各種案内のための画像表示を行うものとしてもよい。
案内ロボット10のうち、台座部12は、立体構造部11を載置させる天板部分TPを上部に有するとともに内部に収納空間を有する筐体部SCや、筐体部SCから下方に延びて自身を支持する脚部LEを有する。このほか、台座部12のうち、筐体部SCに、各種情報について出力結果を表示するためのパネル(モニター)で構成される表示部DUが設けられている。特に、本実施形態では、案内ロボット10の各種動作を司る制御部20(図3等参照)が筐体部SCに格納されており、制御部20において、案内ロボット10の各部で収集される情報を解析することで、利用者に対してより的確な応答を可能にしている。
なお、図示を省略するが、台座部12には、これらのほか、例えば印刷用のプリンターや、利用者が携帯するスマホ等に対して無線通信を行うための通信部等が設けられていてもよい。すなわち、表示部DU等の各種出力装置を、台座部12に設けることで、利用者が、これらの装置から道案内等の必要な各種情報の提供を受けるようにしてもよい。また、案内の一環として、例えば道案内の地図等を示すといった場合には、表示部DUにおいて表示動作を行うこととし、立体構造部11は、専ら利用者との対話や、対話の結果としての音声出力による情報提供に専念する構成としてもよい。
また、台座部12には、案内ロボット10の前に存在する利用者を検知するための人感センサSEが設けられている。人感センサSEを設置することで、案内ロボット10の前に現れた利用者を確実に検知できるようにしている。すなわち、案内ロボット10は、人感センサSEで利用者が検知されたことを契機として、検知された利用者の要求に応じた情報提供のための案内動作を開始する。特に、図2に示す一例では、固定部FIを構成する円錐台状の座部TR3の周方向に沿って3つのセンサ部SE1~SE3が設けられることで、人感センサSEを構成して、確実な人検知ができるようにしている。以上のように、案内ロボット10が設置された環境下において、人感センサSEは、利用者となるべき対象の存在を検知する。なお、利用者の要求については、種々のものが想定され、典型例としては、駅の出口や周辺の飲食店等の道案内、あるいは駅のホーム番号、ビル等の目的地の階数等が考えられる。このほか、挨拶や天気に関する利用者の感想といったものに対する応答といった日常会話への応答も含まれる。
なお、人感センサSEについては、既存の種々のものが利用できる。例えば、赤外センサを人感センサSEとして設けることが考えられる。あるいはラインセンサ等で人感センサSEを構成してもよい。また、カメラで人感センサSEを構成してもよい。
また、図2等に示すように、マイクMCも、座部TR3に設けられており、円錐台状の座部TR3の側方において、周方向に沿って並ぶ複数(図示の例では4つ)のマイク部MC1~MC4によるマイクアレイで構成されている。マイクMCは、利用者の声を認識する音声認識部として機能する。つまり、マイクMCは、利用者の発声情報を取得する。また、案内ロボット10が設置された周囲の状況すなわち環境における音に関する情報を捉える環境情報取得部として機能することも可能である。
さらに、本実施形態では、座部TR3において、上記のほか、各種センサを搭載したマルチセンサMSが設けられている。マルチセンサMSには、例えば温度センサ、湿度センサ及び空気質センサが含まれている。これにより、マルチセンサMSは、環境情報としての温度、湿度及び空気質を、あるいはこれらのうち少なくともいずれかを取得する環境情報取得部として機能する。なお、検知する事項としては、上記以外にも種々のものが考えられ、例えば加速度センサを有することで、案内ロボット10の設置個所における振動を測定してもよい。
一方、図2等に示すように、スピーカSKは、胴体状部TRのうちほぼ中央辺りに位置する胸部TR1に内蔵され、利用者に対して音声による発信を行う音声出力部として機能する。スピーカSKは、顔パネル部FPや撮像部CAが向いている方向に向けて音声による発信を行う。
以下、図3を参照して、案内ロボット10を構成する各構成要素についての動作制御の一例を説明する。なお、図3は、図2に示した要素に加え、さらに案内ロボット10に含まれる各構成要素とこれらの関係について一例を示すブロック図である。
図示のように、案内ロボット10は、撮像部CA等の上記各部に加え、これら全体の動作制御を統括する動作制御部としての制御部20と、マイクMCやスピーカSKにおける音響処理を担う音響処理基板30と、音響処理基板30に接続されて信号を増幅してスピーカSKに出力するスピーカアンプSAを、固定部FIにすなわち座部TR3あるいは台座部12に備えている。
制御部20は、図示のように、案内ロボット10を構成する各構成要素と接続されており、立体構造部11の各種動作を制御する。特に、本実施形態では、案内のために取得した案内ロボット10の設置環境や利用者の状態に関する各種情報としての環境情報や利用者情報についての処理を行っている。すなわち、制御部20は、環境情報と利用者情報との組合せに基づいて案内動作を制御する動作制御部である。なお、制御部20は、上記のほか、表示部DUをはじめとする台座部12に設けられた各種装置の動作についても制御を行う。
制御部20は、各種演算処理用のCPUや、各種データあるいはプログラムを格納するストレージデバイス等を有しており、例えば、小型のPC等の制御PCで構成することが考えられる。制御部20の設置については、例えば制御部20を、台座部12を構成する筐体部SCの内部に収納する一方、筐体部SCの天板部分TPに挿通孔(図示略)を適宜設けておき、ケーブルを通して制御部20と立体構造部11とを接続しておくことで、制御部20による立体構造部11の動作が制御可能となる。
また、案内ロボット10は、頭状部HD等の可動部分についての駆動動作を行うべく、3つのモーターMT1~MT3と、これらの駆動動作を行うモータコントローラCTとを備える。すなわち、モータコントローラCTによる駆動制御下で、モーターMT1により頭状部HDが回転駆動し、モーターMT2により胴体状部TRの胸部TR1が回転駆動し、モーターMT3により腰部TR2が回転駆動する。なお、モータコントローラCTは、制御部20に接続され、制御部20からの指令に従って、上記モーターMT1~MT3についての動作制御をしている。
ここで、図4(A)に概念的に示すように、本実施形態に係る案内ロボット10では、上記した撮像部CAのほか、マイクMC、さらには、マルチセンサMSが、案内ロボット10を設置した箇所における周囲の状況に関する情報である環境情報を取得する環境情報取得部EAとして機能し、取得した環境情報を制御部20に出力する。
また、撮像部CAやマイクMCが、案内の提供を受ける利用者の表情や顔の各部の位置、範囲、大きさ、あるいは手や頭等の動き、声色、また、これらの変化の様子、といった利用者の心理状態を推定するための情報を取得する利用者情報取得部UAとして機能し、取得した利用者情報を制御部20に出力する。
この上で、制御部20は、取得した環境情報と利用者情報との組合せに基づいて、利用者に対する応答態様を決定あるいは変更する。これにより、案内ロボット10は、利用者への情報提供すなわち道案内等の各種案内において、利用者の感情(心理状態)を、周囲の環境を含めた判断に基づいて、より的確な応答ができるようになっている。
また、制御部20は、環境情報と利用者情報との組合せから的確な案内態様を選択すべく、環境情報取得部EAや利用者情報取得部UAから取得した情報、いわば原始的な各種情報について、分析、解析あるいは加工等の各種処理を行う。このため、制御部20は、図4(B)に概念的なブロック図として例示するように、各種プログラムやデータを格納しており、必要に応じて、これらを適宜読み出し、各種処理を行う。具体的には、制御部20は、環境情報取得部EA及び利用者情報取得部UAからの環境情報と利用者情報とを格納する取得情報記憶部ARのほか、上記各種処理を行うための各種プログラムを格納したプログラム記憶部PR、さらには、利用者情報に含まれる利用者に固有の情報を、人間の標準的な場合と比較可能にするための標準状態データ記憶部SDといったものを有している。なお、図示の例では、標準状態データ記憶部SDには、標準的な人間の表情に関するデータを記憶する表情データ記憶部FDや、標準的な人体の動作に関するデータを記憶する人体動作記憶部BM1、このほか、視覚的認識以外のものとして、例えば標準的な人の声に関するデータを記憶する発声データ記憶部UT1等が含まれている。なお、表情データ記憶部FDについては、例えば眉毛データ記憶部PD1,目データ記憶部PD2,口データ記憶部PD3,鼻・耳データ記憶部PD4等の顔を構成する各部分に関するデータのほか、顔全体に関係する顔データ記憶部PDHといったものが想定される。なお、顔の各部分については、その形状や、角度等についての標準的な位置、範囲及び大きさといったものやそれらの標準とすべき境界を定める閾値等のデータが格納されている。また、顔全体に関係するデータとしては、顔全体における皺(しわ)の数や大きさ、位置等が想定される。
プログラム記憶部PRには、取得した環境情報から、案内ロボット10を設置した箇所における周囲の状況を推定するための各種プログラムで構成される周囲環境推定部EEが格納されている。このほか、取得した利用者情報から各種データを抽出するための各種プログラムで構成される状態データ読取部DRや、状態データ読取部DRで抽出された各種データと標準状態データ記憶部SDに格納されたデータ(例えば各種閾値)とを比較して判定を行う状態データ比較判定部DC、さらには、状態データ比較判定部DCの判定に基づいて利用者の心理推定を行う心理推定部SRを備える。
つまり、制御部20は、必要に応じてこれらのプログラムを適宜読み出すことで、状態データ読取部DRや、状態データ比較判定部DCあるいは、心理推定部SRとして機能する。例えば、心理推定部SRを読み出すことで、動作制御部としての制御部20は、画像データに基づき利用者の心理状態を推定する心理推定部SRとして機能する。例えば、心理推定部SRとしての制御部20は、画像データから読み取った利用者の表情に基づき利用者の心理状態を推定する。制御部20は、心理推定部SRとしての推定結果に応じて、利用者との対話における応答態様の変更内容を決定する。すなわち、制御部20は、対話時における周囲環境に関する環境情報や利用者の状態に関する利用者情報から、利用者への応答態様として、適切な応答内容への変更、あるいは応答内容の選択を可能にしている。
上記に関して、さらに見方を変えて言い直すと、制御部20は、利用者の要求に応じた情報提供に際して、周囲環境に関する環境情報を取得し、利用者の状態に関する利用者情報を取得し、取得した環境情報と利用者情報との組合せに基づいて、応答態様を変更する案内ロボット用のプログラムを組み込んだ制御PCとなっている。
なお、図5は、応答態様として、対話時のシナリオの一例を示すデータ表である。本実施形態では、利用者との対話を行うに際して、上記のように、環境情報(環境条件)や、利用者情報に基づく利用者の心理状態(ユーザ感情条件)を推定した上で、図5に例示したものについて、適宜変更や選択等を行うことで、最適な応答内容を定めている。したがって、利用者の発話内容が、例えば「今日は暑いね」といったものであった場合に、これに対応する応答パターンが、図中標準シナリオとして示す「そうなんですね」といった如何ようにも取れる1つの対応だけでなく、バリエーションに富むものとなっている。具体的には、推定した環境や利用者の心理によって、案内ロボット10の応答内容が、例えば「暑いですね」であることもあれば、「蒸し暑いですね」、あるいは、「私は寒いです。」と異なるシナリオが選択される可能性がある。すなわち、推定した周囲の環境条件や利用者の心理状態に応じてシナリオが変更される(変化する)可能性がある。この場合、環境条件やユーザ感情条件を加味しない場合を想定した標準シナリオによる単一の応答と比較して、より状況を考慮した適切な応答が行えるようになる。
以下、上記のような案内を可能とするための前提として、応答内容の変更(選択)を可能にするための環境情報の取得方法や、利用者情報の取得方法について、より具体的に一例を説明する。ここでは、まず、図6等を参照して、応答内容の変更(選択)を可能にするための環境情報の取得方法に関して説明し、その後、図8等を参照して、応答内容の変更(選択)を可能にするための利用者情報の取得方法に関して説明する。
図6は、環境情報を取得する環境情報取得部EAとして機能する撮像部CAについて、一例を示すための図である。より具体的には、図6は、撮像部CAで撮像された案内ロボット10の設置箇所周辺の画像についての画像データに基づく環境情報に関する情報収集について一例を示す画像図である。
案内ロボット10は、例えば人感センサSEによる検知がなされず、案内を行う対象たる利用者が存在しない間において、撮像部CAにより周辺の様子を検知するための撮像及び制御部20による撮像画像の解析を行う。例えば図6(A)に示す周囲画像GE1を撮像部CAでの撮像により取得すると、制御部20は、各種データやプログラムを適宜読出して、取得した周囲画像GE1(画像データ)から例えば図6(B)において枠画像PPで示すように、人のいる範囲を抽出し、人の多さ、すなわち混雑状況を把握する。例えば、画像データから抽出される人の多さについての値に閾値を設けておき、現在の状況が、どの程度混雑しているかの判断、すなわち混雑度の推定を可能にしている。言い換えると、上記の場合、環境情報取得部EAとして機能する撮像部CAは、環境情報として、周囲環境を撮像した画像データから混雑状況についての情報を取得するものとなっている。
なお、具体的な図示を省略するが、例えばマイクMC(図3等参照)についても、案内を行う対象たる利用者が存在しない間において、音量測定をすることで、環境情報として、騒音の度合を測定することができる。さらに、マルチセンサMSについては、例えば温度及び湿度から気候についての推定を可能にしている。また、空気質センサにより、空気質すなわち空気の汚れ具合についての推定を可能にしている。なお、以上に限らず種々のセンサによるセンシングが可能であり、例えば加速度センサを有することで、振動の測定を可能とする、といったことも可能である。
以下、図7のフローチャートを参照して、環境情報に基づく周囲環境推定の動作の一例について説明する。
まず、既述のように、案内ロボット10は、案内を行う対象たる利用者が存在しない間において、撮像部CAによるカメラ映像、マイクMCによる音声、マルチセンサMSによる各種センサ測定値といった直接的に感知できる情報が、原始的な環境情報として取得される(ステップS1)。
次に、案内ロボット10の制御部20は、例えば周囲環境推定部EEから必要な各種プログラムを読み出して、ステップS1において取得された環境情報から現在の状況を示す各種情報を抽出するための処理を行う。
例えば、制御部20は、案内ロボット10が設置されている場所(例えば駅の構内等)における混雑の状況(混雑度)が高いか否かを推定すべく、撮像部CAで連続撮像されたカメラ映像についての時間的変化の大小を確認する(ステップS101a)。ステップS101aにおいて、時間的変化が小さいと判断される場合、制御部20は、混雑度が低いと判断する(ステップS102a)。
一方、ステップS101aにおいて、時間的変化が大きいと判断される場合、制御部20は、さらにマイクMCで取得された音声の音量の大小を確認する(ステップS103a)。ステップS103aにおいて、音量が小さいと判断される場合、制御部20は、混雑度が低いと判断する(ステップS102a)。
一方、ステップS103aにおいて、音量が大きいと判断される場合、制御部20は、さらに人感センサSEの反応頻度を確認する(ステップS104a)。ステップS104aにおいて、反応頻度の値が小さいと判断される場合、制御部20は、混雑度が低いと判断する(ステップS102a)。
一方、ステップS104aにおいて、反応頻度の値が大きいと判断される場合、制御部20は、混雑度が高いと判断する(ステップS105a)。
以上のようにして、混雑度に関する推定がなされる。なお、上記における各判断については、周囲環境推定部EEに格納されるプログラムとして、各事項についての閾値を予め定めておき、当該閾値に達しているか否かで判断を行う。
以上のようにして、混雑度について「低い」か「高い」の2つの選択肢のうち、いずれであるかについての推定がなされる。
制御部20(あるいは周囲環境推定部EE)は、上記以外にも、種々の環境情報に関する推定を行う。例えば、案内ロボット10が設置されている場所における気候について推定を行う。具体的に説明すると、まず、制御部20は、周囲の気候が暑いか寒いか等を判断すべく、マルチセンサMSに含まれる温度センサから、案内ロボット10の設置場所における温度が所定値に達しているか否かを確認する(ステップS101b)。ステップS101bにおいて、温度が所定温度A℃(A℃<B℃)未満である場合、制御部20は、案内ロボット10の設置場所の気候は、寒いと判断する(ステップS102b)。
一方、ステップS101bにおいて、温度が所定温度A℃以上B℃未満である場合、制御部20は、案内ロボット10の設置場所の気候は、通常と判断する(ステップS103b)。
一方、ステップS101bにおいて、温度が所定温度B℃以上である場合、制御部20は、さらにマルチセンサMSに含まれる湿度センサから、案内ロボット10の設置場所における湿度を確認する(ステップS104b)。ステップS104bにおいて、湿度が低い場合、すなわち湿度が予め定めた閾値未満である場合、制御部20は、案内ロボット10の設置場所の気候は、暑いと判断する(ステップS105b)。
一方、ステップS104bにおいて、湿度が高い場合、すなわち湿度が予め定めた閾値以上である場合、制御部20は、案内ロボット10の設置場所の気候は、不快な状態であると判断する(ステップS106b)。
以上のようにして、気候について「寒い」か「通常」か「暑い」か「不快」か、の4つの選択肢のうち、いずれであるかについての推定がなされる。
制御部20は、これら以外にも、例えば、空気の汚れ具合について推定すべく、マルチセンサMSに含まれる空気質センサから、空気中に含まれる微粒子の量について確認し(ステップS101c)、空気の汚れが低いか(ステップS102c)、高いか(ステップS103c)を判断する。
以上の他にも、既述のように、各種センサでの各種測定値を解析し(ステップS101x)、解析結果に基づく推定を行う(ステップS102x)ことができる。
以上のようにして、図5に例示した応答内容の変更(シナリオの選択)を可能にするための環境情報の取得が可能となる。
以下、図8等を参照して、応答内容の変更(シナリオの選択)を可能にするための利用者情報の取得方法に関して説明する。
図8は、利用者情報を取得する利用者情報取得部UAとして機能する撮像部CAについて、一例を示すための図である。より具体的には、図8は、撮像部CAで撮像された案内ロボット10による案内の提供を受ける利用者の画像についての画像データに基づく利用者情報に関する情報収集について一例を示す画像図である。
案内ロボット10は、人感センサSEによる検知がなされ、案内を行う対象たる利用者との対話が始まると、撮像部CAにより利用者の表情や身振り手振りといった動きを捉えるための撮像を開始し、さらに、制御部20による撮像画像の解析を行う。例えば図8(A)に示す周囲画像GU1を撮像部CAでの撮像により取得すると、制御部20は、取得した周囲画像GU1(画像データ)から例えば図8(B)に示すように、利用者の顔を構成する各部の状態や、手の動き等を確認する。つまり、制御部20は、例えば状態データ読取部DRから必要な各種プログラムを読み出して、画像データから利用者の顔等における各部を切り出し、切り出した利用者の顔等における各部の状態や動きを数値化する。
なお、図示の例では、周囲画像GU1として利用者の顔を含む上半身が映し出されており、制御部20は、顔全体の動きとして、例えば頭部の傾きや頷いているか否か、あるいは、目のまばたきの様子や視線、鼻や耳の動きや、口の動き(開閉)や形、顔の各部における皺のでき方等を抽出する。さらに、顔全体の表情や年齢、性別等を推定する。また、一方で、利用者の身体のうち顔以外の部分における動き等(例えば手の動きや形)についても抽出する。
制御部20は、以上のようにして取得した利用者に関する情報から、利用者の心理状態を推定する。例えば、眉の角度(吊り上っているか否か)や、まばたきの回数(多さ、頻度)、皺の状態や、目、鼻口の形状、あるいは手の動き等、さらには、これらの変化のしかたは、人間の心理状態と連関性がある。そこで、本実施形態では、上記のように、制御部20は、以上のようにして取得した利用者に関する情報から、利用者の心理状態を推定する。例えば、制御部20は、状態データ読取部DRや、状態データ比較判定部DC、さらには、心理推定部SRを読み出して、画像データから取得した原始的な利用者情報について解析して数値化し、例えば標準状態データ記憶部SDに各種データとして予め格納されている閾値と比較すること等によって、対象となっている利用者の心理状態を推定している。
以下、図9のフローチャートを参照して、利用者情報に基づく心理状態推定の動作の一例について説明する。
まず、既述のように、案内ロボット10は、案内を行う対象たる利用者について、撮像部CAによるカメラ映像が、原始的な利用者情報として取得される(ステップS2)。
次に、制御部20は、状態データ読取部DRを読み出して、ステップS2において取得された利用者情報から現在の状況を示す各種情報を抽出するための処理を行う。ここでの一例では、まず、利用者の表情を読み取るべく、眉が吊り上がっているか、吊り下がっているか、いずれでもないかを確認する(ステップS201)。具体的には、まず、制御部20は、状態データ比較判定部DCから各種プログラムを読み出すととともに、標準状態データ記憶部SDのうち例えば眉毛データ記憶部PD1に格納された眉の角度に関する閾値(第1の閾値及び第2の閾値)等の各種データを読み出す。この上で、制御部20は、画像データから抽出された眉の角度が、眉が吊り上がっているか否かを定める第1の閾値以上である場合と、眉が吊り下がっているか否かを定める第2の閾値以下である場合と、どちらでもない場合とに分類する。なお、ここでは、どちらでもない場合、すなわち眉の角度が、第1の閾値未満で第2の閾値よりも大きい場合は、一旦無表情であるものとして取り扱う。
ステップS201において、眉が吊り上がっていると判断された場合、制御部20は、さらに顔の皺の多さについて確認する(ステップS202)。ステップS202において、顔の皺が少ないと判断された場合、心理推定部SRとしての制御部20は、利用者の心理状態を「平常」(あるいは「通常」)と推定する(ステップS203)。
一方、ステップS202において、顔の皺が多いと判断された場合、制御部20は、さらに目の形状について確認する(ステップS204)。ここでは、目が見開いているか否かについて確認する。ステップS204において、目が見開いていると判断された場合、制御部20は、利用者の心理状態を「いらだち」と推定する(ステップS205)。
一方、ステップS204において、目が見開いておらず、細い状態であると判断された場合、制御部20は、さらに口の形状について確認する(ステップS206)。ここでは、口が吊り上がっているか、吊り下がっているかについて確認する。ステップS206において、口が吊り下がっていると判断された場合、制御部20は、利用者の心理状態を「いらだち」と推定する(ステップS205)。
一方、口が吊り上がっていると判断された場合、制御部20は、利用者の心理状態を「喜び」と推定する(ステップS207)。
次に、ステップS201において、眉が吊り上がっても吊り下がってもいなく、無表情であると判断された場合、制御部20は、さらにまばたきや視線の移動について頻度を確認する(ステップS208)。
ステップS208において、まばたきや視線の移動が少ないと判断された場合、制御部20は、さらに、頭の動きについて確認する(ステップS209)。ステップS209において、頭の動きが縦に動いていると判断された場合、制御部20は、利用者の心理状態を「肯定的」と推定する(ステップS210)。
一方、ステップS209において、頭の動きがない(動かない)あるいは横に動いていると判断された場合、制御部20は、利用者の心理状態を「否定的」と推定する(ステップS211)。
また、ステップS208において、まばたきや視線の移動が多いと判断された場合、制御部20は、さらに、手の動きの大小について確認する(ステップS212)。ステップS212において、手の動きが多いと判断された場合、制御部20は、利用者の心理状態を「否定的」と推定する(ステップS211)。
一方、ステップS212において、手の動きが少ないと判断された場合、制御部20は、利用者の心理状態を「不安」と推定する(ステップS213)。
次に、ステップS201において、眉が吊り下がっていると判断された場合、制御部20は、さらに口の形状について確認する(ステップS214)。ここでは、口が吊り上がっているか、吊り下がっているかについて確認する。ステップS214において、口が吊り上がっていると判断された場合、制御部20は、利用者の心理状態を「不安」と推定する(ステップS213)。
一方、ステップS214において、口が吊り下がっていると判断された場合、制御部20は、利用者の心理状態を「悲しみ」と推定する(ステップS215)。
以上のようにして、応答内容の変更(シナリオの選択)を可能にするための利用者情報の取得が可能となる。上記の例の場合、利用者の感情あるいは心理状態について、「平常」(「通常」)か「喜び」か「いらだち」か「肯定的」か「否定的」か「不安」か「悲しみ」か、の7つの選択肢のうち、いずれであるかについての推定がなされる。
なお、図示や説明を省略するが、例えば発声データ記憶部UT1に格納された標準的な発生に関するデータとの比較をすること等により、マイクMCから集音される利用者の声の様子から、上記と同様な解析を行うことも可能である。
以下、図10のフローチャートを参照して、案内ロボット10による案内動作の一例を説明する。
案内ロボット10が起動すると、まず、制御部20は、人感センサSEによる人検知がなされたか否かを確認する(ステップS301)。
ステップS301において、人検知がされない、すなわち案内を行う対象たる利用者がいないことを検知すると(ステップS301:No)、制御部20は、周囲環境の推定を行う(ステップS302)。つまり、環境情報取得部EAとしての撮像部CAや、マイクMC、さらには、マルチセンサMSを動作させて環境情報を取得し、取得した環境情報についての解析を行う。続いて、制御部20は、ステップS302の処理の結果に基づき、選択され得るシナリオを抽出すべくシナリオ変更の処理を行う(ステップS303)。具体的には、例えば図5に記された表にあるシナリオのうち、現状の環境条件から選択され得るものが残ることになる。ステップS303での処理を終えると、制御部20は、集客動作を行い(ステップS304)、ステップS301からの動作に戻る。なお、ステップS304の集客動作としては、例えば立体構造部11の可動部分を動かしたり、音声を発生させたりすることで、自己の存在、すなわち案内を行うロボットがいることをアピールする、といったものが考えられる。
一方、ステップS301において、人検知がされた、すなわち案内を行う対象たる利用者(ユーザ)がいることを検知すると(ステップS301:Yes)、制御部20は、マイクMCによる当該利用者の発話の入力を受け付ける(ステップS305a)とともに、利用者情報取得部UAとしての撮像部CAやマイクMCを動作させて利用者情報を取得してさらに解析し、解析した結果に基づき当該利用者の感情の推定すなわち心理状態の推定を行う(ステップS305b)。
次に、制御部20は、ステップS305aで受け付けた発話の内容(ユーザ発話)と、ステップS305bで利用者情報から推定した利用者の心理状態(ユーザ感情条件)及びステップS302で環境情報から推定した環境情報(環境条件)から、最適なものを選択し(ステップS303)、選択した内容で利用者に対して応答する(ステップS306)。
ステップS306の後、制御部20は、人感センサSEでの検知により、利用者が立ち去ったか否かすなわち対話が終了したか否かを確認し(ステップS307)、立ち去っていなければ(ステップS307:No)、対話を継続すべく、ステップS305a,S305bからの動作を継続する。
一方、ステップS307において、利用者が立ち去ったことが確認された場合(ステップS307:Yes)、制御部20は、それまでの利用者について推定した感情に関するデータを含む利用者に関する種々の情報をリセット(消去)して(ステップS308)、最初からの動作、すなわち新たな利用者の検知の有無からの動作を開始する。
以上のように、本実施形態では、案内ロボット10が、利用者の要求に応じた情報提供に際して、周囲環境に関する環境情報と利用者の状態に関する利用者情報との組合せに基づいて、応答態様を変更する。この場合、環境情報と利用者情報との組合せに基づいて、案内ロボット10による応答態様を変更するので、利用者への情報提供すなわち道案内等の各種案内において、利用者の感情(心理状態)を、周囲の環境を含めて判断して、より的確な応答ができる。また、この場合、例えば利用者についての事前の登録や、利用者への生体センサの取付け等といったことを必ずしも要しないので、簡易な構成にできる。
〔第2実施形態〕
以下、図11等を参照して、第1実施形態を変形した第2実施形態に係る案内ロボットについて説明する。なお、本実施形態に係る案内ロボット210は、第1実施形態に係る案内ロボット10の変形例であり、制御部(制御PC)の構造を除いて第1実施形態の場合と同様であるので、全体構成についての図示や説明を省略する。
図11は、本実施形態に係る案内ロボット210における制御部(制御PC)220についての一構成例を示すブロック図であり、図4(A)又は図4(B)に対応する図である。本実施形態では、案内ロボット210において、環境情報と利用者情報との組合せに基づく情報提供に対する利用者の反応に関して蓄積したデータに基づき学習するものとなっている点において、第1実施形態の場合と異なっている。
上記のような学習を行うため、図示の例では、案内ロボット210のうち、制御部220において、学習部LLが設けられている。
学習部LLは、案内ロボット210との対話について利用者が満足したか否かを判定する満足度判定部SJと、利用者との対話時におけるデータを満足度判定部SJでの判定結果とともに蓄積する蓄積データ記憶部AAと、蓄積データ記憶部AAを解析して対話時におけるシナリオの選択過程についての修正を行う選択過程修正部SPとを備える。
案内ロボット210は、利用者に対する案内過程については、第1実施形態において例示した案内ロボット10(図1等参照)と同様の案内動作を行う。これに加え、案内ロボット210は、学習部LLにおいて、各案内動作の終了時点において、案内した過程について記録を行う。特に、この際、当該案内が利用者にとって満足であったか否かを併せて記録する。なお、利用者が満足していたか否かの指標については、種々の態様が考えられるが、例えば、案内の終了時における利用者の表情や、「ありがとう」等の言葉を発したか等によって判定可能であると考える。さらに、案内した過程における利用者の表情の変化から満足度合の変遷を集計してもよい。
図12は、学習部LLにおける学習に関して一例を説明するための概念図である。ここでは、図11の蓄積データ記憶部AAにおいて、記憶される蓄積データADの一例を示している。具体的には、蓄積データADとして、対話の過程に関する各種データについての履歴データが、1回1回の案内動作ごとに記録されている。すなわち、対話の内容とその際に推定した利用者の心理状態に加え、さらに、環境情報に関するデータすなわち気温や混雑状況等のデータを1回の案内動作単位で蓄積している。さらに、これらに加え、上記案内によって最終的に利用者が満足したか否かについて満足度判定部SJで判定した情報を結果として記録している。なお、図示の例では、説明を簡単にするために、成功(○)、失敗(×)の2択としているが、例えば満足判定に関して種々の指標を定めてより多段階の判定としてもよい。
学習部LLのうち、選択過程修正部SPは、機械学習、さらにはディープラーニング等の種々の学習方法を採用して、蓄積データ記憶部AAに蓄積されたデータを解析することで、より的確な応答すなわちシナリオの選択を可能とすべく、解析を行う。すなわち、どのような対話の過程をたどればより成功(○)となる場合が増えるのかについて、学習し、学習結果に応じて、シナリオの選択過程についての修正を行う。例えば、図5に例示したシナリオの内容や構成、あるいは図9等において例示した心理推定の過程(手順)についての修正を行う。
図13は、案内ロボット210による学習に関して他の一例を示す概念図である。図11等の例では、1つの案内ロボット210によって学習を行うモデルとしているが、これに限らず、例えば複数の案内ロボット210における対話の過程を集約して学習を行ってもよい。すなわち、図示の例のように、ホストコンピュータHPと複数の案内ロボット210との間で通信可能とし、ホストコンピュータHPに上記のような学習部LL又はその一部(選択過程修正部SP)を設けることで、学習を行うようにしてもよい。この場合、例えば各案内ロボット210間での設置環境の違いや、地域性による人の反応の仕方の差異等を加味した学習が可能となる。
本実施形態においても、環境情報と利用者情報との組合せに基づいて、案内ロボット210による応答態様を変更するので、利用者への情報提供すなわち道案内等の各種案内において、利用者の感情(心理状態)を、周囲の環境を含めて判断して、より的確な応答ができる。また、本実施形態の場合、学習過程を設けることで、応答の適格性について、さらなる向上を図ることができる。
〔その他〕
この発明は、上記の実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様で実施することが可能である。
まず、上記実施形態において、案内ロボット10は、各設置場所において、原則固定されているものとしているが、例えば、限られた範囲内で動くようにしてもよい。例えば動くことで、より案内ロボット10の存在を確認させやすくすること等が可能になる。
また、上記では、人感センサSEにより、利用者の存在を特定しているが、これに限らず、種々の態様により利用者の特定を行うことができ、例えば案内ロボット10を配置する駅等の構内において別途用意しておいたカメラ等からの情報を、通信回線等により利用可能としてもよい。具体的には、例えば施設内(例えば駅等の天井部分)において監視用に設けた定点カメラのデータを受け付け、これを利用して利用者を特定するような構成となっていてもよい。
また、上記では、出力装置として、表示部DUのほか、プリンター等があってもよいものとしたが、これら以外の種々の出力装置を備えるものとしてもよい。また、入力装置として、表示部DUを例示したが、入力装置についても、上記のほか、キーボードやマウス等種々のものを適用できる。
また、上記の例では、人型の案内ロボット10は、頭部と胴体部のみを有する構成としているが、例えばさらに手に相当する構造を設け、各種ジェスチャ-が行えるものとしてもよい。例えば手話が可能であったり、行き先を、手を使って示したりしてもよい。
また、案内ロボット10は、人型に限らず、種々の態様とすることが可能であり、例えば、駅の券売機等が、案内ロボット10として機能するものとしてもよい。
また、上記では、利用者の心理状態の推定において、人間の標準的な場合を用意して、これとの比較から心理状態を推定するものを例示したが、心理状態の推定については、これに限らず、可能な種々の方法を採用できる。例えば、対話開始時の利用者の顔等を標準として、会話を続けていく中での利用者の表情の変化といった対話の過程の中での相対的な変化に基づいて、心理状態の推定を行うようにしてもよい。より具体的には、図4(B)の取得情報記憶部ARにおいて、会話開始時から一定時間ごとに表情の変化を解析し、時間経過とともに初期の表情と一定時間経過後の表情とについての解析結果を比較することで、会話の過程における心理状態の変化を解析するものとしてもよい。
また、上記各実施形態では、不特定多数の利用者に対する案内を可能とする想定にしているが、これに限らず、特定の利用者にサービスを提供する場合に本願を適用するものとしてもよい。例えば、特定の利用者について、予め個人に関する表情やしぐさ(癖)等の情報を標準データとして入力しておくことで、当該標準データと比較して、現状の利用者の状況がどのようになっているかを判断するものとしてもよい。この場合も、単に標準データに対する現状の状態との比較に加え、現状における周囲環境の情報が加味されることで、より的確な対話の選択が可能となる。
また、単数又は複数の案内ロボット10,210を組み込んだ案内システムとして、案内ロボット10,210を制御するクラウド型サーバを設け、案内を行うための機能の一部を、ネットワークを介して動作制御を行うようにしてもよい。