以下に説明するバーチャルコンパニオンシステムは、仮想空間に作り出されるバーチャルコンパニオンと実空間のユーザとの対話が可能でユーザとアクセス対象の外部システムとをコンピュータおよびコンピュータ・ネットワーク(以下、ネットワークと略称する)経由で結ぶユーザ・インタフェースとして用いるものである。
(実施形態1)
本実施形態のバーチャルコンパニオンシステムVSは、図1に示すように、アクセス対象である外部システム7へのアクセスに関するユーザM(図2参照)の指示を入力する入力手段1と、バーチャルコンパニオンVC(図2参照)をユーザMに対して表現する表現手段2と、バーチャルコンパニオンVCのひな型の構成情報、バーチャルコンパニオンVCを識別するための識別情報(例えば、ID)、バーチャルコンパニオンVCに関するユーザ固有のカスタマイズ情報、バーチャルコンパニオンシステムVSとしてユーザMが使用する端末(例えば、ユーザMの自宅に設置してあるユーザ専用のデスクトップパソコン、インターネットカフェに設置されたインターネットを利用可能なデスクトップパソコンなどの固定端末や、ユーザ専用のノートパソコン、携帯情報端末、携帯電話などの携帯端末など)の特性情報などを記憶するメモリからなる記憶手段3と、ネットワーク6を介してアクセス対象である外部システム(例えば、サーバなど)7との間で情報を授受可能とする通信手段4と、入力手段1によるユーザMからの入力(情報)に応じて通信手段4を通じて外部システム7へアクセスして外部システム7から上記入力に対応する情報を取得し、少なくとも入力手段1および外部システム7それぞれから得た情報と記憶手段3に記憶された情報とからなるデータ生成用情報に基づいてリアルタイムでバーチャルコンパニオンVCの表現データを生成してバーチャルコンパニオンVCを表現手段2に表現させる演算処理手段5とを構成要素として備えている。ここにおいて、記憶手段3では、バーチャルコンパニオンVCのカスタマイズ情報をバーチャルコンパニオンVCの識別情報に対応付けて記憶しているので、ユーザM個人に特化したバーチャルコンパニオンVCの表現が可能となる。なお、本実施形態のバーチャルコンパニオンシステムVSは、上記端末にバーチャルコンパニオンシステム用の処理プログラム(ソフトウェア)を搭載することにより構成される。
記憶手段3は、バーチャルコンパニオンVCのひな型の構成情報(デフォルト情報)を記憶したデフォルト情報記憶部31、バーチャルコンパニオンVCを識別するための識別情報を記憶した識別情報記憶部32、識別情報に対応付けてカスタマイズ情報を記憶するカスタマイズ情報記憶部33、端末の特性情報を記憶した端末特性情報記憶部34、外部システム7を利用する上で必要となるAPI(Application Program Interface)情報を記憶するAPI情報記憶部35、演算処理手段5とユーザMとの間のやり取りやその他の一連の処理に関わる履歴情報を記憶する履歴情報記憶部36、一時的にデータ(情報)を記憶させる一時データ記憶部37などを有している。なお、API情報はAPI情報記憶部35にあらかじめ記憶させておいてもよいし、外部システム7にアクセスすることにより取得してAPI情報記憶部35に記憶させるようにしてもよい。また、記憶手段3には、外部システム7のアドレス(例えば、URLなど)も記憶されている。
上述のバーチャルコンパニオンVCのひな型の構成情報は、属性ごとに設定された機能項目とデフォルト値(デフォルト情報)との組で表現されており、例えば、図3の左側のテーブルのように多数の機能項目それぞれにデフォルト値が設定されている。図3に示した例では、バーチャルコンパニオンVCの外観(形状・形態)に関する属性として、「表現形式」、「髪型」、「髪色」、「性別」、「年齢」、「骨格・関節」、「可動範囲」、「骨格長さ」、「身長」、「体重」などの機能項目があり、バーチャルコンパニオンVCの音声の表現に関する属性として、「言語」、「話し方」などの機能項目があり、バーチャルコンパニオンVCの行動ルールに関する属性として、「身のこなし」、「身振り」、「相槌」、「瞬き」、「視線」などの機能項目があり、各機能項目それぞれについてスラッシュ(/)の右横に記載したようなデフォルト値が設定されている。これに対して、ユーザMは、例えば、図3の右側のテーブルのように所望の機能項目それぞれについてカスタマイズ情報を設定することができるようになっている。図3の右側のテーブルでは、各機能項目それぞれについてのカスタマイズ情報をスラッシュ(/)の右横に記載してある。なお、カスタマイズ情報としては、上述の例の他に、例えば、外部システム7に対してアクセスするための検索機能などがある。また、外部システム7の一つとして道案内サービスを提供するような情報提供システムを想定している場合には、カスタマイズ情報として、上述の例の他に、ユーザM自体の嗜好(外食の好き嫌い、食事の好み、映画や娯楽の興味分野、徒歩、バス、電車、自転車、飛行機などの交通手段の好み、人の集まる場所の好き嫌いなど)に関する情報などを設定するようにしてもよい。
また、上述の端末の特性情報としては、例えば、端末で使用可能な入力手段1(例えば、キーボード、マイク、音声認識装置など)に関する特性情報、端末で使用可能なセンシング手段8(ユーザの周囲の環境に関する環境情報を取得する環境情報取得手段であり、例えば、GPSセンサ、温度センサ、湿度センサなど)に関する特性情報、端末で使用可能な表現手段2(画像表示装置、音響出力装置としてのスピーカ、振動装置など)に関する特性情報、端末自体の処理能力に関する特性情報などがある。ここにおいて、入力手段1の特性情報としては、例えば、音声の入力に関して、マイクによる入力可能、音声認識装置による入力可能などの情報がある。また、表現手段2の特性情報としては、例えば、画像表示装置の画像表示に関して、解像度や表示表域のサイズ、色(モノクロ〜フルカラー)、リフレッシュレート(静止画〜動画)などの情報、音の出力に関して、ブザーなどのビープ音、メロディ、合成音声、3次元音響などのような出力可能な音の情報、端末自体の処理能力に関する特性情報としては、例えば、CPUのクロック周波数、メモリ容量、ディスク容量などの情報がある。
演算処理手段5は、通信手段4およびネットワーク6を経由して外部システム7と通信を行う通信処理部51と、入力手段1やセンシング手段8からの入力を所定のデータ形式に変換する入力処理部52と、入力処理部52から入力されるユーザMからの問い合わせや指示などに応じて外部システム7へアクセスしたりユーザMと対話させるバーチャルコンパニオンVCを表現手段2へ表現させる処理を行う対話処理部53と、履歴情報記憶部36に記憶された履歴情報に基づいて学習を行いユーザMのより好むバーチャルコンパニオンVCが表現されるようにカスタマイズ情報記憶部33に記憶されたカスタマイズ情報を変更する履歴情報処理部54と、カスタマイズ情報が変更されたときに差分情報(変更のあったカスタマイズ情報)を抽出する差分情報処理部55と、記憶手段3に記憶されるデータ(情報)を各処理部51〜55との間で授受するための記憶データ入出力処理部56と、各処理部51〜56を制御するシステム制御部57とを備えている。
通信処理部51は、通信手段4およびネットワーク6を経由して外部システム7との間でデータを通信する通信データ処理部51aと、外部システム7との間で授受するデータを所定のデータ形式に変換する外部システム入出力処理部51bとで構成してある。
また、入力処理部52は、入力手段1から受けつけたユーザMの入力(例えば、問い合わせや指示など)をデータ化処理によりコマンドに変換するユーザ入力処理部52aと、センシング手段8から入力される検知情報を所定のデータ形式に変換するセンシング入力処理部52bとで構成してある。
また、対話処理部53は、ユーザ入力処理部52aから出力されたコマンドに基づいてアクセス対象となる外部システム7へアクセスするためのデータが揃うと外部システム7へアクセスする入力行動処理部53aと、記憶手段3に記憶されているひな型の構成情報および端末の特性情報およびカスタマイズ情報に基づいて表現手段2へ表現させるバーチャルコンパニオンVCの行動ルールを決定する行動生成処理部53bと、入力行動処理部53aや外部システム入出力処理部51bの出力と行動生成処理部53bから入力される行動ルールの情報に基づいてバーチャルコンパニオンVCの行動に関するデータを生成する出力行動処理部53cと、記憶手段3に記憶されているひな型の構成情報および端末の特性情報およびカスタマイズ情報に基づいて表現手段2へ表現させるバーチャルコンパニオンVCの形態に関するデータを生成する形態生成処理部53dと、出力行動処理部53cから与えられる行動に関するデータと形態生成処理部53dから与えられる形態に関するデータとに基づいてバーチャルコンパニオンVCの表現データを生成してバーチャルコンパニオンVCを表現手段2に表現させる表現データ生成処理部53eとを備えている。
ここにおいて、入力行動処理部53aは、アクセス対象となる外部システム7に関するAPI情報などを記憶データ入出力処理部56を通して記憶手段3から取り込んで、外部システム7へアクセスするために不足しているデータの有無を判断して不足しているデータが有る場合にはセンシング入力処理部52bから出力されるデータで補足することができるか確認する。そして、入力行動処理部53aにて必要なデータが揃わない場合には、システム制御部57によって出力行動処理部53bに対してユーザMへの問い合わせ出力のプログラムを起動させる指示がなされ、バーチャルコンパニオンVCを通じてユーザMへ問い合わせが行われる。また、入力行動処理部53aにて必要なデータが揃うと、外部システム7へのアクセスが行われ、外部システム7から送られてきた情報が外部システム入出力処理部51bへ入力される。すると、システム制御部57によって出力行動処理部53bに対してユーザMへの回答出力のプログラムを起動させる指示がなされ、バーチャルコンパニオンVCを通じてユーザMへ回答が行われる。なお、外部システム7から外部システム入出力処理部51bへ入力された情報は記憶データ入出力処理部56を介して記憶手段3へ記憶される。
ところで、本実施形態のバーチャルコンパニオンシステムVSでは、ユーザMが使用可能な複数の端末(ユーザM個人所有の端末に限らず、例えばインターネットカフェなどに設置されたパソコンなどの端末も含む)のうちユーザMがバーチャルコンパニオンシステムVSとして現在使用している端末以外の端末も外部システム7を構成している。ここにおいて、本実施形態のバーチャルコンパニオンシステムVSは、現在使用している端末以外の端末のアドレスおよびAPI情報を記憶手段3に記憶しており、演算処理手段5の入力行動処理部53aは、入力手段1によるユーザMからの別の端末への転送指示があったときには、記憶手段3から識別情報および識別情報に対応付けたカスタマイズ情報をひな型の構成情報とは独立して読み出して通信手段4を介し別の端末へ転送させる転送処理機能を有している。
しかして、本実施形態のバーチャルコンパニオンシステムでは、ユーザMが移動した場合でも当該ユーザに特化したバーチャルコンパニオンVCを通じて外部システム7へアクセスすることが可能となるから、ユーザMの行動範囲の制約が少なく、且つ、ユーザMが親しみやすい個人専用のユーザ・インタフェースとして利用可能となるのである。
以下、本実施形態のバーチャルコンパニオンシステムVSのアクセス対象の外部システム7がユーザMが随時アクセス可能な情報提供サービス(例えば、カーナビゲーションシステムのようなデジタルマップのシステムや、駅すぱあと(登録商標)のような出発駅と到着駅との間の経路、運賃、所要時間などの情報を提供する経路検索システムをインストールしたサーバ)を利用する場合について図2を参照しながら説明する。
図2における上側に記載したバーチャルコンパニオンシステムVSは、例えばユーザMが自宅で使用するデスクトップパソコンにバーチャルコンパニオンシステム専用の処理プログラムを搭載することにより構成したものであり、入力手段1として、キーボード11およびマイク12を備え、表現手段2として、デスクトップパソコンに付設された画像表示装置21およびスピーカ22を備えている。本実施形態では、ユーザMが利用する端末のコンピュータに上記処理プログラムを搭載することにより構成しているので、上記処理プログラムのプログラミング言語としてJava(R)言語などのネットワーク経由でウェブブラウザを介してダウンロード可能なプログラミング言語を用いれば、ユーザMが利用する端末へ上記処理プログラムを搭載するための操作が簡単になり、利便性が高くなる。
ユーザMは、外出するにあたってバーチャルコンパニオンシステムVSとして使用する端末を上述のデスクトップパソコンからユーザMの携帯する携帯電話、PDA、ユーザの立ち寄り先(例えば、インターネットカフェなど)のような建物内で使用可能なパソコンなどの別の端末に変更したい場合には、バーチャルコンパニオンシステムVSとして利用したい端末にバーチャルコンパニオンシステム専用の処理プログラムをWebブラウザなどを利用してダウンロードして搭載するか或いはインストールしておき、現在使用しているバーチャルコンパニオンシステムVSの入力手段1へのユーザMの転送指示により、以後使用するバーチャルコンパニオンシステムVSの端末へアクセスして識別情報および最新のカスタマイズ情報を転送させる。この際、識別情報およびカスタマイズ情報を受信したバーチャルコンパニオンシステムVSは、識別情報およびカスタマイズ情報を記憶手段3へ記憶させ、記憶手段3に記憶されているひな型の構成情報、カスタマイズ情報などに基づいてバーチャルコンパニオンVCの表現データを生成し、表現手段2に表現させる。一方、それまで使用していたバーチャルコンパニオンシステムVSでは、識別情報およびカスタマイズ情報の転送が終了したことを確認すると、バーチャルコンパニオンVCの表現を停止し、システムの終了あるいは待機状態に移行する。なお、ユーザMが転送指示を行う際には、入力手段1により転送先の端末のアドレスや名前を入力するようにしてもよいし、入力手段1を通じてユーザMが利用可能な端末の検索を指示し、検索結果に基づきバーチャルコンパニオンVCから回答された端末への転送を入力手段1により指示するようにしてもよい。
図2における下側に記載したバーチャルコンパニオンシステムVSは、ユーザMが携帯する携帯電話からなる端末のコンピュータに上記処理プログラムを搭載することにより構成したものであり、表現手段2として、携帯電話に設けられた液晶ディスプレイからなる画像表示装置21およびスピーカからなる音声出力装置(図示せず)および振動装置(図示せず)を備え、入力手段1として、携帯電話に設けられた操作ボタンを備え、通信手段4として携帯電話に設けられた通信装置を備えている。
なお、入力手段1は、上述の例に限らず、音声認識装置、マイクロフォンなどの音声入力装置や、タッチパネルなどを採用することも考えられる。
また、外部システム7がユーザMの現在いる環境に関する環境情報(例えば、ユーザMのいる現在地およびその時刻、温度、湿度、騒音、道路の混雑具合、天気など)を利用してサービスを提供するシステムである場合には、センシング手段8として、ユーザMの現在利用している端末の現在位置情報や現在時刻を例えばGPSを利用して取得するGPSセンサ、周囲温度を検出する温度センサ、周囲湿度を検出する湿度センサなどの各種センサ、例えば景色を撮像するCCDカメラからなる撮像素子などを有する端末へ上記処理プログラムを搭載して使用することで、ユーザMが環境情報を入力する手間を減らすことが可能となる。また、ユーザ入力処理部52aあるいはセンシング入力処理部52bを、CCDカメラなどの撮像素子にて撮像したユーザMの表情や身振り(ユーザMが指で示した方向)からユーザMの指示を判断できるように構成しておけば、操作用のキーなどを操作する手間を省くことが可能となる。
以下、上記処理プログラムで行われる処理について図4〜図7を参照しながら説明するが、カスタマイズ情報は、最初に識別情報を設定する際にユーザMが初期設定し随時変更することができるようになっている。
バーチャルコンパニオンシステムVSが起動されると、まず、ユーザMのバーチャルコンパニオンVCに対応する識別情報を記憶手段3から読み込んだ後、識別情報に対応したカスタマイズ情報を記憶手段3から読み込み(S1)、その後、記憶手段3から読み込んだひな型の構成情報とカスタマイズ情報とに基づいてバーチャルコンパニオンVCの表現データを生成してバーチャルコンパニオンVCを表現手段3に表現させる(S2)。ここでは、バーチャルコンパニオンVCが挨拶を行う画像を画像表示装置21に表示させるとともに、音声を音声出力装置から出力させる。
その後、入力手段1によるユーザMからの入力を待ち受ける第1の割り込み処理を行ってから(S3)、センシング手段8からの入力を待ち受ける第2の割り込み処理を行い(S4)、記憶手段3に記憶されている各種情報に基づいてバーチャルコンパニオンVCの表現データを更新し(S5)、バーチャルコンパニオンVCを表現手段2に表現させる(S6)。
ここにおいて、第1の割り込み処理では入力手段1による入力を監視しているが、ユーザMの指示により割り込みが発生すると、図5に示すように、割り込み内容を判断し(S11)、割り込み内容がシステムの終了指示である場合にはカスタマイズ情報などの更新した情報を記憶手段3へ記憶させ(S12)、バーチャルコンパニオンシステムVSを終了させる(S13)。
また、割り込み内容がユーザMからの問い合わせである場合には、図6に示すように、問い合わせ内容に対して即答可能であるか否かを記憶手段3に記憶されている情報から判断し(S21)、即答可能であれば、回答情報をもとに記憶手段3に記憶されている情報を更新し(S22)、その後、第1の割り込み処理(S3)に復帰し(S23)、第2の割り込み処理(S4)を行ってから、記憶手段3に記憶されている各種情報に基づいてバーチャルコンパニオンVCの表現データを更新し(S5)、バーチャルコンパニオンVCを表現させる(S6)ことでユーザMへの回答を行う。一方、即答不可能であれば、外部システム7へ問い合わせるために不足している情報をカスタマイズ情報やユーザMへの質問の返答などで補完して外部システム7にアクセスし(S24)、問い合わせ中に記憶手段3に記憶されている情報(記憶データ)を更新する(S25)。その後、第1の割り込み処理に復帰し(S26)、第2の割り込み処理(S4)を行ってから、記憶手段3に記憶されている各種情報に基づいてバーチャルコンパニオンVCの表現データを更新し(S5)、バーチャルコンパニオンVCを表現させる(S6)ことでユーザMへの回答を行う。なお、回答の内容や文章、声質、回答する際の動作などは、ひな型の構成情報をカスタマイズ情報に基づいて更新して表現データを生成する(S5)ことでユーザMの好みに合わせることができる。また、回答する情報を生成するために外部システム7へアクセスする必要がある場合などのように即答できないときには表現手段2に「少しお待ちください」のような音声を出力させるとともに、現在行っている処理に対応付けた動作を表示させるようにしてもよい。また、上述のようにユーザMへの質問を行う際には、ユーザへの問い合わせ要求を発生させ、ユーザMへの問い合わせ内容に対応して記憶手段3に記憶している情報(記憶データ)を更新し、自前の割り込みを発生する。その結果、バーチャルコンパニオンVCによるユーザMへ質問が行われる。
また、S11において割り込み内容がユーザMによる端末の変更の指示である場合には、図7に示すように、変更対象の端末を検索して接続できるか否か判断し(S41)、接続可能である場合には、カスタマイズ情報などの更新情報を記憶手段3に記憶させ(S42)、その後、識別情報およびカスタマイズ情報を変更対象の端末へ転送し(S43)、システムを終了する(S44)。一方、S41において、接続不可能であると判断された場合には、記憶手段3の記憶情報を更新し(S45)、その後、第1の割り込み処理に復帰し(S46)、第2の割り込み処理(S4)を行ってから、記憶手段3に記憶されている各種情報に基づいてバーチャルコンパニオンVCの表現データを更新し(S5)、バーチャルコンパニオンVCを表現させる(S6)ことでユーザMへ端末変更ができない旨の回答を行う。
S4において自前の入力待ちの割り込みが発生すると、入力情報の処理を行ってから記憶手段3に記憶されている情報を更新し、その後、第2の割り込み処理に復帰し、記憶手段3に記憶されている各種情報に基づいてバーチャルコンパニオンVCの表現データを更新し(S5)、表現データに基づいてバーチャルコンパニオンVCを表現させる(S6)。
なお、外部システム7が道案内システムであって、ユーザMから「△□へ行く道は?」のような問い合わせがあった場合にユーザMへ回答するためのバーチャルコンパニオンVCの表現方法として、カスタマイズ情報と端末の特性情報に基づいて「次の角を右に」、「次の角を左に」のように音声で回答する方法や、地図を表示して道すじを示したり、様々な表現方法が考えられるが、携帯端末を利用している場合には画面が小さいので地図を表示するのは困難である。このような場合、例えばユーザMがインターネットカフェのようなパソコンを利用できる場所に着いたときに、ユーザMが現時点で使用しているバーチャルコンパニオンシステムVSに対してパソコンをバーチャルコンパニオンシステムとして利用する旨の入力を行えばよい。また、携帯端末に比べて画面が大きくユーザMの利用可能なパソコンのような端末をバーチャルコンパニオンシステムVSが検索してユーザMの近くに該当するパソコンが存在したときに、バーチャルコンパニオンシステムVSがその旨をユーザMに対してバーチャルコンパニオンVCを通じて伝え、現時点でバーチャルコンパニオンシステムVSとして用いている携帯端末に無線LANなどでネットワーク接続して地図を表示させるようにしてもよい。また、バーチャルコンパニオンシステムVSとして用いている端末が携帯端末であり、表現手段2として画像表示装置21および音声出力装置の他に、ユーザMへ振動を与えることが可能な振動装置を備えている場合には、道案内の途中の過程においてユーザMへ交差点で曲がることを指示する時やユーザMが間違った道に入った時に、バーチャルコンパニオンVCがユーザMを呼びとめたりユーザMへ注意を喚起するのと併せて振動装置からユーザMへ振動を与えるようにしてもよい。また、バーチャルコンパニオンシステムVSとして用いている端末が表現手段2としてユーザMの両手それぞれに装着可能な振動子や電極を備えている場合には、バーチャルコンパニオンVCがユーザMに曲がる方向を音声や画像で指示する際に、曲がる側の手に装着している振動子や電極へ信号を送ることで曲がる方向を指示するようにしてもよい。
ところで、表現手段2にて表現させるバーチャルコンパニオンVCのひな型(内部モデルのひな型)の構成情報に関して、図8に示すようにレベルの異なる複数の構成情報を記憶手段3に記憶させ、これら構成情報の階層的な多重化を行うことにより詳細度の異なる複数のひな型の構成情報を記憶させておき、演算処理手段5が表現手段2の特性情報に応じたひな型を択一的に選択するように構成してもよい。ここにおいて、特性情報に応じてひな型を選択するにあたっては、バーチャルコンパニオンVCの表現力とユーザMへのレスポンス(応答時間や、画像表示装置21における表示の更新に要する時間など)とはトレードオフの関係にあり、レスポンスはカスタマイズ情報にも依存するものの表現力を高めると演算時間が長くなってレスポンスが悪くなるので、演算処理手段5が、表現手段2の特性情報に基づいて表現力とレスポンスとの関係から最適な詳細度のひな型を選択する選択機能を有するように構成することが好ましいこのような選択機能を有していることにより、端末の性能が高ければ性能の低い端末と同じレスポンスでより詳細度の高いひな型を利用したバーチャルコンパニオンVCを表現できる。例えば、バーチャルコンパニオンシステムVSとして用いる端末が携帯電話の場合には、表現手段2における画像表示装置21の画面が小さいので、バーチャルコンパニオンVCの外観を2次元的なキャラクタとして画像表示装置21に表示させるとともに、音声出力装置から音声を出力させればよい。これに対し、バーチャルコンパニオンシステムVSとして用いる端末がパソコンの場合には、画像表示装置21の画面が比較的大きいので、バーチャルコンパニオンVCとしては3次元的な形状データやモーションデータを持ったキャラクタを画像表示装置21に表示させるとともに音声出力装置22から音声を出力させれば、表現手段2の画像表示装置21に対してバーチャルコンパニオンVCを3次元的(立体的)に表示できるとともにバーチャルコンパニオンVCに細かなジェスチャを行わせることができるので、ユーザMにとってより親しみやすいバーチャルコンパニオンVCの表現が可能となる。
さらに説明すれば、例えば図9に示すように、ユーザMが使用する端末が携帯電話A1であって画像表示装置21が携帯電話の液晶ディスプレイにより構成されている場合のバーチャルコンパニオンVC(VC1)のひな型をMD1、ユーザMが使用する端末がノートパソコンA2であって画像表示装置21がノートパソコンの液晶ディスプレイにより構成されている場合のバーチャルコンパニオンVC(VC2)のひな型をMD2、ユーザMが使用する端末がリモコン(図示せず)を備えた大画面デジタルテレビA3であって画像表示装置21が大画面デジタルテレビA3の本体である場合のバーチャルコンパニオンVC(VC3)のひな型をMD3、ユーザMが使用する端末がリモコン(図示せず)を備え立体視を可能とする(つまり、3次元映像を表示する)ディスプレイ装置からなる高臨場感没入型提示装置A4であって画像表示装置21が高臨場感没入型提示装置A4の本体である場合のバーチャルコンパニオンVC(VC4)のひな型をMD4とし、ユーザM固有のカスタマイズ情報が共通であるとすると、端末の特性情報などに基づいて4種類のひな型MD1,MD2,MD3,MD4の詳細度を、〔ひな型MD1の詳細度〕<〔ひな型MD2の詳細度〕<〔ひな型MD3の詳細度〕<〔ひな型MD4の詳細度〕とすることにより、バーチャルコンパニオンVCの画像に関するパフォーマンスは、〔バーチャルコンパニオンVC1のパフォーマンス〕<〔バーチャルコンパニオンVC2のパフォーマンス〕<〔バーチャルコンパニオンVC3のパフォーマンス〕<〔バーチャルコンパニオンVC4のパフォーマンス〕となる。
以上説明した本実施形態のバーチャルコンパニオンシステムVSでは、ユーザMが用いる端末を変更する場合に変更前の端末から変更予定の端末へバーチャルコンパニオンVCに関するカスタマイズ情報を引き継ぐことができるので、端末の変更に伴ってカスタマイズ情報を再設定する必要がなく、端末が変わっても、ユーザMの好みに合ったバーチャルコンパニオンVCの外観上の特徴(例えば、髪型、服装など)や、声質、言葉遣い、モーションや話の間などが継続されることになるから、ユーザMにとっては同じバーチャルコンパニオンVCと対話が続くという意識が保たれ、使いやすいと感じることとなる。したがって、図10に示すようにユーザMが移動に伴って端末を変更した場合でも同じバーチャルコンパニオンVCと対話していると感じさせることが可能となる。なお、図10はバーチャルコンパニオンVCによる道案内のイメージ図であり、左上では端末としてパソコンを利用し、右下では端末として3次元映像を表示可能なディスプレイ装置を利用し、右上では端末としてヘッドセットを利用している。
また、記憶手段3あるいは記憶手段3と演算処理手段5との一部をネットワーク上のサーバに分担させるようにすれば、バーチャルコンパニオンシステムVSとして用いる端末に必要な記憶容量を少なくすることができ、バーチャルコンパニオンシステムVSとして用いる端末の制約が少なくなる。したがって、端末としてユーザMが負担なく持ち運ぶことができネットワークにアクセス可能な携帯端末や、ユーザMの移動した場所に設置されネットワークにアクセス可能な固定端末などの端末をバーチャルコンパニオンシステムVSに利用する場合において必要な記憶容量を少なくすることができる。なお、このように記憶手段3あるいは記憶手段3と演算処理手段5との一部を分担されたサーバは、各種演算処理機能の他、データのバックアップや整理など、様々な管理機能を有することが望ましい。
また、外部システム7がユーザMの周囲の環境に関する情報(環境情報)を勘案した総合的な演算によって得られた演算結果に関する情報をアクセス元(ここでは、バーチャルコンパニオンシステムVS)へ回答可能なシステムである場合には、バーチャルコンパニオンシステムVSが上述のセンシング手段8およびセンシング入力処理部52bを備えていることにより、バーチャルコンパニオンVCの振るまいに上記演算結果に関する情報が反映されることなる。例えば、ユーザMのいる場所で雨が降っているような場合、センシング手段8により雨が降っていることを示す環境情報を検出し、この環境情報を通信手段4を通して外部システム7へ送信することにより、外部システム7ではユーザMが雨に濡れないような道をユーザMへ案内する道順の候補として回答することが可能となる。
また、本実施形態では、演算処理手段5が上述の履歴情報処理部54を備えており、履歴情報処理部54が、演算処理手段5内部における処理内容を履歴情報として記憶データ入出力部56を介して記憶手段3に記憶させ、記憶データ入出力部56を介して記憶手段3から読み出した履歴情報を利用して学習を行って、履歴情報から繰り返される処理内容の手順を抽出したり、類似の処理をパターン化したり、ユーザMの好む表現を抽出したりして、カスタマイズ情報をユーザMの好みにより近づくように変更する機能を有しているので、ユーザMがバーチャルコンパニオンシステムVSを継続的に使用していく(端末は適宜変更してもよい)ことにより、履歴情報を利用して学習が行われバーチャルコンパニオンVCの表現がユーザMの好みにより近くなっていくので、ユーザMがバーチャルコンパニオンVCにより親しみを感じやすくなる。
さらに、本実施形態では、演算処理手段5が上述の差分情報処理部55を備えているので、ユーザMがバーチャルコンパニオンシステムVSとして利用する端末を変える場合に、変更のあったカスタマイズ情報のみを識別情報に対応付けて転送することも可能となる。
また、演算処理手段5が内部で扱う情報の一部を通信手段4を介して外部から閲覧可能とする管理機能を有するように構成すれば、他のバーチャルコンパニオンシステムVSの演算処理手段5で扱われる情報の一部を利用することができるので、高度な演算処理が高速で可能になる他、個々人の様々な特徴あるデータや、様々な場所の環境情報などより多くの情報を利用することができて、ユーザMの使いやすさが高まる。ここに、上述の管理機能を実現するようには、例えばアクセスを許可するパスワードをあらかじめ記憶手段3に登録しておき、外部からパスワードが送信されてきたときに記憶手段3からパスワードを読み出してパスワードが一致するか否かを判断し、パスワードが一致した場合のみ閲覧可能とし、パスワードが一致しない場合にはアクセスを拒否することを示す情報を通信手段4を介して返送するようにすればよい。すなわち、パスワードによって他のユーザの認証を行うことで情報を閲覧可能なユーザを制限すればよい。
(実施形態2)
本実施形態のバーチャルコンパニオンシステムVSの基本構成は図1に示した実施形態1の構成と同じであって、外部システム7として、それぞれ別のバーチャルコンパニオンシステムVSを利用する複数のユーザMが出席する会議のスケジュール調整を行うシステムを想定しており、演算処理手段5で扱う情報の内容などが相違する。ここに、各ユーザMそれぞれのバーチャルコンパニオンVCに対して異なる識別情報が設定されていることは勿論である。なお、バーチャルコンパニオンシステムVSの基本構成については上述のように実施形態1と同じなので図示および説明を省略する。
各々のバーチャルコンパニオンシステムVSは外部システム7として各ユーザMのスケジュールのデータベース(以下、スケジュールデータベースと称す)や会議室の予約データベースなどにアクセスする。またバーチャルコンパニオンシステムVS同士もコンピュータネットワークで接続され、相互にデータの授受を行う。
以下、本実施形態のバーチャルコンパニオンシステムVSの動作例について説明する。
例えば、あるユーザMが当該ユーザMのバーチャルコンパニオンシステムVSの入力手段1を通じて会議の関係者のリストと大まかな会議の日程や場所を入力すると、演算処理手段5は、記憶手段3のカスタマイズ情報記憶部33にスケジュール設定に関するカスタマイズ情報(例えば、スケジュール設定の条件、嗜好など)があれば該当するカスタマイズ情報を取得し、外部システム7としてユーザMのスケジュールデータベースに接続し、会議の関係者となる他のユーザのバーチャルコンパニオンシステムVSにスケジュール調整の要望を伝える。各々のバーチャルコンパニオンシステムVSは各々のユーザMのスケジュールデータベースやスケジュール調整のための条件を把握し、必要に応じて相互に連絡を行いながら会議の日程や場所を決定する。このような調整作業の大部分は、バーチャルコンパニオンシステムVS同士で行われるので、ユーザMが調整作業に要する時間をなくすことが可能となる。ただし、バーチャルコンパニオンシステムVSは、スケジュール設定において調整がうまくいかないなどの理由でどうしてもユーザMに連絡する必要がある場合にはユーザMに馴染みの深いバーチャルコンパニオンVC(ユーザMごとにカスタマイズ情報が設定されたバーチャルコンパニオンVC)を通じてユーザMに連絡をとる。また、ユーザMから調整状況の報告を求められた場合には、ユーザMに馴染みの深いバーチャルコンパニオンVCを通じて調整状況を報告することになる。
上述のスケジュール調整を行う場合の動作例について具体的に説明する。
ユーザMが「○×さんと▲日■時に会議をしたい」旨の指示を入力手段1により入力すると、演算処理手段5では、入力手段1から入力された指示パターンに基づいて外部システム7として○×さんのバーチャルコンパニオンシステムを設定し、API情報に基づいてスケジュール調整に必要な情報を確認し、ユーザMからの指示で十分か否か、必要な情報が記憶手段3に記憶されているかを調べ、不足している情報があれば、ユーザMに問い合わせる。また、バーチャルコンパニオンシステムVSは自身のユーザMのスケジュールデータベースについても外部システム7として設定し、そのAPI情報も調べる。そして、各バーチャルコンパニオンシステムVSは、互いのスケジュールデータベースを利用して相互に情報を授受しながらスケジュール調整を行う。スケジュール調整の段階でどうしてもユーザMに問い合わせる必要がある場合は、表現手段2を通じてそれぞれ対応するユーザMに問い合わせる。各ユーザMのスケジュールに空きがあれば、スケジュールデータベースに会議を登録して、その結果を必要があればユーザMに伝える。いずれかのユーザMのスケジュールに空きがないような場合には、調整作業が必要となるが、カスタマイズ情報に基づいて会議の優先度や優先すべき会議相手などの情報があれば、それらの情報に基づいてスケジュールの調整作業を行う。そして、代替案が設定できれば、バーチャルコンパニオンVCを通じてユーザMへ確認をとり、問題なければスケジュールデータベースへ会議を登録する。
しかして、本実施形態では、複数の関係者が参加する会議の日程や場所の調整などの煩雑な作業に関して、ユーザM自身の作業を少なくすることができ、調整作業を効率的に行うことが可能となり、ユーザMの満足度を向上させることが可能となる。したがって、複数のユーザMは、自分たちの参加する会議の日程や場所などの調整を各自のバーチャルコンパニオンシステムVSのバーチャルコンパニオンVCに実行してもらっていると感じることとなる。
なお、スケジュール調整は頻繁に行われるので、上述の履歴情報処理部55に、スケジュール調整の履歴情報を履歴情報記憶部36に蓄積(記憶)させる機能、スケジュール調整の履歴情報をカスタマイズ情報に反映させる学習機能を持たせておけば、利用するうちに次第に調整作業の効率が向上していき、利便性が一層高まる。また、上述の優先度に変更があったり、新たな優先条件が設定された場合には、これらをカスタマイズ情報に反映させることにより、同様のスケジュール調整を行う際のユーザMへの問い合わせなどを減らすことが可能となり、時間短縮を図れるとともにユーザMの負担の軽減を図れる。
(実施形態3)
本実施形態のバーチャルコンパニオンシステムVSの基本構成は図1に示した実施形態1の構成と同じであって、外部システム7として他のバーチャルコンパニオンシステム7を想定し、他のバーチャルコンパニオンシステムVSのユーザM(M2)を擬人化したキャラクタをユーザM自身のバーチャルコンパニオンVCとともに表現手段2へ表現させる機能を演算処理手段5に持たせたものであり、演算処理手段5で扱う情報の内容などが相違する。要するに、本実施形態における演算処理手段5は、通信手段4を介して接続した他のバーチャルコンパニオンシステムVSのユーザM2に関する情報を入手する機能と、他のユーザM2に関する情報に基づいてキャラクタの表現データを生成する機能とを追加してあり、記憶手段3には他のユーザM2に関する情報を保持する他ユーザ情報記憶部を追加してある。なお、バーチャルコンパニオンシステムVSの基本構成については上述のように実施形態1と同じなので図示および説明を省略する。
しかして、本実施形態では、他のバーチャルコンパニオンシステムVSのユーザM2を擬人化したキャラクタをユーザM(M1)自身のバーチャルコンパニオンVCとともに表現手段2に表現させて対話させることができるので、他のユーザM2との物理的な距離(および心理的な距離)にかかわらず他のユーザM2との直感的で直接的な情報交換が可能となるとともに、バーチャルコンパニオンVCによるサポートも受けることができる。したがって、例えばバーチャルコンパニオンVCを同時通訳として使うような場合、通訳(翻訳)するのに要する時間のために生じる不自然な間によりユーザM1が違和感を感じにくくなり、また、他のユーザM2の言葉以外の表現、例えば表情やジェスチャを翻訳ととともにユーザM1に伝えたりすることができ、より自然で使いやすいインタフェースとすることが可能となる。なお、ユーザM2に関する情報が得られない場合は、ユーザM2の代理人として、ユーザM2のバーチャルコンパニオンVCの情報を用いてキャラクタを作成することで、同様の使いやすさを実現できる。
(実施形態4)
本実施形態のバーチャルコンパニオンシステムVSの基本構成は図1に示した実施形態1の構成と同じであって、外部システム7としてユーザMの自宅内の各種機器(例えば、洗濯機、エアコン、冷蔵庫、照明器具など)を想定し、ユーザMが外出先などから各種機器の設定を可能とするものであり、演算処理手段5で扱う情報の内容などが相違する。なお、バーチャルコンパニオンシステムVSの基本構成については上述のように実施形態1と同じなので図示および説明を省略する。
また、本実施形態のバーチャルコンパニオンシステムVSは、演算処理手段5が外部システム7をその外観に関係なく外部システム7をイメージできるように擬人化してバーチャルコンパニオンVCとともに表現手段2へ表現させる機能を有している点に特徴がある。例えば、外部システム7が自宅の洗濯機である場合には、洗濯機を擬人化した洗濯婦のキャラクタをバーチャルコンパニオンVCとともに表現手段2へ表現させる。ここに、洗濯機に関する情報(例えば、どのような種別の洗い方があるか、現在の洗濯物の量、洗い方と洗濯時間・使用水量・コストとの関係など)やユーザMからの洗濯方法の指示内容などは洗濯機を擬人化したキャラクタとバーチャルコンパニオンVCとの会話によってユーザMに提示される。ここに、バーチャルコンパニオンシステムVSのユーザMは、表現手段2の画像表示装置21に表示されるバーチャルコンパニオンVCとキャラクタとの互いの対話状況を確認しながら、必要に応じて、バーチャルコンパニオンVCとキャラクタとの対話に口をはさむ(つまり、割り込みする)ことが可能となる。一例を挙げれば、キャラクタが「ごしごし洗いだと1時間かかりますが、どうしますか」と問いかけ、カスタマイズ情報に基づいて生成された表現データによるバーチャルコンパニオンVCが「ごしごし洗いでお願いします」というように答える。ここで、ユーザMが、ごしごし洗いでは困ると感じた場合は、「普通洗いにして」というような指示を入力手段1により指示することにより、ごしごし洗いの設定から普通洗いの設定に変更でき、このような変更を指示した場合には、カスタマイズ情報が適宜更新される。ごしごし洗いで構わない場合には、そのままにしておくか、ごしごし洗いで良い旨を入力手段1により入力すればよい。
なお、上述の例のように外部システム7の一つである洗濯機を外出先からの指示で動かしたい場合、バーチャルコンパニオンシステムVSのユーザMは例えば入力手段1により「洗濯したい」旨の入力を行う。すると、バーチャルコンパニオンシステムVSは洗濯機にアクセスし、取得したAPI情報に基づいて洗濯婦のひな型から洗濯婦の形態に関するデータおよび行動に関するデータを生成して、洗濯婦のキャラクタをバーチャルコンパニオンVCとともに表現手段2へ表現させる。この際、洗濯機からの情報として、現在の洗濯物の量、洗濯方法の候補、洗濯にかかる時間などが得られれば、これらの情報をキャラクタがバーチャルコンパニオンVCに伝えているようにユーザMへ提示する。
また、外部システム7がエアコンである場合に、ユーザMが入力手段1により空調を適温に設定するような指示を与えた場合、演算処理手段5ではカスタマイズ情報に基づいて具体的な数値に変換して通信手段4を介して外部システム7へ送信することになるが、外部システム7から返送された情報に基づいてキャラクタを表現させる(例えば、キャラクタを表示させるとともに、「冷房の温度を少し高くした方が、快適でコストも安くなります」というような音声を出力させる)ことにより、ユーザMの気が変わったりユーザMが新しい判断を加えたりするときにユーザMのリアルタイムの要望を簡単に反映することができて、利便性が高まる。
しかして、本実施形態では、演算処理手段5が外部システム7をユーザMと対話するキャラクタとして表現手段2へ表現させる機能を有しているので、外部システム7をバーチャルコンパニオンVCと同様にユーザMが対話可能なキャラクタとして表現手段2に表現させることにより、ユーザMが外部システム7をユーザMの質問や希望に応える専門家と感じやすくなり、外部システム7としての機器を直接操作するのではなく、人と相談しながら作業を依頼するような感覚で操作できるため、ユーザMにとってより使いやすいユーザ・インタフェースとなる。ここに、バーチャルコンパニオンVCを秘書とすれば、外部システム7を擬人化したキャラクタとして表現することにより、外部システム7を、ユーザMに機器ではなくそれぞれの仕事をそれぞれの場所でこなすエキスパートとして感じさせることが可能となる。
(実施形態5)
本実施形態では、実施形態1にて説明したバーチャルコンパニオンシステムVSにおける記憶手段3の一部をネットワーク上のサーバS(図11参照)に分担させ、クライアント/サーバ型の構成としている点が相違する。なお、バーチャルコンパニオンシステムVSの基本構成については実施形態1と同じなので図示および説明を省略する。
本実施形態では、図11に示すように、複数のユーザM(M1,M2,M3)それぞれのバーチャルコンパニオンシステムVSの記憶手段3それぞれの一部をサーバSに分担させてあるので、バーチャルコンパニオンシステムVSとして用いる端末の性能が比較的低くても使用することが可能となるとともに、サーバSにてデータのバックアップや整理などのデータ管理を行うことにより、高機能性と安定性を両立することができる。
しかして、本実施形態では、ユーザMの移動により利用する端末が様々に変化する場合でも、個々の端末それぞれに最適なパフォーマンスでバーチャルコンパニオンVCを表現でき、また、バーチャルコンパニオンシステムの処理プログラムをサーバSから端末へダウンロードすることが可能となるほか、サーバSでのバックアップによりデータの安全性が保たれるため、ユーザMの移動範囲に対する制約が一層減少し、ユーザMの使いやすさが高まる。
さらに、サーバSに多数のバーチャルコンパニオンシステムVSのデータを保持することが可能なので、特定あるいは不特定のバーチャルコンパニオンシステムVSの情報を外部に公開して共有利用することが容易となる。このようにして様々なバーチャルコンパニオンシステムVSの保持している経験やノウハウ、問題解決事例などを利用したり、広範囲のセンシング情報(詳細な天気図や気温、交通渋滞状況など)を利用したり、検索などの演算処理を並列化したりと、個別のバーチャルコンパニオンシステムVSでは困難な高性能なユーザインタフェース機能を実現することが可能となる。
要するに、バーチャルコンパニオンシステムVSの情報をネットワークを介して閲覧可能とすれば、多数のバーチャルコンパニオンシステムVSが共動して処理を行ったり、個別のセンシング情報を持ち寄ることにより、広範囲の状況を把握したり、他者のリソースを利用して広い範囲の検索を容易に実現したりする方法を提供することができる。このように多数の他者のリソースを利用することによって高度な演算処理が高速で可能になる他、個々人の様々な特徴あるデータや、様々な場所の環境情報を利用することができて、ユーザMの使いやすさが高まる。
また、個々人のリソースの提供を有料化して管理したり、リソース利用の統計情報を取ったりすることにより、新たなビジネスモデルの構築も可能となる。例えば、個人のバーチャルコンパニオンシステムVSに関する情報を全部あるいは部分的に公開して他者に提供することに対して、識別情報(ID)を利用して統計的に活用度合いを評価することも可能であり、公開した情報の量、質や活動度合い、評価などに応じて、個人に報酬を支払ったり、利用料を課金したりするようなシステムを構築してもよい。また、匿名のバーチャルコンパニオンシステムVSとしてだけでなく、バーチャルコンパニオンシステムVSの所有者の情報を活用すると、ある有名人が育てたバーチャルコンパニオンVCを熱烈なファンが自分でも使ってみたいというような要望にも対応できて、様々な使いやすいユーザインタフェースが供給できるという効果が期待できる。
ところで、上記各実施形態では、バーチャルコンパニオンVCの形態として人間を採用しているが、バーチャルコンパニオンVCの形態は人間に限らず、ペットやロボットでもよく、形態に応じたひな型を記憶手段3に記憶させておけばよい。
なお、バーチャルコンパニオンシステムVSを図12に示すような人形型のインタフェースとして、ひな型となる人形本体BのシリアルNoをユーザの識別情報(ID)とし、人形本体Bに着脱自在な髪(かつら)や服などのパーツP1,P2,…に無線タグ(RFID)やバーコードなどで属性を設定しておき、人形本体Bに所望のパーツP1,P2,…を着けることによりカスタマイズ情報を初期設定できるように構成することも考えられる。この場合、人形本体Bに入力手段1、音声出力装置、記憶手段3、演算処理手段5、通信手段4などを設けておけばよい。