ロボット制御システム、ロボット、プログラム及び情報記憶媒体
【課題】ロボットを介したユーザ間の間接的なコミュニケーションを実現できるロボット制御システム、ロボット、プログラム及び情報記憶媒体を提供する。
【解決手段】ロボット制御システムは、ユーザの行動を計測する行動センサ、ユーザの状態を計測する状態センサ及びユーザの環境を計測する環境センサの少なくとも1つからのセンサ情報により得られるユーザ情報を取得するユーザ情報取得部と、取得されたユーザ情報に基づいてロボットがユーザに対して提示する提示情報の決定処理を行う提示情報決定部と、提示情報をユーザに対してロボットに提示させるための制御を行うロボット制御部とを含む。ユーザ情報取得部は、第2のユーザのユーザ情報である第2のユーザ情報を取得し、提示情報決定部は、取得された第2のユーザ情報に基づいて、第1のユーザへの提示情報の決定処理を行う。ロボット制御部は、第2のユーザ情報に基づき決定された提示情報を第1のユーザに提示するためのロボット制御を行う。
【解決手段】ロボット制御システムは、ユーザの行動を計測する行動センサ、ユーザの状態を計測する状態センサ及びユーザの環境を計測する環境センサの少なくとも1つからのセンサ情報により得られるユーザ情報を取得するユーザ情報取得部と、取得されたユーザ情報に基づいてロボットがユーザに対して提示する提示情報の決定処理を行う提示情報決定部と、提示情報をユーザに対してロボットに提示させるための制御を行うロボット制御部とを含む。ユーザ情報取得部は、第2のユーザのユーザ情報である第2のユーザ情報を取得し、提示情報決定部は、取得された第2のユーザ情報に基づいて、第1のユーザへの提示情報の決定処理を行う。ロボット制御部は、第2のユーザ情報に基づき決定された提示情報を第1のユーザに提示するためのロボット制御を行う。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボット制御システム、ロボット、プログラム及び情報記憶媒体に関係する。
【背景技術】
【0002】
従来より、ユーザ(人間)の音声を認識し、音声の認識結果に基づいて、ユーザとの会話を行うロボットの制御システムが知られている(例えば、特許文献1。)。
【0003】
しかしながら、これまでのロボット制御システムでは、ロボットは、その所有者のユーザの会話等を音声認識して動作することが想定されており、他のユーザの行動等を反映したロボット制御は行われていなかった。
【0004】
また、これまでのロボット制御システムでは、ユーザの行動履歴や状態履歴等を反映したロボット制御は行われておらず、ロボットが、ユーザの心境や状況に反した動作を行ってしまうという問題があった。
【0005】
更に、これまでのロボット制御システムでは、1人のユーザに対して1台のロボットが対峙して会話することが想定されていた。このため、音声の認識処理や会話処理のために複雑なアルゴリズムが必要になってしまい、ユーザとの間のスムーズな会話を実現することが、現実的には難しいという問題もあった。
【0006】
【特許文献1】特開2003−66986号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
本発明は、以上のような課題等に鑑みてなされたものであり、本発明の幾つかの態様によれば、ロボットを介したユーザ間の間接的なコミュニケーションを実現できるロボット制御システム、ロボット、プログラム及び情報記憶媒体を提供する。
【課題を解決するための手段】
【0008】
本発明は、ロボットを制御するためのロボット制御システムであって、ユーザの行動を計測する行動センサ、ユーザの状態を計測する状態センサ及びユーザの環境を計測する環境センサの少なくとも1つからのセンサ情報により得られるユーザ情報を取得するユーザ情報取得部と、取得された前記ユーザ情報に基づいて、ロボットがユーザに対して提示する提示情報の決定処理を行う提示情報決定部と、前記提示情報をユーザに対してロボットに提示させるための制御を行うロボット制御部とを含み、前記ユーザ情報取得部は、第2のユーザの前記ユーザ情報である第2のユーザ情報を取得し、前記提示情報決定部は、取得された前記第2のユーザ情報に基づいて、第1のユーザへの提示情報の決定処理を行い、前記ロボット制御部は、前記第2のユーザ情報に基づき決定された提示情報を、前記第1のユーザに提示するためのロボット制御を行うロボット制御システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
【0009】
本発明によれば、行動センサ、状態センサ及び環境センサの少なくとも1つからのセンサ情報により得られるユーザ情報が取得される。そして取得されたユーザ情報に基づいて、ロボットがユーザに提示する提示情報の決定処理が行われ、提示情報をロボットに提示させるための制御が行われる。そして本発明によれば、取得された第2のユーザの第2のユーザ情報に基づいて、第1のユーザへの提示情報の決定処理が行われ、決定された提示情報を第1のユーザに提示するロボット制御が行われる。このように本発明によれば、第1のユーザとは異なる第2のユーザの第2のユーザ情報に基づいて、ロボットが第1のユーザに対して提示する提示情報が決定される。従って、第1のユーザは、ロボットの提示情報により、第2のユーザの行動、状況等の情報を知ることが可能になり、ロボットを介したユーザ間の間接的なコミュニケーションを実現できる。
また本発明では、前記ユーザ情報取得部は、前記第1のユーザの前記ユーザ情報である第1のユーザ情報と、前記第2のユーザの前記ユーザ情報である前記第2のユーザ情報を取得し、前記提示情報決定部は、取得された前記第1のユーザ情報と前記第2のユーザ情報とに基づいて、前記第1のユーザへの提示情報の決定処理を行ってもよい。
【0010】
このようにすれば、第1のユーザの第1のユーザ情報も加味した、第1のユーザへの第2のユーザ情報に基づく提示情報の提示が可能になる。
【0011】
また本発明では、前記提示情報決定部は、前記第1のユーザ情報に基づいて提示情報の提示タイミングを決定し、前記第2のユーザ情報に基づいて提示情報の内容を決定し、前記ロボット制御部は、決定された前記提示タイミングで、決定された内容の提示情報を、前記第1のユーザに提示するためのロボット制御を行ってもよい。
【0012】
このようにすれば、第1のユーザにとって適切なタイミングで、第2のユーザの情報を知らせることが可能になり、より自然でスムーズな情報提示が可能になる。
【0013】
また本発明では、前記提示情報決定部は、前記第1のユーザへの提示情報の決定処理における前記第1のユーザ情報の重み付けと前記第2のユーザ情報の重み付けとを、時間経過に伴い変化させてもよい。
【0014】
このようにすれば、第1のユーザへの情報提示の際に、第2のユーザ情報のみならず第1のユーザ情報をも加味した情報提示が可能になると共に、その加味の度合いを決める重み付けが時間経過に伴い変化するため、より多様で自然な情報提示が可能になる。
【0015】
また本発明では、前記第1のユーザによるロボットの利用が可能な状態になったことを示す利用可能イベントの発生を判定するイベント判定部を含み、前記提示情報決定部は、前記利用可能イベント発生時には、前記決定処理における前記第1のユーザ情報の重み付けを大きくし、前記第2のユーザ情報の重み付けを小さくし、その後、前記第1のユーザ情報の重み付けを小さくし、前記第2のユーザ情報の重み付けを大きくしてもよい。
【0016】
このようにすれば、ロボットの利用可能イベントの発生時からの時間経過に応じて、提示情報の決定処理の際における第2のユーザ情報の重み付けが大きくなるため、より自然な情報提示が可能になる。
【0017】
また本発明では、前記提示情報決定部は、ロボットによる提示情報の提示に対する前記第1のユーザの反応に基づいて、ロボットが前記第1のユーザに対して次に提示する提示情報の決定処理を行ってもよい。
【0018】
このようにすれば、提示情報に対する第1のユーザの反応に基づいて、次の提示情報が変化するようになり、ロボットによる提示情報の提示が単調になってしまう事態を防止できる。
【0019】
また本発明では、ロボットのセンシング面における接触状態を判定する接触状態判定部を含み、前記提示情報決定部は、ロボットによる提示情報の提示に対する前記第1のユーザの反応として、前記第1のユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを、前記接触状態判定部での判定結果に基づき判断して、前記第1のユーザに対して次に提示する提示情報の決定処理を行ってもよい。
【0020】
このようにすれば、ロボットを撫でる動作や叩く動作などの第1のユーザの反応を、簡素な判定処理で判断できるようになる。
【0021】
また本発明では、前記接触状態判定部は、前記センシング面よりも内側に設けられたマイクからの出力信号に対して演算処理を行うことで得られた出力データに基づいて、前記センシング面における接触状態を判定してもよい。
【0022】
このようにすれば、マイクを利用するだけで、ロボットを撫でる動作や叩く動作などの第1のユーザの反応を検出できるようになる。
【0023】
また本発明では、前記出力データは、信号強度であり、前記接触状態判定部は、前記信号強度と、所定のしきい値との比較処理を行うことで、前記第1のユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを判定してもよい。
【0024】
このようにすれば、信号強度としきい値を比較するという簡素な処理で、第1のユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを判定できる。
【0025】
また本発明では、前記提示情報決定部は、取得された同じ前記第2のユーザ情報に対して、第1、第2のロボットが異なる提示情報を提示するように、前記第1のユーザに対して提示する提示情報の決定処理を行ってもよい。
【0026】
このようにすれば、第1、第2のロボットが提示する提示情報を介して、第1のユーザは、第2のユーザの情報を間接的に知ることが可能になる。
【0027】
また本発明では、前記第1のロボットはマスタ側に設定され、前記第2のロボットはスレーブ側に設定され、マスタ側の前記第1のロボットに設けられた前記提示情報決定部が、スレーブ側の前記第2のロボットに対して、前記第1のユーザへの提示情報の提示を指示してもよい。
【0028】
このようにすれば、複雑な提示情報の解析処理を行わなくても、第1、第2のロボットによる提示情報の提示を、誤動作の少ない安定した制御の下で実現できる。
【0029】
また本発明では、提示情報の提示を指示する指示情報を、マスタ側の前記第1のロボットからスレーブ側の前記第2のロボットに対して通信する通信部を含んでもよい。
【0030】
このようにすれば、提示情報そのものではなくて、その指示情報を通信するだけで済むため、通信データ量の低減や、処理の簡素化を図れる。
【0031】
また本発明では、前記ユーザ情報取得部は、前記第2のユーザの前記第2のユーザ情報を、ネットワークを介して取得し、前記提示情報決定部は、ネットワークを介して取得された前記第2のユーザ情報に基づいて、前記第1のユーザに提示する提示情報の決定処理を行ってもよい。
【0032】
このようにすれば、例えば第2のユーザが離れた場所にいる場合にも、第2のユーザの情報を反映したロボット制御を実現できる。
【0033】
また本発明では、前記ユーザ情報取得部は、前記第2のユーザ情報として、前記第2のユーザの行動履歴、前記第2のユーザの状態履歴及び前記第2のユーザの環境履歴の少なくとも1つである第2のユーザ履歴情報を取得し、前記提示情報決定部は、取得された前記第2のユーザ履歴情報に基づいて、ロボットが前記第1のユーザに対して提示する提示情報の決定処理を行ってもよい。
【0034】
このようにすれば、第2のユーザの行動履歴、状態履歴又は環境履歴等が反映された提示情報を、ロボットにより提示できるようになる。
【0035】
また本発明では、前記第2のユーザ履歴情報は、前記第2のユーザのウェアラブルセンサからのセンサ情報により更新することで得られる情報であってもよい。
【0036】
このようにすれば、ウァアラブルセンサからのセンサ情報により第2のユーザの行動履歴、状態履歴又は環境履歴を更新し、更新されたこれらの履歴が反映された提示情報を、ロボットにより提示できるようになる。
【0037】
また本発明では、ロボットに対してユーザが接近した場合に、接近したユーザを識別するユーザ識別部を含み、前記ロボット制御部は、前記第1のユーザが接近したと前記ユーザ識別部により識別された場合に、前記第1のユーザに提示情報を提示するためのロボット制御を行ってもよい。
【0038】
このようにすれば、第1のユーザがロボットに接近して第1のユーザとして識別されたときに、第2のユーザ情報に基づく提示情報を、第1のユーザに提示できるようになる。
【0039】
また本発明では、ユーザ間での情報提示の許可・不許可を判断するための提示許可判断情報を記憶する提示許可判断情報記憶部を含み、前記提示情報決定部は、前記提示許可判断情報に基づいて、前記第1、第2のユーザ間での情報提示が許可されていると判断した場合に、前記第2のユーザ情報に基づく前記第1のユーザへの提示情報の決定処理を行ってもよい。
【0040】
このようにすれば、特定のユーザ間でのみ、ロボットを介した間接的なコミュニケーションを許可することが可能になる。
【0041】
また本発明では、複数の会話フレーズにより構成されるシナリオデータを、前記提示情報として記憶するシナリオデータ記憶部を含み、前記提示情報決定部は、前記シナリオデータに基づいて、ロボットが前記第1のユーザに対して発話する会話フレーズを決定し、前記ロボット制御部は、決定された会話フレーズをロボットに発話させるための制御を行ってもよい。
【0042】
このようにすれば、ロボットの会話フレーズの発話を、シナリオデータを利用して簡素な制御処理で実現できる。
【0043】
また本発明では、前記シナリオデータ記憶部は、複数の会話フレーズが分岐構造でリンクされたシナリオデータを記憶し、前記提示情報決定部は、ロボットが発話した会話フレーズに対する前記第1のユーザの反応に基づいて、次にロボットに発話させる会話フレーズを決定してもよい。
【0044】
このようにすれば、ロボットが発話した会話フレーズに対する第1のユーザの反応に基づいて、次の会話フレーズが変化するようになり、ロボットによる会話が単調になってしまう事態を防止できる。
【0045】
また本発明では、ロボットが発話した会話フレーズに対する前記第2のユーザの反応に基づき作成されるシナリオデータを取得するシナリオデータ取得部を含み、前記提示情報決定部は、前記第2のユーザの反応により取得されたシナリオデータに基づいて、ロボットが前記第1のユーザに対して発話する会話フレーズを決定してもよい。
【0046】
このようにすれば、ロボットの会話フレーズに対する第2のユーザの反応を反映したシナリオデータに基づいて、ロボットが第1のユーザに発話する会話フレーズを決定できるようになる。
【0047】
また本発明では、前記提示情報決定部は、取得された同じ前記第2のユーザ情報に対して、第1、第2のロボットが異なる会話フレーズを発話するように、前記第1のユーザに対して発話する会話フレーズの決定処理を行い、ロボットが発話した会話フレーズに対する前記第1のユーザの反応に基づいて、前記第1、第2のロボットのいずれに対して次の会話フレーズの発話権を付与するかを制御する発話権制御部を含んでもよい。
【0048】
このようにすれば、第1のユーザの反応に応じて発話権の付与が切り替わるようになるため、会話が単調になってしまう事態を防止できる。
【0049】
また本発明では、前記発話権制御部は、前記第1、第2のロボットのいずれか一方のロボットが発話した会話フレーズに対して前記第1のユーザが肯定的な反応をしたか否定的な反応をしたかに応じて、次の会話フレーズの発話権を付与するロボットを決定してもよい。
【0050】
このようにすれば、例えば第1のユーザが肯定的な反応をしたロボットに対して、優先的に発話権を付与するなどの制御が可能になる。
【0051】
また本発明は、上記のいずれかに記載のロボット制御システムと、前記ロボット制御システムの制御対象であるロボット動作機構とを含むロボットに関係する。
【発明を実施するための最良の形態】
【0052】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0053】
1.ユーザ情報
いわゆるユビキタスサービスにおいて、現在目指している1つ方向として、何時でもどこでも必要な情報をユーザに提供するという利便性提供型のサービスが提案されている。これは、外部からユーザに対して一方的に情報を提供するサービスである。
【0054】
しかしながら、人が生き生きと充実した生活を送るためには、このように外部からユーザに一方的に情報を提供する利便性提供型サービスだけでは不十分であり、ユーザの内面に働きかけることによりユーザに気付き(インスパイヤ)を与え、その結果、自己の成長を促すインスパイヤ型ユビキタスサービスが望まれる。
【0055】
本実施形態では、このようなインスパイヤ型ユビキタスサービスを、ロボットがユーザに提示する情報を利用して実現するために、ユーザ(第1、第2のユーザ)の行動、状態、環境を計測する行動センサ、状態センサ、環境センサからのセンサ情報によりユーザ情報(第1、第2のユーザ情報)を取得する。そして取得されたユーザ情報に基づいて、ロボットがユーザに対して提示する提示情報(例えば会話)を決定し、決定された提示情報をロボットに提供させるロボット制御を行う。そこで、まず、このユーザ情報(ユーザの行動、状態及び環境の少なくとも1つについての情報)の取得手法について説明する。
【0056】
図1においてユーザ(使用者)は、携帯型電子機器100(モバイルゲートウェイ)を所持している。またモバイル制御対象機器としてウェアラブルディスプレイ140(モバイルディスプレイ)を頭部の一方の眼の近傍に装着している。更にウェアラブルセンサ(モバイルセンサ)として種々のセンサを身体に身につけている。具体的には、屋内外センサ510、周囲温度センサ511、周辺湿度センサ512、周辺光度センサ513、腕装着型の運動計測センサ520、脈拍(心拍数)センサ521、体温センサ522、抹消皮膚温度センサ523、発汗センサ524、足圧力センサ530、発話・咀嚼センサ540、携帯型電子機器100に設けられるGPS(Global Position System)センサ550、ウェアラブルディスプレイ140に設けられる顔色センサ560や瞳孔の大きさセンサ561などを装着している。これらの携帯型電子機器100、ウェアラブルディスプレイ140などのモバイル制御対象機器、ウェアラブルセンサによりモバイルサブシステムが構成される。
【0057】
図1では、このようなユーザのモバイルサブシステムのセンサからのセンサ情報により更新されるユーザ情報(狭義にはユーザ履歴情報)を取得し、取得されたユーザ情報に基づいてロボット1の制御を行う。
【0058】
携帯型電子機器100(モバイルゲートウェイ)は、PDA(Personal Digital Assistant)、ノート型PCなどの携帯情報端末であり、例えばプロセッサ(CPU)、メモリ、操作パネル、通信装置、或いはディスプレイ(サブディスプレイ)などを備える。この携帯型電子機器100は、例えばセンサからのセンサ情報を収集する機能、収集したセンサ情報に基づいて演算処理を行う機能、演算結果に基づいて制御対象機器(ウェアラブルディスプレイ等)の制御(表示制御等)を行ったり外部のデータベースから情報を取り込む機能、外部と通信を行う機能などを有することができる。なお携帯型電子機器100は、携帯電話、腕時計、或いはポータブルオーディオなどとして兼用される機器であってもよい。
【0059】
ウェアラブルディスプレイ140は、ユーザの一方の眼の近傍に装着されると共にディスプレイ部の大きさが瞳孔の大きさよりも小さくなるように設定され、いわゆるシースルービューアの情報表示部として機能する。なおユーザへの情報提示は、ヘッドフォン、バイブレータなどを用いて行ってもよい。またモバイル制御対象機器としては、ウェアラブルディスプレイ140以外にも、例えば腕時計、携帯電話、或いはポータブルオーディオなどの種々の機器を想定できる。
【0060】
屋内外センサ510は、ユーザが屋内にいるのか屋外にいるのかを検知するセンサであり、例えば超音波を照射し、天井等により超音波が反射して戻ってくるまでの時間を計測する。但し屋内外センサ510は、超音波方式に限らず、アクティブ光方式、パッシブ紫外線方式、パッシブ赤外線方式、パッシブ騒音方式のセンサであってもよい。
【0061】
周囲温度センサ511は、例えばサーミスタ、放射温度計、熱電対などを用いて外界温度を計測する。周辺湿度センサ512は、例えば湿度によって電気抵抗が変化することを利用して周囲の湿度を計測する。周辺光度センサ513は、例えば光電素子を用いて周囲の光度を計測する。
【0062】
腕装着型の運動計測センサ520は、加速度センサや角加速度センサでユーザの腕の動きを計測する。この運動計測センサ520と足圧力センサ530を用いることでユーザの日常動作、歩行状態を更に正確に計測できる。脈拍(心拍数)センサ521は、手首或いは指又は耳に装着し、例えば拍動に伴う血流の変化を赤外光の透過率や反射率の変化で計測する。体温センサ522、抹消皮膚温度センサ523は、サーミスタ、放射温度計、熱電対などを用いてユーザの体温、抹消皮膚温度を計測する。発汗センサ524は、例えば皮膚の表面抵抗の変化により皮膚の発汗を計測する。足圧力センサ530は、靴にかかる足裏の圧力分布を検出して、ユーザの立ち状態、座り状態、歩行状態などを計測、判定する。
【0063】
発話・咀嚼センサ540は、ユーザが発話中(会話中)であるか、咀嚼中(食事中)であるかの可能性を計測するためのイヤホン型のセンサであり、その筺体内に骨伝導マイク、外界音マイクが内蔵されている。骨伝導マイクは、発話・咀嚼時に体内から生じ、体内を伝搬する振動である体内音を検出する。外界音マイクは、発話に応じて体外に伝導する振動である音声や、環境の雑音を含む外界音を検出する。そして骨伝導マイク、外界音マイクにより捕らえられた音の単位時間におけるパワーの比較処理等を行うことで、発話可能性や咀嚼可能性を計測する。
【0064】
GPSセンサ550はユーザの位置を検知するセンサである。なおGPSセンサ550の代わりに携帯電話の位置情報サービスや周辺にある無線LANの位置情報を利用してもよい。顔色センサ560は、例えば顔面近くに光センサを配置し、複数の光学的バンドパスフィルタを通過した後の光度を比較して顔色を計測する。瞳孔の大きさセンサ561は、例えば瞳孔の近くにカメラを配置し、カメラの信号を解析して瞳孔の大きさを計測する。
【0065】
なお、図1では携帯型電子機器100、ウェアラブルセンサ等により構成されるモバイルサブシステムにより、ユーザ情報を取得しているが、複数のサブシステムにより構成される統合システムにより、ユーザ情報を更新し、更新されたユーザ情報に基づいてロボット1の制御を行ってもよい。ここで統合システムは、例えばモバイルサブシステム、ホームサブシステム、車内サブシステム、会社内サブシステム、或いは店内サブシステムなどのサブシステムを含むことができる。
【0066】
この統合システムでは、ユーザが屋外等にいる場合(モバイル環境の場合)には、モバイルサブシステムのウェアラブルセンサ(モバイルセンサ)からのセンサ情報(センサ2次情報を含む)が取得(収集)され、取得されたセンサ情報に基づいてユーザ情報(ユーザ履歴情報)が更新される。またユーザ情報等に基づいてモバイル制御対象機器の制御が行われる。
【0067】
一方、ユーザが家にいる場合(ホーム環境の場合)には、ホームサブシステムのホームセンサからのセンサ情報が取得され、取得されたセンサ情報に基づいてユーザ情報が更新される。即ちモバイル環境で更新されたユーザ情報が、ホーム環境に移行した場合にもシームレスに更新される。またユーザ情報等に基づいてホーム制御対象機器(テレビ、オーディオ機器、エアコン等)の制御が行われる。なおホームセンサは、例えば、ホーム内の気温、湿度、光度、騒音、ユーザの会話、食事などを計測する環境センサや、ロボットに内蔵されるロボット搭載センサや、ホームの各室内、ドアなどに設置される人検知センサや、トイレに設置される尿検査用センサなどである。
【0068】
また、ユーザが車内にいる場合(車内環境の場合)には、車内サブシステムの車内センサからのセンサ情報が取得され、取得されたセンサ情報に基づいてユーザ情報が更新される。即ちモバイル環境やホーム環境で更新されたユーザ情報が、車内環境に移行した場合にもシームレスに更新される。またユーザ情報等に基づいて車内制御対象機器(ナビゲーション装置、カーAV機器、エアコン等)の制御が行われる。なお車内センサは、車の速度、移動距離などを計測する走行状態センサや、ユーザの運転操作、機器操作を計測する操作状態センサや、車内の気温、湿度、光度、ユーザの会話などを計測する環境センサなどである。
【0069】
2.ロボット
次に図1のロボット1(ロボット2)の構成について説明する。このロボット1は犬を模したペット型のロボットになっており、胴体モジュール600、頭部モジュール610、脚部モジュール620、622、624、626、尻尾モジュール630などの複数のパーツモジュール(ロボット動作機構)により構成される。
【0070】
頭部モジュール610には、ユーザの撫でる動作や叩く動作を検知するための接触センサや、ユーザの発話を検知するための発話センサ(マイクロホン)や、画像認識のための撮像センサ(カメラ)や、音声や鳴き声を発声するための音出力部(スピーカ)が設けられる。
【0071】
胴体モジュール600と頭部モジュール610との間や、胴体モジュール600と尻尾モジュール630との間や、脚部モジュール620の関節部分等には、関節機構が設けられている。そしてこれらの関節機構は、モータ等のアクチュエータを有しており、これによりロボット1の関節運動や自立走行が実現される。
【0072】
またロボット1の例えば胴体モジュール600には1又は複数の回路基板が設けられている。そしてこの回路基板には、各種処理を行うCPU(プロセッサ)や、各種データ、プログラムを記憶するROM、RAMなどのメモリや、ロボット制御のための制御ICや、音声信号を生成する音声生成モジュールや、外部との無線通信のための無線モジュールなどが実装される。ロボットに搭載される各種センサからの信号は、この回路基板に集約され、CPU等により処理される。また音声生成モジュールにより生成された音声信号は、この回路基板から音出力部(スピーカ)に対して出力される。また回路基板の制御ICからの制御信号は、関節機構に設けられたモータ等のアクチュエータに出力され、これによりロボット1の関節運動や自立走行が制御される。
【0073】
3.ロボット制御システム
図2に本実施形態のシステム構成例を示す。このシステムは、第1のユーザが所持する携帯型電子機器100-1や、第2のユーザが所持する携帯型電子機器100-2や、本実施形態のロボット制御システムにより制御されるロボット1を有する。そして本実施形態のロボット制御システムは、例えばロボット1が有する処理部10により実現される。
【0074】
なお、第1のユーザとしては、例えばロボット1の所有者を想定でき、第2のユーザとしては、所有者の家族、友人、親戚又は恋人等を想定できる。或いは第1、第2のユーザは、ロボット1を共有する所有者であってもよい。
【0075】
第1のユーザが所持する携帯型電子機器100-1は、処理部110-1、記憶部120-1、制御部130-1、通信部138-1を含む。また第2のユーザが所持する携帯型電子機器100- 2は、処理部110-2、記憶部120-2、制御部130-2、通信部138-2を含む。
【0076】
なお、以下では、説明を簡素化するために、これらの携帯型電子機器100-1、100-2、処理部110-1、110-2、記憶部120-1、120-2、制御部130-1、130-2、通信部138-1、138-2等を、各々、適宜、携帯型電子機器100、処理部110、記憶部120、制御部130、通信部138と総称する。また第1、第2のユーザ、第1、第2のユーザ情報、第1、第2のユーザ履歴情報も、各々、適宜、ユーザ、ユーザ情報、ユーザ履歴情報と総称する。
【0077】
携帯型電子機器100(100-1、100-2)は、ウェアラブルセンサ150(150-1、150-2)からのセンサ情報を取得する。具体的には、ウェアラブルセンサ150は、ユーザ(第1、第2のユーザ)の行動(歩行、会話、食事、手足の動き、感情表現又は睡眠等)を計測する行動センサ、ユーザの状態(疲労、緊張、空腹、精神状態、身体状態又はユーザに発生したイベント等)を計測する状態センサ、及びユーザの環境(場所、明るさ、気温又は湿度等)を計測する環境センサの少なくとも1つのセンサを含んでおり、携帯型電子機器100は、これらのセンサからのセンサ情報を取得する。
【0078】
なおセンサは、センサデバイス自体であってもよいし、センサデバイスの他に、制御部や通信部等を含むセンサ機器であってもよい。またセンサ情報は、センサから直接得られるセンサ1次情報であってもよいし、センサ1次情報を加工処理(情報処理)することで得られるセンサ2次情報であってもよい。
【0079】
処理部110(110-1、110-2)は、図示しない操作部からの操作情報や、ウェアラブルセンサ150から取得されたセンサ情報などに基づいて、携帯型電子機器100の動作等に必要な種々の処理を行う。この処理部110の機能は、各種プロセッサ(CPU等)、ASIC(ゲートアレイ等)などのハードウェアや、図示しない情報記憶媒体(光ディスク、ICカード、HDD等)に記憶されたプログラムなどにより実現できる。
【0080】
処理部110は、演算部112(112-1、112-2)、ユーザ情報更新部114(114-1、114-2)を含む。ここで演算部112は、ウェアラブルセンサ150から取得されたセンサ情報のフィルタリング処理(選択処理)や解析処理のための種々の演算処理を行う。具体的には演算部112は、センサ情報の乗算処理や加算処理を行う。例えば下式(1)に示すように、複数のセンサからの複数のセンサ情報のデジタル化された計測値Xjと、各係数が係数記憶部(図示せず)に記憶され、2次元行列(マトリックス)で表される係数Aijとの積和演算を行う。そうして下式(2)に示すように、積和演算の結果を多次元座標としてn次元のベクトルYiとして演算する。なお、iはn次元空間のi座標であり、jは各センサに割り当てられる番号である。
【0081】
【数1】
【0082】
【数2】
【0083】
上式(1)(2)のような演算処理を行うことで、取得されたセンサ情報の中から不要なセンサ情報を除去するフィルタリング処理や、ユーザの行動、状態、環境(TPO情報)をセンサ情報に基づき同定するための解析処理などを実現できる。例えば脈拍(心拍数)、発汗量、体温の計測値Xに対して乗算される係数Aを、その他のセンサ情報の計測値に対する係数よりも大きな値に設定すれば、上式(1)(2)で演算された数値Yは、ユーザの状態である「興奮度」を表すものになる。また発話量の計測値Xに対して乗算される係数と、足圧力の計測値Xに対して乗算される係数を適当な値に設定することで、ユーザの行動が、着座して会話しているのか、歩きながら会話しているのか、静かに思考しているのか、睡眠状態なのか等を同定できる。
【0084】
ユーザ情報更新部114(114-1、114-2)はユーザ情報(ユーザ履歴情報)の更新処理を行う。具体的には、ウェアラブルセンサ150(150-1、150-2)から取得されたセンサ情報に基づいてユーザ情報(第1、第2のユーザ情報)を更新する。そして更新されたユーザ情報(ユーザ履歴情報)を記憶部120のユーザ情報記憶部122(ユーザ履歴情報記憶部)に記憶する。この場合に、ユーザ情報記憶部122(122-1、122-2)のメモリ容量を節約するために、新しいユーザ情報を記憶する場合には、古いユーザ情報を削除し、削除により空いた記憶領域に対して新しいユーザ情報を記憶してもよい。或いは、各ユーザ情報に優先度(重み付け係数)を付与し、新しいユーザ情報を記憶する場合には、優先度の低いユーザ情報を削除してもよい。また既に記憶されているユーザ情報と新しいユーザ情報を演算することでユーザ情報を更新(上書き)してもよい。
【0085】
記憶部120(120-1、120-2)は、処理部110、通信部138などのワーク領域となるもので、その機能はRAMなどのメモリやHDD(ハードディスクドライブ)などにより実現できる。記憶部120が含むユーザ情報記憶部122は、ユーザ(第1、第2のユーザ)の行動、状態又は環境等の情報(履歴情報)であって、取得されたセンサ情報に基づき更新されるユーザ情報(第1、第2のユーザ情報)を記憶する。
【0086】
制御部130(130-1、130-2)はウェアラブルディスプレイ140(140-1、140-2)の表示制御等を行う。通信部138(138-1、138-2)は、無線や有線の通信により、ロボット1の通信部40との間で、ユーザ情報などの情報の転送処理を行う。無線の通信としては、ブルートゥース(Bluetoothは登録商標)や赤外線のような近距離無線や無線LANなどが考えられる。有線の通信としてはUSBやIEEE1394などを利用したものが考えられる。
【0087】
ロボット1は、処理部10、記憶部20、ロボット制御部30、ロボット動作機構32、ロボット搭載センサ34、通信部40を含む。なおこれらの一部の構成要素を省略した構成にしてもよい。
【0088】
処理部10は、ロボット搭載センサ34からセンサ情報や、取得されたユーザ情報などに基づいて、ロボット1の動作等に必要な種々の処理を行う。この処理部10の機能は、各種プロセッサ(CPU等)、ASIC(ゲートアレイ等)などのハードウェアや、図示しない情報記憶媒体(光ディスク、ICカード、HDD等)に記憶されたプログラムなどにより実現できる。即ち、この情報記憶媒体には、本実施形態の各部としてコンピュータ(操作部、処理部、記憶部、出力部を備える装置)を機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶され、処理部10は、この情報記憶媒体に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。
【0089】
記憶部20は、処理部10、通信部40などのワーク領域となるもので、その機能はRAMなどのメモリやHDD(ハードディスクドライブ)などにより実現できる。この記憶部20はユーザ情報記憶部22と提示情報記憶部26を含む。またユーザ情報記憶部22はユーザ履歴情報記憶部23を含む。
【0090】
ロボット制御部30は、制御対象であるロボット動作機構32(アクチュエータ、音出力部、LED等)の制御を行うものであり、その機能は、ロボット制御用のASICや各種プロセッサなどのハードウェアや、プログラムなどにより実現できる。
【0091】
具体的にはロボット制御部30は、提示情報をユーザに対してロボット1に提示させるための制御を行う。提示情報がロボット1の会話(シナリオデータ)である場合には、会話フレーズをロボット1に発話させるための制御を行う。例えば会話フレーズを表すデジタルのテキストデータを、公知のTTS(Text-To-Speech)処理によりアナログの音声信号に変換し、ロボット動作機構32の音出力部(スピーカ)を介して出力する。また提示情報が、ロボット1の感情状態を表す情報である場合には、その感情を表すように、ロボット動作機構32の各関節機構のアクチュエータを制御したり、LEDを点灯させるなどの制御を行う。
【0092】
ロボット搭載センサ34は、例えば接触センサ、発話センサ(マイクロホン)、或いは撮像センサ(カメラ)などの各種センサである。ロボット1は、このロボット搭載センサ34からのセンサ情報に基づいて、ユーザに提示した提示情報に対するユーザの反応をモニタできる。
【0093】
通信部40は、無線や有線の通信により、携帯型電子機器100-1の通信部138-1や携帯型電子機器100-2の通信部138-2との間で、ユーザ情報などの情報の転送処理を行う。
【0094】
処理部10は、ユーザ情報取得部12、演算部13、提示情報決定部14を含む。なおこれらの構成要素の一部を省略する構成としてもよい。
【0095】
ユーザ情報取得部12は、ユーザの行動を計測する行動センサ、ユーザの状態を計測する状態センサ及びユーザの環境を計測する環境センサの少なくとも1つからのセンサ情報により得られるユーザ情報を取得する。
【0096】
例えば、携帯型電子機器100-2のユーザ情報更新部114-2は、ウァアラブルセンサ150-2からのセンサ情報に基づき、第2のユーザ(第1のユーザの子供、妻、恋人等)のユーザ情報である第2のユーザ情報(第2のユーザ履歴情報)の更新処理を行う。更新された第2のユーザ情報はユーザ情報記憶部122-2に記憶される。
【0097】
そしてユーザ情報記憶部122-2に記憶された第2のユーザ情報(第2のユーザ履歴情報)は、通信部138-2、40を介して、ロボット1のユーザ情報記憶部22に転送される。具体的には、第2のユーザが家に帰宅してロボット1に近づいたり、携帯型電子機器100-2をクレードルに接続して、携帯型電子機器100-2とロボット1との間での通信経路が確立されると、第2のユーザ情報がユーザ情報記憶部122-2からユーザ情報記憶部22に転送される。ユーザ情報取得部12は、このようにして転送された第2のユーザ情報をユーザ情報記憶部22から読み出すことで、第2のユーザ情報を取得する。なおユーザ情報取得部12が、ユーザ情報記憶部22を介さずに直接に携帯型電子機器100-2から第2のユーザ情報を取得してもよい。
【0098】
また、携帯型電子機器100-1のユーザ情報更新部114-1は、ウァアラブルセンサ150-1からのセンサ情報に基づき、第1のユーザのユーザ情報である第1のユーザ情報(第1のユーザ履歴情報)の更新処理を行う。更新された第1のユーザ情報はユーザ情報記憶部122-1に記憶される。
【0099】
そしてユーザ情報記憶部122-1に記憶された第1のユーザ情報(第1のユーザ履歴情報)は、通信部138-1、40を介して、ロボット1のユーザ情報記憶部22(ユーザ情報記憶部72)に転送される。具体的には、第1のユーザが家に帰宅してロボット1に近づいたり、携帯型電子機器100-1をクレードルに接続して、携帯型電子機器100-1とロボット1との間での通信経路が確立されると、第1のユーザ情報がユーザ情報記憶部122-1からユーザ情報記憶部22に転送される。ユーザ情報取得部12は、このようにして転送された第1のユーザ情報をユーザ情報記憶部22から読み出すことで、第1のユーザ情報を取得する。なおユーザ情報取得部12が、ユーザ情報記憶部22を介さずに直接に携帯型電子機器100-1から第1のユーザ情報を取得してもよい。
【0100】
演算部13は、取得されたユーザ情報に対する演算処理を行う。具体的には、必要な場合には、ユーザ情報に対する解析処理やフィルタリング処理を行う。例えばユーザ情報が1次センサ情報等である場合には、上式(1)(2)で説明した演算処理を行って、取得されたセンサ情報の中から不要なセンサ情報を除去するフィルタリング処理や、ユーザの行動、状態、環境(TPO情報)をセンサ情報に基づき同定するための解析処理などを行う。
【0101】
提示情報決定部14は、取得されたユーザ情報(演算処理後のユーザ情報)に基づいて、ロボット1がユーザに対して提示(提供)する提示情報(会話、感情表現、行動表現)の決定処理を行う。
【0102】
具体的には、提示情報決定部14は、取得された第2のユーザの第2のユーザ情報に基づいて、第1のユーザへの提示情報(会話フレーズ、感情表現、行動表現)の決定処理を行う。そしてロボット制御部30は、第2のユーザ情報に基づき決定された提示情報を、第1のユーザに提示するためのロボット制御を行う。例えばロボット1に第1のユーザが近づいた場合に、ロボット1から離れた場所等にいる第2のユーザの第2のユーザ情報に基づき提示情報を決定し、決定された提示情報を第1のユーザに提示する。
【0103】
また第1のユーザの第1のユーザ情報をユーザ情報取得部12により取得した場合には、提示情報決定部14は、取得された第1のユーザ情報と第2のユーザ情報との両方に基づいて、第1のユーザへの提示情報の決定処理を行ってもよい。
【0104】
具体的には、第1のユーザ情報に基づいて、第1のユーザのTPO(Time Place Occasion)を推定し、TPO情報を取得する。即ち、時間情報や、第1のユーザの場所情報、状況情報を取得する。そして、取得された第1のユーザのTPO情報と、第2のユーザの第2のユーザ情報とに基づいて、提示情報の決定処理を行う。
【0105】
更に具体的には、提示情報決定部14は、第1のユーザ情報(TPO情報)に基づいて提示情報の提示タイミング(会話の開始タイミング、発話タイミング)を決定し、第2のユーザ情報に基づいて提示情報の内容(会話の内容、シナリオデータ)を決定する。そしてロボット制御部30は、決定された提示タイミングで、決定された内容の提示情報を、第1のユーザに提示するためのロボット制御を行う。
【0106】
即ち、第1のユーザが忙しかったり、精神的に余裕が無く、提示情報を提示するタイミングではないと、第1のユーザ情報(第1のユーザのTPO)に基づき判断した場合には、ロボット1による提示情報の提示を行わないようにする。一方、第1のユーザが時間的に余裕があったり、暇を持て余しており、提示情報を提示するタイミングであると、第1のユーザ情報に基づき判断した場合には、第2のユーザ情報に基づいて提示情報の内容を決定し、第2のユーザの状況、行動等を知らせるための情報を、ロボット1を用いて第1のユーザに提示する。
【0107】
このようにすれば、第1のユーザにとって適切でタイムリーなタイミングで、第2のユーザの状況等を知らせることができ、より自然でスムーズな情報提示が可能になる。
【0108】
なおユーザ情報取得部12が、第2のユーザ情報として、第2のユーザの行動履歴、状態履歴及び環境履歴の少なくとも1つである第2のユーザ履歴情報を取得した場合には、提示情報決定部14は、取得された第2のユーザ履歴情報に基づいて、ロボット1が第1のユーザに対して提示する提示情報の決定処理を行う。この場合の第2のユーザ履歴情報は、例えば第2のユーザのウェアラブルセンサ150-2からのセンサ情報により携帯型電子機器100-2等が更新処理を行うことで得られる情報であり、携帯型電子機器100-2のユーザ情報記憶部122-2からロボット1のユーザ履歴情報記憶部23に転送される。またユーザの行動履歴、状態履歴、環境履歴としては、ユーザの行動(歩行、発話、食事等)、状態(疲労、緊張、空腹、精神状態、肉体状態等)、環境(場所、明るさ、気温等)を日時等に関連づけて記憶した情報(ログ情報)が考えられる。
【0109】
また提示情報決定部14は、ロボット1による提示情報の提示に対する第1のユーザの反応に基づいて、ロボット1が第1のユーザに対して次に提示する提示情報の決定処理を行う。具体的には、例えばロボット1が第1のユーザに対して提示情報を提示し、それに対して第1のユーザが反応すると、その反応はロボット搭載センサ34により検知される。そして提示情報決定部14は、ロボット搭載センサ34からのセンサ情報等に基づいて、第1のユーザの反応を判断(推定)し、その反応に基づいて、次に提示する提示情報を決定する。
【0110】
4.動作
次に本実施形態の動作について説明する。一般的に、ユーザとロボットとの会話(対話)は、1人のユーザと1台のロボットというように、1対1の対峙関係で実現される。しかしながら、このような1対1の関係では、ロボットの会話が単調なものになってしまい、ユーザに直ぐに飽きられてしまうという課題がある。
【0111】
この点、本実施形態では、第1のユーザと会話するロボットは、第1のユーザとは異なる第2のユーザの第2のユーザ情報に基づいて会話を行う。従って、第1のユーザは、ロボットとのコミュニケーションを介して、自身の家族、友人或いは恋人などの第2のユーザの情報を知ることができる。従って、ロボットの会話が単調になるのが防止され、ユーザに飽きられにくいロボットを実現できる。
【0112】
この場合に、ロボットの会話によりユーザに提供される情報は、ウェアラブルセンサなどが有する行動センサ、状態センサ、環境センサからのセンサ情報により取得された第2のユーザ情報に基づくものになっている。このため、第1のユーザは、ロボットの会話を介して、自身が親しい第2のユーザの行動や、第2のユーザの状態や、第2のユーザを取り巻く環境について間接的に知ることが可能になる。従って、例えば父親の帰宅がいつも遅く、子供とのコミュニケーションを取れないような家庭において、父親は、ロボットの会話を介して、間接的に子供の様子を知ることが可能になる。また、離れた場所に住んでいる友人や恋人の様子を、ロボットとの会話を介して知ることも可能になり、これまでにないタイプのコミュニケーション手段としてのロボットを提供できる。
【0113】
例えば図3(A)において、家に帰宅した父親である第1のユーザは、携帯型電子機器100(100-1)をクレードル101に接続して、充電等を行っている。図3(A)では、このようなクレードル101への携帯型電子機器100の接続により、ロボット1の利用可能イベントが発生したと判定し、ロボット1を起動し、その利用を可能にする。なおクレードル101への接続ではなく、第1のユーザとロボット1との接近を判定して、ロボット1を起動してもよい。例えば携帯型電子機器100とロボット1の間の情報転送が無線により行われる場合には、その無線強度を検出することでロボット1の利用可能イベントの発生を判定できる。
【0114】
このような利用可能イベントが発生すると、ロボット1が起動し、その利用が可能になる。この場合に、子供である第2のユーザの第2のユーザ情報は、ロボット1のユーザ情報記憶部22に記憶されている。具体的には学校等での第2のユーザの行動、状態、環境等の情報が、第2のユーザ情報として転送されて記憶されている。これにより、第2のユーザ情報に基づくロボット1の会話等の制御が可能になる。なお、後述するように、子供である第2のユーザとロボット1との会話を介して第2のユーザ情報を収集して、取得してもよい。
【0115】
例えば図3(A)では、父親(第1のユーザ)が会社から帰宅してロボット1に近づくと、ロボット1が、子供(第2のユーザ)を話題とする会話を開始する。具体的には例えば後述するシナリオデータ等に基づいて「坊ちゃん、最近部活が忙しいみたいだね」という会話フレーズを発話し、子供の今日の様子を父親に知らせる。
【0116】
更に図3(B)では、「夏休みには旅行にも行きたいってさ〜」とロボット1が発話し、例えばロボット1が子供との会話を通じて取得した子供の要望について、父親に知らせている。そして図3(B)では、この子供の要望に関する話題に興味を持った父親が、ロボット1を撫でている。即ち父親は、子供の要望について更に詳しく知りたいため、ロボット1を撫でて、更に詳しい情報を教えるようにロボット1に要求している。すると図3(C)に示すように、ロボット1は、子供から収集した情報に基づいて、「やっぱり夏は海かな〜だってさ」と発話する。これにより父親は、子供が夏休み行きたい場所は海であることを知ることができる。即ち図3(B)では、ロボット1が発話した会話フレーズ(ロボットによる提示情報の提示)に対する父親(第1のユーザ)の反応(撫でる動作)に基づいて、次にロボット1に発話させる会話フレーズ(次に提示する提示情報)を決定している。
【0117】
例えば毎日の帰宅時間が遅い父親は、子供と接する時間が少ないため、子供の様子や要望についてなかなか知ることができない。また子供と接する時間があったとしても、子供が自身の要望を父親に対して直接に伝えない場合もある。
【0118】
このような場合にも本実施形態では、ロボット1を媒介として父親と子供との間接的なコミュニケーションが実現される。例えば子供が、父親に対しては直接に自身の要望を伝ない場合にも、本実施形態によれば、ロボット1を媒介として子供の要望を父親にスムーズに伝えることが可能になる。また、子供が無意識に自身の要望をロボット1に話した場合にも、その要望を父親に伝えることが可能になる。
【0119】
また、子供と接する時間が少ないため、子供への関心が薄れてしまっている父親に対して、自身の子供についての気付きを与えることも可能になる。従って、いわゆる利便性提供型サービスではなく、ロボット1との会話を通じてユーザに気付きを与えるというインスパイヤ型ユビキタスサービスの実現も可能になる。
【0120】
なお、図3(A)のようにロボット1の利用可能イベントが発生して、ロボット1が起動した場合に、父親のユーザ情報である第1のユーザ情報を、ロボット1のユーザ情報記憶部22に転送して記憶してもよい。即ち会社や外出先等での父親の行動、状態、環境等の情報を転送して記憶する。このようにすれば、父親の第1のユーザ情報と、子供の第2のユーザ情報の両方を用いて、ロボット1の会話等を制御することが可能になる。
【0121】
例えば、父親の帰宅時間がいつもよりも遅かったことが、第1のユーザ情報に基づき判断されたとする。具体的には、ウェアラブルセンサのGPSセンサからの場所情報やタイマからの時間情報に基づいて、父親の毎日の帰宅時間が計測される。そして過去における父親の帰宅時間の平均と、今回の帰宅時間とを比較すること、父親の帰宅時間が遅いか否かを判定する。
【0122】
そして、父親の帰宅時間が普段よりもかなり遅い場合には、父親のTPOは仕事等で非常に疲れている状態であると推定できる。従ってこの場合には、ロボット1は、直ぐには子供を話題とする会話を行わずに、例えば「今日は、仕事で遅くなって、大変でしたね」というような労いの会話を行う。或いは父親が好きな野球チームの試合結果などを話題とする会話を行う。
【0123】
そして、時間が経過して、仕事で疲れた状態が軽減された後に、ロボット1は、第2のユーザ情報に基づいて子供を話題とする会話を開始する。即ち提示情報(会話)の決定処理における第1のユーザ情報(第1のユーザ履歴情報)の重み付けと、第2のユーザ情報(第2のユーザ履歴情報)の重み付けとを、時間経過に伴い変化させる。具体的には、ロボット1の利用可能イベントの発生時には、父親のユーザ情報である第1のユーザ情報の重み付けを大きくし、子供のユーザ情報である第2のユーザ情報の重み付けを小さくして提示情報の決定処理を行う。そして、その後、第1のユーザ情報の重み付けを小さくし、第2のユーザ情報の重み付けを大きくして提示情報の決定処理を行う。このようにすれば、父親のTPOに応じたタイムリーな情報提示が可能になる。
【0124】
図4に本実施形態の動作を説明するためのフローチャートを示す。
【0125】
まずユーザ情報取得部12が、第2のユーザ(子供)のユーザ情報である第2のユーザ情報を取得する(ステップS1)。具体的には、第2のユーザの携帯型電子機器100-2からの第2のユーザ情報がユーザ情報記憶部22に転送され、この転送されたユーザ情報を読み出す。そしてロボット1が第1のユーザ(父親)に提示する提示情報(会話等)の内容を、取得された第2のユーザ情報(子供のユーザ情報)に基づいて決定する(ステップS2)。
【0126】
次にユーザ情報取得部12が、第1のユーザ(父親)のユーザ情報である第1のユーザ情報を取得する(ステップS3)。具体的には、第1のユーザの携帯型電子機器100-1からの第1のユーザ情報がユーザ情報記憶部22に転送され、この転送されたユーザ情報を読み出す。次に、必要であれば、第1のユーザ情報に基づいて第1のユーザのTPOを推定する(ステップS4)。ここで、TPO(Time Place Occasion)の情報は、時間情報(年、月、週、日、時間等)、ユーザの場所情報(居場所、位置、距離等)及びユーザの状況情報(精神・肉体状況、ユーザに対して発生したイベント等)の少なくとも1つの情報である。例えばGPSセンサにより得られる緯度・経度情報の意味合いは、ユーザに応じて異なり、その緯度・経度の場所がユーザの自宅であれば、ユーザの居場所は自宅であると推定される。
【0127】
次に、第1のユーザ情報(第1のユーザのTPO)に基づいて、第1のユーザに提示情報を提示するタイミングであるか否かを判断する(ステップS5)。例えば第1のユーザ情報に基づいて、第1のユーザが忙しかったり、疲れていると判断した場合には、提示タイミングではないと判断して、ステップS3に戻る。
【0128】
一方、第1のユーザに提示するタイミングであると判断した場合には、ロボット1に提示情報を提示させるロボット制御を行う(ステップS6)。具体的には、図3(A)〜図3(C)のように、ロボット1に会話フレーズを発話させるロボット制御を行う。
【0129】
次に、ステップS6での提示情報の提示に対する第1のユーザの反応をモニタする(ステップS7)。例えば第1のユーザがロボット1を撫でる動作をしたのか、叩く動作をしたのか、或いは何もしなかったのかを判断する。そして、モニタされた第1のユーザの反応に基づいて、次にロボット1が提示する提示情報を決定する(ステップS8)。即ち次にロボット1が発話する会話フレーズを決定する。
【0130】
5.複数台のロボット
以上では、ユーザが複数であり、ロボットが1台である場合について説明したが、本実施形態はこれに限定されず、ユーザが複数であり、ロボットが複数台である場合にも適用できる。図5に、ロボットが複数台である場合の本実施形態の第2のシステム構成例を示す。
【0131】
このシステムは、第1、第2のユーザが所持する携帯型電子機器100-1、100-2や、本実施形態のロボット制御システムにより制御されるロボット1、2(第1、第2のロボット)を有する。そして、ロボット制御システムは、例えばロボット1、2が有する処理部10、60により実現される。なお、ロボット2の構成はロボット1と同様であるため、ここでは詳細な説明を省略する。
【0132】
図5では、提示情報決定部14(64)は、取得された同じ第2のユーザ情報に対してロボット1、2が異なる提示情報(異なる会話フレーズ、異なる感情表現、異なる行動表現)を提示(発話)するように、第1のユーザに対して提示する提示情報(会話フレーズ)の決定処理を行う。例えば、取得された第2のユーザ情報に対して、ロボット1が、第1の提示情報(第1の会話フレーズ)を提示し、ロボット2が、第1の提示情報とは異なる第2の提示情報(第2の会話フレーズ)を提示するように、提示情報の決定処理を行う。
【0133】
次に図5の動作について説明する。一般的に、ユーザとロボットとの会話(対話)は、1人のユーザと1台のロボットというように、1対1の対峙関係で実現される。
【0134】
これに対して図5では、2台のロボット1、2(広義には複数台のロボット)が用意される。そしてユーザは、ロボット1、2と直接会話するのではなく、ロボット1、2の間で行われる会話を傍観しならが聞くという形態をとる。
【0135】
このようにすれば、外部からユーザに一方的に情報を提供する利便性提供型サービスではなく、ロボット1、2の間で行われる会話を通して、ユーザの内面に働きかけ、ユーザの行動、状態、環境についての気付き(インスパイヤ)をユーザに与えることで、自己の成長を促すというインスパイヤ型ユビキタスサービスの実現が可能になる。
【0136】
図6(A)〜図6(C)は、子供である第2のユーザの第2のユーザ情報を取得する場面の例である。図6(A)において、家に帰宅した子供は、携帯型電子機器100(100-2)をクレードル101に接続して、充電等を行っている。図6(A)では、このクレードル101への携帯型電子機器100の接続により、ロボット1、2の利用可能イベントが発生したと判定し、ロボット1、2を起動し、その利用を可能にする。なお、無線強度の検出により、子供との接近を判定して、ロボット1、2を起動してもよい。
【0137】
このようにロボット1、2が起動すると、子供が所持する携帯型電子機器100に記憶された第2のユーザ情報が、ロボット1、2のユーザ情報記憶部22、72に転送される。そして、モバイル環境において更新された子供の第2のユーザ情報に基づいて、ロボット1、2の会話等が制御される。また、モバイル環境で更新された第2のユーザ情報が、ロボット1、2との会話等に基づいて、ホーム環境において更に更新される。
【0138】
例えば図6(A)では、子供の帰宅時間がいつもよりも遅かったことが、第2のユーザ情報に基づき判断される。このように、帰宅時間が遅いと判断された場合には、子供の帰宅時間に関連した提示情報がロボット1、2により提示される。具体的には、子供の帰宅時間の話題に関するシナリオデータが選択され、選択されたシナリオデータにしたがってロボット1、2が会話を開始する。例えば図6(A)では、ロボット1が「今日は学校の帰りが遅かったね」という会話フレーズを発話し、それに対してロボット2が「最近、遅い日が多いよね〜」という会話フレーズを発話する。
【0139】
そして図6(B)ではロボット1が「部活が忙しいのかな」と発話し、ロボット2が「どうせフラフラ遊び歩いているんじゃない?」と発話する。このように図6(B)では、「帰宅時間がいつもより遅い」という同じ第2のユーザ情報に対して、ロボット1、2が異なる提示情報を提示する。すると、子供は、実際には部活で忙しくて帰宅が遅くなったため、「部活が忙しいのかな」と発話したロボット1の方を撫でる。これにより図6(C)に示すように、撫でられた方のロボット1が、「そういえばもうすぐ地区大会だったね」と発話する。
【0140】
この場合に、図6(B)のようなロボット1、2の対照的な会話フレーズに対する子供の反応(撫でる操作)に基づき、第2のユーザ情報が更新される。即ち、子供の帰宅が遅くなったのは、部活が原因であったことが推定され、部活で帰宅が遅くなったことが、第2のユーザ情報として記録されて、父親に提示するシナリオデータが作成される。即ち、ロボット1、2が発話した会話フレーズに対する子供(第2のユーザ)の反応に基づき、父親(第1のユーザ)に提示するシナリオデータが作成される。
【0141】
図7(A)〜図7(C)は、子供の帰宅後、第1のユーザである父親が帰宅した場面の例である。
【0142】
父親が帰宅して、クレードル101への携帯型電子機器100(100-1)の接続等が検出されると、ロボット1、2が起動する。この場合に、図6(A)〜図6(C)で説明した子供との会話により更新された第2のユーザ情報が、ロボット1、2のユーザ情報記憶部22、72に記憶されている。そしてロボット1、2は、この第2のユーザ情報に基づいて、その会話等が制御される。具体的には、子供の遅い帰宅時間の話題に関するシナリオデータが選択されて、選択されたシナリオデータにしたがってロボット1、2が会話を開始する。例えば図7(A)では、ロボット1が「坊ちゃん学校の帰りが遅かったんだよ」と発話し、それに対してロボット2が「最近、遅い日が多いみたいだね〜」と発話する。
【0143】
この場合に、「子供の帰宅時間がいつもより遅い」という同じ第2のユーザ情報に対して、ロボット1、2が異なる提示情報を提示するように、父親(第1のユーザ)に対してロボット1、2が提示する提示情報の決定処理が行われる。具体的には図7(B)では、子供の遅い帰宅時間について、ロボット1は「部活が忙しいらしいよ」と発話し、ロボット2は「でも、なんか機嫌が悪いんだ」と発話する。
【0144】
例えば、ロボットとユーザが1対1で対峙し、ロボットが常に同じような傾向の会話を行うと、ユーザはロボットとの会話に閉塞感や行き詰まり感を感じるおそれがある。
【0145】
これに対して図7(B)では、ロボット1、2が、互いに異なる対照的な会話フレーズを発話する。しかも、ユーザに対して直接会話するのではなく、ロボット1、2同士で会話を行い、ユーザがそれを見守るという形態をとる。従って、いわゆる利便性提供型サービスではなく、ロボット1、2の間で行われる会話を通してユーザに気付きを与えるというインスパイヤ型ユビキタスサービスの提供が可能になる。
【0146】
また図7(B)では、父親は、子供の今日の機嫌に関する話題よりも、子供の部活に関する話題の方に興味があるため、ロボット1の方を撫でている。そして、ロボット1の接触センサ410等により、ロボット1、2による会話フレーズの発話に対するユーザの反応である「撫でる動作」が検知される。
【0147】
すると、このような「撫でる動作」というユーザの反応に基づいて、ロボット1、2が父親に対して次に会話する会話フレーズ(次に提示する提示情報)の決定処理を行う。具体的には図7(C)に示すように、撫でられた側のロボット1は、「もうすぐ地区大会だからね」と発話する。そして、その後は、子供の部活に関する話題のシナリオにより、ロボット1、2の間の会話が続けられる。
【0148】
このように図6(A)〜図6(C)では、ロボット1、2の会話を通じて、子供のユーザ情報である第2のユーザ情報が更新されて、父親に提示するシナリオデータが作成される。従って、子供が特に意識することなく、自然に第2のユーザ情報が収集されて、取得される。そして取得された第2のユーザ情報に基づいて、子供を話題とするシナリオデータが作成され、図7(A)〜図7(C)に示すように、ロボット1、2の会話を通じて、子供の話題が父親に提供される。従って、父親や子供が特に意識しなくても、ロボット1、2を媒介として父親と子供との間接的なコミュニケーションを実現できる。これにより、ロボットとの会話を通じてユーザに気付きを与えるというインスパイヤ型ユビキタスサービスの実現が可能になる。
【0149】
図8に、図5のシステムの動作を説明するためのフローチャートを示す。図8が図4のフローチャートと主に異なるのは、ステップS56の処理である。即ちステップS55で、第1のユーザ(父親)に提示するタイミングであると判断された場合には、ステップS56では、ロボット1、2に異なる提示情報を提示させるロボット制御が行われる。具体的には、図7(A)〜図7(C)で説明したように、同じ第2のユーザ情報(子供の帰宅時間)に対して、ロボット1、2が異なる会話を行うようにロボット1、2の会話フレーズを決定し、ロボット1、2に発話させる。これにより、ユーザとロボットとの会話が単調になってしまう事態が防止される。
【0150】
図9に、図5の変形例である第3のシステム構成例を示す。図9では、ロボット1がマスタ側に設定され、ロボット2がスレーブ側に設定される。そしてロボット制御システムは、主にマスタ側のロボット1が有する処理部10により実現される。
【0151】
具体的にはマスタ側のロボット1に設けられたユーザ情報取得部12がユーザ情報(第2のユーザ情報)を取得し、マスタ側の提示情報決定部14が、取得されたユーザ情報に基づいて、ロボット1、2がユーザに対して提示する提示情報の決定処理を行う。例えばマスタ側、スレーブ側のロボット1、2が、各々、第1、第2の提示情報を提示することが決定された場合には、マスタ側のロボット制御部30は、決定された第1の提示情報をロボット1に提示させるための制御を行う。このようにしてマスタ側のロボット1が制御される。またマスタ側の提示情報決定部14は、スレーブ側のロボット2に対して、ユーザへの提示情報の提示を指示する。例えばマスタ側、スレーブ側が、各々、第1、第2の提示情報を提示することが決定された場合には、スレーブ側のロボット2に対して、第2の提示情報を提示することを指示する。するとスレーブ側のロボット制御部80は、決定された第2の提示情報をロボット2に提示させるためのロボット制御を行う。このようにしてスレーブ側のロボット2が制御される。
【0152】
この場合に、通信部40は、提示情報の提示を指示する指示情報を、マスタ側のロボット1からスレーブ側のロボット2に対して、例えば無線等により通信する。そしてスレーブ側の通信部90がこの指示情報を受信すると、スレーブ側のロボット制御部80は、この指示情報で指示された提示情報をロボット2に提示させるためのロボット制御を行う。
【0153】
ここで提示情報の指示情報は、例えば提示情報の識別コードなどである。提示情報がシナリオの会話フレーズである場合には、この指示情報は、シナリオにおける会話フレーズのデータコードになる。
【0154】
例えばロボット1、2が掛け合いの会話を行う場合に、ロボット1の発話した会話フレーズをロボット2が音声認識し、その音声認識の結果に基づいてロボット2に会話フレーズを発話させる手法が考えられる。
【0155】
しかしながら、この手法によると複雑は音声認識処理や解析処理が必要になり、ロボットの高コスト化、処理の複雑化、誤動作の発生などを招く。
【0156】
この点、図9では、マスタ側のロボット1の制御の下で、ロボット1、2の掛け合いの会話が実現される。即ち、ユーザの目からは、ロボット1、2がお互いの言葉を認識し合いながら会話しているように見えるが、実際には、全ての会話がマスタ側のロボット1の制御の下で行われる。またスレーブ側のロボット2は、マスタ側のロボット1から通信される指示情報に基づいて、自身が提示する情報を決定するため、音声認識処理を不要にできる。従って、複雑な音声認識処理等を行わなくても、ロボット1、2の間での掛け合いの会話を、誤動作の少ない安定した制御の下で実現できる。
【0157】
6.ネットワークを介した第2のユーザ情報の取得
以上では、家族間のコミュニケーションに本実施形態の手法を適用した場合について主に説明したが、本実施形態はこれに限定されない。例えば友人、恋人、親戚などの場所的に離れたユーザ間でのコミュニケーションにも本実施形態の手法は適用できる。
【0158】
例えば図10では、第1のユーザの恋人である第2のユーザの第2のユーザ情報が取得される。具体的には第2のユーザのモバイル環境やホーム環境において、図1等で説明した手法により第2のユーザ情報(第2のユーザ履歴情報)が更新される。そして、更新された第2のユーザ情報は、インターネットなどのネットワークを介して通信される。即ち、ロボット1(ロボット制御システム)のユーザ情報取得部12が、第2のユーザ情報をネットワークを介して取得する。そして提示情報決定部14が、ネットワークを介して取得された第2のユーザ情報に基づいて、第1のユーザに提示する提示情報の決定処理を行う。
【0159】
このようにすれば、第1のユーザは、遠く離れた場所にいる第2のユーザの行動、状態又は環境(行動履歴、状態履歴、環境履歴)等を、ロボット1を媒介として知ることができる。即ちロボット1(或いはロボット1、2)は、ネットワークを介して取得した第2のユーザ情報によるシナリオデータに基づいて、図3(A)〜図3(C)で説明したような会話を行う。従って、第1のユーザは、恋人である第2のユーザの様子を、ロボット1の会話を通じて間接的に知ることができる。これにより、遠く離れた場所にいる第1、第2のユーザ間での間接的なコミュニケーションを実現でき、これまでにないコミュニケーション手段を提供できる。なお図10のシステムにおいて第2のユーザ情報を携帯型電子機器を媒介せずに取得するようにしてもよい。
【0160】
7.システム構成例
次に本実施形態の別のシステム構成例について説明する。図11は本実施形態の第4のシステム構成例である。なお図11は、1台のロボットが設けられる場合の例であるが、図5のように複数台のロボットを設けてもよい。
【0161】
図11では、ローカルサーバであるホームサーバ200が設けられている。このホームサーバ200は、ホームサブシステムの制御対象機器の制御のための処理を行ったり、外部との通信処理などを行う。ロボット1(或いはロボット1、2)はこのホームサーバ200の制御の下で動作する。
【0162】
そして図11のシステムでは、携帯型電子機器100-1、100-2とホームサーバ200は例えば無線LANやクレードル等で通信接続され、ホームサーバ200とロボット1は例えば無線LAN等で通信接続される。そして本実施形態のロボット制御システムは、主にホームサーバ200の処理部210により実現される。なおロボット制御システムの処理を、ホームサーバ200とロボット1の分散処理により実現してもよい。
【0163】
携帯型電子機器100-1又は100-2を所持したユーザ(第1、第2のユーザ)が家に近づくと、無線LAN等により携帯型電子機器100-1、100-2とホームサーバ200の間の通信が可能になる。或いは携帯型電子機器100-1、100-2をクレードルに置くことで、通信が可能になる。
【0164】
そして通信経路が確立されると、携帯型電子機器100-1、100-2からホームサーバ200のユーザ情報記憶部222にユーザ情報(第1、第2のユーザ情報)が転送される。これにより、ホームサーバ200のユーザ情報取得部212がユーザ情報を取得する。そして演算部213が必要な演算処理を行い、提示情報決定部214が、ロボット1がユーザに対して提示する提示情報を決定する。そして、決定された提示情報又は提示情報の指示情報(例えば会話フレーズの発話指示情報)が、ホームサーバ200の通信部238からロボット1の通信部40に送信される。そしてロボット1のロボット制御部30は、受信した提示情報又は受信した指示情報により指示される提示情報を、ユーザに提示するためのロボット制御を行う。
【0165】
図11の構成によれば、例えばユーザ情報や提示情報(シナリオデータ)のデータサイズが大きい場合に、ロボット1にユーザ情報や提示情報の記憶部を設けなくても済むため、ロボット1の低コスト化やコンパクト化を図れる。またユーザ情報や提示情報の転送や演算処理を、ホームサーバ200に一元化して処理、管理できるため、よりインテリジェントなロボット制御が可能になる。
【0166】
また図11のシステムによれば、ロボット1の利用可能イベントが発生する前に、携帯型電子機器100-1、100-2からのユーザ情報を、ホームサーバ200のユーザ情報記憶部222に予め転送しておくことができる。例えばユーザが家に帰ってロボット1に近づく前に(具体的には、ユーザが身につけたウェアラブルセンサの1つであるGPSセンサからの情報が、ユーザが最寄り駅に着いたことを示したり、ホームセンサの1つであるドアの開閉センサからの情報が、ユーザが玄関のドアを開けたことを示したりしたタイミングなど)、モバイル環境で更新されたユーザ情報をホームサーバ200のユーザ情報記憶部222に予め転送して書き込んでおく。そしてユーザがロボット1に近づき、ロボット1の利用可能イベントが発生すると、ユーザ情報記憶部222に予め転送されたユーザ情報を用いた、ロボット1の制御動作を開始させる。即ちロボット1を起動し、例えば図3(A)〜図3(C)に示すような会話を行うようにロボット1を制御する。このようにすれば、ロボット1が起動した後に、ユーザ情報に基づく会話を直ぐに開始できるようになり、制御を効率化できる。
【0167】
図12に本実施形態の第5のシステム構成例を示す。図12では、メインサーバである外部サーバ300が設けられている。この外部サーバ300は、携帯型電子機器100-1、100-2との間やホームサーバ200との間での通信処理を行ったり、各種の管理制御を行う。なお図12は、1台のロボットが設けられる場合の例であるが、図5のように複数台のロボットを設けてもよい。
【0168】
図12のシステムでは、携帯型電子機器100-1、100-2と外部サーバ300はPHS等の無線WANで通信接続され、外部サーバ300とホームサーバ200はADSL等の有線WANで通信接続され、ホームサーバ200とロボット1(ロボット1、2)は無線LAN等で通信接続される。そして本実施形態のロボット制御システムは、主に、ホームサーバ200の処理部210や外部サーバ300の図示しない処理部により実現される。なおロボット制御システムの処理を、ホームサーバ200、外部サーバ300、ロボット1の分散処理により実現してもよい。
【0169】
携帯型電子機器100-1、100-2、ホームサーバ200等の各ユニットは、適宜、外部サーバ300と通信して、ユーザ情報(第1、第2のユーザ情報)の転送処理を行う。また、PHSの位置登録情報、GPSセンサ、マイク等を利用して、ユーザ(第1、第2のユーザ)が家に近づいたか否かを判断し、近づいた場合には、外部サーバ300の図示しないユーザ情報記憶部に記憶されたユーザ情報を、ホームサーバ200のユーザ情報記憶部222にダウンロードして、ロボット1による提示情報の提示制御を開始させる。なお、後述するシナリオデータ等の提示情報も、外部サーバ300からホームサーバ200の提示情報記憶部226にダウンロードできる。
【0170】
図12のシステムによれば、ユーザ情報や提示情報を、外部サーバ300において一元的に管理できるようになる。
【0171】
8.ユーザ履歴情報
次に、ユーザ情報の1つであるユーザ履歴情報の更新処理やユーザ履歴情報の具体例について説明する。なおユーザ情報は、センサ情報によりリアルタイムに得られるユーザ情報と、このリアルタイムに得られるユーザ情報の履歴であるユーザ履歴情報などを含むことができる。
【0172】
図13は、ユーザ履歴情報の更新処理の一例を示すフローチャートである。
【0173】
まず、ウェアラブルセンサ150等からのセンサ情報を取得する(ステップS21)。次に、取得されたセンサ情報のフィルタリングや解析等の演算処理を行う(ステップS22)。そして演算結果に基づきユーザの行動、状態、環境等(TPO、情感)を推定する(ステップS23)。そして推定されたユーザの行動、状態等のユーザ履歴を日時(年、月、週、日、時間)等に関連づけてユーザ履歴情報記憶部23(223)に記憶して、ユーザ履歴情報を更新する(ステップS24)。
【0174】
図14にユーザ履歴情報の具体例が模式的に示される。図14のユーザ履歴情報は、ユーザの行動等の履歴が時間帯、時刻等に関連づけられたデータ構造になっている。例えば8時にユーザは自宅を出発し、8時〜8時20分の時間帯では自宅から駅まで歩行し、8時20分に自宅の最寄りのA駅に到着している。そして8時20分〜8時45分の時間帯では電車に乗車し、8時45分に会社の最寄りのB駅で下車し、9時に会社に到着し、業務を開始している。10時〜11時の時間帯では社内のメンバとミーティングを行い、12時〜13時の時間帯では昼食をとっている。
【0175】
このように図14では、センサからの情報等により推定されるユーザの行動等の履歴を、時間帯や時刻等に関連づけることで、ユーザ履歴情報が構築されている。
【0176】
また図14では、時間帯や時刻に対して、センサ等により計測されるユーザの発話量、食事量、脈拍、発汗量等の計測値も関連づけられている。例えば8時〜8時20分の時間帯では、ユーザは自宅からA駅に歩いているが、この時の歩行量等がセンサにより計測されて、8時〜8時20分の時間帯に関連づけられる。この場合に、例えば歩行速度、発汗量等の歩行量以外のセンサ情報の計測値を更に関連づけてもよい。こうすることで、この時間帯でのユーザの運動量等を把握することが可能になる。
【0177】
10時〜11時の時間帯では、ユーザは同僚とのミーティングを行っているが、この時の発話量等がセンサにより計測されて、10時〜11時の時間帯に関連づけられる。この場合に、例えば音声状態、脈拍等のセンサ情報の計測値を更に関連づけてもよい。こうすることで、この時間帯でのユーザの会話量や緊張度等を把握することが可能になる。
【0178】
20時45分〜21時45分や22時〜23時の時間帯では、ユーザはゲームをプレイしたり、テレビを鑑賞しているが、この時の脈拍、発汗量等がこれらの時間帯に関連づけられる。こうすることで、これらの時間帯でのユーザの興奮度等を把握することが可能になる。
【0179】
23時30分〜の時間帯では、ユーザは睡眠をしているが、この時のユーザの体温の変化がこの時間帯に関連づけられる。こうすることで、睡眠時におけるユーザの健康状態を把握することが可能になる。
【0180】
なお、ユーザ履歴情報は図14のような形態に限定されず、例えばユーザの行動等の履歴を日時等に関連づけないでユーザ履歴情報を構築する変形実施も可能である。
【0181】
例えば図15(A)では、センサ情報の計測値である発話量、音声状態、脈拍、発汗量等に基づいて、所定の演算式にしたがってユーザの精神状態パラメータが演算される。例えば発話量が多ければ、精神状態パラメータも高くなり、ユーザの精神状態が良好であることが示される。またセンサ情報の計測値である歩行量、歩行速度、体温等に基づいて、所定の演算式にしたがってユーザの身体状態(健康状態)のパラメータ(運動量パラメータ)が演算される。例えば歩行量が多ければ、身体状態パラメータも高くなり、ユーザの身体状態が良好であることが示される。
【0182】
また図15(B)に示すように、ユーザの精神状態、身体状態のパラメータ(広義には状態パラメータ)は、棒グラフ等を利用して可視化することで、ウェアラブルディスプレイやホームディスプレイに表示できる。またモバイル環境で更新された精神状態、身体状態のパラメータなどに基づいて、ホーム環境のロボットを制御して、ユーザを労ったり、励ましたり、あるいはユーザに助言する動作をロボットに行わせることが可能になる。
【0183】
以上のように本実施形態では、ユーザ情報として、ユーザの行動履歴、状態履歴、及び環境履歴の少なくとも1つであるユーザ履歴情報が取得される。そして取得されたユーザ履歴情報に基づいて、ロボットがユーザに対して提示する提示情報の決定処理が行われるようになる。
【0184】
9.シナリオに基づくロボットの会話
次に、ユーザへの提示情報がシナリオに基づくロボットの会話である場合を例にとり、その具体例について詳細に説明する。
【0185】
9.1 構成
図16に本実施形態の更に詳細なシステム構成例を示す。図16は図2、図5等に比べて、処理部10が更にイベント判定部11、ユーザ識別部15、接触状態判定部16、発話権制御部17、シナリオデータ取得部18、ユーザ情報更新部19を含んでいる。また記憶部20がシナリオデータ記憶部27、提示許可判断情報記憶部28を含んでいる。
【0186】
イベント判定部11は各種のイベントの判定処理を行う。具体的には、モバイルサブシステムや車内サブシステムでユーザ情報を更新していたユーザが、新たにホームサブシステムのロボットの利用が可能になったことを示すロボットの利用可能イベントの発生を判定する。例えばイベント判定手段11は、ユーザがロボットの場所(家)に接近(移動)した場合に、ロボットの利用可能イベントが発生したと判定する。或いは情報転送が無線により行われる場合には、その無線強度を検出することで利用可能イベントの発生を判定してもよい。或いはクレードルに携帯型電子機器が接続された場合に、利用可能イベントが発生したと判定してもよい。そして、このようなロボットの利用可能イベントが発生した場合には、ロボット1、2を起動し、ユーザ情報記憶部22等にユーザ情報がダウンロードされる。
【0187】
シナリオデータ記憶部27は、複数の会話フレーズにより構成されるシナリオデータを、提示情報として記憶する。そして提示情報決定部14は、このシナリオデータに基づいて、ロボットがユーザに対して発話する会話フレーズを決定する。するとロボット制御部30は、決定された会話フレーズをロボットに発話させるための制御を行う。
【0188】
具体的にはシナリオデータ記憶部27は、複数の会話フレーズが分岐構造でリンクされたシナリオデータを記憶する。そして提示情報決定部14は、ロボットが発話した会話フレーズに対するユーザ(第1のユーザ)の反応に基づいて、次にロボットに発話させる会話フレーズを決定する。
【0189】
ユーザ識別部15はユーザの識別処理を行う。具体的には、ロボットに対してユーザが接近した場合に、接近したユーザを識別する。そしてロボット制御部30は、第1のユーザが接近したとユーザ識別部15により識別された場合に、第1のユーザに提示情報を提示するためのロボット制御を行う。
【0190】
このユーザ識別は、例えばロボットによるユーザの顔の画像認識やユーザの声の音声認識などにより実現できる。例えば第1のユーザの顔画像や音声のデータを予め登録しておく。そして、CCD等の撮像デバイスやマイク等の音センサにより、ロボットに接近したユーザの顔画像や音声を認識し、登録されている顔画像や音声と一致するか否かを判断する。そして、認識された顔画像や音声が第1のユーザの顔画像や音声と一致した場合に、第1のユーザへの提示情報の提示を開始する。或いはユーザが所持する携帯型電子機器からのID情報をロボットが受信し、予め登録されているID情報と一致するか否かを判断することで、接近したユーザが第1のユーザか否かを識別してもよい。
【0191】
接触状態判定部16は、後述するように、ロボットのセンシング面における接触状態を判定する。そして提示情報決定部14は、ロボットによる会話フレーズの発話(提示情報の提示)に対するユーザの反応として、ユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを、接触状態判定部16での判定結果に基づき判断する。そして、ユーザに対して次に発話する会話フレーズ(次に提示する提示情報)を決定する。
【0192】
この場合に接触状態判定部16は、センシング面よりも内側(ロボットの内側)に設けられたマイク(音センサ)からの出力信号(センサ信号)に対して演算処理を行うことで得られた出力データに基づいて、センシング面における接触状態を判定する。この場合の出力データは、例えば信号強度(信号強度データ)であり、接触状態判定部16は、出力データで信号強度と、所定のしきい値との比較処理を行うことで、ユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを判定できる。
【0193】
発話権制御部17は、ロボットが発話した会話フレーズに対するユーザ(第1のユーザ)の反応(例えば撫でる、叩く、無言)に基づいて、ロボット1、2のいずれに対して次の会話フレーズの発話権(発話の主導権)を付与するかを制御する。具体的には、ロボット1、2のいずれか一方のロボットが発話した会話フレーズに対してユーザが肯定的な反応をしたか否定的な反応をしたかに応じて、次の会話フレーズの発話権を付与するロボットを決定する。例えばユーザが肯定的な反応をした方のロボットに発話権を付与したり、ユーザが否定的な反応をしなかった方のロボットに発話権を付与する。この発話権の制御処理は、ロボット1、2のいずれに発話権を付与するかを示す発話権フラグ等を利用して実現できる。
【0194】
例えば図17(A)では、ロボット1の「部活が忙しいらしいよ」という会話フレーズに対して、父親は頭を撫でるという肯定的な反応をしている。従って、この場合には図17(B)に示すように、頭を撫でられた方(肯定的な反応をされた方)のロボット1に対して次の発話権を付与する。これにより発話権を付与されたロボット1は「もうすぐ地区大会だからね」という会話フレーズを発話する。即ちロボット1、2は例えば交互に発話するのが原則であり、この原則に従えば図17(B)ではロボット2の方に次の発話権が付与されるはずであるが、図17(B)では、父親により頭が撫でられたロボット1の方に次の発話権を付与している。なお図17(A)において、ロボット2が発話し、父親がロボット2の方の頭を叩くという否定的な反応をした場合に、ロボット1に発話権を付与するようにしてもよい。
【0195】
図18(A)では、ロボット2の「でも、なんだか機嫌が悪いんだ」という会話フレーズに対して、父親は頭を撫でるという肯定的な反応をしている。従って、この場合には図18(B)に示すように、頭を撫でられた方のロボット2に対して、原則通り次の発話権を付与する。これにより発話権を付与されたロボット2は「今日は3回も叩かれたんだ!まったく!」という会話フレーズを発話する。なお図18(A)において、ロボット1が発話し、父親がロボット1の方の頭を叩くという否定的な反応をした場合に、ロボット2に発話権を付与するようにしてもよい。
【0196】
例えばロボット1、2が常に交互に順番に会話するだけでは、ロボット1、2の掛け合いの会話がユーザにとって単調なものになってしまい、ユーザに直ぐに飽きられてしまう。
【0197】
これに対して図17(A)〜図18(B)の発話権制御手法を用いれば、ユーザの反応に応じて発話権の付与が様々に切り替わるため、会話が単調になるのを防止でき、ユーザが飽きにくいロボット間の会話を実現できる。
【0198】
シナリオデータ取得部18はシナリオデータの取得処理を行う。具体的には、シナリオデータ記憶部27からユーザ情報に対応したシナリオデータを読み出すことで、ロボットの会話に使用するシナリオデータを取得する。なお、ユーザ情報に基づき選択されたシナリオデータを、ネットワークを介してシナリオデータ記憶部27にダウンロードし、ダウンロードされたシナリオデータの中から、ロボットの会話に使用するシナリオデータを選択して読み出すようにしてもよい。
【0199】
そして本実施形態では、例えば図6(A)〜図6(C)で説明したように、ロボットが発話した会話フレーズに対する第2のユーザ(子供)の反応に基づいて、シナリオデータを作成し、シナリオデータ取得部18は、作成されたシナリオデータを取得する。そして提示情報決定部14は、取得されたシナリオデータに基づいて、ロボットが第1のユーザに対して発話する会話フレーズを決定する。
【0200】
このようにすれば、ロボットの会話フレーズに対する第2のユーザの反応に応じて、第1のユーザに提示するシナリオの内容が変化するようになり、多様で変化に富んだロボットの会話を実現できる。例えば図6(B)では、ロボット1の「部活が忙しいのかな」という発話に対して、子供がロボット1の頭を撫でるという肯定的な反応をしている。このため、図7(B)、図7(C)では、子供の部活の話題に関するシナリオ(会話フレーズ)が選択されて、父親に提示されるようになる。
【0201】
ユーザ情報更新部19は、ホーム環境でのユーザ情報の更新処理を行う。具体的には、ロボットとの会話等を介して、ユーザの行動、状態等をセンシングして、ユーザ情報をホーム環境において更に更新する。
【0202】
提示許可判断情報記憶部28は、ユーザ間での情報提示の許可・不許可を判断するための提示許可判断情報(提示許可判断フラグ)を記憶する。そして提示情報決定部14は、提示許可判断情報に基づいて、第1、第2のユーザ間での情報提示が許可されていると判断した場合に、第2のユーザ情報に基づく第1のユーザへの提示情報の決定処理を行う。
【0203】
図19に提示許可判断情報の一例を示す。例えば図19では、ユーザAとユーザBとの間では、情報提示は許可されているが、ユーザAとユーザC、Dとの間では、情報提示は不許可になっている。またユーザBとユーザEとの間では、情報提示は許可されているが、ユーザBとユーザC、Dとの間では、情報提示は不許可になっている。
【0204】
従って、例えばユーザAがロボットに接近した場合に、ユーザBのユーザ情報に基づく提示情報をユーザAに提示することは許可されるが、ユーザCのユーザ情報に基づく提示情報については、ユーザAに提示することは禁止される。
【0205】
例えば、家族の全てのメンバに対して、子供の情報の提示を許可してしまうことは、望ましくない場合がある。そこで、提示許可判断情報を用いて、子供の情報を父親に提示することについては許可する一方で、子供の情報を母親に提示することについては不許可にする。
【0206】
このようにすれば、ロボットは、父親がロボットに近づいた場合には、提示許可判断情報に基づいて、子供の情報の提示が許可されていると判断して、子供のユーザ情報に基づく情報提示を行うようになる。一方、ロボットは、母親がロボットに近づいた場合には、提示許可判断情報に基づいて、子供の情報の提示が禁止されていると判断して、子供のユーザ情報に基づく情報提示を行わないようにする。このようにすれば、必要なユーザに対してのみ、他のユーザの情報が提示されるようになり、プライバシーの侵害等の問題が発生するのを防止できる。
【0207】
次に本実施形態の詳細な動作について図20のフローチャートを用いて説明する。
【0208】
まず、図6(A)〜図6(C)で説明したように、ロボットが発話した会話フレーズに対する第2のユーザ(子供)の反応に基づき作成されるシナリオデータを取得する(ステップS31)。
【0209】
次に、ロボットにユーザが接近したか否かを判断する(ステップS32)。即ち、携帯型電子機器のクレードルへの接続の検出や、無線強度の検出等により、ロボットの利用可能イベントが発生したか否かを判断する。
【0210】
次に、ロボットに接近したユーザを識別する(ステップS33)。即ち画像認識や音声認識などに基づいてユーザを識別する。そして、識別されたユーザに対応付けられた提示許可判断情報を、提示許可判断情報記憶部28から読み出す(ステップS34)。
【0211】
次に、識別されたユーザは、提示許可判断情報により情報の提示が許可されている第1のユーザか否かを判断する(ステップS35)。例えば、子供である第2のユーザの情報の提示が、父親である第1のユーザに対してのみ許可されている場合には、ロボットに接近したユーザが、父親であるか否かを判断する。
【0212】
そして、第1のユーザであると判断した場合には、図7(A)〜図7(C)で説明したように、ステップS31で取得されたシナリオデータに基づいて、ロボット1、2に発話させる会話フレーズを決定する(ステップS36)。そしてロボット1、2に異なる会話フレーズを発話させるロボット制御を行う(ステップS37)。
【0213】
次に、ロボット1、2の発話に対する第1のユーザの反応をモニタする(ステップS38)。そして図17(A)〜図18(B)に示す手法により次の会話フレーズの発話権を決定する(ステップS39)。また第1のユーザの反応に基づいて、次にロボット1,2が発話する会話フレーズを決定する(ステップS40)。
【0214】
9.2 シナリオの具体例
次に、本実施形態で使用されるシナリオデータやその選択手法の具体例について説明する。
【0215】
図21に示すようにシナリオデータベース(シナリオDB)の各シナリオデータにはシナリオ番号(シナリオNo.)が付与されている。そしてシナリオ番号により特定されるシナリオデータは、複数のシナリオデータコードにより構成され、各シナリオデータコードにより各会話フレーズ(テキストデータ)が指定される。そして図21では、第2のユーザ情報により、シナリオ番号=0579のシナリオデータが選択されている。そしてシナリオ番号=0579のシナリオデータは、A01〜A06のシナリオデータコードにより構成される。ここでA01〜A06は、ロボットが順次発話する会話フレーズのコードである。そしてこのシナリオデータを使用することで、図3(A)〜図3(C)等で説明した、第2のユーザ情報に応じたロボットの会話が実現される。
【0216】
図22は、子供の話題を父親に提供するシナリオの例である。
【0217】
例えば、まずロボットが「坊ちゃん最近部活が忙しいみたいだね」と発話し、続いて「夏休みには旅行にも行きたいってさ〜」と発話する。この発話に対して父親がロボットを撫でた場合には、夏休みの旅行についての子供の要望に対して、父親は興味を持っていると、推定する。従って、この場合にはロボットは、やっぱり「夏は海かな〜だってさ」と発話して、子供との会話により得られた子供の要望を父親に伝える。そして、夏休みの旅行の話題に関する会話を続ける。
【0218】
一方、「夏休みには旅行にも行きたいってさ〜」という発話に対して父親が無反応であった場合には、その話題には父親は興味がないと推定し、ロボットは、話題を変えて例えば「勉強はボチボチかな〜」と発話する。この発話に対して父親がロボットを撫でた場合には、子供の勉強の様子について父親は興味を持っていると、推定する。従って、この場合にはロボットは、「今は部活が忙しいみたいだし・・・」と発話し、子供の勉強の話題に関する会話を続ける。
【0219】
このように図22では、ロボットが発話した会話フレーズに対する父親の反応に基づいて、次にロボットに発話させる会話フレーズを決定している。また父親の撫でる、叩くなどの反応を検知することで、どのような子供の話題に父親が興味を持っているかを、推定している。
【0220】
図23は、ロボット1、2の会話を通じて子供のユーザ情報を収集するシナリオの例である。
【0221】
また、ロボット1が子供に対して「今日は学校の帰りが遅かったね」と発話し、ロボット2が「最近遅い日が多いよね〜」と発話する。続いてロボット1が「部活が忙しいのかな?」と発話し、ロボット2が「どうせフラフラ遊び歩いているんじゃない?」と発話する。
【0222】
そして子供がロボット1の方を撫でた場合には、子供が部活で帰りが遅くなったと推定する。そしてこの場合には、発話権はロボット1に付与されて、ロボット1は、「そういえばもうすぐ地区大会だね」と発話する。そして部活の話題についての会話が続けられる。
【0223】
一方、子供がロボット2の方を叩いた場合には、ロボット2の方に発話権が付与されて、ロボット2は「いてっ!叩くことないじゃないか!!」と発話する。
【0224】
このように図23では、ロボット1、2の会話を通じて子供の第2のユーザ情報が収集されて、更新される。従って、子供が特に意識しなくても、子供の第2のユーザ情報を自然に取得できるようになる。
【0225】
図24は、図23で収集された第2のユーザ情報に基づいて、父親に提示されるシナリオの例である。
【0226】
まず、図23で収集された第2のユーザ情報に基づくシナリオにより、ロボット1が「坊ちゃん学校の帰りが遅かったんだよ」と発話し、ロボット2が「最近遅い日が多いみたいだね〜」と発話する。続いてロボット1が「部活が忙しいらしいよ」と発話し、ロボット2が「でも、なんだか機嫌が悪いんだ」と発話する。即ち、同じ第2のユーザ情報に対してロボット1、2が異なる会話フレーズを発話する。
【0227】
そして父親がロボット1の方を撫でると、父親が子供の部活の話題に興味があると推定し、ロボット1の方に発話権が付与されて、ロボット1が「もうすぐ地区大会だからね〜」と発話する。そして子供の部活の話題についての会話が続く。
【0228】
一方、父親がロボット2の方を撫でると、ロボット2の方に発話権が付与されて、ロボット2は「今日は3回も叩かれたんだよ!まったく!」と発話する。
【0229】
このように図24では、ロボット1、2の会話を通じて収集された子供の話題が、ロボット1、2の会話を通じて父親に提示される。従って、ロボット1、2を媒介とした間接的なコミュニケーション手段を提供できる。
【0230】
10.接触状態判定
次に、ロボットを叩く、撫でる等の動作の具体的な判定手法の一例について説明する。
【0231】
図25(A)はぬいぐるみ型のロボット500の例である。ロボット500の表面は、センシング面501として機能する。センシング面501よりも内側には、マイク502-1、502-2、502-3が設けられている。また、各マイク502-1、502-2、502-3からの出力信号を演算処理し、出力データを出力する信号処理部503が設けられている。
【0232】
図25(B)の機能ブロック図に示すように、マイク502-1、502-2…502-nからの出力信号は信号処理部503に入力される。信号処理部503は、ノイズ除去や信号増幅等を行って、アナログの出力信号を加工・変換する。そして信号強度等を計算して、デジタルの出力データとして出力する。接触状態判定部16は、例えばしきい値の比較処理、接触状態の分類等の処理を行う。
【0233】
例えば図26(A)、図26(B)、図26(C)は、センシング面501を叩いた時、センシング面501を撫でた時、マイクに向かって話かけた時の3パターンの音声波形例である。グラフの横軸は時間であり、縦軸は信号強度である。
【0234】
信号強度に着目すると、図26(A)の叩いた時と、図26(B)の撫でた時では信号強度が大きいことがわかる。また、叩いた時はその状態が一時的なものになるが、撫でた時はその状態が継続していることがわかる。また図26(C)に示すように例えば「あー」とかなり強めに発話した時の波形は、図26(A)の叩いた時、図26(B)の撫でた時に比べて信号強度が小さいことがわかる。
【0235】
これらの差異を利用したしきい値を設けることで、「叩き状態」、「撫で状態」、「いずれでもない状態」を検出することが可能となる。また複数のマイク502-1、502-2、502-3を用いることにより、1番強い信号が発生した場所を「叩かれた部位、撫でられた部位」として検出できるようになる。
【0236】
より具体的には、ロボット500の内部に埋め込まれたマイク502-1、502-2、502-3は、ロボット500のセンシング面501にユーザの手などが接触した場合に、ロボット500の内部を伝搬してくる音を検出して電気信号に変換する。
【0237】
信号処理部503は、マイク502-1、502-2、502-3からの出力信号(音声信号)のノイズ除去、信号増幅、A/D変換を行い、出力データを出力する。この出力データを絶対値に変換して一定時間蓄積することなどにより、信号強度を算出できる。そして算出された信号強度を、しきい値THと比較する。そしてしきい値THを超えていれば、「接触」が検出されたものと判定して、接触状態検出回数としてカウントする。そしてこの接触状態検出処理を所定時間、繰り返す。
【0238】
所定時間が経過した時点で、接触状態判定部16は、事前に設定しておいた条件と、前述の接触状態検出回数を比較して、例えば下述のような条件により、撫でられた状態、叩かれた状態を検出する。ここでは、撫でた場合には接触状態が継続するため接触状態検出回数も多くなるが、叩いた場合には接触状態検出回数は少なくなるという現象を利用して、撫でられた状態なのか、叩かれた状態なのかを検出する。
【0239】
検出状態 (検出回数/最大検出回数)×100(%)
撫で状態 25%以上
叩き状態 10%以上、25%未満
未検出状態 10%未満
このようにすることで、少なくとも1つのマイクを用いて「撫で状態」、「叩き状態」、「いずれでもない状態(未検出状態)」を判定できる。また複数のマイクを分散して埋め込み、各マイクの接触状態検出回数を比較することで、接触が発生した部位についても判定することが可能になる。
【0240】
11.第1、第2のユーザ情報に基づく提示情報の決定処理
本実施形態では、第1のユーザへの提示情報の決定処理を、例えば第1、第2のユーザ情報の両方を考慮して行う。具体的には、第1のユーザへの提示情報の決定処理における第1のユーザ情報の重み付けと第2のユーザ情報の重み付けとを、時間経過に伴い変化させる。
【0241】
例えば、第1のユーザ(父親)が帰宅したり、ロボットと接触すると、ロボット(ホームサブシステム)の利用可能イベントが発生する。具体的には、ウェアラブルセンサのGPSや、家のドアなどに付けられたセンサや、クレードルへの携帯型電子機器の接続などにより第1のユーザの帰宅が検出されたり、無線通信における無線強度やロボットの接触センサなどにより第1のユーザとロボットの接近が検出されると、図16のイベント判定部11が、第1のユーザによるロボットの利用可能イベントが発生したと判定する。即ちロボットの利用が可能な状態になったことを示す利用可能イベントが発生したと判定する。
【0242】
そして図27では、この利用可能イベント発生前の例えば第1のユーザの外出期間(ロボットの利用不可期間、ロボットと第1のユーザの非近接期間)を第1の期間T1とし、利用可能イベント発生後の例えば在宅期間(ロボットの利用可能期間、ロボットと第1のユーザの近接期間)を第2の期間T2としている。
【0243】
この第1の期間T1では、第1のユーザ(父親)の第1のユーザ情報や、第2のユーザ(子供)の第2のユーザ情報が取得(更新)される。例えば第1のユーザ情報(第1のユーザ履歴情報)は、第1の期間T1において、第1のユーザのウァアラブルセンサの行動センサ、状態センサ、環境センサを用いて第1のユーザの行動(歩行、発話、食事等)、状態(疲労、緊張、空腹、精神状態、肉体状態等)、又は環境(場所、明るさ、気温等)を計測することで、取得できる。具体的には携帯型電子機器100-1のユーザ情報更新部が、これらのセンサからのセンサ情報に基づいて、携帯型電子機器100-1のユーザ情報記憶部の第1のユーザ情報を更新することで、第1の期間T1での第1のユーザ情報が取得される。
【0244】
第2のユーザ(子供)の第2のユーザ情報も、同様に、第1の期間T1において、第2のユーザのウェラブルセンサを用いて、第2のユーザの行動、状態又は環境を計測することで、取得できる。具体的には携帯型電子機器100-2のユーザ情報更新部が、これらのセンサからのセンサ情報に基づいて、携帯型電子機器100-2のユーザ情報記憶部の第2のユーザ情報を更新することで、第1の期間T1での第2のユーザ情報が取得される。なお第2のユーザ情報は、図6(A)〜図6(C)で説明したようにロボットとの会話を介しても取得できる。
【0245】
そして、例えばロボット1の利用可能イベントが発生すると、第1の期間T1において更新された第1、第2のユーザ情報が、携帯型電子機器100-1、100-2のユーザ情報記憶部からロボット1のユーザ情報記憶部22(ユーザ履歴情報記憶部23)に転送される。これにより提示情報決定部14は、転送された第1、第2のユーザ情報に基づいて、ロボット1が第1のユーザに対して提示する提示情報の決定処理(シナリオの選択処理)を行うことが可能になる。
【0246】
なお、利用可能イベント発生後の第2の期間T2においても、ロボット搭載センサ34や他のセンサ(例えばウェアラブルセンサや、ホームに埋め込まれたホームセンサ等)を用いて、第1のユーザの行動、状態又は環境を計測することで、第1のユーザ情報を更新してもよい。
【0247】
図28に示すように、提示情報決定部14は、第1の期間T1(或いは第2の期間T2)などで取得された第1、第2のユーザ情報に基づいて、ロボット1が第1のユーザに対して提示する提示情報の決定処理を行う。具体的には、第1、第2のユーザ情報に基づいて、ロボット1が会話するシナリオの決定処理を行う。このようにすれば、帰宅した第1のユーザ(父親)に対して、第2のユーザ(子供)についての話題のみならず、外出先等での第1のユーザ自身の話題についても、第1のユーザに提供できるようになり、外出先での自身の行動等に関する気付きを与えることができる。
【0248】
更に具体的には提示情報決定部14は、提示情報の決定処理の際における第1のユーザ情報の重み付け(重み付け係数)と第2のユーザ情報の重み付けとを、時間経過に伴い変化させている。
【0249】
例えば図28では、ロボット1の利用可能イベントの発生時には(ユーザの帰宅時、帰宅時から所与の期間が経過するまでは)、決定処理における第1のユーザ情報の重み付けの方が第2のユーザ情報の重み付けに比べて大きくなっており、例えば、第1のユーザ情報の重み付けが1.0になり、第2のユーザ情報の重み付けが0になっている。
【0250】
そして重み付け変更期間TAにおいて、第1のユーザ情報の重み付けは小さくなる一方で、第2のユーザ情報の重み付けは大きくなり、重み付けの大きさが逆転する。そして、変更期間TAの後は、第2のユーザ情報の重み付けの方が第1のユーザ情報の重み付けに比べて大きくなっており、例えば第1のユーザ情報の重み付けが0になり、第2のユーザ情報の重み付けが1.0になっている。
【0251】
このように図28では、利用可能イベント発生時には、決定処理における第1のユーザ情報の重み付けを大きくし、第2のユーザ情報の重み付けを小さくし、その後、第1のユーザ情報の重み付けを小さくし、第2のユーザ情報の重み付けを大きくしている。具体的には、第2の期間T2では、提示情報の決定処理の際における第1のユーザ情報の重み付けを時間経過に伴い小さくし、第2のユーザ情報の重み付けを時間経過に伴い大きくしている。
【0252】
このようにすれば、第2の期間T1の前半期間では、ロボット1は、例えば外出期間である第1の期間T1での第1のユーザ(父親)の行動等に関連する話題を提供する。そして、その後、時間が経過すると、今度は、第2のユーザ(子供)の行動等に関連する話題を提供する。
【0253】
このようにすれば、第1のユーザは、帰宅した直後は自身に関する話題が提供され、その後、時間が経過して落ちついたところで、他の人である第2のユーザの話題が提供されるようになり、第1のユーザにとってより自然な話題の提供が可能になる。
【0254】
また、例えば第2のユーザがロボット1と自宅に一緒に居るときに、第1のユーザが帰宅した場合には、第2のユーザよりも第1のユーザの方に注目が集まることが予想される。従って、第1のユーザの帰宅直後では、第1のユーザに関する話題を中心に提示し、時間が経過して落ちついたところで、第1、第2のユーザに関する話題を満遍なく提供するようにする。
【0255】
なお重み付けの変化のさせ方は図28の手法に限定されない。例えば図28とは逆に、前半期間では第2のユーザ情報の重み付けの方を大きくし、その後、第1のユーザ情報の重み付けの方を大きくする変形実施も可能である。また、重み付けの変化のさせ方は、ロボット1等に予めプログラミングしておく構成にしてもよいし、ユーザが好みに応じて自由に切り替えられる構成にしてもよい。
【0256】
また第2の期間T2においても第1のユーザ情報を取得(更新)する場合には、提示情報の決定処理の際に、第1の期間T1で取得された第1のユーザ情報の重み付けと、第2の期間T2で取得された第1のユーザ情報の重み付けについても、時間経過に伴い変化させてもよい。例えばロボット1の利用可能イベントの発生直後では、第1の期間T1で取得された第1のユーザ情報の重み付けを大きくし、時間が経過するにつれて、第2の期間T2で取得された第1のユーザ情報の重み付けを大きくする。
【0257】
また、提示情報の決定処理の際のユーザ情報の重み付けの一例としては、ユーザ情報で選択されるシナリオの選択確率がある。具体的には、第1のユーザ情報の重み付けを大きくする場合には、第2のユーザ情報よりも第1のユーザ情報の方のシナリオが選択されるようにする。具体的には、第1のユーザ情報に対応するシナリオの選択確率を大きくする。一方、第2のユーザ情報の重み付けを大きくする場合には、第1のユーザ情報よりも第2のユーザ情報の方のシナリオが選択されるようにする。具体的には、第2のユーザ情報に対応するシナリオの選択確率を大きくする。
【0258】
例えば図28において、第2の期間T2の前半では、第1のユーザ情報の重み付けが大きいため、第1のユーザ情報用のシナリオの選択確率が高くなる。これにより、前半期間では、ロボット1は、第1のユーザのその日の行動等に関する会話を行うようになる。一方、第2の期間T2の後半では、第2のユーザ情報の重み付けが大きいため、第2のユーザ情報用のシナリオの選択確率が高くなる。これにより、後半期間では、ロボット1は、第2のユーザのその日の行動等に関する会話を行うようになる。このようにすれば、時間経過に伴い、提供するシナリオの話題を徐々に変化させることができ、より自然で多様なロボットの会話を実現できる。
【0259】
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。またロボット制御システムやロボットの構成、動作も本実施形態で説明したものに限定に限定されず、種々の変形実施が可能である。
【図面の簡単な説明】
【0260】
【図1】ユーザ情報の取得手法の説明図
【図2】本実施形態のシステム構成例。
【図3】図3(A)〜図3(C)は本実施形態の手法の説明図。
【図4】本実施形態の動作を説明するためのフローチャート。
【図5】ロボットが複数台である場合の本実施形態の第2のシステム構成例。
【図6】図6(A)〜図6(C)は第2のユーザ情報の取得手法の説明図。
【図7】図7(A)〜図7(C)は第1のユーザへの情報提示手法の説明図。
【図8】第2のシステム構成の動作を説明するためのフローチャート。
【図9】本実施形態の第3のシステム構成例。
【図10】ネットワークを介した第2のユーザ情報の取得手法の説明図。
【図11】本実施形態の第4のシステム構成例。
【図12】本実施形態の第5のシステム構成例。
【図13】ユーザ履歴情報の更新処理のフローチャート。
【図14】ユーザ履歴情報の説明図。
【図15】図15(A)、図15(B)はユーザ履歴情報の説明図。
【図16】本実施形態の詳細なシステム構成例。
【図17】図17(A)、図17(B)は発話権の制御手法の説明図。
【図18】図18(A)、図18(B)は発話権の制御手法の説明図。
【図19】提示許可判断情報の説明図。
【図20】本実施形態の詳細な動作を説明するためのフローチャート。
【図21】シナリオデータの説明図。
【図22】子供の話題を父親に提供するシナリオの例。
【図23】子供のユーザ情報収集に使用されるシナリオ例。
【図24】収集された第2のユーザ情報に基づき父親に提示されるシナリオ例。
【図25】図25(A)、図25(B)は接触判定手法の説明図。
【図26】図26(A)、図26(B)、図26(C)は、叩いた時、撫でた時、マイクに向かって話かけた時の音声波形例。
【図27】第1、第2のユーザ情報に基づく提示情報の決定手法の説明図。
【図28】第1、第2のユーザ情報に基づく提示情報の決定処理の説明図。
【符号の説明】
【0261】
1、2 ロボット、10 処理部、11 イベント判定部、12 ユーザ情報取得部、
13 演算部、14 提示情報決定部、15 ユーザ認識部、16 接触状態判定部、
17 発話権制御部、18 シナリオデータ取得部、20 記憶部、
22 ユーザ情報記憶部、23 ユーザ履歴情報記憶部、26 提示情報記憶部、
27 シナリオデータ記憶部、28 提示許可判断情報記憶部、30 ロボット制御部、
32 ロボット動作機構、34 ロボット搭載センサ、40 通信部、
60 処理部、62 ユーザ情報取得部、63 演算部、64 提示情報決定部、
70 記憶部、72 ユーザ情報記憶部、73 ユーザ履歴情報記憶部、
76 提示情報記憶部、80 ロボット制御部、82 ロボット動作機構、
84 ロボット搭載センサ、90 通信部、
100-1、100-2 携帯型電子機器、110-1、110-2 処理部、
112-1、112-2 演算部、114-1、114-2 ユーザ情報更新部、
120-1、120-2 記憶部、122-1、122-2 ユーザ情報記憶部、
130-1、130-2 制御部、138-1、138-2 通信部、
140-1、140-2 ウェアラブルディスプレイ、
150-1、150-2 ウェアラブルセンサ、200 ホームサーバ(ローカルサーバ)、
210 処理部、212 ユーザ情報取得部、213 演算部、
214 提示情報決定部、220 記憶部、
222 ユーザ情報記憶部、223 ユーザ履歴情報記憶部、
226 提示情報記憶部、300 外部サーバ
【技術分野】
【0001】
本発明は、ロボット制御システム、ロボット、プログラム及び情報記憶媒体に関係する。
【背景技術】
【0002】
従来より、ユーザ(人間)の音声を認識し、音声の認識結果に基づいて、ユーザとの会話を行うロボットの制御システムが知られている(例えば、特許文献1。)。
【0003】
しかしながら、これまでのロボット制御システムでは、ロボットは、その所有者のユーザの会話等を音声認識して動作することが想定されており、他のユーザの行動等を反映したロボット制御は行われていなかった。
【0004】
また、これまでのロボット制御システムでは、ユーザの行動履歴や状態履歴等を反映したロボット制御は行われておらず、ロボットが、ユーザの心境や状況に反した動作を行ってしまうという問題があった。
【0005】
更に、これまでのロボット制御システムでは、1人のユーザに対して1台のロボットが対峙して会話することが想定されていた。このため、音声の認識処理や会話処理のために複雑なアルゴリズムが必要になってしまい、ユーザとの間のスムーズな会話を実現することが、現実的には難しいという問題もあった。
【0006】
【特許文献1】特開2003−66986号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
本発明は、以上のような課題等に鑑みてなされたものであり、本発明の幾つかの態様によれば、ロボットを介したユーザ間の間接的なコミュニケーションを実現できるロボット制御システム、ロボット、プログラム及び情報記憶媒体を提供する。
【課題を解決するための手段】
【0008】
本発明は、ロボットを制御するためのロボット制御システムであって、ユーザの行動を計測する行動センサ、ユーザの状態を計測する状態センサ及びユーザの環境を計測する環境センサの少なくとも1つからのセンサ情報により得られるユーザ情報を取得するユーザ情報取得部と、取得された前記ユーザ情報に基づいて、ロボットがユーザに対して提示する提示情報の決定処理を行う提示情報決定部と、前記提示情報をユーザに対してロボットに提示させるための制御を行うロボット制御部とを含み、前記ユーザ情報取得部は、第2のユーザの前記ユーザ情報である第2のユーザ情報を取得し、前記提示情報決定部は、取得された前記第2のユーザ情報に基づいて、第1のユーザへの提示情報の決定処理を行い、前記ロボット制御部は、前記第2のユーザ情報に基づき決定された提示情報を、前記第1のユーザに提示するためのロボット制御を行うロボット制御システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
【0009】
本発明によれば、行動センサ、状態センサ及び環境センサの少なくとも1つからのセンサ情報により得られるユーザ情報が取得される。そして取得されたユーザ情報に基づいて、ロボットがユーザに提示する提示情報の決定処理が行われ、提示情報をロボットに提示させるための制御が行われる。そして本発明によれば、取得された第2のユーザの第2のユーザ情報に基づいて、第1のユーザへの提示情報の決定処理が行われ、決定された提示情報を第1のユーザに提示するロボット制御が行われる。このように本発明によれば、第1のユーザとは異なる第2のユーザの第2のユーザ情報に基づいて、ロボットが第1のユーザに対して提示する提示情報が決定される。従って、第1のユーザは、ロボットの提示情報により、第2のユーザの行動、状況等の情報を知ることが可能になり、ロボットを介したユーザ間の間接的なコミュニケーションを実現できる。
また本発明では、前記ユーザ情報取得部は、前記第1のユーザの前記ユーザ情報である第1のユーザ情報と、前記第2のユーザの前記ユーザ情報である前記第2のユーザ情報を取得し、前記提示情報決定部は、取得された前記第1のユーザ情報と前記第2のユーザ情報とに基づいて、前記第1のユーザへの提示情報の決定処理を行ってもよい。
【0010】
このようにすれば、第1のユーザの第1のユーザ情報も加味した、第1のユーザへの第2のユーザ情報に基づく提示情報の提示が可能になる。
【0011】
また本発明では、前記提示情報決定部は、前記第1のユーザ情報に基づいて提示情報の提示タイミングを決定し、前記第2のユーザ情報に基づいて提示情報の内容を決定し、前記ロボット制御部は、決定された前記提示タイミングで、決定された内容の提示情報を、前記第1のユーザに提示するためのロボット制御を行ってもよい。
【0012】
このようにすれば、第1のユーザにとって適切なタイミングで、第2のユーザの情報を知らせることが可能になり、より自然でスムーズな情報提示が可能になる。
【0013】
また本発明では、前記提示情報決定部は、前記第1のユーザへの提示情報の決定処理における前記第1のユーザ情報の重み付けと前記第2のユーザ情報の重み付けとを、時間経過に伴い変化させてもよい。
【0014】
このようにすれば、第1のユーザへの情報提示の際に、第2のユーザ情報のみならず第1のユーザ情報をも加味した情報提示が可能になると共に、その加味の度合いを決める重み付けが時間経過に伴い変化するため、より多様で自然な情報提示が可能になる。
【0015】
また本発明では、前記第1のユーザによるロボットの利用が可能な状態になったことを示す利用可能イベントの発生を判定するイベント判定部を含み、前記提示情報決定部は、前記利用可能イベント発生時には、前記決定処理における前記第1のユーザ情報の重み付けを大きくし、前記第2のユーザ情報の重み付けを小さくし、その後、前記第1のユーザ情報の重み付けを小さくし、前記第2のユーザ情報の重み付けを大きくしてもよい。
【0016】
このようにすれば、ロボットの利用可能イベントの発生時からの時間経過に応じて、提示情報の決定処理の際における第2のユーザ情報の重み付けが大きくなるため、より自然な情報提示が可能になる。
【0017】
また本発明では、前記提示情報決定部は、ロボットによる提示情報の提示に対する前記第1のユーザの反応に基づいて、ロボットが前記第1のユーザに対して次に提示する提示情報の決定処理を行ってもよい。
【0018】
このようにすれば、提示情報に対する第1のユーザの反応に基づいて、次の提示情報が変化するようになり、ロボットによる提示情報の提示が単調になってしまう事態を防止できる。
【0019】
また本発明では、ロボットのセンシング面における接触状態を判定する接触状態判定部を含み、前記提示情報決定部は、ロボットによる提示情報の提示に対する前記第1のユーザの反応として、前記第1のユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを、前記接触状態判定部での判定結果に基づき判断して、前記第1のユーザに対して次に提示する提示情報の決定処理を行ってもよい。
【0020】
このようにすれば、ロボットを撫でる動作や叩く動作などの第1のユーザの反応を、簡素な判定処理で判断できるようになる。
【0021】
また本発明では、前記接触状態判定部は、前記センシング面よりも内側に設けられたマイクからの出力信号に対して演算処理を行うことで得られた出力データに基づいて、前記センシング面における接触状態を判定してもよい。
【0022】
このようにすれば、マイクを利用するだけで、ロボットを撫でる動作や叩く動作などの第1のユーザの反応を検出できるようになる。
【0023】
また本発明では、前記出力データは、信号強度であり、前記接触状態判定部は、前記信号強度と、所定のしきい値との比較処理を行うことで、前記第1のユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを判定してもよい。
【0024】
このようにすれば、信号強度としきい値を比較するという簡素な処理で、第1のユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを判定できる。
【0025】
また本発明では、前記提示情報決定部は、取得された同じ前記第2のユーザ情報に対して、第1、第2のロボットが異なる提示情報を提示するように、前記第1のユーザに対して提示する提示情報の決定処理を行ってもよい。
【0026】
このようにすれば、第1、第2のロボットが提示する提示情報を介して、第1のユーザは、第2のユーザの情報を間接的に知ることが可能になる。
【0027】
また本発明では、前記第1のロボットはマスタ側に設定され、前記第2のロボットはスレーブ側に設定され、マスタ側の前記第1のロボットに設けられた前記提示情報決定部が、スレーブ側の前記第2のロボットに対して、前記第1のユーザへの提示情報の提示を指示してもよい。
【0028】
このようにすれば、複雑な提示情報の解析処理を行わなくても、第1、第2のロボットによる提示情報の提示を、誤動作の少ない安定した制御の下で実現できる。
【0029】
また本発明では、提示情報の提示を指示する指示情報を、マスタ側の前記第1のロボットからスレーブ側の前記第2のロボットに対して通信する通信部を含んでもよい。
【0030】
このようにすれば、提示情報そのものではなくて、その指示情報を通信するだけで済むため、通信データ量の低減や、処理の簡素化を図れる。
【0031】
また本発明では、前記ユーザ情報取得部は、前記第2のユーザの前記第2のユーザ情報を、ネットワークを介して取得し、前記提示情報決定部は、ネットワークを介して取得された前記第2のユーザ情報に基づいて、前記第1のユーザに提示する提示情報の決定処理を行ってもよい。
【0032】
このようにすれば、例えば第2のユーザが離れた場所にいる場合にも、第2のユーザの情報を反映したロボット制御を実現できる。
【0033】
また本発明では、前記ユーザ情報取得部は、前記第2のユーザ情報として、前記第2のユーザの行動履歴、前記第2のユーザの状態履歴及び前記第2のユーザの環境履歴の少なくとも1つである第2のユーザ履歴情報を取得し、前記提示情報決定部は、取得された前記第2のユーザ履歴情報に基づいて、ロボットが前記第1のユーザに対して提示する提示情報の決定処理を行ってもよい。
【0034】
このようにすれば、第2のユーザの行動履歴、状態履歴又は環境履歴等が反映された提示情報を、ロボットにより提示できるようになる。
【0035】
また本発明では、前記第2のユーザ履歴情報は、前記第2のユーザのウェアラブルセンサからのセンサ情報により更新することで得られる情報であってもよい。
【0036】
このようにすれば、ウァアラブルセンサからのセンサ情報により第2のユーザの行動履歴、状態履歴又は環境履歴を更新し、更新されたこれらの履歴が反映された提示情報を、ロボットにより提示できるようになる。
【0037】
また本発明では、ロボットに対してユーザが接近した場合に、接近したユーザを識別するユーザ識別部を含み、前記ロボット制御部は、前記第1のユーザが接近したと前記ユーザ識別部により識別された場合に、前記第1のユーザに提示情報を提示するためのロボット制御を行ってもよい。
【0038】
このようにすれば、第1のユーザがロボットに接近して第1のユーザとして識別されたときに、第2のユーザ情報に基づく提示情報を、第1のユーザに提示できるようになる。
【0039】
また本発明では、ユーザ間での情報提示の許可・不許可を判断するための提示許可判断情報を記憶する提示許可判断情報記憶部を含み、前記提示情報決定部は、前記提示許可判断情報に基づいて、前記第1、第2のユーザ間での情報提示が許可されていると判断した場合に、前記第2のユーザ情報に基づく前記第1のユーザへの提示情報の決定処理を行ってもよい。
【0040】
このようにすれば、特定のユーザ間でのみ、ロボットを介した間接的なコミュニケーションを許可することが可能になる。
【0041】
また本発明では、複数の会話フレーズにより構成されるシナリオデータを、前記提示情報として記憶するシナリオデータ記憶部を含み、前記提示情報決定部は、前記シナリオデータに基づいて、ロボットが前記第1のユーザに対して発話する会話フレーズを決定し、前記ロボット制御部は、決定された会話フレーズをロボットに発話させるための制御を行ってもよい。
【0042】
このようにすれば、ロボットの会話フレーズの発話を、シナリオデータを利用して簡素な制御処理で実現できる。
【0043】
また本発明では、前記シナリオデータ記憶部は、複数の会話フレーズが分岐構造でリンクされたシナリオデータを記憶し、前記提示情報決定部は、ロボットが発話した会話フレーズに対する前記第1のユーザの反応に基づいて、次にロボットに発話させる会話フレーズを決定してもよい。
【0044】
このようにすれば、ロボットが発話した会話フレーズに対する第1のユーザの反応に基づいて、次の会話フレーズが変化するようになり、ロボットによる会話が単調になってしまう事態を防止できる。
【0045】
また本発明では、ロボットが発話した会話フレーズに対する前記第2のユーザの反応に基づき作成されるシナリオデータを取得するシナリオデータ取得部を含み、前記提示情報決定部は、前記第2のユーザの反応により取得されたシナリオデータに基づいて、ロボットが前記第1のユーザに対して発話する会話フレーズを決定してもよい。
【0046】
このようにすれば、ロボットの会話フレーズに対する第2のユーザの反応を反映したシナリオデータに基づいて、ロボットが第1のユーザに発話する会話フレーズを決定できるようになる。
【0047】
また本発明では、前記提示情報決定部は、取得された同じ前記第2のユーザ情報に対して、第1、第2のロボットが異なる会話フレーズを発話するように、前記第1のユーザに対して発話する会話フレーズの決定処理を行い、ロボットが発話した会話フレーズに対する前記第1のユーザの反応に基づいて、前記第1、第2のロボットのいずれに対して次の会話フレーズの発話権を付与するかを制御する発話権制御部を含んでもよい。
【0048】
このようにすれば、第1のユーザの反応に応じて発話権の付与が切り替わるようになるため、会話が単調になってしまう事態を防止できる。
【0049】
また本発明では、前記発話権制御部は、前記第1、第2のロボットのいずれか一方のロボットが発話した会話フレーズに対して前記第1のユーザが肯定的な反応をしたか否定的な反応をしたかに応じて、次の会話フレーズの発話権を付与するロボットを決定してもよい。
【0050】
このようにすれば、例えば第1のユーザが肯定的な反応をしたロボットに対して、優先的に発話権を付与するなどの制御が可能になる。
【0051】
また本発明は、上記のいずれかに記載のロボット制御システムと、前記ロボット制御システムの制御対象であるロボット動作機構とを含むロボットに関係する。
【発明を実施するための最良の形態】
【0052】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0053】
1.ユーザ情報
いわゆるユビキタスサービスにおいて、現在目指している1つ方向として、何時でもどこでも必要な情報をユーザに提供するという利便性提供型のサービスが提案されている。これは、外部からユーザに対して一方的に情報を提供するサービスである。
【0054】
しかしながら、人が生き生きと充実した生活を送るためには、このように外部からユーザに一方的に情報を提供する利便性提供型サービスだけでは不十分であり、ユーザの内面に働きかけることによりユーザに気付き(インスパイヤ)を与え、その結果、自己の成長を促すインスパイヤ型ユビキタスサービスが望まれる。
【0055】
本実施形態では、このようなインスパイヤ型ユビキタスサービスを、ロボットがユーザに提示する情報を利用して実現するために、ユーザ(第1、第2のユーザ)の行動、状態、環境を計測する行動センサ、状態センサ、環境センサからのセンサ情報によりユーザ情報(第1、第2のユーザ情報)を取得する。そして取得されたユーザ情報に基づいて、ロボットがユーザに対して提示する提示情報(例えば会話)を決定し、決定された提示情報をロボットに提供させるロボット制御を行う。そこで、まず、このユーザ情報(ユーザの行動、状態及び環境の少なくとも1つについての情報)の取得手法について説明する。
【0056】
図1においてユーザ(使用者)は、携帯型電子機器100(モバイルゲートウェイ)を所持している。またモバイル制御対象機器としてウェアラブルディスプレイ140(モバイルディスプレイ)を頭部の一方の眼の近傍に装着している。更にウェアラブルセンサ(モバイルセンサ)として種々のセンサを身体に身につけている。具体的には、屋内外センサ510、周囲温度センサ511、周辺湿度センサ512、周辺光度センサ513、腕装着型の運動計測センサ520、脈拍(心拍数)センサ521、体温センサ522、抹消皮膚温度センサ523、発汗センサ524、足圧力センサ530、発話・咀嚼センサ540、携帯型電子機器100に設けられるGPS(Global Position System)センサ550、ウェアラブルディスプレイ140に設けられる顔色センサ560や瞳孔の大きさセンサ561などを装着している。これらの携帯型電子機器100、ウェアラブルディスプレイ140などのモバイル制御対象機器、ウェアラブルセンサによりモバイルサブシステムが構成される。
【0057】
図1では、このようなユーザのモバイルサブシステムのセンサからのセンサ情報により更新されるユーザ情報(狭義にはユーザ履歴情報)を取得し、取得されたユーザ情報に基づいてロボット1の制御を行う。
【0058】
携帯型電子機器100(モバイルゲートウェイ)は、PDA(Personal Digital Assistant)、ノート型PCなどの携帯情報端末であり、例えばプロセッサ(CPU)、メモリ、操作パネル、通信装置、或いはディスプレイ(サブディスプレイ)などを備える。この携帯型電子機器100は、例えばセンサからのセンサ情報を収集する機能、収集したセンサ情報に基づいて演算処理を行う機能、演算結果に基づいて制御対象機器(ウェアラブルディスプレイ等)の制御(表示制御等)を行ったり外部のデータベースから情報を取り込む機能、外部と通信を行う機能などを有することができる。なお携帯型電子機器100は、携帯電話、腕時計、或いはポータブルオーディオなどとして兼用される機器であってもよい。
【0059】
ウェアラブルディスプレイ140は、ユーザの一方の眼の近傍に装着されると共にディスプレイ部の大きさが瞳孔の大きさよりも小さくなるように設定され、いわゆるシースルービューアの情報表示部として機能する。なおユーザへの情報提示は、ヘッドフォン、バイブレータなどを用いて行ってもよい。またモバイル制御対象機器としては、ウェアラブルディスプレイ140以外にも、例えば腕時計、携帯電話、或いはポータブルオーディオなどの種々の機器を想定できる。
【0060】
屋内外センサ510は、ユーザが屋内にいるのか屋外にいるのかを検知するセンサであり、例えば超音波を照射し、天井等により超音波が反射して戻ってくるまでの時間を計測する。但し屋内外センサ510は、超音波方式に限らず、アクティブ光方式、パッシブ紫外線方式、パッシブ赤外線方式、パッシブ騒音方式のセンサであってもよい。
【0061】
周囲温度センサ511は、例えばサーミスタ、放射温度計、熱電対などを用いて外界温度を計測する。周辺湿度センサ512は、例えば湿度によって電気抵抗が変化することを利用して周囲の湿度を計測する。周辺光度センサ513は、例えば光電素子を用いて周囲の光度を計測する。
【0062】
腕装着型の運動計測センサ520は、加速度センサや角加速度センサでユーザの腕の動きを計測する。この運動計測センサ520と足圧力センサ530を用いることでユーザの日常動作、歩行状態を更に正確に計測できる。脈拍(心拍数)センサ521は、手首或いは指又は耳に装着し、例えば拍動に伴う血流の変化を赤外光の透過率や反射率の変化で計測する。体温センサ522、抹消皮膚温度センサ523は、サーミスタ、放射温度計、熱電対などを用いてユーザの体温、抹消皮膚温度を計測する。発汗センサ524は、例えば皮膚の表面抵抗の変化により皮膚の発汗を計測する。足圧力センサ530は、靴にかかる足裏の圧力分布を検出して、ユーザの立ち状態、座り状態、歩行状態などを計測、判定する。
【0063】
発話・咀嚼センサ540は、ユーザが発話中(会話中)であるか、咀嚼中(食事中)であるかの可能性を計測するためのイヤホン型のセンサであり、その筺体内に骨伝導マイク、外界音マイクが内蔵されている。骨伝導マイクは、発話・咀嚼時に体内から生じ、体内を伝搬する振動である体内音を検出する。外界音マイクは、発話に応じて体外に伝導する振動である音声や、環境の雑音を含む外界音を検出する。そして骨伝導マイク、外界音マイクにより捕らえられた音の単位時間におけるパワーの比較処理等を行うことで、発話可能性や咀嚼可能性を計測する。
【0064】
GPSセンサ550はユーザの位置を検知するセンサである。なおGPSセンサ550の代わりに携帯電話の位置情報サービスや周辺にある無線LANの位置情報を利用してもよい。顔色センサ560は、例えば顔面近くに光センサを配置し、複数の光学的バンドパスフィルタを通過した後の光度を比較して顔色を計測する。瞳孔の大きさセンサ561は、例えば瞳孔の近くにカメラを配置し、カメラの信号を解析して瞳孔の大きさを計測する。
【0065】
なお、図1では携帯型電子機器100、ウェアラブルセンサ等により構成されるモバイルサブシステムにより、ユーザ情報を取得しているが、複数のサブシステムにより構成される統合システムにより、ユーザ情報を更新し、更新されたユーザ情報に基づいてロボット1の制御を行ってもよい。ここで統合システムは、例えばモバイルサブシステム、ホームサブシステム、車内サブシステム、会社内サブシステム、或いは店内サブシステムなどのサブシステムを含むことができる。
【0066】
この統合システムでは、ユーザが屋外等にいる場合(モバイル環境の場合)には、モバイルサブシステムのウェアラブルセンサ(モバイルセンサ)からのセンサ情報(センサ2次情報を含む)が取得(収集)され、取得されたセンサ情報に基づいてユーザ情報(ユーザ履歴情報)が更新される。またユーザ情報等に基づいてモバイル制御対象機器の制御が行われる。
【0067】
一方、ユーザが家にいる場合(ホーム環境の場合)には、ホームサブシステムのホームセンサからのセンサ情報が取得され、取得されたセンサ情報に基づいてユーザ情報が更新される。即ちモバイル環境で更新されたユーザ情報が、ホーム環境に移行した場合にもシームレスに更新される。またユーザ情報等に基づいてホーム制御対象機器(テレビ、オーディオ機器、エアコン等)の制御が行われる。なおホームセンサは、例えば、ホーム内の気温、湿度、光度、騒音、ユーザの会話、食事などを計測する環境センサや、ロボットに内蔵されるロボット搭載センサや、ホームの各室内、ドアなどに設置される人検知センサや、トイレに設置される尿検査用センサなどである。
【0068】
また、ユーザが車内にいる場合(車内環境の場合)には、車内サブシステムの車内センサからのセンサ情報が取得され、取得されたセンサ情報に基づいてユーザ情報が更新される。即ちモバイル環境やホーム環境で更新されたユーザ情報が、車内環境に移行した場合にもシームレスに更新される。またユーザ情報等に基づいて車内制御対象機器(ナビゲーション装置、カーAV機器、エアコン等)の制御が行われる。なお車内センサは、車の速度、移動距離などを計測する走行状態センサや、ユーザの運転操作、機器操作を計測する操作状態センサや、車内の気温、湿度、光度、ユーザの会話などを計測する環境センサなどである。
【0069】
2.ロボット
次に図1のロボット1(ロボット2)の構成について説明する。このロボット1は犬を模したペット型のロボットになっており、胴体モジュール600、頭部モジュール610、脚部モジュール620、622、624、626、尻尾モジュール630などの複数のパーツモジュール(ロボット動作機構)により構成される。
【0070】
頭部モジュール610には、ユーザの撫でる動作や叩く動作を検知するための接触センサや、ユーザの発話を検知するための発話センサ(マイクロホン)や、画像認識のための撮像センサ(カメラ)や、音声や鳴き声を発声するための音出力部(スピーカ)が設けられる。
【0071】
胴体モジュール600と頭部モジュール610との間や、胴体モジュール600と尻尾モジュール630との間や、脚部モジュール620の関節部分等には、関節機構が設けられている。そしてこれらの関節機構は、モータ等のアクチュエータを有しており、これによりロボット1の関節運動や自立走行が実現される。
【0072】
またロボット1の例えば胴体モジュール600には1又は複数の回路基板が設けられている。そしてこの回路基板には、各種処理を行うCPU(プロセッサ)や、各種データ、プログラムを記憶するROM、RAMなどのメモリや、ロボット制御のための制御ICや、音声信号を生成する音声生成モジュールや、外部との無線通信のための無線モジュールなどが実装される。ロボットに搭載される各種センサからの信号は、この回路基板に集約され、CPU等により処理される。また音声生成モジュールにより生成された音声信号は、この回路基板から音出力部(スピーカ)に対して出力される。また回路基板の制御ICからの制御信号は、関節機構に設けられたモータ等のアクチュエータに出力され、これによりロボット1の関節運動や自立走行が制御される。
【0073】
3.ロボット制御システム
図2に本実施形態のシステム構成例を示す。このシステムは、第1のユーザが所持する携帯型電子機器100-1や、第2のユーザが所持する携帯型電子機器100-2や、本実施形態のロボット制御システムにより制御されるロボット1を有する。そして本実施形態のロボット制御システムは、例えばロボット1が有する処理部10により実現される。
【0074】
なお、第1のユーザとしては、例えばロボット1の所有者を想定でき、第2のユーザとしては、所有者の家族、友人、親戚又は恋人等を想定できる。或いは第1、第2のユーザは、ロボット1を共有する所有者であってもよい。
【0075】
第1のユーザが所持する携帯型電子機器100-1は、処理部110-1、記憶部120-1、制御部130-1、通信部138-1を含む。また第2のユーザが所持する携帯型電子機器100- 2は、処理部110-2、記憶部120-2、制御部130-2、通信部138-2を含む。
【0076】
なお、以下では、説明を簡素化するために、これらの携帯型電子機器100-1、100-2、処理部110-1、110-2、記憶部120-1、120-2、制御部130-1、130-2、通信部138-1、138-2等を、各々、適宜、携帯型電子機器100、処理部110、記憶部120、制御部130、通信部138と総称する。また第1、第2のユーザ、第1、第2のユーザ情報、第1、第2のユーザ履歴情報も、各々、適宜、ユーザ、ユーザ情報、ユーザ履歴情報と総称する。
【0077】
携帯型電子機器100(100-1、100-2)は、ウェアラブルセンサ150(150-1、150-2)からのセンサ情報を取得する。具体的には、ウェアラブルセンサ150は、ユーザ(第1、第2のユーザ)の行動(歩行、会話、食事、手足の動き、感情表現又は睡眠等)を計測する行動センサ、ユーザの状態(疲労、緊張、空腹、精神状態、身体状態又はユーザに発生したイベント等)を計測する状態センサ、及びユーザの環境(場所、明るさ、気温又は湿度等)を計測する環境センサの少なくとも1つのセンサを含んでおり、携帯型電子機器100は、これらのセンサからのセンサ情報を取得する。
【0078】
なおセンサは、センサデバイス自体であってもよいし、センサデバイスの他に、制御部や通信部等を含むセンサ機器であってもよい。またセンサ情報は、センサから直接得られるセンサ1次情報であってもよいし、センサ1次情報を加工処理(情報処理)することで得られるセンサ2次情報であってもよい。
【0079】
処理部110(110-1、110-2)は、図示しない操作部からの操作情報や、ウェアラブルセンサ150から取得されたセンサ情報などに基づいて、携帯型電子機器100の動作等に必要な種々の処理を行う。この処理部110の機能は、各種プロセッサ(CPU等)、ASIC(ゲートアレイ等)などのハードウェアや、図示しない情報記憶媒体(光ディスク、ICカード、HDD等)に記憶されたプログラムなどにより実現できる。
【0080】
処理部110は、演算部112(112-1、112-2)、ユーザ情報更新部114(114-1、114-2)を含む。ここで演算部112は、ウェアラブルセンサ150から取得されたセンサ情報のフィルタリング処理(選択処理)や解析処理のための種々の演算処理を行う。具体的には演算部112は、センサ情報の乗算処理や加算処理を行う。例えば下式(1)に示すように、複数のセンサからの複数のセンサ情報のデジタル化された計測値Xjと、各係数が係数記憶部(図示せず)に記憶され、2次元行列(マトリックス)で表される係数Aijとの積和演算を行う。そうして下式(2)に示すように、積和演算の結果を多次元座標としてn次元のベクトルYiとして演算する。なお、iはn次元空間のi座標であり、jは各センサに割り当てられる番号である。
【0081】
【数1】
【0082】
【数2】
【0083】
上式(1)(2)のような演算処理を行うことで、取得されたセンサ情報の中から不要なセンサ情報を除去するフィルタリング処理や、ユーザの行動、状態、環境(TPO情報)をセンサ情報に基づき同定するための解析処理などを実現できる。例えば脈拍(心拍数)、発汗量、体温の計測値Xに対して乗算される係数Aを、その他のセンサ情報の計測値に対する係数よりも大きな値に設定すれば、上式(1)(2)で演算された数値Yは、ユーザの状態である「興奮度」を表すものになる。また発話量の計測値Xに対して乗算される係数と、足圧力の計測値Xに対して乗算される係数を適当な値に設定することで、ユーザの行動が、着座して会話しているのか、歩きながら会話しているのか、静かに思考しているのか、睡眠状態なのか等を同定できる。
【0084】
ユーザ情報更新部114(114-1、114-2)はユーザ情報(ユーザ履歴情報)の更新処理を行う。具体的には、ウェアラブルセンサ150(150-1、150-2)から取得されたセンサ情報に基づいてユーザ情報(第1、第2のユーザ情報)を更新する。そして更新されたユーザ情報(ユーザ履歴情報)を記憶部120のユーザ情報記憶部122(ユーザ履歴情報記憶部)に記憶する。この場合に、ユーザ情報記憶部122(122-1、122-2)のメモリ容量を節約するために、新しいユーザ情報を記憶する場合には、古いユーザ情報を削除し、削除により空いた記憶領域に対して新しいユーザ情報を記憶してもよい。或いは、各ユーザ情報に優先度(重み付け係数)を付与し、新しいユーザ情報を記憶する場合には、優先度の低いユーザ情報を削除してもよい。また既に記憶されているユーザ情報と新しいユーザ情報を演算することでユーザ情報を更新(上書き)してもよい。
【0085】
記憶部120(120-1、120-2)は、処理部110、通信部138などのワーク領域となるもので、その機能はRAMなどのメモリやHDD(ハードディスクドライブ)などにより実現できる。記憶部120が含むユーザ情報記憶部122は、ユーザ(第1、第2のユーザ)の行動、状態又は環境等の情報(履歴情報)であって、取得されたセンサ情報に基づき更新されるユーザ情報(第1、第2のユーザ情報)を記憶する。
【0086】
制御部130(130-1、130-2)はウェアラブルディスプレイ140(140-1、140-2)の表示制御等を行う。通信部138(138-1、138-2)は、無線や有線の通信により、ロボット1の通信部40との間で、ユーザ情報などの情報の転送処理を行う。無線の通信としては、ブルートゥース(Bluetoothは登録商標)や赤外線のような近距離無線や無線LANなどが考えられる。有線の通信としてはUSBやIEEE1394などを利用したものが考えられる。
【0087】
ロボット1は、処理部10、記憶部20、ロボット制御部30、ロボット動作機構32、ロボット搭載センサ34、通信部40を含む。なおこれらの一部の構成要素を省略した構成にしてもよい。
【0088】
処理部10は、ロボット搭載センサ34からセンサ情報や、取得されたユーザ情報などに基づいて、ロボット1の動作等に必要な種々の処理を行う。この処理部10の機能は、各種プロセッサ(CPU等)、ASIC(ゲートアレイ等)などのハードウェアや、図示しない情報記憶媒体(光ディスク、ICカード、HDD等)に記憶されたプログラムなどにより実現できる。即ち、この情報記憶媒体には、本実施形態の各部としてコンピュータ(操作部、処理部、記憶部、出力部を備える装置)を機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶され、処理部10は、この情報記憶媒体に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。
【0089】
記憶部20は、処理部10、通信部40などのワーク領域となるもので、その機能はRAMなどのメモリやHDD(ハードディスクドライブ)などにより実現できる。この記憶部20はユーザ情報記憶部22と提示情報記憶部26を含む。またユーザ情報記憶部22はユーザ履歴情報記憶部23を含む。
【0090】
ロボット制御部30は、制御対象であるロボット動作機構32(アクチュエータ、音出力部、LED等)の制御を行うものであり、その機能は、ロボット制御用のASICや各種プロセッサなどのハードウェアや、プログラムなどにより実現できる。
【0091】
具体的にはロボット制御部30は、提示情報をユーザに対してロボット1に提示させるための制御を行う。提示情報がロボット1の会話(シナリオデータ)である場合には、会話フレーズをロボット1に発話させるための制御を行う。例えば会話フレーズを表すデジタルのテキストデータを、公知のTTS(Text-To-Speech)処理によりアナログの音声信号に変換し、ロボット動作機構32の音出力部(スピーカ)を介して出力する。また提示情報が、ロボット1の感情状態を表す情報である場合には、その感情を表すように、ロボット動作機構32の各関節機構のアクチュエータを制御したり、LEDを点灯させるなどの制御を行う。
【0092】
ロボット搭載センサ34は、例えば接触センサ、発話センサ(マイクロホン)、或いは撮像センサ(カメラ)などの各種センサである。ロボット1は、このロボット搭載センサ34からのセンサ情報に基づいて、ユーザに提示した提示情報に対するユーザの反応をモニタできる。
【0093】
通信部40は、無線や有線の通信により、携帯型電子機器100-1の通信部138-1や携帯型電子機器100-2の通信部138-2との間で、ユーザ情報などの情報の転送処理を行う。
【0094】
処理部10は、ユーザ情報取得部12、演算部13、提示情報決定部14を含む。なおこれらの構成要素の一部を省略する構成としてもよい。
【0095】
ユーザ情報取得部12は、ユーザの行動を計測する行動センサ、ユーザの状態を計測する状態センサ及びユーザの環境を計測する環境センサの少なくとも1つからのセンサ情報により得られるユーザ情報を取得する。
【0096】
例えば、携帯型電子機器100-2のユーザ情報更新部114-2は、ウァアラブルセンサ150-2からのセンサ情報に基づき、第2のユーザ(第1のユーザの子供、妻、恋人等)のユーザ情報である第2のユーザ情報(第2のユーザ履歴情報)の更新処理を行う。更新された第2のユーザ情報はユーザ情報記憶部122-2に記憶される。
【0097】
そしてユーザ情報記憶部122-2に記憶された第2のユーザ情報(第2のユーザ履歴情報)は、通信部138-2、40を介して、ロボット1のユーザ情報記憶部22に転送される。具体的には、第2のユーザが家に帰宅してロボット1に近づいたり、携帯型電子機器100-2をクレードルに接続して、携帯型電子機器100-2とロボット1との間での通信経路が確立されると、第2のユーザ情報がユーザ情報記憶部122-2からユーザ情報記憶部22に転送される。ユーザ情報取得部12は、このようにして転送された第2のユーザ情報をユーザ情報記憶部22から読み出すことで、第2のユーザ情報を取得する。なおユーザ情報取得部12が、ユーザ情報記憶部22を介さずに直接に携帯型電子機器100-2から第2のユーザ情報を取得してもよい。
【0098】
また、携帯型電子機器100-1のユーザ情報更新部114-1は、ウァアラブルセンサ150-1からのセンサ情報に基づき、第1のユーザのユーザ情報である第1のユーザ情報(第1のユーザ履歴情報)の更新処理を行う。更新された第1のユーザ情報はユーザ情報記憶部122-1に記憶される。
【0099】
そしてユーザ情報記憶部122-1に記憶された第1のユーザ情報(第1のユーザ履歴情報)は、通信部138-1、40を介して、ロボット1のユーザ情報記憶部22(ユーザ情報記憶部72)に転送される。具体的には、第1のユーザが家に帰宅してロボット1に近づいたり、携帯型電子機器100-1をクレードルに接続して、携帯型電子機器100-1とロボット1との間での通信経路が確立されると、第1のユーザ情報がユーザ情報記憶部122-1からユーザ情報記憶部22に転送される。ユーザ情報取得部12は、このようにして転送された第1のユーザ情報をユーザ情報記憶部22から読み出すことで、第1のユーザ情報を取得する。なおユーザ情報取得部12が、ユーザ情報記憶部22を介さずに直接に携帯型電子機器100-1から第1のユーザ情報を取得してもよい。
【0100】
演算部13は、取得されたユーザ情報に対する演算処理を行う。具体的には、必要な場合には、ユーザ情報に対する解析処理やフィルタリング処理を行う。例えばユーザ情報が1次センサ情報等である場合には、上式(1)(2)で説明した演算処理を行って、取得されたセンサ情報の中から不要なセンサ情報を除去するフィルタリング処理や、ユーザの行動、状態、環境(TPO情報)をセンサ情報に基づき同定するための解析処理などを行う。
【0101】
提示情報決定部14は、取得されたユーザ情報(演算処理後のユーザ情報)に基づいて、ロボット1がユーザに対して提示(提供)する提示情報(会話、感情表現、行動表現)の決定処理を行う。
【0102】
具体的には、提示情報決定部14は、取得された第2のユーザの第2のユーザ情報に基づいて、第1のユーザへの提示情報(会話フレーズ、感情表現、行動表現)の決定処理を行う。そしてロボット制御部30は、第2のユーザ情報に基づき決定された提示情報を、第1のユーザに提示するためのロボット制御を行う。例えばロボット1に第1のユーザが近づいた場合に、ロボット1から離れた場所等にいる第2のユーザの第2のユーザ情報に基づき提示情報を決定し、決定された提示情報を第1のユーザに提示する。
【0103】
また第1のユーザの第1のユーザ情報をユーザ情報取得部12により取得した場合には、提示情報決定部14は、取得された第1のユーザ情報と第2のユーザ情報との両方に基づいて、第1のユーザへの提示情報の決定処理を行ってもよい。
【0104】
具体的には、第1のユーザ情報に基づいて、第1のユーザのTPO(Time Place Occasion)を推定し、TPO情報を取得する。即ち、時間情報や、第1のユーザの場所情報、状況情報を取得する。そして、取得された第1のユーザのTPO情報と、第2のユーザの第2のユーザ情報とに基づいて、提示情報の決定処理を行う。
【0105】
更に具体的には、提示情報決定部14は、第1のユーザ情報(TPO情報)に基づいて提示情報の提示タイミング(会話の開始タイミング、発話タイミング)を決定し、第2のユーザ情報に基づいて提示情報の内容(会話の内容、シナリオデータ)を決定する。そしてロボット制御部30は、決定された提示タイミングで、決定された内容の提示情報を、第1のユーザに提示するためのロボット制御を行う。
【0106】
即ち、第1のユーザが忙しかったり、精神的に余裕が無く、提示情報を提示するタイミングではないと、第1のユーザ情報(第1のユーザのTPO)に基づき判断した場合には、ロボット1による提示情報の提示を行わないようにする。一方、第1のユーザが時間的に余裕があったり、暇を持て余しており、提示情報を提示するタイミングであると、第1のユーザ情報に基づき判断した場合には、第2のユーザ情報に基づいて提示情報の内容を決定し、第2のユーザの状況、行動等を知らせるための情報を、ロボット1を用いて第1のユーザに提示する。
【0107】
このようにすれば、第1のユーザにとって適切でタイムリーなタイミングで、第2のユーザの状況等を知らせることができ、より自然でスムーズな情報提示が可能になる。
【0108】
なおユーザ情報取得部12が、第2のユーザ情報として、第2のユーザの行動履歴、状態履歴及び環境履歴の少なくとも1つである第2のユーザ履歴情報を取得した場合には、提示情報決定部14は、取得された第2のユーザ履歴情報に基づいて、ロボット1が第1のユーザに対して提示する提示情報の決定処理を行う。この場合の第2のユーザ履歴情報は、例えば第2のユーザのウェアラブルセンサ150-2からのセンサ情報により携帯型電子機器100-2等が更新処理を行うことで得られる情報であり、携帯型電子機器100-2のユーザ情報記憶部122-2からロボット1のユーザ履歴情報記憶部23に転送される。またユーザの行動履歴、状態履歴、環境履歴としては、ユーザの行動(歩行、発話、食事等)、状態(疲労、緊張、空腹、精神状態、肉体状態等)、環境(場所、明るさ、気温等)を日時等に関連づけて記憶した情報(ログ情報)が考えられる。
【0109】
また提示情報決定部14は、ロボット1による提示情報の提示に対する第1のユーザの反応に基づいて、ロボット1が第1のユーザに対して次に提示する提示情報の決定処理を行う。具体的には、例えばロボット1が第1のユーザに対して提示情報を提示し、それに対して第1のユーザが反応すると、その反応はロボット搭載センサ34により検知される。そして提示情報決定部14は、ロボット搭載センサ34からのセンサ情報等に基づいて、第1のユーザの反応を判断(推定)し、その反応に基づいて、次に提示する提示情報を決定する。
【0110】
4.動作
次に本実施形態の動作について説明する。一般的に、ユーザとロボットとの会話(対話)は、1人のユーザと1台のロボットというように、1対1の対峙関係で実現される。しかしながら、このような1対1の関係では、ロボットの会話が単調なものになってしまい、ユーザに直ぐに飽きられてしまうという課題がある。
【0111】
この点、本実施形態では、第1のユーザと会話するロボットは、第1のユーザとは異なる第2のユーザの第2のユーザ情報に基づいて会話を行う。従って、第1のユーザは、ロボットとのコミュニケーションを介して、自身の家族、友人或いは恋人などの第2のユーザの情報を知ることができる。従って、ロボットの会話が単調になるのが防止され、ユーザに飽きられにくいロボットを実現できる。
【0112】
この場合に、ロボットの会話によりユーザに提供される情報は、ウェアラブルセンサなどが有する行動センサ、状態センサ、環境センサからのセンサ情報により取得された第2のユーザ情報に基づくものになっている。このため、第1のユーザは、ロボットの会話を介して、自身が親しい第2のユーザの行動や、第2のユーザの状態や、第2のユーザを取り巻く環境について間接的に知ることが可能になる。従って、例えば父親の帰宅がいつも遅く、子供とのコミュニケーションを取れないような家庭において、父親は、ロボットの会話を介して、間接的に子供の様子を知ることが可能になる。また、離れた場所に住んでいる友人や恋人の様子を、ロボットとの会話を介して知ることも可能になり、これまでにないタイプのコミュニケーション手段としてのロボットを提供できる。
【0113】
例えば図3(A)において、家に帰宅した父親である第1のユーザは、携帯型電子機器100(100-1)をクレードル101に接続して、充電等を行っている。図3(A)では、このようなクレードル101への携帯型電子機器100の接続により、ロボット1の利用可能イベントが発生したと判定し、ロボット1を起動し、その利用を可能にする。なおクレードル101への接続ではなく、第1のユーザとロボット1との接近を判定して、ロボット1を起動してもよい。例えば携帯型電子機器100とロボット1の間の情報転送が無線により行われる場合には、その無線強度を検出することでロボット1の利用可能イベントの発生を判定できる。
【0114】
このような利用可能イベントが発生すると、ロボット1が起動し、その利用が可能になる。この場合に、子供である第2のユーザの第2のユーザ情報は、ロボット1のユーザ情報記憶部22に記憶されている。具体的には学校等での第2のユーザの行動、状態、環境等の情報が、第2のユーザ情報として転送されて記憶されている。これにより、第2のユーザ情報に基づくロボット1の会話等の制御が可能になる。なお、後述するように、子供である第2のユーザとロボット1との会話を介して第2のユーザ情報を収集して、取得してもよい。
【0115】
例えば図3(A)では、父親(第1のユーザ)が会社から帰宅してロボット1に近づくと、ロボット1が、子供(第2のユーザ)を話題とする会話を開始する。具体的には例えば後述するシナリオデータ等に基づいて「坊ちゃん、最近部活が忙しいみたいだね」という会話フレーズを発話し、子供の今日の様子を父親に知らせる。
【0116】
更に図3(B)では、「夏休みには旅行にも行きたいってさ〜」とロボット1が発話し、例えばロボット1が子供との会話を通じて取得した子供の要望について、父親に知らせている。そして図3(B)では、この子供の要望に関する話題に興味を持った父親が、ロボット1を撫でている。即ち父親は、子供の要望について更に詳しく知りたいため、ロボット1を撫でて、更に詳しい情報を教えるようにロボット1に要求している。すると図3(C)に示すように、ロボット1は、子供から収集した情報に基づいて、「やっぱり夏は海かな〜だってさ」と発話する。これにより父親は、子供が夏休み行きたい場所は海であることを知ることができる。即ち図3(B)では、ロボット1が発話した会話フレーズ(ロボットによる提示情報の提示)に対する父親(第1のユーザ)の反応(撫でる動作)に基づいて、次にロボット1に発話させる会話フレーズ(次に提示する提示情報)を決定している。
【0117】
例えば毎日の帰宅時間が遅い父親は、子供と接する時間が少ないため、子供の様子や要望についてなかなか知ることができない。また子供と接する時間があったとしても、子供が自身の要望を父親に対して直接に伝えない場合もある。
【0118】
このような場合にも本実施形態では、ロボット1を媒介として父親と子供との間接的なコミュニケーションが実現される。例えば子供が、父親に対しては直接に自身の要望を伝ない場合にも、本実施形態によれば、ロボット1を媒介として子供の要望を父親にスムーズに伝えることが可能になる。また、子供が無意識に自身の要望をロボット1に話した場合にも、その要望を父親に伝えることが可能になる。
【0119】
また、子供と接する時間が少ないため、子供への関心が薄れてしまっている父親に対して、自身の子供についての気付きを与えることも可能になる。従って、いわゆる利便性提供型サービスではなく、ロボット1との会話を通じてユーザに気付きを与えるというインスパイヤ型ユビキタスサービスの実現も可能になる。
【0120】
なお、図3(A)のようにロボット1の利用可能イベントが発生して、ロボット1が起動した場合に、父親のユーザ情報である第1のユーザ情報を、ロボット1のユーザ情報記憶部22に転送して記憶してもよい。即ち会社や外出先等での父親の行動、状態、環境等の情報を転送して記憶する。このようにすれば、父親の第1のユーザ情報と、子供の第2のユーザ情報の両方を用いて、ロボット1の会話等を制御することが可能になる。
【0121】
例えば、父親の帰宅時間がいつもよりも遅かったことが、第1のユーザ情報に基づき判断されたとする。具体的には、ウェアラブルセンサのGPSセンサからの場所情報やタイマからの時間情報に基づいて、父親の毎日の帰宅時間が計測される。そして過去における父親の帰宅時間の平均と、今回の帰宅時間とを比較すること、父親の帰宅時間が遅いか否かを判定する。
【0122】
そして、父親の帰宅時間が普段よりもかなり遅い場合には、父親のTPOは仕事等で非常に疲れている状態であると推定できる。従ってこの場合には、ロボット1は、直ぐには子供を話題とする会話を行わずに、例えば「今日は、仕事で遅くなって、大変でしたね」というような労いの会話を行う。或いは父親が好きな野球チームの試合結果などを話題とする会話を行う。
【0123】
そして、時間が経過して、仕事で疲れた状態が軽減された後に、ロボット1は、第2のユーザ情報に基づいて子供を話題とする会話を開始する。即ち提示情報(会話)の決定処理における第1のユーザ情報(第1のユーザ履歴情報)の重み付けと、第2のユーザ情報(第2のユーザ履歴情報)の重み付けとを、時間経過に伴い変化させる。具体的には、ロボット1の利用可能イベントの発生時には、父親のユーザ情報である第1のユーザ情報の重み付けを大きくし、子供のユーザ情報である第2のユーザ情報の重み付けを小さくして提示情報の決定処理を行う。そして、その後、第1のユーザ情報の重み付けを小さくし、第2のユーザ情報の重み付けを大きくして提示情報の決定処理を行う。このようにすれば、父親のTPOに応じたタイムリーな情報提示が可能になる。
【0124】
図4に本実施形態の動作を説明するためのフローチャートを示す。
【0125】
まずユーザ情報取得部12が、第2のユーザ(子供)のユーザ情報である第2のユーザ情報を取得する(ステップS1)。具体的には、第2のユーザの携帯型電子機器100-2からの第2のユーザ情報がユーザ情報記憶部22に転送され、この転送されたユーザ情報を読み出す。そしてロボット1が第1のユーザ(父親)に提示する提示情報(会話等)の内容を、取得された第2のユーザ情報(子供のユーザ情報)に基づいて決定する(ステップS2)。
【0126】
次にユーザ情報取得部12が、第1のユーザ(父親)のユーザ情報である第1のユーザ情報を取得する(ステップS3)。具体的には、第1のユーザの携帯型電子機器100-1からの第1のユーザ情報がユーザ情報記憶部22に転送され、この転送されたユーザ情報を読み出す。次に、必要であれば、第1のユーザ情報に基づいて第1のユーザのTPOを推定する(ステップS4)。ここで、TPO(Time Place Occasion)の情報は、時間情報(年、月、週、日、時間等)、ユーザの場所情報(居場所、位置、距離等)及びユーザの状況情報(精神・肉体状況、ユーザに対して発生したイベント等)の少なくとも1つの情報である。例えばGPSセンサにより得られる緯度・経度情報の意味合いは、ユーザに応じて異なり、その緯度・経度の場所がユーザの自宅であれば、ユーザの居場所は自宅であると推定される。
【0127】
次に、第1のユーザ情報(第1のユーザのTPO)に基づいて、第1のユーザに提示情報を提示するタイミングであるか否かを判断する(ステップS5)。例えば第1のユーザ情報に基づいて、第1のユーザが忙しかったり、疲れていると判断した場合には、提示タイミングではないと判断して、ステップS3に戻る。
【0128】
一方、第1のユーザに提示するタイミングであると判断した場合には、ロボット1に提示情報を提示させるロボット制御を行う(ステップS6)。具体的には、図3(A)〜図3(C)のように、ロボット1に会話フレーズを発話させるロボット制御を行う。
【0129】
次に、ステップS6での提示情報の提示に対する第1のユーザの反応をモニタする(ステップS7)。例えば第1のユーザがロボット1を撫でる動作をしたのか、叩く動作をしたのか、或いは何もしなかったのかを判断する。そして、モニタされた第1のユーザの反応に基づいて、次にロボット1が提示する提示情報を決定する(ステップS8)。即ち次にロボット1が発話する会話フレーズを決定する。
【0130】
5.複数台のロボット
以上では、ユーザが複数であり、ロボットが1台である場合について説明したが、本実施形態はこれに限定されず、ユーザが複数であり、ロボットが複数台である場合にも適用できる。図5に、ロボットが複数台である場合の本実施形態の第2のシステム構成例を示す。
【0131】
このシステムは、第1、第2のユーザが所持する携帯型電子機器100-1、100-2や、本実施形態のロボット制御システムにより制御されるロボット1、2(第1、第2のロボット)を有する。そして、ロボット制御システムは、例えばロボット1、2が有する処理部10、60により実現される。なお、ロボット2の構成はロボット1と同様であるため、ここでは詳細な説明を省略する。
【0132】
図5では、提示情報決定部14(64)は、取得された同じ第2のユーザ情報に対してロボット1、2が異なる提示情報(異なる会話フレーズ、異なる感情表現、異なる行動表現)を提示(発話)するように、第1のユーザに対して提示する提示情報(会話フレーズ)の決定処理を行う。例えば、取得された第2のユーザ情報に対して、ロボット1が、第1の提示情報(第1の会話フレーズ)を提示し、ロボット2が、第1の提示情報とは異なる第2の提示情報(第2の会話フレーズ)を提示するように、提示情報の決定処理を行う。
【0133】
次に図5の動作について説明する。一般的に、ユーザとロボットとの会話(対話)は、1人のユーザと1台のロボットというように、1対1の対峙関係で実現される。
【0134】
これに対して図5では、2台のロボット1、2(広義には複数台のロボット)が用意される。そしてユーザは、ロボット1、2と直接会話するのではなく、ロボット1、2の間で行われる会話を傍観しならが聞くという形態をとる。
【0135】
このようにすれば、外部からユーザに一方的に情報を提供する利便性提供型サービスではなく、ロボット1、2の間で行われる会話を通して、ユーザの内面に働きかけ、ユーザの行動、状態、環境についての気付き(インスパイヤ)をユーザに与えることで、自己の成長を促すというインスパイヤ型ユビキタスサービスの実現が可能になる。
【0136】
図6(A)〜図6(C)は、子供である第2のユーザの第2のユーザ情報を取得する場面の例である。図6(A)において、家に帰宅した子供は、携帯型電子機器100(100-2)をクレードル101に接続して、充電等を行っている。図6(A)では、このクレードル101への携帯型電子機器100の接続により、ロボット1、2の利用可能イベントが発生したと判定し、ロボット1、2を起動し、その利用を可能にする。なお、無線強度の検出により、子供との接近を判定して、ロボット1、2を起動してもよい。
【0137】
このようにロボット1、2が起動すると、子供が所持する携帯型電子機器100に記憶された第2のユーザ情報が、ロボット1、2のユーザ情報記憶部22、72に転送される。そして、モバイル環境において更新された子供の第2のユーザ情報に基づいて、ロボット1、2の会話等が制御される。また、モバイル環境で更新された第2のユーザ情報が、ロボット1、2との会話等に基づいて、ホーム環境において更に更新される。
【0138】
例えば図6(A)では、子供の帰宅時間がいつもよりも遅かったことが、第2のユーザ情報に基づき判断される。このように、帰宅時間が遅いと判断された場合には、子供の帰宅時間に関連した提示情報がロボット1、2により提示される。具体的には、子供の帰宅時間の話題に関するシナリオデータが選択され、選択されたシナリオデータにしたがってロボット1、2が会話を開始する。例えば図6(A)では、ロボット1が「今日は学校の帰りが遅かったね」という会話フレーズを発話し、それに対してロボット2が「最近、遅い日が多いよね〜」という会話フレーズを発話する。
【0139】
そして図6(B)ではロボット1が「部活が忙しいのかな」と発話し、ロボット2が「どうせフラフラ遊び歩いているんじゃない?」と発話する。このように図6(B)では、「帰宅時間がいつもより遅い」という同じ第2のユーザ情報に対して、ロボット1、2が異なる提示情報を提示する。すると、子供は、実際には部活で忙しくて帰宅が遅くなったため、「部活が忙しいのかな」と発話したロボット1の方を撫でる。これにより図6(C)に示すように、撫でられた方のロボット1が、「そういえばもうすぐ地区大会だったね」と発話する。
【0140】
この場合に、図6(B)のようなロボット1、2の対照的な会話フレーズに対する子供の反応(撫でる操作)に基づき、第2のユーザ情報が更新される。即ち、子供の帰宅が遅くなったのは、部活が原因であったことが推定され、部活で帰宅が遅くなったことが、第2のユーザ情報として記録されて、父親に提示するシナリオデータが作成される。即ち、ロボット1、2が発話した会話フレーズに対する子供(第2のユーザ)の反応に基づき、父親(第1のユーザ)に提示するシナリオデータが作成される。
【0141】
図7(A)〜図7(C)は、子供の帰宅後、第1のユーザである父親が帰宅した場面の例である。
【0142】
父親が帰宅して、クレードル101への携帯型電子機器100(100-1)の接続等が検出されると、ロボット1、2が起動する。この場合に、図6(A)〜図6(C)で説明した子供との会話により更新された第2のユーザ情報が、ロボット1、2のユーザ情報記憶部22、72に記憶されている。そしてロボット1、2は、この第2のユーザ情報に基づいて、その会話等が制御される。具体的には、子供の遅い帰宅時間の話題に関するシナリオデータが選択されて、選択されたシナリオデータにしたがってロボット1、2が会話を開始する。例えば図7(A)では、ロボット1が「坊ちゃん学校の帰りが遅かったんだよ」と発話し、それに対してロボット2が「最近、遅い日が多いみたいだね〜」と発話する。
【0143】
この場合に、「子供の帰宅時間がいつもより遅い」という同じ第2のユーザ情報に対して、ロボット1、2が異なる提示情報を提示するように、父親(第1のユーザ)に対してロボット1、2が提示する提示情報の決定処理が行われる。具体的には図7(B)では、子供の遅い帰宅時間について、ロボット1は「部活が忙しいらしいよ」と発話し、ロボット2は「でも、なんか機嫌が悪いんだ」と発話する。
【0144】
例えば、ロボットとユーザが1対1で対峙し、ロボットが常に同じような傾向の会話を行うと、ユーザはロボットとの会話に閉塞感や行き詰まり感を感じるおそれがある。
【0145】
これに対して図7(B)では、ロボット1、2が、互いに異なる対照的な会話フレーズを発話する。しかも、ユーザに対して直接会話するのではなく、ロボット1、2同士で会話を行い、ユーザがそれを見守るという形態をとる。従って、いわゆる利便性提供型サービスではなく、ロボット1、2の間で行われる会話を通してユーザに気付きを与えるというインスパイヤ型ユビキタスサービスの提供が可能になる。
【0146】
また図7(B)では、父親は、子供の今日の機嫌に関する話題よりも、子供の部活に関する話題の方に興味があるため、ロボット1の方を撫でている。そして、ロボット1の接触センサ410等により、ロボット1、2による会話フレーズの発話に対するユーザの反応である「撫でる動作」が検知される。
【0147】
すると、このような「撫でる動作」というユーザの反応に基づいて、ロボット1、2が父親に対して次に会話する会話フレーズ(次に提示する提示情報)の決定処理を行う。具体的には図7(C)に示すように、撫でられた側のロボット1は、「もうすぐ地区大会だからね」と発話する。そして、その後は、子供の部活に関する話題のシナリオにより、ロボット1、2の間の会話が続けられる。
【0148】
このように図6(A)〜図6(C)では、ロボット1、2の会話を通じて、子供のユーザ情報である第2のユーザ情報が更新されて、父親に提示するシナリオデータが作成される。従って、子供が特に意識することなく、自然に第2のユーザ情報が収集されて、取得される。そして取得された第2のユーザ情報に基づいて、子供を話題とするシナリオデータが作成され、図7(A)〜図7(C)に示すように、ロボット1、2の会話を通じて、子供の話題が父親に提供される。従って、父親や子供が特に意識しなくても、ロボット1、2を媒介として父親と子供との間接的なコミュニケーションを実現できる。これにより、ロボットとの会話を通じてユーザに気付きを与えるというインスパイヤ型ユビキタスサービスの実現が可能になる。
【0149】
図8に、図5のシステムの動作を説明するためのフローチャートを示す。図8が図4のフローチャートと主に異なるのは、ステップS56の処理である。即ちステップS55で、第1のユーザ(父親)に提示するタイミングであると判断された場合には、ステップS56では、ロボット1、2に異なる提示情報を提示させるロボット制御が行われる。具体的には、図7(A)〜図7(C)で説明したように、同じ第2のユーザ情報(子供の帰宅時間)に対して、ロボット1、2が異なる会話を行うようにロボット1、2の会話フレーズを決定し、ロボット1、2に発話させる。これにより、ユーザとロボットとの会話が単調になってしまう事態が防止される。
【0150】
図9に、図5の変形例である第3のシステム構成例を示す。図9では、ロボット1がマスタ側に設定され、ロボット2がスレーブ側に設定される。そしてロボット制御システムは、主にマスタ側のロボット1が有する処理部10により実現される。
【0151】
具体的にはマスタ側のロボット1に設けられたユーザ情報取得部12がユーザ情報(第2のユーザ情報)を取得し、マスタ側の提示情報決定部14が、取得されたユーザ情報に基づいて、ロボット1、2がユーザに対して提示する提示情報の決定処理を行う。例えばマスタ側、スレーブ側のロボット1、2が、各々、第1、第2の提示情報を提示することが決定された場合には、マスタ側のロボット制御部30は、決定された第1の提示情報をロボット1に提示させるための制御を行う。このようにしてマスタ側のロボット1が制御される。またマスタ側の提示情報決定部14は、スレーブ側のロボット2に対して、ユーザへの提示情報の提示を指示する。例えばマスタ側、スレーブ側が、各々、第1、第2の提示情報を提示することが決定された場合には、スレーブ側のロボット2に対して、第2の提示情報を提示することを指示する。するとスレーブ側のロボット制御部80は、決定された第2の提示情報をロボット2に提示させるためのロボット制御を行う。このようにしてスレーブ側のロボット2が制御される。
【0152】
この場合に、通信部40は、提示情報の提示を指示する指示情報を、マスタ側のロボット1からスレーブ側のロボット2に対して、例えば無線等により通信する。そしてスレーブ側の通信部90がこの指示情報を受信すると、スレーブ側のロボット制御部80は、この指示情報で指示された提示情報をロボット2に提示させるためのロボット制御を行う。
【0153】
ここで提示情報の指示情報は、例えば提示情報の識別コードなどである。提示情報がシナリオの会話フレーズである場合には、この指示情報は、シナリオにおける会話フレーズのデータコードになる。
【0154】
例えばロボット1、2が掛け合いの会話を行う場合に、ロボット1の発話した会話フレーズをロボット2が音声認識し、その音声認識の結果に基づいてロボット2に会話フレーズを発話させる手法が考えられる。
【0155】
しかしながら、この手法によると複雑は音声認識処理や解析処理が必要になり、ロボットの高コスト化、処理の複雑化、誤動作の発生などを招く。
【0156】
この点、図9では、マスタ側のロボット1の制御の下で、ロボット1、2の掛け合いの会話が実現される。即ち、ユーザの目からは、ロボット1、2がお互いの言葉を認識し合いながら会話しているように見えるが、実際には、全ての会話がマスタ側のロボット1の制御の下で行われる。またスレーブ側のロボット2は、マスタ側のロボット1から通信される指示情報に基づいて、自身が提示する情報を決定するため、音声認識処理を不要にできる。従って、複雑な音声認識処理等を行わなくても、ロボット1、2の間での掛け合いの会話を、誤動作の少ない安定した制御の下で実現できる。
【0157】
6.ネットワークを介した第2のユーザ情報の取得
以上では、家族間のコミュニケーションに本実施形態の手法を適用した場合について主に説明したが、本実施形態はこれに限定されない。例えば友人、恋人、親戚などの場所的に離れたユーザ間でのコミュニケーションにも本実施形態の手法は適用できる。
【0158】
例えば図10では、第1のユーザの恋人である第2のユーザの第2のユーザ情報が取得される。具体的には第2のユーザのモバイル環境やホーム環境において、図1等で説明した手法により第2のユーザ情報(第2のユーザ履歴情報)が更新される。そして、更新された第2のユーザ情報は、インターネットなどのネットワークを介して通信される。即ち、ロボット1(ロボット制御システム)のユーザ情報取得部12が、第2のユーザ情報をネットワークを介して取得する。そして提示情報決定部14が、ネットワークを介して取得された第2のユーザ情報に基づいて、第1のユーザに提示する提示情報の決定処理を行う。
【0159】
このようにすれば、第1のユーザは、遠く離れた場所にいる第2のユーザの行動、状態又は環境(行動履歴、状態履歴、環境履歴)等を、ロボット1を媒介として知ることができる。即ちロボット1(或いはロボット1、2)は、ネットワークを介して取得した第2のユーザ情報によるシナリオデータに基づいて、図3(A)〜図3(C)で説明したような会話を行う。従って、第1のユーザは、恋人である第2のユーザの様子を、ロボット1の会話を通じて間接的に知ることができる。これにより、遠く離れた場所にいる第1、第2のユーザ間での間接的なコミュニケーションを実現でき、これまでにないコミュニケーション手段を提供できる。なお図10のシステムにおいて第2のユーザ情報を携帯型電子機器を媒介せずに取得するようにしてもよい。
【0160】
7.システム構成例
次に本実施形態の別のシステム構成例について説明する。図11は本実施形態の第4のシステム構成例である。なお図11は、1台のロボットが設けられる場合の例であるが、図5のように複数台のロボットを設けてもよい。
【0161】
図11では、ローカルサーバであるホームサーバ200が設けられている。このホームサーバ200は、ホームサブシステムの制御対象機器の制御のための処理を行ったり、外部との通信処理などを行う。ロボット1(或いはロボット1、2)はこのホームサーバ200の制御の下で動作する。
【0162】
そして図11のシステムでは、携帯型電子機器100-1、100-2とホームサーバ200は例えば無線LANやクレードル等で通信接続され、ホームサーバ200とロボット1は例えば無線LAN等で通信接続される。そして本実施形態のロボット制御システムは、主にホームサーバ200の処理部210により実現される。なおロボット制御システムの処理を、ホームサーバ200とロボット1の分散処理により実現してもよい。
【0163】
携帯型電子機器100-1又は100-2を所持したユーザ(第1、第2のユーザ)が家に近づくと、無線LAN等により携帯型電子機器100-1、100-2とホームサーバ200の間の通信が可能になる。或いは携帯型電子機器100-1、100-2をクレードルに置くことで、通信が可能になる。
【0164】
そして通信経路が確立されると、携帯型電子機器100-1、100-2からホームサーバ200のユーザ情報記憶部222にユーザ情報(第1、第2のユーザ情報)が転送される。これにより、ホームサーバ200のユーザ情報取得部212がユーザ情報を取得する。そして演算部213が必要な演算処理を行い、提示情報決定部214が、ロボット1がユーザに対して提示する提示情報を決定する。そして、決定された提示情報又は提示情報の指示情報(例えば会話フレーズの発話指示情報)が、ホームサーバ200の通信部238からロボット1の通信部40に送信される。そしてロボット1のロボット制御部30は、受信した提示情報又は受信した指示情報により指示される提示情報を、ユーザに提示するためのロボット制御を行う。
【0165】
図11の構成によれば、例えばユーザ情報や提示情報(シナリオデータ)のデータサイズが大きい場合に、ロボット1にユーザ情報や提示情報の記憶部を設けなくても済むため、ロボット1の低コスト化やコンパクト化を図れる。またユーザ情報や提示情報の転送や演算処理を、ホームサーバ200に一元化して処理、管理できるため、よりインテリジェントなロボット制御が可能になる。
【0166】
また図11のシステムによれば、ロボット1の利用可能イベントが発生する前に、携帯型電子機器100-1、100-2からのユーザ情報を、ホームサーバ200のユーザ情報記憶部222に予め転送しておくことができる。例えばユーザが家に帰ってロボット1に近づく前に(具体的には、ユーザが身につけたウェアラブルセンサの1つであるGPSセンサからの情報が、ユーザが最寄り駅に着いたことを示したり、ホームセンサの1つであるドアの開閉センサからの情報が、ユーザが玄関のドアを開けたことを示したりしたタイミングなど)、モバイル環境で更新されたユーザ情報をホームサーバ200のユーザ情報記憶部222に予め転送して書き込んでおく。そしてユーザがロボット1に近づき、ロボット1の利用可能イベントが発生すると、ユーザ情報記憶部222に予め転送されたユーザ情報を用いた、ロボット1の制御動作を開始させる。即ちロボット1を起動し、例えば図3(A)〜図3(C)に示すような会話を行うようにロボット1を制御する。このようにすれば、ロボット1が起動した後に、ユーザ情報に基づく会話を直ぐに開始できるようになり、制御を効率化できる。
【0167】
図12に本実施形態の第5のシステム構成例を示す。図12では、メインサーバである外部サーバ300が設けられている。この外部サーバ300は、携帯型電子機器100-1、100-2との間やホームサーバ200との間での通信処理を行ったり、各種の管理制御を行う。なお図12は、1台のロボットが設けられる場合の例であるが、図5のように複数台のロボットを設けてもよい。
【0168】
図12のシステムでは、携帯型電子機器100-1、100-2と外部サーバ300はPHS等の無線WANで通信接続され、外部サーバ300とホームサーバ200はADSL等の有線WANで通信接続され、ホームサーバ200とロボット1(ロボット1、2)は無線LAN等で通信接続される。そして本実施形態のロボット制御システムは、主に、ホームサーバ200の処理部210や外部サーバ300の図示しない処理部により実現される。なおロボット制御システムの処理を、ホームサーバ200、外部サーバ300、ロボット1の分散処理により実現してもよい。
【0169】
携帯型電子機器100-1、100-2、ホームサーバ200等の各ユニットは、適宜、外部サーバ300と通信して、ユーザ情報(第1、第2のユーザ情報)の転送処理を行う。また、PHSの位置登録情報、GPSセンサ、マイク等を利用して、ユーザ(第1、第2のユーザ)が家に近づいたか否かを判断し、近づいた場合には、外部サーバ300の図示しないユーザ情報記憶部に記憶されたユーザ情報を、ホームサーバ200のユーザ情報記憶部222にダウンロードして、ロボット1による提示情報の提示制御を開始させる。なお、後述するシナリオデータ等の提示情報も、外部サーバ300からホームサーバ200の提示情報記憶部226にダウンロードできる。
【0170】
図12のシステムによれば、ユーザ情報や提示情報を、外部サーバ300において一元的に管理できるようになる。
【0171】
8.ユーザ履歴情報
次に、ユーザ情報の1つであるユーザ履歴情報の更新処理やユーザ履歴情報の具体例について説明する。なおユーザ情報は、センサ情報によりリアルタイムに得られるユーザ情報と、このリアルタイムに得られるユーザ情報の履歴であるユーザ履歴情報などを含むことができる。
【0172】
図13は、ユーザ履歴情報の更新処理の一例を示すフローチャートである。
【0173】
まず、ウェアラブルセンサ150等からのセンサ情報を取得する(ステップS21)。次に、取得されたセンサ情報のフィルタリングや解析等の演算処理を行う(ステップS22)。そして演算結果に基づきユーザの行動、状態、環境等(TPO、情感)を推定する(ステップS23)。そして推定されたユーザの行動、状態等のユーザ履歴を日時(年、月、週、日、時間)等に関連づけてユーザ履歴情報記憶部23(223)に記憶して、ユーザ履歴情報を更新する(ステップS24)。
【0174】
図14にユーザ履歴情報の具体例が模式的に示される。図14のユーザ履歴情報は、ユーザの行動等の履歴が時間帯、時刻等に関連づけられたデータ構造になっている。例えば8時にユーザは自宅を出発し、8時〜8時20分の時間帯では自宅から駅まで歩行し、8時20分に自宅の最寄りのA駅に到着している。そして8時20分〜8時45分の時間帯では電車に乗車し、8時45分に会社の最寄りのB駅で下車し、9時に会社に到着し、業務を開始している。10時〜11時の時間帯では社内のメンバとミーティングを行い、12時〜13時の時間帯では昼食をとっている。
【0175】
このように図14では、センサからの情報等により推定されるユーザの行動等の履歴を、時間帯や時刻等に関連づけることで、ユーザ履歴情報が構築されている。
【0176】
また図14では、時間帯や時刻に対して、センサ等により計測されるユーザの発話量、食事量、脈拍、発汗量等の計測値も関連づけられている。例えば8時〜8時20分の時間帯では、ユーザは自宅からA駅に歩いているが、この時の歩行量等がセンサにより計測されて、8時〜8時20分の時間帯に関連づけられる。この場合に、例えば歩行速度、発汗量等の歩行量以外のセンサ情報の計測値を更に関連づけてもよい。こうすることで、この時間帯でのユーザの運動量等を把握することが可能になる。
【0177】
10時〜11時の時間帯では、ユーザは同僚とのミーティングを行っているが、この時の発話量等がセンサにより計測されて、10時〜11時の時間帯に関連づけられる。この場合に、例えば音声状態、脈拍等のセンサ情報の計測値を更に関連づけてもよい。こうすることで、この時間帯でのユーザの会話量や緊張度等を把握することが可能になる。
【0178】
20時45分〜21時45分や22時〜23時の時間帯では、ユーザはゲームをプレイしたり、テレビを鑑賞しているが、この時の脈拍、発汗量等がこれらの時間帯に関連づけられる。こうすることで、これらの時間帯でのユーザの興奮度等を把握することが可能になる。
【0179】
23時30分〜の時間帯では、ユーザは睡眠をしているが、この時のユーザの体温の変化がこの時間帯に関連づけられる。こうすることで、睡眠時におけるユーザの健康状態を把握することが可能になる。
【0180】
なお、ユーザ履歴情報は図14のような形態に限定されず、例えばユーザの行動等の履歴を日時等に関連づけないでユーザ履歴情報を構築する変形実施も可能である。
【0181】
例えば図15(A)では、センサ情報の計測値である発話量、音声状態、脈拍、発汗量等に基づいて、所定の演算式にしたがってユーザの精神状態パラメータが演算される。例えば発話量が多ければ、精神状態パラメータも高くなり、ユーザの精神状態が良好であることが示される。またセンサ情報の計測値である歩行量、歩行速度、体温等に基づいて、所定の演算式にしたがってユーザの身体状態(健康状態)のパラメータ(運動量パラメータ)が演算される。例えば歩行量が多ければ、身体状態パラメータも高くなり、ユーザの身体状態が良好であることが示される。
【0182】
また図15(B)に示すように、ユーザの精神状態、身体状態のパラメータ(広義には状態パラメータ)は、棒グラフ等を利用して可視化することで、ウェアラブルディスプレイやホームディスプレイに表示できる。またモバイル環境で更新された精神状態、身体状態のパラメータなどに基づいて、ホーム環境のロボットを制御して、ユーザを労ったり、励ましたり、あるいはユーザに助言する動作をロボットに行わせることが可能になる。
【0183】
以上のように本実施形態では、ユーザ情報として、ユーザの行動履歴、状態履歴、及び環境履歴の少なくとも1つであるユーザ履歴情報が取得される。そして取得されたユーザ履歴情報に基づいて、ロボットがユーザに対して提示する提示情報の決定処理が行われるようになる。
【0184】
9.シナリオに基づくロボットの会話
次に、ユーザへの提示情報がシナリオに基づくロボットの会話である場合を例にとり、その具体例について詳細に説明する。
【0185】
9.1 構成
図16に本実施形態の更に詳細なシステム構成例を示す。図16は図2、図5等に比べて、処理部10が更にイベント判定部11、ユーザ識別部15、接触状態判定部16、発話権制御部17、シナリオデータ取得部18、ユーザ情報更新部19を含んでいる。また記憶部20がシナリオデータ記憶部27、提示許可判断情報記憶部28を含んでいる。
【0186】
イベント判定部11は各種のイベントの判定処理を行う。具体的には、モバイルサブシステムや車内サブシステムでユーザ情報を更新していたユーザが、新たにホームサブシステムのロボットの利用が可能になったことを示すロボットの利用可能イベントの発生を判定する。例えばイベント判定手段11は、ユーザがロボットの場所(家)に接近(移動)した場合に、ロボットの利用可能イベントが発生したと判定する。或いは情報転送が無線により行われる場合には、その無線強度を検出することで利用可能イベントの発生を判定してもよい。或いはクレードルに携帯型電子機器が接続された場合に、利用可能イベントが発生したと判定してもよい。そして、このようなロボットの利用可能イベントが発生した場合には、ロボット1、2を起動し、ユーザ情報記憶部22等にユーザ情報がダウンロードされる。
【0187】
シナリオデータ記憶部27は、複数の会話フレーズにより構成されるシナリオデータを、提示情報として記憶する。そして提示情報決定部14は、このシナリオデータに基づいて、ロボットがユーザに対して発話する会話フレーズを決定する。するとロボット制御部30は、決定された会話フレーズをロボットに発話させるための制御を行う。
【0188】
具体的にはシナリオデータ記憶部27は、複数の会話フレーズが分岐構造でリンクされたシナリオデータを記憶する。そして提示情報決定部14は、ロボットが発話した会話フレーズに対するユーザ(第1のユーザ)の反応に基づいて、次にロボットに発話させる会話フレーズを決定する。
【0189】
ユーザ識別部15はユーザの識別処理を行う。具体的には、ロボットに対してユーザが接近した場合に、接近したユーザを識別する。そしてロボット制御部30は、第1のユーザが接近したとユーザ識別部15により識別された場合に、第1のユーザに提示情報を提示するためのロボット制御を行う。
【0190】
このユーザ識別は、例えばロボットによるユーザの顔の画像認識やユーザの声の音声認識などにより実現できる。例えば第1のユーザの顔画像や音声のデータを予め登録しておく。そして、CCD等の撮像デバイスやマイク等の音センサにより、ロボットに接近したユーザの顔画像や音声を認識し、登録されている顔画像や音声と一致するか否かを判断する。そして、認識された顔画像や音声が第1のユーザの顔画像や音声と一致した場合に、第1のユーザへの提示情報の提示を開始する。或いはユーザが所持する携帯型電子機器からのID情報をロボットが受信し、予め登録されているID情報と一致するか否かを判断することで、接近したユーザが第1のユーザか否かを識別してもよい。
【0191】
接触状態判定部16は、後述するように、ロボットのセンシング面における接触状態を判定する。そして提示情報決定部14は、ロボットによる会話フレーズの発話(提示情報の提示)に対するユーザの反応として、ユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを、接触状態判定部16での判定結果に基づき判断する。そして、ユーザに対して次に発話する会話フレーズ(次に提示する提示情報)を決定する。
【0192】
この場合に接触状態判定部16は、センシング面よりも内側(ロボットの内側)に設けられたマイク(音センサ)からの出力信号(センサ信号)に対して演算処理を行うことで得られた出力データに基づいて、センシング面における接触状態を判定する。この場合の出力データは、例えば信号強度(信号強度データ)であり、接触状態判定部16は、出力データで信号強度と、所定のしきい値との比較処理を行うことで、ユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを判定できる。
【0193】
発話権制御部17は、ロボットが発話した会話フレーズに対するユーザ(第1のユーザ)の反応(例えば撫でる、叩く、無言)に基づいて、ロボット1、2のいずれに対して次の会話フレーズの発話権(発話の主導権)を付与するかを制御する。具体的には、ロボット1、2のいずれか一方のロボットが発話した会話フレーズに対してユーザが肯定的な反応をしたか否定的な反応をしたかに応じて、次の会話フレーズの発話権を付与するロボットを決定する。例えばユーザが肯定的な反応をした方のロボットに発話権を付与したり、ユーザが否定的な反応をしなかった方のロボットに発話権を付与する。この発話権の制御処理は、ロボット1、2のいずれに発話権を付与するかを示す発話権フラグ等を利用して実現できる。
【0194】
例えば図17(A)では、ロボット1の「部活が忙しいらしいよ」という会話フレーズに対して、父親は頭を撫でるという肯定的な反応をしている。従って、この場合には図17(B)に示すように、頭を撫でられた方(肯定的な反応をされた方)のロボット1に対して次の発話権を付与する。これにより発話権を付与されたロボット1は「もうすぐ地区大会だからね」という会話フレーズを発話する。即ちロボット1、2は例えば交互に発話するのが原則であり、この原則に従えば図17(B)ではロボット2の方に次の発話権が付与されるはずであるが、図17(B)では、父親により頭が撫でられたロボット1の方に次の発話権を付与している。なお図17(A)において、ロボット2が発話し、父親がロボット2の方の頭を叩くという否定的な反応をした場合に、ロボット1に発話権を付与するようにしてもよい。
【0195】
図18(A)では、ロボット2の「でも、なんだか機嫌が悪いんだ」という会話フレーズに対して、父親は頭を撫でるという肯定的な反応をしている。従って、この場合には図18(B)に示すように、頭を撫でられた方のロボット2に対して、原則通り次の発話権を付与する。これにより発話権を付与されたロボット2は「今日は3回も叩かれたんだ!まったく!」という会話フレーズを発話する。なお図18(A)において、ロボット1が発話し、父親がロボット1の方の頭を叩くという否定的な反応をした場合に、ロボット2に発話権を付与するようにしてもよい。
【0196】
例えばロボット1、2が常に交互に順番に会話するだけでは、ロボット1、2の掛け合いの会話がユーザにとって単調なものになってしまい、ユーザに直ぐに飽きられてしまう。
【0197】
これに対して図17(A)〜図18(B)の発話権制御手法を用いれば、ユーザの反応に応じて発話権の付与が様々に切り替わるため、会話が単調になるのを防止でき、ユーザが飽きにくいロボット間の会話を実現できる。
【0198】
シナリオデータ取得部18はシナリオデータの取得処理を行う。具体的には、シナリオデータ記憶部27からユーザ情報に対応したシナリオデータを読み出すことで、ロボットの会話に使用するシナリオデータを取得する。なお、ユーザ情報に基づき選択されたシナリオデータを、ネットワークを介してシナリオデータ記憶部27にダウンロードし、ダウンロードされたシナリオデータの中から、ロボットの会話に使用するシナリオデータを選択して読み出すようにしてもよい。
【0199】
そして本実施形態では、例えば図6(A)〜図6(C)で説明したように、ロボットが発話した会話フレーズに対する第2のユーザ(子供)の反応に基づいて、シナリオデータを作成し、シナリオデータ取得部18は、作成されたシナリオデータを取得する。そして提示情報決定部14は、取得されたシナリオデータに基づいて、ロボットが第1のユーザに対して発話する会話フレーズを決定する。
【0200】
このようにすれば、ロボットの会話フレーズに対する第2のユーザの反応に応じて、第1のユーザに提示するシナリオの内容が変化するようになり、多様で変化に富んだロボットの会話を実現できる。例えば図6(B)では、ロボット1の「部活が忙しいのかな」という発話に対して、子供がロボット1の頭を撫でるという肯定的な反応をしている。このため、図7(B)、図7(C)では、子供の部活の話題に関するシナリオ(会話フレーズ)が選択されて、父親に提示されるようになる。
【0201】
ユーザ情報更新部19は、ホーム環境でのユーザ情報の更新処理を行う。具体的には、ロボットとの会話等を介して、ユーザの行動、状態等をセンシングして、ユーザ情報をホーム環境において更に更新する。
【0202】
提示許可判断情報記憶部28は、ユーザ間での情報提示の許可・不許可を判断するための提示許可判断情報(提示許可判断フラグ)を記憶する。そして提示情報決定部14は、提示許可判断情報に基づいて、第1、第2のユーザ間での情報提示が許可されていると判断した場合に、第2のユーザ情報に基づく第1のユーザへの提示情報の決定処理を行う。
【0203】
図19に提示許可判断情報の一例を示す。例えば図19では、ユーザAとユーザBとの間では、情報提示は許可されているが、ユーザAとユーザC、Dとの間では、情報提示は不許可になっている。またユーザBとユーザEとの間では、情報提示は許可されているが、ユーザBとユーザC、Dとの間では、情報提示は不許可になっている。
【0204】
従って、例えばユーザAがロボットに接近した場合に、ユーザBのユーザ情報に基づく提示情報をユーザAに提示することは許可されるが、ユーザCのユーザ情報に基づく提示情報については、ユーザAに提示することは禁止される。
【0205】
例えば、家族の全てのメンバに対して、子供の情報の提示を許可してしまうことは、望ましくない場合がある。そこで、提示許可判断情報を用いて、子供の情報を父親に提示することについては許可する一方で、子供の情報を母親に提示することについては不許可にする。
【0206】
このようにすれば、ロボットは、父親がロボットに近づいた場合には、提示許可判断情報に基づいて、子供の情報の提示が許可されていると判断して、子供のユーザ情報に基づく情報提示を行うようになる。一方、ロボットは、母親がロボットに近づいた場合には、提示許可判断情報に基づいて、子供の情報の提示が禁止されていると判断して、子供のユーザ情報に基づく情報提示を行わないようにする。このようにすれば、必要なユーザに対してのみ、他のユーザの情報が提示されるようになり、プライバシーの侵害等の問題が発生するのを防止できる。
【0207】
次に本実施形態の詳細な動作について図20のフローチャートを用いて説明する。
【0208】
まず、図6(A)〜図6(C)で説明したように、ロボットが発話した会話フレーズに対する第2のユーザ(子供)の反応に基づき作成されるシナリオデータを取得する(ステップS31)。
【0209】
次に、ロボットにユーザが接近したか否かを判断する(ステップS32)。即ち、携帯型電子機器のクレードルへの接続の検出や、無線強度の検出等により、ロボットの利用可能イベントが発生したか否かを判断する。
【0210】
次に、ロボットに接近したユーザを識別する(ステップS33)。即ち画像認識や音声認識などに基づいてユーザを識別する。そして、識別されたユーザに対応付けられた提示許可判断情報を、提示許可判断情報記憶部28から読み出す(ステップS34)。
【0211】
次に、識別されたユーザは、提示許可判断情報により情報の提示が許可されている第1のユーザか否かを判断する(ステップS35)。例えば、子供である第2のユーザの情報の提示が、父親である第1のユーザに対してのみ許可されている場合には、ロボットに接近したユーザが、父親であるか否かを判断する。
【0212】
そして、第1のユーザであると判断した場合には、図7(A)〜図7(C)で説明したように、ステップS31で取得されたシナリオデータに基づいて、ロボット1、2に発話させる会話フレーズを決定する(ステップS36)。そしてロボット1、2に異なる会話フレーズを発話させるロボット制御を行う(ステップS37)。
【0213】
次に、ロボット1、2の発話に対する第1のユーザの反応をモニタする(ステップS38)。そして図17(A)〜図18(B)に示す手法により次の会話フレーズの発話権を決定する(ステップS39)。また第1のユーザの反応に基づいて、次にロボット1,2が発話する会話フレーズを決定する(ステップS40)。
【0214】
9.2 シナリオの具体例
次に、本実施形態で使用されるシナリオデータやその選択手法の具体例について説明する。
【0215】
図21に示すようにシナリオデータベース(シナリオDB)の各シナリオデータにはシナリオ番号(シナリオNo.)が付与されている。そしてシナリオ番号により特定されるシナリオデータは、複数のシナリオデータコードにより構成され、各シナリオデータコードにより各会話フレーズ(テキストデータ)が指定される。そして図21では、第2のユーザ情報により、シナリオ番号=0579のシナリオデータが選択されている。そしてシナリオ番号=0579のシナリオデータは、A01〜A06のシナリオデータコードにより構成される。ここでA01〜A06は、ロボットが順次発話する会話フレーズのコードである。そしてこのシナリオデータを使用することで、図3(A)〜図3(C)等で説明した、第2のユーザ情報に応じたロボットの会話が実現される。
【0216】
図22は、子供の話題を父親に提供するシナリオの例である。
【0217】
例えば、まずロボットが「坊ちゃん最近部活が忙しいみたいだね」と発話し、続いて「夏休みには旅行にも行きたいってさ〜」と発話する。この発話に対して父親がロボットを撫でた場合には、夏休みの旅行についての子供の要望に対して、父親は興味を持っていると、推定する。従って、この場合にはロボットは、やっぱり「夏は海かな〜だってさ」と発話して、子供との会話により得られた子供の要望を父親に伝える。そして、夏休みの旅行の話題に関する会話を続ける。
【0218】
一方、「夏休みには旅行にも行きたいってさ〜」という発話に対して父親が無反応であった場合には、その話題には父親は興味がないと推定し、ロボットは、話題を変えて例えば「勉強はボチボチかな〜」と発話する。この発話に対して父親がロボットを撫でた場合には、子供の勉強の様子について父親は興味を持っていると、推定する。従って、この場合にはロボットは、「今は部活が忙しいみたいだし・・・」と発話し、子供の勉強の話題に関する会話を続ける。
【0219】
このように図22では、ロボットが発話した会話フレーズに対する父親の反応に基づいて、次にロボットに発話させる会話フレーズを決定している。また父親の撫でる、叩くなどの反応を検知することで、どのような子供の話題に父親が興味を持っているかを、推定している。
【0220】
図23は、ロボット1、2の会話を通じて子供のユーザ情報を収集するシナリオの例である。
【0221】
また、ロボット1が子供に対して「今日は学校の帰りが遅かったね」と発話し、ロボット2が「最近遅い日が多いよね〜」と発話する。続いてロボット1が「部活が忙しいのかな?」と発話し、ロボット2が「どうせフラフラ遊び歩いているんじゃない?」と発話する。
【0222】
そして子供がロボット1の方を撫でた場合には、子供が部活で帰りが遅くなったと推定する。そしてこの場合には、発話権はロボット1に付与されて、ロボット1は、「そういえばもうすぐ地区大会だね」と発話する。そして部活の話題についての会話が続けられる。
【0223】
一方、子供がロボット2の方を叩いた場合には、ロボット2の方に発話権が付与されて、ロボット2は「いてっ!叩くことないじゃないか!!」と発話する。
【0224】
このように図23では、ロボット1、2の会話を通じて子供の第2のユーザ情報が収集されて、更新される。従って、子供が特に意識しなくても、子供の第2のユーザ情報を自然に取得できるようになる。
【0225】
図24は、図23で収集された第2のユーザ情報に基づいて、父親に提示されるシナリオの例である。
【0226】
まず、図23で収集された第2のユーザ情報に基づくシナリオにより、ロボット1が「坊ちゃん学校の帰りが遅かったんだよ」と発話し、ロボット2が「最近遅い日が多いみたいだね〜」と発話する。続いてロボット1が「部活が忙しいらしいよ」と発話し、ロボット2が「でも、なんだか機嫌が悪いんだ」と発話する。即ち、同じ第2のユーザ情報に対してロボット1、2が異なる会話フレーズを発話する。
【0227】
そして父親がロボット1の方を撫でると、父親が子供の部活の話題に興味があると推定し、ロボット1の方に発話権が付与されて、ロボット1が「もうすぐ地区大会だからね〜」と発話する。そして子供の部活の話題についての会話が続く。
【0228】
一方、父親がロボット2の方を撫でると、ロボット2の方に発話権が付与されて、ロボット2は「今日は3回も叩かれたんだよ!まったく!」と発話する。
【0229】
このように図24では、ロボット1、2の会話を通じて収集された子供の話題が、ロボット1、2の会話を通じて父親に提示される。従って、ロボット1、2を媒介とした間接的なコミュニケーション手段を提供できる。
【0230】
10.接触状態判定
次に、ロボットを叩く、撫でる等の動作の具体的な判定手法の一例について説明する。
【0231】
図25(A)はぬいぐるみ型のロボット500の例である。ロボット500の表面は、センシング面501として機能する。センシング面501よりも内側には、マイク502-1、502-2、502-3が設けられている。また、各マイク502-1、502-2、502-3からの出力信号を演算処理し、出力データを出力する信号処理部503が設けられている。
【0232】
図25(B)の機能ブロック図に示すように、マイク502-1、502-2…502-nからの出力信号は信号処理部503に入力される。信号処理部503は、ノイズ除去や信号増幅等を行って、アナログの出力信号を加工・変換する。そして信号強度等を計算して、デジタルの出力データとして出力する。接触状態判定部16は、例えばしきい値の比較処理、接触状態の分類等の処理を行う。
【0233】
例えば図26(A)、図26(B)、図26(C)は、センシング面501を叩いた時、センシング面501を撫でた時、マイクに向かって話かけた時の3パターンの音声波形例である。グラフの横軸は時間であり、縦軸は信号強度である。
【0234】
信号強度に着目すると、図26(A)の叩いた時と、図26(B)の撫でた時では信号強度が大きいことがわかる。また、叩いた時はその状態が一時的なものになるが、撫でた時はその状態が継続していることがわかる。また図26(C)に示すように例えば「あー」とかなり強めに発話した時の波形は、図26(A)の叩いた時、図26(B)の撫でた時に比べて信号強度が小さいことがわかる。
【0235】
これらの差異を利用したしきい値を設けることで、「叩き状態」、「撫で状態」、「いずれでもない状態」を検出することが可能となる。また複数のマイク502-1、502-2、502-3を用いることにより、1番強い信号が発生した場所を「叩かれた部位、撫でられた部位」として検出できるようになる。
【0236】
より具体的には、ロボット500の内部に埋め込まれたマイク502-1、502-2、502-3は、ロボット500のセンシング面501にユーザの手などが接触した場合に、ロボット500の内部を伝搬してくる音を検出して電気信号に変換する。
【0237】
信号処理部503は、マイク502-1、502-2、502-3からの出力信号(音声信号)のノイズ除去、信号増幅、A/D変換を行い、出力データを出力する。この出力データを絶対値に変換して一定時間蓄積することなどにより、信号強度を算出できる。そして算出された信号強度を、しきい値THと比較する。そしてしきい値THを超えていれば、「接触」が検出されたものと判定して、接触状態検出回数としてカウントする。そしてこの接触状態検出処理を所定時間、繰り返す。
【0238】
所定時間が経過した時点で、接触状態判定部16は、事前に設定しておいた条件と、前述の接触状態検出回数を比較して、例えば下述のような条件により、撫でられた状態、叩かれた状態を検出する。ここでは、撫でた場合には接触状態が継続するため接触状態検出回数も多くなるが、叩いた場合には接触状態検出回数は少なくなるという現象を利用して、撫でられた状態なのか、叩かれた状態なのかを検出する。
【0239】
検出状態 (検出回数/最大検出回数)×100(%)
撫で状態 25%以上
叩き状態 10%以上、25%未満
未検出状態 10%未満
このようにすることで、少なくとも1つのマイクを用いて「撫で状態」、「叩き状態」、「いずれでもない状態(未検出状態)」を判定できる。また複数のマイクを分散して埋め込み、各マイクの接触状態検出回数を比較することで、接触が発生した部位についても判定することが可能になる。
【0240】
11.第1、第2のユーザ情報に基づく提示情報の決定処理
本実施形態では、第1のユーザへの提示情報の決定処理を、例えば第1、第2のユーザ情報の両方を考慮して行う。具体的には、第1のユーザへの提示情報の決定処理における第1のユーザ情報の重み付けと第2のユーザ情報の重み付けとを、時間経過に伴い変化させる。
【0241】
例えば、第1のユーザ(父親)が帰宅したり、ロボットと接触すると、ロボット(ホームサブシステム)の利用可能イベントが発生する。具体的には、ウェアラブルセンサのGPSや、家のドアなどに付けられたセンサや、クレードルへの携帯型電子機器の接続などにより第1のユーザの帰宅が検出されたり、無線通信における無線強度やロボットの接触センサなどにより第1のユーザとロボットの接近が検出されると、図16のイベント判定部11が、第1のユーザによるロボットの利用可能イベントが発生したと判定する。即ちロボットの利用が可能な状態になったことを示す利用可能イベントが発生したと判定する。
【0242】
そして図27では、この利用可能イベント発生前の例えば第1のユーザの外出期間(ロボットの利用不可期間、ロボットと第1のユーザの非近接期間)を第1の期間T1とし、利用可能イベント発生後の例えば在宅期間(ロボットの利用可能期間、ロボットと第1のユーザの近接期間)を第2の期間T2としている。
【0243】
この第1の期間T1では、第1のユーザ(父親)の第1のユーザ情報や、第2のユーザ(子供)の第2のユーザ情報が取得(更新)される。例えば第1のユーザ情報(第1のユーザ履歴情報)は、第1の期間T1において、第1のユーザのウァアラブルセンサの行動センサ、状態センサ、環境センサを用いて第1のユーザの行動(歩行、発話、食事等)、状態(疲労、緊張、空腹、精神状態、肉体状態等)、又は環境(場所、明るさ、気温等)を計測することで、取得できる。具体的には携帯型電子機器100-1のユーザ情報更新部が、これらのセンサからのセンサ情報に基づいて、携帯型電子機器100-1のユーザ情報記憶部の第1のユーザ情報を更新することで、第1の期間T1での第1のユーザ情報が取得される。
【0244】
第2のユーザ(子供)の第2のユーザ情報も、同様に、第1の期間T1において、第2のユーザのウェラブルセンサを用いて、第2のユーザの行動、状態又は環境を計測することで、取得できる。具体的には携帯型電子機器100-2のユーザ情報更新部が、これらのセンサからのセンサ情報に基づいて、携帯型電子機器100-2のユーザ情報記憶部の第2のユーザ情報を更新することで、第1の期間T1での第2のユーザ情報が取得される。なお第2のユーザ情報は、図6(A)〜図6(C)で説明したようにロボットとの会話を介しても取得できる。
【0245】
そして、例えばロボット1の利用可能イベントが発生すると、第1の期間T1において更新された第1、第2のユーザ情報が、携帯型電子機器100-1、100-2のユーザ情報記憶部からロボット1のユーザ情報記憶部22(ユーザ履歴情報記憶部23)に転送される。これにより提示情報決定部14は、転送された第1、第2のユーザ情報に基づいて、ロボット1が第1のユーザに対して提示する提示情報の決定処理(シナリオの選択処理)を行うことが可能になる。
【0246】
なお、利用可能イベント発生後の第2の期間T2においても、ロボット搭載センサ34や他のセンサ(例えばウェアラブルセンサや、ホームに埋め込まれたホームセンサ等)を用いて、第1のユーザの行動、状態又は環境を計測することで、第1のユーザ情報を更新してもよい。
【0247】
図28に示すように、提示情報決定部14は、第1の期間T1(或いは第2の期間T2)などで取得された第1、第2のユーザ情報に基づいて、ロボット1が第1のユーザに対して提示する提示情報の決定処理を行う。具体的には、第1、第2のユーザ情報に基づいて、ロボット1が会話するシナリオの決定処理を行う。このようにすれば、帰宅した第1のユーザ(父親)に対して、第2のユーザ(子供)についての話題のみならず、外出先等での第1のユーザ自身の話題についても、第1のユーザに提供できるようになり、外出先での自身の行動等に関する気付きを与えることができる。
【0248】
更に具体的には提示情報決定部14は、提示情報の決定処理の際における第1のユーザ情報の重み付け(重み付け係数)と第2のユーザ情報の重み付けとを、時間経過に伴い変化させている。
【0249】
例えば図28では、ロボット1の利用可能イベントの発生時には(ユーザの帰宅時、帰宅時から所与の期間が経過するまでは)、決定処理における第1のユーザ情報の重み付けの方が第2のユーザ情報の重み付けに比べて大きくなっており、例えば、第1のユーザ情報の重み付けが1.0になり、第2のユーザ情報の重み付けが0になっている。
【0250】
そして重み付け変更期間TAにおいて、第1のユーザ情報の重み付けは小さくなる一方で、第2のユーザ情報の重み付けは大きくなり、重み付けの大きさが逆転する。そして、変更期間TAの後は、第2のユーザ情報の重み付けの方が第1のユーザ情報の重み付けに比べて大きくなっており、例えば第1のユーザ情報の重み付けが0になり、第2のユーザ情報の重み付けが1.0になっている。
【0251】
このように図28では、利用可能イベント発生時には、決定処理における第1のユーザ情報の重み付けを大きくし、第2のユーザ情報の重み付けを小さくし、その後、第1のユーザ情報の重み付けを小さくし、第2のユーザ情報の重み付けを大きくしている。具体的には、第2の期間T2では、提示情報の決定処理の際における第1のユーザ情報の重み付けを時間経過に伴い小さくし、第2のユーザ情報の重み付けを時間経過に伴い大きくしている。
【0252】
このようにすれば、第2の期間T1の前半期間では、ロボット1は、例えば外出期間である第1の期間T1での第1のユーザ(父親)の行動等に関連する話題を提供する。そして、その後、時間が経過すると、今度は、第2のユーザ(子供)の行動等に関連する話題を提供する。
【0253】
このようにすれば、第1のユーザは、帰宅した直後は自身に関する話題が提供され、その後、時間が経過して落ちついたところで、他の人である第2のユーザの話題が提供されるようになり、第1のユーザにとってより自然な話題の提供が可能になる。
【0254】
また、例えば第2のユーザがロボット1と自宅に一緒に居るときに、第1のユーザが帰宅した場合には、第2のユーザよりも第1のユーザの方に注目が集まることが予想される。従って、第1のユーザの帰宅直後では、第1のユーザに関する話題を中心に提示し、時間が経過して落ちついたところで、第1、第2のユーザに関する話題を満遍なく提供するようにする。
【0255】
なお重み付けの変化のさせ方は図28の手法に限定されない。例えば図28とは逆に、前半期間では第2のユーザ情報の重み付けの方を大きくし、その後、第1のユーザ情報の重み付けの方を大きくする変形実施も可能である。また、重み付けの変化のさせ方は、ロボット1等に予めプログラミングしておく構成にしてもよいし、ユーザが好みに応じて自由に切り替えられる構成にしてもよい。
【0256】
また第2の期間T2においても第1のユーザ情報を取得(更新)する場合には、提示情報の決定処理の際に、第1の期間T1で取得された第1のユーザ情報の重み付けと、第2の期間T2で取得された第1のユーザ情報の重み付けについても、時間経過に伴い変化させてもよい。例えばロボット1の利用可能イベントの発生直後では、第1の期間T1で取得された第1のユーザ情報の重み付けを大きくし、時間が経過するにつれて、第2の期間T2で取得された第1のユーザ情報の重み付けを大きくする。
【0257】
また、提示情報の決定処理の際のユーザ情報の重み付けの一例としては、ユーザ情報で選択されるシナリオの選択確率がある。具体的には、第1のユーザ情報の重み付けを大きくする場合には、第2のユーザ情報よりも第1のユーザ情報の方のシナリオが選択されるようにする。具体的には、第1のユーザ情報に対応するシナリオの選択確率を大きくする。一方、第2のユーザ情報の重み付けを大きくする場合には、第1のユーザ情報よりも第2のユーザ情報の方のシナリオが選択されるようにする。具体的には、第2のユーザ情報に対応するシナリオの選択確率を大きくする。
【0258】
例えば図28において、第2の期間T2の前半では、第1のユーザ情報の重み付けが大きいため、第1のユーザ情報用のシナリオの選択確率が高くなる。これにより、前半期間では、ロボット1は、第1のユーザのその日の行動等に関する会話を行うようになる。一方、第2の期間T2の後半では、第2のユーザ情報の重み付けが大きいため、第2のユーザ情報用のシナリオの選択確率が高くなる。これにより、後半期間では、ロボット1は、第2のユーザのその日の行動等に関する会話を行うようになる。このようにすれば、時間経過に伴い、提供するシナリオの話題を徐々に変化させることができ、より自然で多様なロボットの会話を実現できる。
【0259】
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。またロボット制御システムやロボットの構成、動作も本実施形態で説明したものに限定に限定されず、種々の変形実施が可能である。
【図面の簡単な説明】
【0260】
【図1】ユーザ情報の取得手法の説明図
【図2】本実施形態のシステム構成例。
【図3】図3(A)〜図3(C)は本実施形態の手法の説明図。
【図4】本実施形態の動作を説明するためのフローチャート。
【図5】ロボットが複数台である場合の本実施形態の第2のシステム構成例。
【図6】図6(A)〜図6(C)は第2のユーザ情報の取得手法の説明図。
【図7】図7(A)〜図7(C)は第1のユーザへの情報提示手法の説明図。
【図8】第2のシステム構成の動作を説明するためのフローチャート。
【図9】本実施形態の第3のシステム構成例。
【図10】ネットワークを介した第2のユーザ情報の取得手法の説明図。
【図11】本実施形態の第4のシステム構成例。
【図12】本実施形態の第5のシステム構成例。
【図13】ユーザ履歴情報の更新処理のフローチャート。
【図14】ユーザ履歴情報の説明図。
【図15】図15(A)、図15(B)はユーザ履歴情報の説明図。
【図16】本実施形態の詳細なシステム構成例。
【図17】図17(A)、図17(B)は発話権の制御手法の説明図。
【図18】図18(A)、図18(B)は発話権の制御手法の説明図。
【図19】提示許可判断情報の説明図。
【図20】本実施形態の詳細な動作を説明するためのフローチャート。
【図21】シナリオデータの説明図。
【図22】子供の話題を父親に提供するシナリオの例。
【図23】子供のユーザ情報収集に使用されるシナリオ例。
【図24】収集された第2のユーザ情報に基づき父親に提示されるシナリオ例。
【図25】図25(A)、図25(B)は接触判定手法の説明図。
【図26】図26(A)、図26(B)、図26(C)は、叩いた時、撫でた時、マイクに向かって話かけた時の音声波形例。
【図27】第1、第2のユーザ情報に基づく提示情報の決定手法の説明図。
【図28】第1、第2のユーザ情報に基づく提示情報の決定処理の説明図。
【符号の説明】
【0261】
1、2 ロボット、10 処理部、11 イベント判定部、12 ユーザ情報取得部、
13 演算部、14 提示情報決定部、15 ユーザ認識部、16 接触状態判定部、
17 発話権制御部、18 シナリオデータ取得部、20 記憶部、
22 ユーザ情報記憶部、23 ユーザ履歴情報記憶部、26 提示情報記憶部、
27 シナリオデータ記憶部、28 提示許可判断情報記憶部、30 ロボット制御部、
32 ロボット動作機構、34 ロボット搭載センサ、40 通信部、
60 処理部、62 ユーザ情報取得部、63 演算部、64 提示情報決定部、
70 記憶部、72 ユーザ情報記憶部、73 ユーザ履歴情報記憶部、
76 提示情報記憶部、80 ロボット制御部、82 ロボット動作機構、
84 ロボット搭載センサ、90 通信部、
100-1、100-2 携帯型電子機器、110-1、110-2 処理部、
112-1、112-2 演算部、114-1、114-2 ユーザ情報更新部、
120-1、120-2 記憶部、122-1、122-2 ユーザ情報記憶部、
130-1、130-2 制御部、138-1、138-2 通信部、
140-1、140-2 ウェアラブルディスプレイ、
150-1、150-2 ウェアラブルセンサ、200 ホームサーバ(ローカルサーバ)、
210 処理部、212 ユーザ情報取得部、213 演算部、
214 提示情報決定部、220 記憶部、
222 ユーザ情報記憶部、223 ユーザ履歴情報記憶部、
226 提示情報記憶部、300 外部サーバ
【特許請求の範囲】
【請求項1】
ロボットを制御するためのロボット制御システムであって、
ユーザの行動を計測する行動センサ、ユーザの状態を計測する状態センサ及びユーザの環境を計測する環境センサの少なくとも1つからのセンサ情報により得られるユーザ情報を取得するユーザ情報取得部と、
取得された前記ユーザ情報に基づいて、ロボットがユーザに対して提示する提示情報の決定処理を行う提示情報決定部と、
前記提示情報をユーザに対してロボットに提示させるための制御を行うロボット制御部とを含み、
前記ユーザ情報取得部は、
第2のユーザの前記ユーザ情報である第2のユーザ情報を取得し、
前記提示情報決定部は、
取得された前記第2のユーザ情報に基づいて、第1のユーザへの提示情報の決定処理を行い、
前記ロボット制御部は、
前記第2のユーザ情報に基づき決定された提示情報を、前記第1のユーザに提示するためのロボット制御を行うことを特徴とするロボット制御システム。
【請求項2】
請求項1において、
前記ユーザ情報取得部は、
前記第1のユーザの前記ユーザ情報である第1のユーザ情報と、前記第2のユーザの前記ユーザ情報である前記第2のユーザ情報を取得し、
前記提示情報決定部は、
取得された前記第1のユーザ情報と前記第2のユーザ情報とに基づいて、前記第1のユーザへの提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項3】
請求項2において、
前記提示情報決定部は、
前記第1のユーザ情報に基づいて提示情報の提示タイミングを決定し、前記第2のユーザ情報に基づいて提示情報の内容を決定し、
前記ロボット制御部は、
決定された前記提示タイミングで、決定された内容の提示情報を、前記第1のユーザに提示するためのロボット制御を行うことを特徴とするロボット制御システム。
【請求項4】
請求項2において、
前記提示情報決定部は、
前記第1のユーザへの提示情報の決定処理における前記第1のユーザ情報の重み付けと前記第2のユーザ情報の重み付けとを、時間経過に伴い変化させることを特徴とするロボット制御システム。
【請求項5】
請求項4において、
前記第1のユーザによるロボットの利用が可能な状態になったことを示す利用可能イベントの発生を判定するイベント判定部を含み、
前記提示情報決定部は、
前記利用可能イベント発生時には、前記決定処理における前記第1のユーザ情報の重み付けを大きくし、前記第2のユーザ情報の重み付けを小さくし、その後、前記第1のユーザ情報の重み付けを小さくし、前記第2のユーザ情報の重み付けを大きくすることを特徴とするロボット制御システム。
【請求項6】
請求項1乃至5のいずれかにおいて、
前記提示情報決定部は、
ロボットによる提示情報の提示に対する前記第1のユーザの反応に基づいて、ロボットが前記第1のユーザに対して次に提示する提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項7】
請求項6において、
ロボットのセンシング面における接触状態を判定する接触状態判定部を含み、
前記提示情報決定部は、
ロボットによる提示情報の提示に対する前記第1のユーザの反応として、前記第1のユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを、前記接触状態判定部での判定結果に基づき判断して、前記第1のユーザに対して次に提示する提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項8】
請求項7において、
前記接触状態判定部は、
前記センシング面よりも内側に設けられたマイクからの出力信号に対して演算処理を行うことで得られた出力データに基づいて、前記センシング面における接触状態を判定することを特徴とするロボット制御システム。
【請求項9】
請求項8において、
前記出力データは、信号強度であり、
前記接触状態判定部は、
前記信号強度と、所定のしきい値との比較処理を行うことで、前記第1のユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを判定することを特徴とするロボット制御システム。
【請求項10】
請求項1乃至9のいずれかにおいて、
前記提示情報決定部は、
取得された同じ前記第2のユーザ情報に対して、第1、第2のロボットが異なる提示情報を提示するように、前記第1のユーザに対して提示する提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項11】
請求項10において、
前記第1のロボットはマスタ側に設定され、前記第2のロボットはスレーブ側に設定され、
マスタ側の前記第1のロボットに設けられた前記提示情報決定部が、スレーブ側の前記第2のロボットに対して、前記第1のユーザへの提示情報の提示を指示することを特徴とするロボット制御システム。
【請求項12】
請求項11において、
提示情報の提示を指示する指示情報を、マスタ側の前記第1のロボットからスレーブ側の前記第2のロボットに対して通信する通信部を含むことを特徴とするロボット制御システム。
【請求項13】
請求項1乃至12のいずれかにおいて、
前記ユーザ情報取得部は、
前記第2のユーザの前記第2のユーザ情報を、ネットワークを介して取得し、
前記提示情報決定部は、
ネットワークを介して取得された前記第2のユーザ情報に基づいて、前記第1のユーザに提示する提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項14】
請求項1乃至13のいずれかにおいて、
前記ユーザ情報取得部は、
前記第2のユーザ情報として、前記第2のユーザの行動履歴、前記第2のユーザの状態履歴及び前記第2のユーザの環境履歴の少なくとも1つである第2のユーザ履歴情報を取得し、
前記提示情報決定部は、
取得された前記第2のユーザ履歴情報に基づいて、ロボットが前記第1のユーザに対して提示する提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項15】
請求項14において、
前記第2のユーザ履歴情報は、前記第2のユーザのウェアラブルセンサからのセンサ情報により更新することで得られる情報であることを特徴とするロボット制御システム。
【請求項16】
請求項1乃至15のいずれかにおいて、
ロボットに対してユーザが接近した場合に、接近したユーザを識別するユーザ識別部を含み、
前記ロボット制御部は、
前記第1のユーザが接近したと前記ユーザ識別部により識別された場合に、前記第1のユーザに提示情報を提示するためのロボット制御を行うことを特徴とするロボット制御システム。
【請求項17】
請求項1乃至16のいずれかにおいて、
ユーザ間での情報提示の許可・不許可を判断するための提示許可判断情報を記憶する提示許可判断情報記憶部を含み、
前記提示情報決定部は、
前記提示許可判断情報に基づいて、前記第1、第2のユーザ間での情報提示が許可されていると判断した場合に、前記第2のユーザ情報に基づく前記第1のユーザへの提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項18】
請求項1乃至17のいずれかにおいて、
複数の会話フレーズにより構成されるシナリオデータを、前記提示情報として記憶するシナリオデータ記憶部を含み、
前記提示情報決定部は、
前記シナリオデータに基づいて、ロボットが前記第1のユーザに対して発話する会話フレーズを決定し、
前記ロボット制御部は、
決定された会話フレーズをロボットに発話させるための制御を行うことを特徴とするロボット制御システム。
【請求項19】
請求項18において、
前記シナリオデータ記憶部は、
複数の会話フレーズが分岐構造でリンクされたシナリオデータを記憶し、
前記提示情報決定部は、
ロボットが発話した会話フレーズに対する前記第1のユーザの反応に基づいて、次にロボットに発話させる会話フレーズを決定することを特徴とするロボット制御システム。
【請求項20】
請求項18又は19において、
ロボットが発話した会話フレーズに対する前記第2のユーザの反応に基づき作成されるシナリオデータを取得するシナリオデータ取得部を含み、
前記提示情報決定部は、
前記第2のユーザの反応により取得されたシナリオデータに基づいて、ロボットが前記第1のユーザに対して発話する会話フレーズを決定すること特徴とするロボット制御システム。
【請求項21】
請求項18乃至20のいずれかにおいて、
前記提示情報決定部は、
取得された同じ前記第2のユーザ情報に対して、第1、第2のロボットが異なる会話フレーズを発話するように、前記第1のユーザに対して発話する会話フレーズの決定処理を行い、
ロボットが発話した会話フレーズに対する前記第1のユーザの反応に基づいて、前記第1、第2のロボットのいずれに対して次の会話フレーズの発話権を付与するかを制御する発話権制御部を含むことを特徴とするロボット制御システム。
【請求項22】
請求項21において、
前記発話権制御部は、
前記第1、第2のロボットのいずれか一方のロボットが発話した会話フレーズに対して前記第1のユーザが肯定的な反応をしたか否定的な反応をしたかに応じて、次の会話フレーズの発話権を付与するロボットを決定することを特徴とするロボット制御システム。
【請求項23】
請求項1乃至22のいずれかに記載のロボット制御システムと、
前記ロボット制御システムの制御対象であるロボット動作機構とを含むことを特徴とするロボット。
【請求項24】
ロボット制御のためのプログラムであって、
ユーザの行動を計測する行動センサ、ユーザの状態を計測する状態センサ及びユーザの環境を計測する環境センサの少なくとも1つからのセンサ情報により得られるユーザ情報を取得するユーザ情報取得部と、
取得された前記ユーザ情報に基づいて、ロボットがユーザに対して提示する提示情報の決定処理を行う提示情報決定部と、
前記提示情報をユーザに対してロボットに提示させるための制御を行うロボット制御部として、
コンピュータを機能させ、
前記ユーザ情報取得部は、
第2のユーザの前記ユーザ情報である第2のユーザ情報を取得し、
前記提示情報決定部は、
取得された前記第2のユーザ情報に基づいて、第1のユーザへの提示情報の決定処理を行い、
前記ロボット制御部は、
前記第2のユーザ情報に基づき決定された提示情報を、前記第1のユーザに提示するためのロボット制御を行うことを特徴とするプログラム。
【請求項25】
コンピュータ読み取り可能な情報記憶媒体であって、請求項24に記載のプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項1】
ロボットを制御するためのロボット制御システムであって、
ユーザの行動を計測する行動センサ、ユーザの状態を計測する状態センサ及びユーザの環境を計測する環境センサの少なくとも1つからのセンサ情報により得られるユーザ情報を取得するユーザ情報取得部と、
取得された前記ユーザ情報に基づいて、ロボットがユーザに対して提示する提示情報の決定処理を行う提示情報決定部と、
前記提示情報をユーザに対してロボットに提示させるための制御を行うロボット制御部とを含み、
前記ユーザ情報取得部は、
第2のユーザの前記ユーザ情報である第2のユーザ情報を取得し、
前記提示情報決定部は、
取得された前記第2のユーザ情報に基づいて、第1のユーザへの提示情報の決定処理を行い、
前記ロボット制御部は、
前記第2のユーザ情報に基づき決定された提示情報を、前記第1のユーザに提示するためのロボット制御を行うことを特徴とするロボット制御システム。
【請求項2】
請求項1において、
前記ユーザ情報取得部は、
前記第1のユーザの前記ユーザ情報である第1のユーザ情報と、前記第2のユーザの前記ユーザ情報である前記第2のユーザ情報を取得し、
前記提示情報決定部は、
取得された前記第1のユーザ情報と前記第2のユーザ情報とに基づいて、前記第1のユーザへの提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項3】
請求項2において、
前記提示情報決定部は、
前記第1のユーザ情報に基づいて提示情報の提示タイミングを決定し、前記第2のユーザ情報に基づいて提示情報の内容を決定し、
前記ロボット制御部は、
決定された前記提示タイミングで、決定された内容の提示情報を、前記第1のユーザに提示するためのロボット制御を行うことを特徴とするロボット制御システム。
【請求項4】
請求項2において、
前記提示情報決定部は、
前記第1のユーザへの提示情報の決定処理における前記第1のユーザ情報の重み付けと前記第2のユーザ情報の重み付けとを、時間経過に伴い変化させることを特徴とするロボット制御システム。
【請求項5】
請求項4において、
前記第1のユーザによるロボットの利用が可能な状態になったことを示す利用可能イベントの発生を判定するイベント判定部を含み、
前記提示情報決定部は、
前記利用可能イベント発生時には、前記決定処理における前記第1のユーザ情報の重み付けを大きくし、前記第2のユーザ情報の重み付けを小さくし、その後、前記第1のユーザ情報の重み付けを小さくし、前記第2のユーザ情報の重み付けを大きくすることを特徴とするロボット制御システム。
【請求項6】
請求項1乃至5のいずれかにおいて、
前記提示情報決定部は、
ロボットによる提示情報の提示に対する前記第1のユーザの反応に基づいて、ロボットが前記第1のユーザに対して次に提示する提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項7】
請求項6において、
ロボットのセンシング面における接触状態を判定する接触状態判定部を含み、
前記提示情報決定部は、
ロボットによる提示情報の提示に対する前記第1のユーザの反応として、前記第1のユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを、前記接触状態判定部での判定結果に基づき判断して、前記第1のユーザに対して次に提示する提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項8】
請求項7において、
前記接触状態判定部は、
前記センシング面よりも内側に設けられたマイクからの出力信号に対して演算処理を行うことで得られた出力データに基づいて、前記センシング面における接触状態を判定することを特徴とするロボット制御システム。
【請求項9】
請求項8において、
前記出力データは、信号強度であり、
前記接触状態判定部は、
前記信号強度と、所定のしきい値との比較処理を行うことで、前記第1のユーザがロボットを撫でる動作を行ったか叩く動作を行ったかを判定することを特徴とするロボット制御システム。
【請求項10】
請求項1乃至9のいずれかにおいて、
前記提示情報決定部は、
取得された同じ前記第2のユーザ情報に対して、第1、第2のロボットが異なる提示情報を提示するように、前記第1のユーザに対して提示する提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項11】
請求項10において、
前記第1のロボットはマスタ側に設定され、前記第2のロボットはスレーブ側に設定され、
マスタ側の前記第1のロボットに設けられた前記提示情報決定部が、スレーブ側の前記第2のロボットに対して、前記第1のユーザへの提示情報の提示を指示することを特徴とするロボット制御システム。
【請求項12】
請求項11において、
提示情報の提示を指示する指示情報を、マスタ側の前記第1のロボットからスレーブ側の前記第2のロボットに対して通信する通信部を含むことを特徴とするロボット制御システム。
【請求項13】
請求項1乃至12のいずれかにおいて、
前記ユーザ情報取得部は、
前記第2のユーザの前記第2のユーザ情報を、ネットワークを介して取得し、
前記提示情報決定部は、
ネットワークを介して取得された前記第2のユーザ情報に基づいて、前記第1のユーザに提示する提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項14】
請求項1乃至13のいずれかにおいて、
前記ユーザ情報取得部は、
前記第2のユーザ情報として、前記第2のユーザの行動履歴、前記第2のユーザの状態履歴及び前記第2のユーザの環境履歴の少なくとも1つである第2のユーザ履歴情報を取得し、
前記提示情報決定部は、
取得された前記第2のユーザ履歴情報に基づいて、ロボットが前記第1のユーザに対して提示する提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項15】
請求項14において、
前記第2のユーザ履歴情報は、前記第2のユーザのウェアラブルセンサからのセンサ情報により更新することで得られる情報であることを特徴とするロボット制御システム。
【請求項16】
請求項1乃至15のいずれかにおいて、
ロボットに対してユーザが接近した場合に、接近したユーザを識別するユーザ識別部を含み、
前記ロボット制御部は、
前記第1のユーザが接近したと前記ユーザ識別部により識別された場合に、前記第1のユーザに提示情報を提示するためのロボット制御を行うことを特徴とするロボット制御システム。
【請求項17】
請求項1乃至16のいずれかにおいて、
ユーザ間での情報提示の許可・不許可を判断するための提示許可判断情報を記憶する提示許可判断情報記憶部を含み、
前記提示情報決定部は、
前記提示許可判断情報に基づいて、前記第1、第2のユーザ間での情報提示が許可されていると判断した場合に、前記第2のユーザ情報に基づく前記第1のユーザへの提示情報の決定処理を行うことを特徴とするロボット制御システム。
【請求項18】
請求項1乃至17のいずれかにおいて、
複数の会話フレーズにより構成されるシナリオデータを、前記提示情報として記憶するシナリオデータ記憶部を含み、
前記提示情報決定部は、
前記シナリオデータに基づいて、ロボットが前記第1のユーザに対して発話する会話フレーズを決定し、
前記ロボット制御部は、
決定された会話フレーズをロボットに発話させるための制御を行うことを特徴とするロボット制御システム。
【請求項19】
請求項18において、
前記シナリオデータ記憶部は、
複数の会話フレーズが分岐構造でリンクされたシナリオデータを記憶し、
前記提示情報決定部は、
ロボットが発話した会話フレーズに対する前記第1のユーザの反応に基づいて、次にロボットに発話させる会話フレーズを決定することを特徴とするロボット制御システム。
【請求項20】
請求項18又は19において、
ロボットが発話した会話フレーズに対する前記第2のユーザの反応に基づき作成されるシナリオデータを取得するシナリオデータ取得部を含み、
前記提示情報決定部は、
前記第2のユーザの反応により取得されたシナリオデータに基づいて、ロボットが前記第1のユーザに対して発話する会話フレーズを決定すること特徴とするロボット制御システム。
【請求項21】
請求項18乃至20のいずれかにおいて、
前記提示情報決定部は、
取得された同じ前記第2のユーザ情報に対して、第1、第2のロボットが異なる会話フレーズを発話するように、前記第1のユーザに対して発話する会話フレーズの決定処理を行い、
ロボットが発話した会話フレーズに対する前記第1のユーザの反応に基づいて、前記第1、第2のロボットのいずれに対して次の会話フレーズの発話権を付与するかを制御する発話権制御部を含むことを特徴とするロボット制御システム。
【請求項22】
請求項21において、
前記発話権制御部は、
前記第1、第2のロボットのいずれか一方のロボットが発話した会話フレーズに対して前記第1のユーザが肯定的な反応をしたか否定的な反応をしたかに応じて、次の会話フレーズの発話権を付与するロボットを決定することを特徴とするロボット制御システム。
【請求項23】
請求項1乃至22のいずれかに記載のロボット制御システムと、
前記ロボット制御システムの制御対象であるロボット動作機構とを含むことを特徴とするロボット。
【請求項24】
ロボット制御のためのプログラムであって、
ユーザの行動を計測する行動センサ、ユーザの状態を計測する状態センサ及びユーザの環境を計測する環境センサの少なくとも1つからのセンサ情報により得られるユーザ情報を取得するユーザ情報取得部と、
取得された前記ユーザ情報に基づいて、ロボットがユーザに対して提示する提示情報の決定処理を行う提示情報決定部と、
前記提示情報をユーザに対してロボットに提示させるための制御を行うロボット制御部として、
コンピュータを機能させ、
前記ユーザ情報取得部は、
第2のユーザの前記ユーザ情報である第2のユーザ情報を取得し、
前記提示情報決定部は、
取得された前記第2のユーザ情報に基づいて、第1のユーザへの提示情報の決定処理を行い、
前記ロボット制御部は、
前記第2のユーザ情報に基づき決定された提示情報を、前記第1のユーザに提示するためのロボット制御を行うことを特徴とするプログラム。
【請求項25】
コンピュータ読み取り可能な情報記憶媒体であって、請求項24に記載のプログラムを記憶したことを特徴とする情報記憶媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【公開番号】特開2009−131928(P2009−131928A)
【公開日】平成21年6月18日(2009.6.18)
【国際特許分類】
【出願番号】特願2007−309625(P2007−309625)
【出願日】平成19年11月30日(2007.11.30)
【出願人】(000000376)オリンパス株式会社 (11,466)
【出願人】(000001960)シチズンホールディングス株式会社 (1,939)
【Fターム(参考)】
【公開日】平成21年6月18日(2009.6.18)
【国際特許分類】
【出願日】平成19年11月30日(2007.11.30)
【出願人】(000000376)オリンパス株式会社 (11,466)
【出願人】(000001960)シチズンホールディングス株式会社 (1,939)
【Fターム(参考)】
[ Back to top ]