以下に、本開示のプログラム及び情報処理装置について、その実施形態を示す図面に基づいて詳述する。
(実施形態1)
図1は情報処理システムの構成例を示す模式図である。本実施形態の情報処理システムは、多数のユーザが自身の端末を用いて他のユーザの端末との間でやり取りを行うシステムである。本実施形態の情報処理システムでは、各ユーザの端末に各ユーザに対応するアバターが設定してあり、各ユーザは、端末を介して他のユーザとやり取りを行うだけでなく、他のユーザのアバターともやり取りを行うことができる。よって、各ユーザの端末に設定されている各ユーザのアバターは、端末を介して他のユーザとやり取りを行うだけでなく、他のユーザのアバターともやり取りを行うことができる。なお、やり取りとは例えば対話処理に係る情報の送受信、インターネット等のネットワークN上で公開されている情報の収集等である。本実施形態の情報処理システムは多数のユーザ端末10,20を含み、ユーザ端末10,20はネットワークNを介して相互に情報の送受信を行う。以下では、1人のユーザを自身とし、他のユーザを他者とし、自身のユーザ端末を自端末10とし、他者のユーザ端末を他端末20として説明する。自端末10及び他端末20は同様のユーザ端末を用いることができ、例えばスマートフォン、タブレット端末、パーソナルコンピュータ、携帯ゲーム機等を用いることができる。また、自端末10及び他端末20は情報処理システムに用いられる専用端末で構成されてもよい。本実施形態の情報処理システムにおいて、ユーザ端末10,20のそれぞれは、各端末10,20のユーザにおけるユーザ固有の情報(ユーザ固有情報)を収集する処理、ネットワークN経由で他のユーザ端末10,20又は他の装置との間で情報を送受信する処理等、種々の情報処理及び通信処理を行う。
図2は自端末10の構成例を示すブロック図である。自端末10は、制御部11、記憶部12、処理部13、通信部14、入力部15、表示部16、スピーカ17、マイク18、読み取り部19等を含み、これらの各部はバスを介して相互に接続されている。制御部11は、CPU(Central Processing Unit)、MPU(Micro-Processing Unit)又はGPU(Graphics Processing Unit)等の1又は複数のプロセッサを含む。制御部11は、記憶部12に記憶してある制御プログラム12Pを適宜実行することにより、本開示の情報処理装置が行うべき種々の情報処理、制御処理等を自端末10に実行させる。
記憶部12は、RAM(Random Access Memory)、フラッシュメモリ、ハードディスク、SSD(Solid State Drive)等を含む。記憶部12は、制御部11が実行する制御プログラム12P及び制御プログラム12Pの実行に必要な各種のデータ等を予め記憶している。また記憶部12は、制御部11が制御プログラム12Pを実行する際に発生するデータ等を一時的に記憶する。更に記憶部12は、後述する固有情報DB(データベース)12a、宛先情報DB12b及び言動履歴DB12cを記憶する。固有情報DB12a、宛先情報DB12b及び言動履歴DB12cは、自端末10に接続された外部記憶装置に記憶されてもよく、自端末10が通信可能な外部記憶装置に記憶されてもよい。更に記憶部12は、自端末10のユーザに対応付けて設定されたアバターに関する情報を記憶する。アバターに関する情報は、アバターを表示するための画像データ、アバターに発話させる際の音声データ、アバターの表示画像に動きを付加するためのモーションデータ等を含む。
処理部13は、対話処理部13a、固有情報収集部13b、言動実行部13c、履歴出力部13d等を含む。処理部13の各部は、例えば記憶部12に記憶してある制御プログラム12Pを制御部11が実行することによって実現されてもよいし、これらの一部を専用のハードウェア回路で実現してもよい。対話処理部13aは、自端末10のユーザとの対話を行う。例えば対話処理部13aは、マイク18を介した音声入力又は入力部15を介した入力(例えばテキスト入力)によってユーザからの対話情報を取得し、取得した対話情報に対する返答情報をスピーカ17を介した音声出力又は表示部16に表示することによってユーザに返答し、自端末10のユーザとの対話を行うように構成されている。なお、対話処理部13aは、ユーザからの対話情報に対して行うべき返答情報を予めテンプレートとして複数記憶しておき、ユーザからの対話情報に応じた返答情報をテンプレートから選択して出力することにより対話を行ってもよい。また対話処理部13aは、ユーザからの対話情報に応じた返答情報を、後述する固有情報DB12aに蓄積されたユーザ固有情報に基づいて生成して出力することにより対話を行ってもよい。更に、対話処理部13aは、挨拶メッセージ及び質問メッセージ等の対話情報をスピーカ17を介した音声出力又は表示部16に表示することによってユーザに話しかけ、マイク18を介した音声入力又は入力部15を介した入力によってユーザからの返答情報を取得することにより、自端末10のユーザとの対話を行う。この場合、対話処理部13aは、挨拶メッセージ及び質問メッセージ等の対話情報を予めテンプレートとして複数記憶しておき、任意のテンプレートを選択して出力することにより、ユーザに話しかけてもよい。
対話処理部13aは、他端末20のユーザ又は他端末20のユーザのアバター(他端末20のアバター)との対話も行う。例えば対話処理部13aは、他端末20から送信された、他端末20のユーザ又は他端末20のアバターからの対話情報を取得し、取得した対話情報に対する返答情報を他端末20へ返信することによって他端末20のユーザ又はアバターに返答し、他端末20のユーザ又はアバターとの対話を行う。この場合にも、対話処理部13aは、他端末20のユーザ又はアバターからの対話情報に応じた返答情報をテンプレートから選択して出力することにより対話を行ってもよいし、後述する固有情報DB12aに蓄積されたユーザ固有情報に基づいて返答情報を生成して出力することにより対話を行ってもよい。また、対話処理部13aは、挨拶メッセージ及び質問メッセージ等の対話情報を他端末20のユーザ又はアバター宛に送信することによって他端末20のユーザ又はアバターに話しかけ、他端末20のユーザ又は他端末20のアバターからの返答情報を取得することにより、他端末20のユーザ又はアバターとの対話を行う。この場合にも、対話処理部13aは、予め記憶してある対話情報を選択して他端末20のユーザ又はアバター宛に送信することにより、他端末20のユーザ又はアバターに話しかけてもよい。
固有情報収集部(収集部)13bは、自端末10のユーザの言動に基づいて、自端末10のユーザのユーザ固有情報を収集する。例えば固有情報収集部13bは、対話処理部13aが自端末10のユーザとの間で行った対話内容からユーザ固有情報を収集する。また、固有情報収集部13bは、例えば対話処理部13aによって、ユーザ固有情報に関する質問を自端末10のユーザに行い、質問に対する回答を取得した場合に、取得した回答内容からユーザ固有情報を収集してもよい。更に、固有情報収集部13bは、自端末10にインストールされている各種のアプリケーションプログラムによって実行可能な処理に係る情報からユーザ固有情報を収集してもよい。例えば、固有情報収集部13bは、自端末10が他端末20との間で送受信した電子メール、LINE(登録商標)メッセージ及びLINEスタンプ、SNS(Social Network Service)に対して自端末10のユーザが投稿したメッセージ及び閲覧したメッセージ、ネットワークNを介して提供される各種サービスによって送受信されるデータ等からユーザ固有情報を収集してもよい。また固有情報収集部13bは、自端末10のユーザが行った行動に基づいてユーザ固有情報を収集してもよい。例えば、自端末10のユーザがLINEメッセージを受信したときに所定のLINEスタンプ又はLINEメッセージを返信する場合、固有情報収集部13bは、LINEメッセージの受信に対して所定のLINEスタンプ又はLINEメッセージを返信することをユーザ固有情報として取得する。ユーザ固有情報は例えば、ユーザの属性、行動履歴、趣味、好み、行動傾向、思考傾向等を含む。
言動実行部(実行部)13cは、例えば自端末10のユーザからの指示又は行動傾向に従って、他端末20のユーザ又は他端末20のアバターとの間で対話を行い、また、ネットワークN上で公開されている各種の情報を収集する。具体的には、言動実行部13cは、他端末20を介して他のユーザとの間で情報の送受信を行い、他端末20を介して他端末20に設定してあるアバター(他端末20の言動実行部23c)との間で情報の送受信を行うことにより、他端末20のユーザ又はアバターとの対話を行う。なお、言動実行部13cは、対話処理部13aを用いて、他端末20のユーザ又はアバターとの対話を行う。また、言動実行部13cは、ネットワークN経由で各種の情報を検索して必要な情報を取得する。なお、屋外又は室内でカメラで撮影された撮影画像がネットワークN上で公開されており、このような撮影画像をネットワークN経由で取得することにより、言動実行部13cは擬似的に撮影場所に外出できる。よって、言動実行部13cは、自端末10のアバターを介して擬似的な外出処理を実行できる。
履歴出力部(出力部)13dは、言動実行部13cが実行した言動の結果に係る履歴情報を、例えば表示部16又はスピーカ17にて出力する。例えば、履歴出力部13dは、他端末20を介して他のユーザ又は他のユーザのアバターとの間で送受信した情報(対話情報)、ネットワークN経由で収集した各種の情報を出力する。なお、履歴出力部13dは、出力すべき情報に画像データ又はテキストデータ等が含まれる場合、画像データ又はテキストデータに基づく画面を表示部16に表示し、音声データ又はテキストデータが含まれる場合、スピーカ17にて音声出力する。
通信部14は、有線通信又は無線通信によってネットワークNに接続するためのインタフェースであり、ネットワークNを介して外部装置との間で情報の送受信を行う。入力部15は、ユーザによる操作入力を受け付け、操作内容に対応した制御信号を制御部11へ送出する。表示部16は、液晶ディスプレイ又は有機ELディスプレイ等であり、制御部11からの指示に従って各種の情報を表示する。入力部15及び表示部16は一体として構成されたタッチパネルであってもよい。
スピーカ17は、増幅器等を有する音声出力装置であり、制御部11からの指示に従った音声データを増幅器にて増幅した後、音声出力する。マイク18は、増幅器及びA/D(アナログ/デジタル)変換器等を有する音声入力装置であり、周囲の音声を収集してアナログの音声データを取得し、取得した音声データを増幅器にて増幅し、A/D変換器にてデジタルの音声データに変換して音声データを取得する。マイク18は、制御部11からの指示に従って集音を行い、取得した音声データを逐次制御部11へ送出する。スピーカ17及びマイク18は、自端末10に内蔵されていてもよいし、ケーブル等を介して自端末10に外付けされていてもよいし、一体として構成されたヘッドセットであってもよい。
読み取り部19は、CD(Compact Disc)-ROM、DVD(Digital Versatile Disc)-ROM又はUSB(Universal Serial Bus)メモリを含む可搬型記憶媒体1aに記憶された情報を読み取る。記憶部12に記憶される制御プログラム12P及び各種のデータは、制御部11が読み取り部19を介して可搬型記憶媒体1aから読み取って記憶部12に記憶してもよい。また、記憶部12に記憶される制御プログラム12P及び各種のデータは、制御部11が通信部14を介して外部装置からダウンロードして記憶部12に記憶してもよい。更に、制御プログラム12P及び各種のデータを半導体メモリ1bに記憶しておき、制御部11が半導体メモリ1bから読み出して記憶部12に記憶してもよい。
図3及び図4は自端末10に記憶されるDB12a~12cの構成例を示す模式図である。図3は固有情報DB12aを、図4Aは宛先情報DB12bを、図4Bは言動履歴DB12cをそれぞれ示す。固有情報DB12aは、自端末10のユーザに関するユーザ固有情報を記憶する。ユーザ固有情報は、固有情報収集部13bが自端末10のユーザから収集して固有情報DB12aに記憶される。図3に示す固有情報DB12aは、情報ID列、情報内容列、固有情報列等を含む。情報ID列は、ユーザ固有情報のそれぞれに予め割り当てられた識別情報を記憶する。情報内容列は、ユーザ固有情報の内容、種別を示す情報を記憶する。なお、それぞれの情報IDに対応するユーザ固有情報の内容が明らかであれば、固有情報DB12aに情報内容列を設けなくてもよい。固有情報列は、固有情報収集部13bが収集したユーザ固有情報を記憶する。固有情報DB12aに記憶される情報ID及び情報内容は予め記憶されており、固有情報は、固有情報収集部13bが各種のユーザ固有情報を取得した場合に、制御部11によって記憶又は更新される。
図3に示す固有情報DB12aでは、ユーザ固有情報として、氏名,年齢,性別等を含む属性、住所,勤務先会社名,通学先学校名,家族構成,家族の情報等を含む個人情報、性格,趣味,好きなこと,好きなもの,好きな食べ物,好きな飲み物,好きな果物,嫌いなこと,嫌いなもの,嫌いな食べ物,嫌いな飲み物,嫌いな果物等を含む嗜好に関する情報、嬉しかったこと,怒ったこと,気になっているもの,気になっている場所等を含む感情に関する情報等が登録される。固有情報DB12aの登録内容はこれらに限定されず、ユーザに関する種々の情報を登録することができるように構成されている。例えば、年収,通勤経路,会社での役職,同僚の情報及び上司の情報等を含む勤務先の情報、ペットに関する情報、行った場所を含む行動履歴及び行動傾向,購買した商品を含む購買履歴及び購買傾向,人柄及び考え方等のユーザの内面に関する情報等も固有情報DB12aに登録されてもよい。また、固有情報DB12aは、登録するユーザ固有情報の種類等に応じて複数のDBに分けて構成してもよい。
宛先情報DB12bは、自端末10がネットワークN経由で情報の送受信を行う際に用いる他端末20の宛先情報を記憶するアドレス帳である。図4Aに示す宛先情報DB12bは、端末ID列、所有者名列、宛先情報列等を含む。端末ID列は、各他端末20に予め割り当てられた識別情報を記憶し、所有者名列は、端末IDに対応付けて各他端末20のユーザ(他者)の氏名を記憶する。宛先情報列は、端末IDに対応付けて各他端末20に割り当てられた宛先情報を記憶する。宛先情報は、例えば各他端末20に割り当てられた電話番号、メールアドレス、IP(Internet Protocol Address )アドレス、LINE-ID等を用いることができる。宛先情報DB12bに記憶される端末IDは、制御部11が新たな他端末20の情報を入力部15又は通信部14を介して取得した場合に、制御部11によって発行されて記憶される。宛先情報DB12bに記憶される端末ID以外の各情報は、制御部11が入力部15又は通信部14を介して追加又は変更の指示を取得する都度、制御部11によって追加又は変更される。宛先情報DB12bの記憶内容は図4Aに示す例に限定されず、他端末20に関する各種の情報を記憶することができる。
言動履歴DB12cは、言動実行部13cが実行した言動の結果に係る履歴情報を記憶する。図4Bに示す言動履歴DB12cは、言動ID列、言動内容列、相手情報列、場所情報列、言動データ列等を含む。言動ID列は、言動実行部13cが実行した言動(言動処理)のそれぞれに予め割り当てられた識別情報を記憶し、言動内容列は言動IDに対応付けて、言動実行部13cが実行した言動(言動処理)の内容を示す情報を記憶する。なお、言動の内容は、他のユーザ又は他のユーザのアバターとの間で行った対話、ネットワークN経由で擬似的に行った外出等を含む。相手情報列は、言動IDに対応付けて、言動実行部13cが実行した言動における相手の情報を記憶する。言動における相手は、言動実行部13cが実行した対話の相手、言動実行部13cが実行した外出の同伴者等であり、相手の他端末20の端末ID、所有者名又は宛先情報が相手情報列に記憶される。場所情報列は、言動IDに対応付けて、言動実行部13cが実行した言動における場所の情報を記憶する。言動における場所は、例えば言動実行部13cが擬似的に行った外出先の場所であり、ネットワークN経由で取得した撮影画像の撮影場所の情報が場所情報列に記憶される。言動データ列は、言動IDに対応付けて、言動実行部13cが実行した言動における言動データを記憶する。言動データは例えば、他のユーザ又は他のユーザのアバターとの間で行った対話に関する対話データ(音声データ又はテキストデータ)、ネットワークN経由で取得した撮影画像(画像データ)等である。なお、言動データは、言動履歴DB12cに記憶される構成に限らず、記憶部12の所定領域又は自端末10に接続された外部記憶装置に記憶してもよい。この場合、言動データ列には、言動データ(対話データ又は撮影画像等)を読み出すための情報(例えばデータの記憶場所を示すファイル名)を記憶してもよい。言動履歴DB12cの記憶内容は図4Bに示す例に限定されず、言動履歴に関する各種の情報を記憶することができる。
他端末20は、自端末10の上述した構成と同様の構成を有しており、自端末10が有する各構成部11~19は、他端末20において各構成部21~29として説明を省略する。
以下に、それぞれのユーザ端末10,20が行う処理について説明する。なお、自端末10及び他端末20はそれぞれ同様の処理を行うので、以下では代表して自端末10が行う処理を例に説明する。図5は、自端末10によるユーザ固有情報の収集処理の手順例を示すフローチャート、図6は画面例を示す模式図である。以下の処理は、自端末10の記憶部12に記憶してある制御プログラム12Pに従って制御部11によって実行される。自端末10の制御部11は、適宜のタイミングで固有情報収集部13bによって自端末10のユーザに関するユーザ固有情報を収集する。適宜のタイミングとは例えば、1週間に1回、1ヶ月に1回等の定期的なタイミングであってもよいし、固有情報DB12aにある程度のユーザ固有情報が蓄積されるまで連続したタイミングであってもよい。
例えば固有情報収集部13bは、対話処理部13aによって自端末10のユーザとの対話を行い、自端末10のユーザと対話すべき対話メッセージ(対話情報)を生成する(S11)。ここでの対話メッセージは、「こんにちは。元気?」のような挨拶メッセージであってもよいし、ユーザからの対話メッセージに対する応答メッセージであってもよい。また、固有情報収集部13bは、ユーザ固有情報を収集できるような質問メッセージを対話メッセージとして生成してもよい。固有情報収集部13bは、生成した対話メッセージをスピーカ17又は表示部16にて出力する(S12)。固有情報収集部13bは、対話メッセージが音声データを含む場合、スピーカ17から音声出力し、対話メッセージが画像データ又はテキストデータ等の表示用データを含む場合、表示部16に表示する。このとき固有情報収集部13b(又は対話処理部13a)は、例えば記憶部12に記憶してあるアバターに係る画像データに基づいて、図6に示すように、自端末10のユーザのアバターの画像を表示部16に表示してもよい。また固有情報収集部13b(又は対話処理部13a)は、記憶部12に記憶してあるアバターに係る音声データに基づく音声にて対話メッセージをスピーカ17から音声出力してもよい。この場合、ユーザは、図6に示す画面に表示されたアバターと対面して対話しているように感じることができる。なお、アバターの表示画像は、自端末10のユーザの実写画像、人間に似たキャラクタの画像、動物等の画像、動物等のキャラクタの画像等を用いることができる。
固有情報収集部13bは、出力した対話メッセージに対してユーザが回答した情報をマイク18又は入力部15にて取得する(S13)。なお、固有情報収集部13bは、ユーザが発話によって回答した場合、回答情報をマイク18を介した音声入力にて取得し、ユーザが入力部15を介して回答した場合、回答情報を入力部15を介して取得する。そして固有情報収集部13bは、取得した回答情報からユーザ固有情報を抽出する(S14)。例えば、固有情報収集部13bが「お名前を教えてください」と質問メッセージ(対話メッセージ)を音声出力し、ユーザが「○○○○です」と発話した場合、固有情報収集部13bは、ユーザの回答情報「○○○○です」から、ユーザの氏名(ユーザ固有情報)「○○○○」を抽出する。また対話処理部13aとの対話でユーザが「今日、お父さんと喧嘩したよ」と発話した場合、固有情報収集部13bは、ユーザの発話内容から、最近の出来事に関する情報(ユーザ固有情報)として「今日お父さんと喧嘩した」を抽出する。また、例えばユーザが「今日は○○の映画を観たよ」と発話した場合、固有情報収集部13bは、ユーザの発話内容から、ユーザが最近観た映画の情報(ユーザ固有情報)として「○○」を抽出する。
固有情報収集部13bは、取得したユーザ固有情報を、情報ID及び情報内容に対応付けて固有情報DB12aに記憶する(S15)。例えば、固有情報DB12aに登録すべきユーザ固有情報に対応する質問メッセージが記憶部12に予め記憶してあり、固有情報収集部13bは、各質問メッセージについて自端末10のユーザに質問を行うことにより、固有情報DB12aに登録すべきユーザ固有情報を収集できる。また、対話処理部13aが自端末10のユーザと対話を行う都度、固有情報収集部13bは、ユーザによる対話内容からユーザ固有情報を収集でき、固有情報DB12aに蓄積できる。
上述した処理により、ユーザとの対話内容からユーザ固有情報が逐次抽出されて登録されるので、ユーザが意識することなくユーザ固有情報の蓄積が可能である。なお、固有情報DB12aに記憶されるユーザ固有情報は、既に固有情報DB12aに記憶してある場合、上書きして記憶してもよいし、取得日時と共に時系列データとして記憶(蓄積)してもよい。このようにユーザに関する各種の情報(ユーザ固有情報)を蓄積することにより、自端末10に設定されたアバター(ユーザのアバター)に、ユーザ固有情報に基づく言動を行わせることができる。即ち、自端末10のユーザが行う可能性の高い言動を自端末10のアバターに行わせることができる。なお、ユーザ固有情報を収集する際に、ユーザの心拍数、脳波、筋電図等を計測し、ユーザの心身の状態がリラックスして冷静であるか否かを判断し、冷静である時に収集したユーザ固有情報のみを固有情報DB12aに蓄積するようにしてもよい。この場合、心身の状態が冷静でない興奮状態の時に収集されたユーザ固有情報を破棄することにより、ユーザの普段の状態で収集されたユーザ固有情報のみを蓄積できる。
図7及び図8は、自端末10及び他端末20による言動処理の手順例を示すフローチャートである。以下の処理は、端末10,20の記憶部12,22に記憶してある制御プログラム12P,22Pに従って制御部11,21によって実行される。図7及び図8では左側に自端末10が行う処理を、右側に他端末20が行う処理をそれぞれ示す。図7及び図8に示す処理は、自端末10の制御部11が、言動実行部13cによって、自端末10に設定してあるアバターに、固有情報DB12aに記憶してあるユーザ固有情報に基づく言動処理(対話処理)を行わせ、他端末20のユーザ又はアバターとの間で対話を行う際の処理である。
具体的には、言動実行部13cは、マイク18又は入力部15を介して、他端末20のいずれかのユーザ又は他端末20に設定してあるアバターとの対話の実行要求を受け付けたか否かを判断する(S21)。例えば自端末10のユーザは、対話したい相手の情報(他端末20のユーザ又はアバターを示す情報、他端末20の宛先情報等)と、対話したい内容とをマイク18又は入力部15を介して入力し、対話相手との対話を行うように自端末10のアバターに指示する。具体的には、自端末10のユーザは、「○○さんに△△について確認してきて。」と発話した場合、言動実行部13cは、対話相手として「○○さん」と、対話内容として「△△について」とを抽出し、対話相手との対話を行う指示として受け付ける。なお、対話したい相手が他端末20のアバターである場合、言動実行部13cは、対話相手として「○○さんのアバター」を抽出する。また言動実行部13cは、固有情報DB12aに記憶されたユーザ固有情報に基づいて、自端末10のユーザが対話したい相手及び対話内容を抽出し、抽出できた場合、対話相手との対話を行う指示(対話の実行要求)として受け付ける。
対話要求を受け付けていないと判断した場合(S21:NO)、言動実行部13cは、対話要求を受け付けるまで待機する。対話要求を受け付けたと判断した場合(S21:YES)、言動実行部13cは、要求された対話相手の宛先情報を宛先情報DB12bから読み出す(S22)。ステップS22において言動実行部13cは、要求された対話相手の情報(例えば氏名、他端末20の所有者名)に対応付けて宛先情報DB12bに記憶してある宛先情報を読み出す。そして言動実行部13cは、読み出した宛先情報に基づいて、要求された対話相手の他端末20に対して対話の実行を要求する(S23)。ステップS23において言動実行部13cは、要求された対話相手が他端末20のユーザであるか、他端末20に設定されたアバターであるかに応じて、他端末20のユーザ又はアバターに対する対話の実行を要求する。また言動実行部13cは、例えばチャットアプリ又はメッセージアプリ等を用いて他端末20との対話(メッセージの送受信)を行う。チャットアプリ又はメッセージアプリは予め記憶部12に記憶してある。
他端末20の制御部21(言動実行部23c)は、自端末10から対話の実行を要求された場合、要求された対話相手(他端末20のユーザ又はアバター)が対話可能であるか否かを判断する(S24)。ステップS24において言動実行部23cは、要求された対話相手が他端末20のユーザである場合、例えばスピーカ27又は表示部26を介して、対話要求を受け付けたことを通知(出力)し、マイク28又は入力部25を介して、要求された対話の実行が可能であるか否かを受け付ける。例えば言動実行部23cは、表示部26に「○○さんから対話要求がきています」等のメッセージと、対話の実行開始を指示するためのOKボタンと、対話の実行を拒否するためのキャンセルボタンとを表示する。そして言動実行部23cは、入力部25を介してOKボタン又はキャンセルボタンのいずれかに対する操作を受け付け、受け付けた操作に応じて、要求された対話の実行が可能であるか否かを判断する。また言動実行部23cは、スピーカ27にて「○○さんから対話要求がきています。どうしますか」等のメッセージを音声出力し、マイク28を介した音声入力にてユーザからの返答を受け付け、受け付けた返答に応じて、要求された対話の実行が可能であるか否かを判断する。また、要求された対話相手が他端末20のアバターである場合、言動実行部23cは、例えば自端末10以外の端末(他の他端末20)との間で対話中であるか否かに応じて、要求された対話の実行が可能であるか否かを判断する。例えば言動実行部23cは、自端末10以外の端末との間で対話中である場合、要求された対話の実行が可能でないと判断し、自端末10以外の端末との間で対話中でない場合、要求された対話の実行が可能であると判断する。
要求された対話相手が対話可能でないと判断した場合(S24:NO)、言動実行部23cは、対話可能でないこと(対話不可)を自端末10に通知する(S25)。対話不可の通知を受けた自端末10の言動実行部13cは、所定時間待機し(S26)、ステップS23の処理に戻り、再度、ステップS22で読み出した宛先情報に基づいて、対話相手の他端末20に対して対話の実行を要求する(S23)。
他端末20の言動実行部23cは、自端末10から要求された対話が可能であると判断した場合(S24:YES)、対話可能である旨を自端末10に通知する(S27)。他端末20から対話可能を通知された場合、自端末10の言動実行部13cは、マイク18又は入力部15を介して要求された対話内容、又はユーザ固有情報から抽出した対話内容に基づいて対話情報を生成する(S28)。ステップS28において言動実行部13cは、対話内容として抽出した情報に基づいて対話情報を生成し、例えば「△△についてはどうなっていますか」のような対話メッセージを生成する。なお、言動実行部13cは、対話処理部13aによって、対話相手(他端末20のユーザ又はアバター)への対話メッセージを生成してもよい。そして言動実行部13cは、生成した対話情報を対話相手の他端末20に送信する(S29)。
他端末20の言動実行部23cは、自端末10から対話情報を受信した場合、要求されていた対話相手が他端末20のユーザであるか否かを判断する(S30)。対話相手が他端末20のユーザであると判断した場合(S30:YES)、言動実行部23cは、受信した対話情報を出力する(S31)。ステップS31において言動実行部23cは、受信した対話情報(対話メッセージ)をスピーカ27又は表示部26にて出力する。言動実行部23cは、出力した対話情報に対する、他端末20のユーザからの返答情報(返答メッセージ)をマイク28又は入力部25を介して受け付け(S32)、受け付けた返答情報を自端末10に送信する(S33)。
対話相手が他端末20のユーザでないと判断した場合(S30:NO)、即ち、対話相手が他端末20のアバターである場合、他端末20の言動実行部23cは、固有情報DB22aに記憶してあるユーザ固有情報に基づいて、自端末10から受信した対話情報に対する返答情報(返答メッセージ)を生成する(S34)。ステップS34において言動実行部23cは、自端末10から受信した対話情報が「△△についてはどうなっていますか」である場合、固有情報DB22aの記憶内容から「△△」に関する情報を検索し、検索結果を用いて、「□□となっています」のような返答メッセージを生成する。言動実行部23cは、生成した返答情報を自端末10に送信する(S33)。
自端末10の言動実行部13cは、他端末20から受信した返答情報を履歴情報として言動履歴DB12cに記憶する(S35)。なお、言動実行部13cは、ステップS29で対話情報を他端末20に送信した場合にも、送信した対話情報を履歴情報として言動履歴DB12cに記憶する。これにより、他端末20との間で送受信されたメッセージ(対話内容)を言動履歴DB12cに蓄積できる。言動実行部13cは、他端末20との対話が終了したか否かを判断しており(S36)、終了していないと判断した場合(S36:NO)、ステップS28の処理に戻り、他端末20に送信すべき対話情報を更に生成する(S28)。自端末10及び他端末20の言動実行部13c,23cは、ステップS28~S35の処理を繰り返すことによって対話を行い、対話の結果(送受信された対話情報)が言動履歴DB12cに蓄積される。自端末10の言動実行部13cは、他端末20との対話が終了したと判断した場合(S36:YES)、他端末20との対話を終了する。
上述した処理により、自端末10のユーザは、自端末10に設定してある自身のアバターによって、他端末20のユーザ又はアバターと対話することができる。よって、自端末10のユーザが直接他端末20のユーザと対話し辛い場合に、自身のアバターを介して他端末20のユーザと対話することができる。例えば自端末10のユーザが他端末20のユーザと喧嘩した場合に、自端末10のユーザは自身のアバターによって他端末20のユーザに謝罪して仲直りすることもできる。また、自端末10のユーザと他端末20のユーザとが対話する時間を確保できない場合であっても、例えばアバター同士で対話を行うことにより、対話時間を確保することができる。なお、言動実行部13c,23cは、各端末10,20のアバターに、固有情報DB12a,22aに記憶してあるユーザ固有情報に基づく言動処理(対話処理)を行わせるので、各端末10,20のユーザが行う可能性の高い対話処理を実現できる。
他端末20のユーザは例えば医師、看護師、作業療法士、栄養士等の専門家であってもよく、この場合、自端末10のユーザは、自身のアバターによって体調、病気、栄養管理等について専門家に相談することができる。また、他端末20のアバターは、これらの専門家のアバター(専門家アバター)であってもよい。例えば自端末10の言動実行部13cは、マイク18又は入力部15を介して自端末10のユーザから、所定の専門家又は専門家のアバターに対する相談(対話)の実行要求を受け付ける。そして、言動実行部13cは、受け付けた専門家又は専門家のアバターとの対話を、固有情報DB12aに蓄積したユーザ固有情報に基づいて行うことにより、専門家又は専門家のアバターに相談することができる。このように専門家又は専門家のアバターに相談した内容(対話内容)も対話履歴として言動履歴DB12cに記憶される。そして、自端末10のユーザからの要求に応じて、履歴出力部13dが対話履歴に係る対話内容を出力することにより、自端末10のユーザは相談結果を知ることができる。このような構成とした場合、自端末10のユーザが自身では聞き辛い内容の相談であっても、自身の代わりにアバターが専門家に相談して専門家からの回答を取得するので、自端末10のユーザは気軽に相談できる。また、専門家のアバターに相談する場合、忙しい専門家の代わりに専門家のアバターによって相談内容に対する回答が得られる。
図9及び図10は、自端末10及び他端末20による言動処理の手順例を示すフローチャート、図11は画面例を示す模式図である。図9及び図10では左側に自端末10が行う処理を、右側に他端末20が行う処理をそれぞれ示す。図9及び図10に示す処理は、自端末10のユーザが、自端末10を用いて他端末20のユーザ又はアバターとの間で対話を行う際の処理である。図9及び図10に示す処理において、図7及び図8に示す処理と同様の処理については詳細な説明を省略する。
自端末10の言動実行部13cは、マイク18又は入力部15を介して、他端末20のいずれかのユーザ又はアバターとの対話の実行要求を受け付けたか否かを判断する(S41)。例えば自端末10のユーザは、対話したい相手の情報(他端末20のユーザ又はアバターを示す情報、他端末20の宛先情報等)をマイク18又は入力部15を介して入力し、自身による対話相手との対話の実行を指示する。具体的には、自端末10のユーザは、「○○さんと話したい」と発話した場合、言動実行部13cは、対話相手として「○○さん」を抽出し、対話相手との対話の実行指示として受け付ける。なお、対話したい相手が他端末20のアバターである場合、言動実行部13cは、対話相手として「○○さんのアバター」を抽出する。
対話要求を受け付けていないと判断した場合(S41:NO)、言動実行部13cは対話要求を受け付けるまで待機する。対話要求を受け付けたと判断した場合(S41:YES)、言動実行部13cは、要求された対話相手の宛先情報を宛先情報DB12bから読み出す(S42)。そして言動実行部13cは、読み出した宛先情報に基づいて、要求された対話相手の他端末20に対して対話の実行を要求する(S43)。なお、言動実行部13cは、要求された対話相手が他端末20のユーザであるかアバターであるかに応じて、他端末20のユーザ又はアバターに対する対話の実行を要求する。
他端末20の言動実行部23cは、自端末10から対話の実行を要求された場合、要求された対話相手(他端末20のユーザ又はアバター)が対話可能であるか否かを判断する(S44)。要求された対話相手が対話可能でないと判断した場合(S44:NO)、言動実行部23cは、対話可能でないこと(対話不可)を自端末10に通知する(S45)。他端末20から対話不可を通知された場合、自端末10の言動実行部13cは、他端末20のユーザ又はアバターが対話不可であることを示すメッセージを表示部16に表示するか、又はスピーカ17から音声出力することにより、自端末10のユーザに通知し(S46)、処理を終了する。
他端末20の言動実行部23cは、自端末10から要求された対話が可能であると判断した場合(S44:YES)、対話可能である旨を自端末10が通知する(S47)。他端末20から対話可能を通知された場合、自端末10の言動実行部13cは、他端末20のユーザ又はアバターが対話可能であることを示すメッセージを表示部16に表示するか、又はスピーカ17から音声出力することにより、自端末10のユーザに通知する(S48)。なお、ユーザ端末10,20がカメラを有し、カメラにて撮影したユーザの撮影画像をユーザ端末10,20間で送受信するテレビ電話を行えるように構成されている場合、自端末10の言動実行部13cは、図11Aに示すような画面を表示部16に表示し、他端末20のユーザとのテレビ電話を開始してもよい。なお、図11Aは他端末20のユーザの撮影画像を表示した例を示しており、自端末10のユーザは、図11Aに示すような画面を介して他端末20のユーザと対話することができる。また、対話相手が他端末20のアバターである場合、他端末20の言動実行部23cは、他端末20に設定してあるアバターの画像を自端末10へ送信し、自端末10の言動実行部13cは、図11Bに示すような画面を表示部16に表示する。図11Bは他端末20のアバターの画像を表示した例を示しており、自端末10のユーザは、図11Bに示すような画面を介して他端末20のアバターと対話することができる。
言動実行部13cは、マイク18又は入力部15を介して自端末10のユーザから対話相手への対話情報を受け付け(S49)、受け付けた対話情報を対話相手の他端末20に送信する(S50)。他端末20の言動実行部23cは、自端末10から対話情報を受信した場合、要求されていた対話相手が他端末20のユーザであるか否かを判断する(S51)。対話相手が他端末20のユーザであると判断した場合(S51:YES)、言動実行部23cは、受信した対話情報(対話メッセージ)をスピーカ27又は表示部26にて出力する(S52)。そして言動実行部23cは、出力した対話情報に対する、他端末20のユーザからの返答情報(返答メッセージ)をマイク28又は入力部25を介して受け付け(S53)、受け付けた返答情報を自端末10に送信する(S54)。
対話相手が他端末20のユーザでないと判断した場合(S51:NO)、即ち、対話相手が他端末20のアバターである場合、他端末20の言動実行部23cは、固有情報DB22aに記憶してあるユーザ固有情報に基づいて、自端末10から受信した対話情報に対する返答情報(返答メッセージ)を生成する(S55)。そして言動実行部23cは、生成した返答情報を自端末10に送信する(S54)。自端末10の言動実行部13cは、他端末20から受信した返答情報(返答メッセージ)をスピーカ17又は表示部16にて出力し(S56)、更に履歴情報として言動履歴DB12cに記憶する(S57)。なお、言動実行部13cは、ステップS50で対話情報を他端末20に送信した場合にも、送信した対話情報を履歴情報として言動履歴DB12cに記憶しておく。これにより、他端末20との間で送受信されたメッセージ(対話内容)を言動履歴DB12cに蓄積できる。
自端末10の言動実行部13cは、他端末20との対話が終了したか否かを判断しており(S58)、終了していないと判断した場合(S58:NO)、ステップS49の処理に戻り、他端末20に送信すべき対話情報を、マイク18又は入力部15を介して自端末10のユーザから受け付ける(S49)。自端末10及び他端末20の言動実行部13c,23cは、ステップS49~S57の処理を繰り返すことによって対話を行い、対話の結果(送受信された対話情報)が言動履歴DB12cに蓄積される。自端末10の言動実行部13cは、他端末20との対話が終了したと判断した場合(S58:YES)、他端末20との対話を終了する。
上述した処理により、自端末10のユーザは、自端末10を用いて他端末20のユーザ又はアバターと対話することができる。よって、自端末10のユーザは端末10,20を介して他端末20のユーザと対話することができ、互いの撮影画像を送受信した場合にはテレビ電話が可能となる。また自端末10のユーザが直接他端末20のユーザと対話し辛い場合又は他端末20のユーザが忙しい場合に、他端末20のアバターと対話することにより、他端末20のユーザとの対話を擬似的に実現することができる。なお、他端末20のユーザは例えば医師、看護師、作業療法士、栄養士等の専門家であってもよく、この場合、自端末10のユーザは、体調、病気、栄養管理等について専門家に相談することができる。また、他端末20のアバターは、これらの専門家のアバター(専門家アバター)であってもよい。この場合、自端末10のユーザは、忙しい専門家の代わりに専門家のアバターによって相談内容に対する回答が得られるので、気軽に相談できる。
図12は、自端末10による言動処理の手順例を示すフローチャートである。図12に示す処理は、自端末10の制御部11が、言動実行部13cによって自端末10のアバターに、固有情報DB12aに記憶してあるユーザ固有情報に基づいて擬似的な外出行為を行わせる処理である。言動実行部13cは、固有情報DB12aに蓄積してある情報に基づいて、自端末10のユーザが行きたいと思っている場所があるか否かを判断する(S61)。また言動実行部13cは、マイク18又は入力部15を介して自端末10のユーザから行きたい場所の情報を受け付けたか否かに応じて、自端末10のユーザが行きたいと思っている場所があるか否かを判断してもよい。
自端末10のユーザが行きたい場所があると判断した場合(S61:YES)、言動実行部13cは、ネットワークN上で公開されている各種の情報から、行きたい場所に関する情報を検索する(S62)。そして言動実行部13cは、検索結果から、自端末10のユーザが行きたい場所においてカメラで撮影されてネットワークN上で公開されている撮影画像をネットワークN経由で収集する(S63)。例えばユーザが富士山に登りたいと思っている場合、言動実行部13cは、富士山の近傍に設置されているカメラによって撮影された富士山の撮影画像、富士山の登山客が撮影した画像等を収集する。これにより、言動実行部13cは、自端末10のアバターを介して、自端末10のユーザが行きたい場所に行って撮影画像を取得する外出行為を擬似的に実行することができる。言動実行部13cは、収集した撮影画像を履歴情報として言動履歴DB12cに記憶する(S64)。なお、収集する情報は、撮影画像に限定されず、当該場所に関する情報であればどのような情報でもよい。また言動実行部13cは、収集した複数の情報を、例えばユーザ固有情報に基づいてユーザの好みに適した情報に編集した後に言動履歴DB12cに記憶してもよい。
自端末10のユーザが行きたい場所がないと判断した場合(S61:NO)、言動実行部13cは、固有情報DB12aに蓄積してある情報に基づいて、自端末10のユーザがやりたいと思っていることがあるか否かを判断する(S65)。自端末10のユーザがやりたいことがあると判断した場合(S65:YES)、言動実行部13cは、ネットワークN上で公開されている各種の情報から、やりたいことに関する情報を検索する(S66)。そして言動実行部13cは、検索結果から、自端末10のユーザがやりたいことに関してネットワークN上で公開されている撮影画像をネットワークN経由で収集する(S67)。例えばユーザがスカイダイビングをしたいと思っている場合、言動実行部13cは、スカイダイビングをしている人を撮影した画像、スカイダイビング中に撮影された画像等を収集する。これにより、言動実行部13cは、自端末10のアバターを介して、自端末10のユーザがやりたいことを擬似的に実行することができる。言動実行部13cは、収集した撮影画像を履歴情報として言動履歴DB12cに記憶する(S68)。なお、収集する情報は、撮影画像に限定されず、当該やりたいことに関する情報であればどのような情報でもよい。また言動実行部13cは、収集した複数の情報を、例えばユーザ固有情報に基づいてユーザの好みに適した情報に編集した後に言動履歴DB12cに記憶してもよい。
ユーザがやりたいことがないと判断した場合(S65:NO)、言動実行部13cは、ステップS61の処理に戻り、行きたい場所又はやりたいことがあると判断する都度、上述した処理によって各種の情報を収集し、擬似的な行為の履歴情報を言動履歴DB12cに蓄積できる。上述した処理により、自端末10は、固有情報DB12aに蓄積されたユーザ固有の情報に基づいて、ユーザが行きたい場所又はやりたいことを適宜抽出し、ユーザに代わって行動し、行動した結果得られた情報を履歴情報として蓄積できる。よって、自端末10のユーザは、行きたい場所に行く時間又はやりたいことをやる時間がない場合であっても、自端末10のアバターによって、行きたい場所に擬似的に行き、また、やりたいことを擬似的に行うことができる。なお、言動実行部13cは、自端末10のアバターを介して、固有情報DB12aに記憶してあるユーザ固有情報に基づく言動処理(行動、外出)を行うので、自端末10のユーザが行う可能性の高い行動を実現できる。
図13は、自端末10による言動履歴の再生処理の手順例を示すフローチャート、図14は画面例を示す模式図である。図7~図10に示す対話処理及び図12に示す行動処理によって言動履歴DB12cに言動履歴(履歴情報)を蓄積した自端末10において、制御部11は、履歴出力部13dによって、蓄積した履歴情報を表示部16又はスピーカ17にて再生する。具体的には、履歴出力部13dは、マイク18又は入力部15を介して、言動履歴DB12cに蓄積した言動履歴(履歴情報)に対する再生要求を受け付けたか否かを判断する(S71)。自端末10のユーザは、いずれかの言動履歴を再生させたい場合、マイク18又は入力部15を介して言動履歴の再生要求を入力する。
履歴出力部13dは、言動履歴に対する再生要求を受け付けていないと判断した場合(S71:NO)、再生要求を受け付けるまで待機する。履歴出力部13dは、再生要求を受け付けたと判断した場合(S71:YES)、言動履歴DB12cに蓄積した言動履歴(履歴情報)に基づいて、図14に示すように、それぞれの言動履歴に関する情報を表示する履歴画面を生成する(S72)。履歴出力部13dは、生成した履歴画面を表示部16に表示する(S73)。図14に示す履歴画面は、左上に自端末10のアバターの画像を表示し、自端末10のアバターが今日行った活動(言動)について、言動履歴DB12cに蓄積した言動履歴のそれぞれに基づいて、履歴情報のサムネイル画像及び言動内容を示す情報を表示する。履歴情報のサムネイル画像は、履歴情報に含まれる言動データが画像データである場合、この画像データに基づいて生成される。なお、履歴情報に含まれる言動データが画像データでない場合、例えば言動データが音声データのみである場合、サムネイル画像の代わりに「音声のみ」のメッセージを表示してもよい。履歴画面に表示される言動内容を示す情報は、履歴情報に含まれる言動内容、相手情報、場所情報等に基づいて生成される。また履歴画面は、自端末10のアバターが過去に行った活動(言動)における言動履歴(履歴情報)を表示させるための「過去の活動履歴」ボタンを表示している。よって、履歴画面において「過去の活動履歴」ボタンが入力部15を介して操作された場合、履歴出力部13dは、言動履歴DB12cに蓄積した過去の言動履歴に関する情報を履歴画面に表示する。
履歴画面は、言動履歴のいずれかを再生対象に選択できるように構成されており、選択された言動履歴の再生を要求するための再生ボタンと、再生処理を終了するためのキャンセルボタンとを表示している。履歴出力部13dは、履歴画面において入力部15を介して、いずれかの言動履歴が選択されて再生ボタンが操作されたか否かに応じて、選択された履歴情報に対する再生要求(出力要求)を受け付けたか否かを判断する(S74)。再生要求を受け付けていないと判断した場合(S74:NO)、履歴出力部13dは、再生要求を受け付けるまで待機する。再生要求を受け付けたと判断した場合(S74:YES)、履歴出力部13dは、選択された履歴情報を言動履歴DB12cから読み出し(S75)、読み出した履歴情報を表示部16又はスピーカ17にて出力する(S76)。例えば対話処理の履歴情報に音声データの対話データ(対話音声)が含まれる場合、音声データがスピーカ17から出力され、テキストデータの対話データが含まれる場合、テキストデータが表示部16に表示される。これにより、自端末10のアバターが他端末20のユーザ又はアバターとの間で擬似的に行った対話処理を再現することができる。また、例えば外出処理の履歴情報に画像データ(撮影画像)が含まれる場合、画像データが表示部16に表示され、自端末10のアバターが擬似的に行った外出処理を再現することができる。
上述した処理により、本実施形態では、自端末10のユーザに代わって自端末10のアバターが、他端末20のユーザ又はアバターと対話を実行することができる。また、自端末10のユーザが行きたい場所に擬似的に出かけ、また、自端末10のユーザがやりたいことを擬似的に実行し、実行した結果を示す履歴情報を自端末10のユーザに提供することができる。よって、自端末10のユーザは、自端末10のアバターから提供された履歴情報を再生することによって、アバターが他端末20のユーザ又はアバターと対話した内容を確認することができる。また、自端末10のユーザは、自端末10のアバターから提供された履歴情報を再生することによって、アバターが擬似的に行った行動を辿ることができる。よって、自端末10のユーザは、アバターから提供された履歴情報に基づいて、実際に行ってみたい場所又はやってみたいことを選択することができ、実際の行動に移すことができる。
本実施形態では、ユーザ端末10,20の対話処理部13a,23aは、ユーザ端末10,20のユーザと対話することができ、ユーザは、自身のユーザ端末10,20(ユーザ端末10,20のアバター)と対話することによって孤独感及び不安を和らげることができる。また、ユーザ端末10,20の固有情報収集部13b,23bは、ユーザ端末10,20のユーザとの対話内容等から各ユーザのユーザ固有情報を収集する。よって、ユーザの属性、行動履歴、趣味、好み、思考傾向等の固有情報を蓄積することができる。そして、このような固有情報に基づく言動をユーザのアバターに行わせることにより、ユーザが言動する代わりにユーザと同じような言動をアバターに行わせることができる。従って、ユーザの代わりにユーザのアバターが他のユーザと対話することができる。また、ユーザが行きたい場所にアバターが代わりに出かけることができ、ユーザがやりたいことをアバターが代わりに実現することができる。ユーザの代わりにアバターが行った言動について履歴情報を蓄積しておき、蓄積した履歴情報を再生させることにより、ユーザは、アバターによる言動を擬似的に体験することができる。このようなアバターを介した擬似的な体験や自身による擬似的な体験を通して、ユーザは新たな気づきを得て、精神的により豊かな生活を送ることができるようになったり、現実世界での接点の拡大によって実際の行動変化を引き起こしたりすることが期待できる。
また本実施形態において、言動実行部13cは、数年後又は数十年後等の将来に生じる可能性のあるイベントに関して、例えば専門家(専門家の端末)に問合せを行い、専門家の意見又はアドバイス(イベントに係る情報)を取得する処理を行ってもよい。このとき言動実行部13cは、自端末10のアバターを介して問合せを行ってもよい。例えば、自端末10のユーザの年齢、既往歴、医療機関への通院歴等から将来発症する可能性のある病気に関する情報を医師(又は医師のアバター)に問合せ、医師(又は医師のアバター)から病気に関する情報又はアドバイスを取得して履歴情報として言動履歴DB12cに蓄積してもよい。また、自端末10のユーザの年齢から、将来到来する入学試験、就職試験等に関する情報を所定端末(例えば専門家の端末)に問合せ、又はネットワークN上で公開されている情報を検索することにより、これらの情報を取得して履歴情報として言動履歴DB12cに蓄積してもよい。更に、自端末10のユーザの子供の年齢等から、将来到来する子供の七五三、入園、卒園、入学、卒業等のイベントに関する情報を所定端末(例えば専門家の端末)に問合せ、又はネットワークN上で公開されている情報を検索することにより、これらの情報を取得して履歴情報として言動履歴DB12cに蓄積してもよい。このような構成とした場合、自端末10のユーザ自身が、専門家への問合せ、情報の検索等を行うことなく、アバターが収集した履歴情報を閲覧することにより、各種の情報を得ることができる。
また、自端末10のユーザの代わりに自端末10のアバターがユーザ固有情報に基づいて他のユーザ(他端末20のユーザ)と対話した場合に、他のユーザとフィーリングが合うか否かを自端末10のアバターによって判断することできる。よって、自端末10のアバターによってフィーリングが合うと判断された他のユーザを自端末10のユーザに推薦することにより、自端末10のユーザは、フィーリングが合う可能性が高い他のユーザを把握できる。また、自端末10のユーザがやろうとして忘れていることを、自端末10のユーザの代わりに自端末10のアバターがユーザ固有情報に基づいて行うこともできる。例えば自端末10のユーザが買い物しようとして忘れている物を、自端末10のアバターがユーザ固有情報に基づいて注文処理することもできる。具体的には、自端末10の言動実行部13cは、ユーザ固有の情報に基づいて、ユーザが購買しようとしていた商品を特定し、特定した商品の注文情報を所定端末(商品の販売サイトの端末)へ出力する処理を実行してもよい。また、自端末10のアバターは、ユーザ固有情報に基づいて自端末10のユーザが購買すべき商品を検索した場合に、この商品に関する情報をスピーカ17又は表示部16にて出力し、自端末10のユーザに提案してもよい。この場合、自端末10の言動実行部13cは、ユーザ固有の情報に基づいて、ユーザが購買しようとしていた商品を抽出し、抽出した商品に関する情報を、例えばスピーカ17又は表示部16を介して自端末10のアバターによって自端末10のユーザに提案する。その後、自端末10の言動実行部13cは、例えばマイク18又は入力部15を介してユーザから購買許可の指示を受け付けた場合に、この商品の注文情報を所定端末(商品の販売サイトの端末)へ出力することにより注文処理を行うことができる。更に、自端末10の言動実行部13cは、ユーザ固有情報に基づいて自端末10のユーザが気に入る可能性の高い商品を検索した場合に、自端末10のアバターを介してこの商品を自端末10のユーザに勧めることもできる。
本実施形態では、固有情報DB12aに蓄積されたユーザ固有情報に基づいて、自端末10のユーザが行う可能性の高い言動を再現できる。よって、例えば自端末10のユーザ本人が病気等で対話できなくなった場合であっても、ユーザ固有情報に基づく言動に従って、ユーザ本人が何を言いたいのか何をしたいのか等を予測できる。
(実施形態2)
ユーザ固有情報を登録する際に、ユーザの生体情報に基づくユーザの状態を考慮する情報処理システムについて説明する。本実施形態の情報処理システムは、実施形態1の情報処理システムと同様のユーザ端末10,20によって実現されるので、同様の構成については説明を省略する。なお、本実施形態の情報処理システムは、ユーザ端末10,20の各ユーザの生体情報を計測する生体情報計測器30を更に含む。
図15は実施形態2の情報処理システムの構成例を示す模式図である。図15は自端末10及び自端末10のユーザの生体情報を計測する生体情報計測器30のみを示すが、本実施形態の情報処理システムは、それぞれの他端末20のユーザの生体情報を計測する生体情報計測器を含む。本実施形態のユーザ端末10,20において通信部14,24は、ネットワークNに接続するためのインタフェースだけでなく、有線通信又は無線通信によって、それぞれ対応する生体情報計測器30と通信するためのインタフェースを含み、生体情報計測器30との間で情報の送受信を行う。生体情報計測器30は、例えばスマートウォッチのような腕時計型のウェアラブルデバイスであり、ユーザの心拍数、脈拍数、血圧等の生体情報を計測する。生体情報計測器30は、計測した生体情報を逐次ユーザ端末10,20へ送信し、ユーザ端末10,20の通信部14,24は、それぞれ通信可能な生体情報計測器30から送信されてくる生体情報を順次取得する。
本実施形態の情報処理システムにおいても、ユーザ端末10,20のそれぞれは、各端末のユーザにおけるユーザ固有情報を収集する処理を行う。なお、本実施形態のユーザ端末10,20は、ユーザ固有情報を収集して固有情報DB12aに記憶(登録)する際に、それぞれのユーザの生体情報に基づくユーザの状態を考慮する。図16は、自端末10によるユーザ固有情報の収集処理の手順例を示すフローチャートである。なお、図16は自端末10が行う処理を示すが、他端末20も同様の処理を行う。
自端末10の固有情報収集部13bは、対話処理部13aによって自端末10のユーザとの対話を行う。具体的には、固有情報収集部13bは、対話処理部13aによってユーザとの対話内容を示す対話情報(対話メッセージ)を生成し、スピーカ17又は表示部16にて出力する(S81)。対話情報は、予め記憶部12に記憶された対話メッセージであってもよく、マイク18又は入力部15を介して取得したユーザからの対話内容に応じた返答メッセージであってもよい。固有情報収集部13bは、出力した対話情報に対してユーザが返答した返答情報(返答メッセージ)をマイク18又は入力部15にて取得する(S82)。
自端末10の制御部11は、固有情報収集部13bによってユーザと対話しつつ、生体情報計測器30から送信されたユーザの生体情報を取得する(S83)。制御部11は、生体情報計測器30から取得した生体情報に基づいて、ユーザの心理状態を検出する(S84)。例えば制御部11は、生体情報計測器30で計測された心拍数及び脈拍数から、ユーザの自律神経の状態を検出する。一般的に知られているように、自律神経には、活動時に活発になる交感神経と、夜間又は安静時に活発になる副交感神経とがあり、交感神経と副交感神経とのバランスに応じてユーザがリラックス状態であるか緊張・不安状態であるかを検出する。
具体的には、制御部11は、ユーザの心拍数及び脈拍数の計測結果(正確には心電波形及び脈波)に対してスペクトル解析を行い、低周波帯域成分(LF;Low Frequency)と高周波帯域成分(HF;High Frequency)とを抽出して、両者の比率を示すLF/HF値を算出する。低周波帯域成分には主に交感神経成分が含まれ、高周波帯域成分には主に副交感神経成分が含まれ、制御部11は、LF/HF値を算出することで交感神経及び副交感神経のバランスを取得することができる。制御部11は、算出したLF/HF値に基づいてユーザの心理状態を判断する。例えば制御部11は、LF/HF値が所定値以上であれば、ユーザは緊張・不安状態であると判断し、LF/HF値が所定値未満であれば、ユーザはリラックス状態であると判断してもよい。なお、制御部11は、LF/HF値以外の数値を算出し、算出結果に基づいてユーザの状態を検出してもよい。
制御部11は、検出したユーザの心理状態がリラックス状態であるか否かを判断し(S85)、リラックス状態であると判断した場合(S85:YES)、固有情報収集部13bにより、ステップS82で取得した返答情報からユーザ固有情報を抽出する(S86)。そして、固有情報収集部13bは、抽出したユーザ固有情報を、情報ID及び情報内容に対応付けて固有情報DB12aに記憶する(S87)。これにより、ユーザがリラックス状態であるときにユーザとの対話内容から抽出されたユーザ固有情報が固有情報DB12aに登録される。一方、検出したユーザの状態が緊張・不安状態であると判断した場合(S85:NO)、制御部11は、ステップS86~S87をスキップする。これにより、ユーザが緊張・不安状態であるときにユーザとの対話内容から抽出されるユーザ固有情報は固有情報DB12aに登録されない。よって、リラックス状態でない(緊張・不安状態である)ユーザが発した対話内容は、ユーザの本意ではない可能性があるので、このような対話内容から抽出されるユーザ固有情報を登録しないことにより、ユーザ本来の状態でのユーザ固有情報のみを登録することができる。
制御部11は、固有情報収集部13b(対話処理部13a)がユーザとの対話を終了したか否かを判断しており(S88)、終了していないと判断した場合(S88:NO)、ステップS81の処理に戻る。そして固有情報収集部13bは、ユーザと次に対話すべき対話情報(対話メッセージ)を生成し、スピーカ17又は表示部16にて出力し(S81)、ステップS82~S87の処理を繰り返す。制御部11は、固有情報収集部13b(対話処理部13a)がユーザとの対話を終了したと判断した場合(S88:YES)、処理を終了する。上述した処理により、ユーザがリラックス状態である場合に、ユーザとの対話内容からユーザ固有情報が逐次抽出されて登録されるので、ユーザが意識することなく、本来のユーザにおけるユーザ固有情報の蓄積が可能である。なお、ユーザが緊張・不安状態である場合には、ユーザ固有情報の蓄積は行われないが、ユーザとの対話は行われるので、ユーザは自身の状態にかかわらず、自端末10と対話することができる。
本実施形態の情報処理システムにおいて、ユーザ端末10,20は、図7~図8に示す処理と同様の処理を行う。これにより、本実施形態においても、自端末10に設定されたアバター(ユーザのアバター)に、固有情報DB12aに蓄積されたユーザ固有情報に基づいて、他端末20のユーザ又はアバターとの対話を行わせることができる。また本実施形態のユーザ端末10,20は、図9~図10に示す処理と同様の処理を行う。これにより、本実施形態においても、自端末10のユーザは、自端末10を用いて、他端末20のユーザ又はアバターと対話を行うことができる。また本実施形態のユーザ端末10,20は、図12に示す処理と同様の処理を行う。これにより、本実施形態においても、自端末10に設定されたアバター(ユーザのアバター)に、固有情報DB12aに蓄積されたユーザ固有情報に基づいて、擬似的な外出行為(行動)を行わせることができる。更に本実施形態のユーザ端末10,20は、図13に示す処理と同様の処理を行う。これにより、自端末10のアバターが行った他端末20のユーザ又はアバターとの対話履歴、自端末10のアバターが行った擬似的な外出行為に係る外出履歴等を自端末10で再現できる。よって、自端末10のユーザは、自端末10のアバターが行った他端末20のユーザ又はアバターとの対話、自身が行きたかった場所への外出、自身がやりたかったことの体験等を擬似的に行うことができる。
本実施形態においても、実施形態1と同様の効果が得られる。また本実施形態では、ユーザ固有情報を登録する際に、ユーザの心拍数、脈拍数等を計測し、ユーザの心身の状態がリラックスして冷静であるか否かを判断し、冷静である時に収集したユーザ固有情報のみを固有情報DB12aに蓄積できる。この場合、心身の状態が冷静でない興奮状態の時に収集されたユーザ固有情報を登録しない(破棄する)ことにより、ユーザの普段の状態で収集されたユーザ固有情報のみを蓄積できる。
(実施形態3)
それぞれのユーザ端末10,20が、それぞれのユーザの言動に基づいて構築されたユーザモデルを用いて言動処理を実行する情報処理システムについて説明する。本実施形態の情報処理システムは、実施形態1の情報処理システムと同様のユーザ端末10,20によって実現される。図17は実施形態3の自端末10の構成例を示すブロック図である。本実施形態の自端末10は、実施形態1の自端末10と同様の構成を有するので、同様の構成については説明を省略する。なお、本実施形態の自端末10では、記憶部12に固有情報DB12aの代わりにユーザモデル12Mを記憶しており、処理部13は固有情報収集部13bを有しない。
ユーザモデル12Mは、例えば深層学習アルゴリズムを用いて学習させたディープラーニングモデルであり、例えばRNN(Recurrent Neural Network)を用いたSeq2Seq(Sequence to Sequence)モデルにて構築されている。ユーザモデル12M(第1ユーザモデル)は、自端末10のユーザ(第1ユーザ)に対して提示された提示データと、この提示データに対してユーザが行った回答データとを含む教師データを用いて、提示データが入力された場合に、入力された提示データに対応する回答データを出力するように学習された学習済みモデルである。なお、提示データは例えば自端末10のユーザに対する対話情報であり、回答データはこの対話情報に対応してユーザが返答した返答情報である。提示データは例えばスピーカ17又は表示部16を介してユーザに提示した対話情報を含み、回答データはこの対話情報に対してユーザがマイク18又は入力部15を介して入力した返答情報を含む。また提示データは自端末10のユーザが電子メール、LINEメッセージ、LINEスタンプ、SNS等を介して他端末20から受信した対話情報を含んでもよく、回答データはこの対話情報に対してユーザが他端末20へ返信した返答情報を含んでもよい。また提示データは例えば自端末10のユーザに対して行われたアクションに関する情報を含み、回答データは、このアクションに対してユーザが行った行動に関する情報を含んでもよい。例えば、自端末10のユーザがLINEメッセージを受信した場合に、所定のLINEスタンプを返信するものとする。この場合、LINEメッセージの受信を提示データとし、所定のLINEスタンプの返信を回答データとすることができる。学習済みモデルは、入力値に対して所定の演算を行い、演算結果を出力するものであり、この演算を規定する関数の係数や閾値等のデータが、ユーザモデル12Mとして記憶部12に記憶される。
ユーザモデル12Mは、自端末10において学習が行われてもよく、他の学習装置において学習された後に自端末10の記憶部12に記憶されてもよい。ユーザモデル12Mは、教師データに含まれる提示データを入力した場合に、教師データに含まれる回答データが出力されるように学習する。なお、学習処理において、ユーザモデル12Mは、入力データに対して行う所定の演算を規定する関数の係数や閾値等のデータを最適化する。これにより、入力された対話情報(提示データ)に基づいて、自端末10のユーザが行う可能性の高い回答データ(返答情報)を出力するように学習されたユーザモデル12Mが得られる。
本実施形態の対話処理部13aは、ユーザモデル12Mを用いて、自端末10のユーザとの対話、及び、他端末20のユーザ又はアバターとの対話を行う。具体的には、対話処理部13aは、自端末10のアバター(ユーザモデル12M)に対する対話情報(提示データ)を取得した場合、取得した対話情報をユーザモデル12Mに入力し、ユーザモデル12Mから出力される、前記対話情報に対する返答情報(回答データ)を取得する。なお、対話情報は、自端末10のユーザとの対話においては、例えばマイク18又は入力部15を介して自端末10のユーザから取得し、他端末20のユーザ又はアバターとの対話においては、通信部14を介して他端末20(他端末20のユーザ又はアバター)から取得する。
対話処理部13aは、ユーザモデル12Mを用いて対話情報に対する返答情報を特定することにより、自端末10のユーザが返答する可能性の高い返答情報(回答データ)を特定できる。そして、対話処理部13aは、自端末10のユーザと対話する場合、特定した返答情報をスピーカ17又は表示部16にて出力することによって自端末10のユーザに返答する。また対話処理部13aは、他端末20のユーザ又はアバターと対話する場合、特定した返答情報を通信部14から他端末20へ返信することによって他端末20のユーザ又はアバターに返答する。このように、本実施形態の対話処理部13aは、自端末10のアバターに対する対話情報を取得した場合に、対話情報に対する返答情報をユーザモデル12Mを用いて特定することにより、自端末10のユーザが行う可能性の高い返答を行うことができる。なお、ユーザモデル12Mは、Seq2Seqモデルを用いて構築される構成に限定されない。
本実施形態においても、他端末20は自端末10と同様の構成を有する。よって、他端末20において、他端末20のユーザ(第2ユーザ)に対して提示された提示データと、この提示データに対して他端末20のユーザが行った回答データとを含む教師データを用いて、提示データが入力された場合に、入力された提示データに対応する回答データを出力するように学習された学習済みモデルであるユーザモデル22M(第2ユーザモデル)が、記憶部22に記憶されている。
図18は、実施形態3の自端末10及び他端末20による言動処理の手順例を示すフローチャートである。図18に示す処理は、図7及び図8に示す処理においてステップS27の前にステップS91を追加し、ステップS28の前にステップS92を追加したものである。図18では、図7に示したステップS21~S26の図示を省略しており、図7及び図8と同様のステップについては説明を省略する。なお、各ユーザ端末10,20は、それぞれのユーザに基づく教師データを用いて学習されたユーザモデル12M,22Mを記憶部12,22に記憶しているものとする。
本実施形態では、ステップS21において自端末10の言動実行部13cは、マイク18又は入力部15を介して自端末10のユーザから、自端末10のアバター(ユーザモデル12M)による対話の実行命令(実行要求)を受け付ける。ここでの対話実行命令は、いずれかの他端末20のユーザ又はアバターとの対話の実行命令である。また、本実施形態において、他端末20の言動実行部(設定部)23cは、自端末10から要求された対話が可能であると判断した場合(S24:YES)、自端末10とのコネクションを設定する(S91)。これにより、他端末20の言動実行部23cは、対話を要求してきた自端末10のユーザ又はアバター(ユーザモデル12M)と、他端末20のユーザ又はアバター(ユーザモデル22M)とのコネクションを設定する。そして、他端末20の言動実行部23cは、対話を要求された他端末20のユーザ又はアバターが対話可能である旨を自端末10に通知する(S27)。一方、自端末10の言動実行部(設定部)13cは、他端末20から対話可能を通知された後、他端末20とのコネクションを設定する(S92)。これにより、自端末10の言動実行部13cは、対話を要求した自端末10のユーザ又はアバター(ユーザモデル12M)と、他端末20のユーザ又はアバター(ユーザモデル22M)とのコネクションを設定する。そして、自端末10の言動実行部13cは、マイク18又は入力部15を介して要求された対話内容に基づいて対話情報を生成する(S28)。なお、言動実行部13c(対話処理部13a)は、例えば「話したいことは何ですか」のようなメッセージを提示データとしてユーザモデル12Mに入力し、ユーザモデル12Mから出力される返答情報(回答データ)を、他端末20のユーザ又はアバターへ送信すべき対話情報としてもよい。
その後、自端末10及び他端末20の言動実行部13c,23cは、ステップS29以降の処理を行う。なお、他端末20の言動実行部23cは、自端末10から送信された対話情報(自端末10から提示された提示データ)を取得する取得部として動作し、自端末10の言動実行部13cは、他端末20から送信された対話情報(他端末20から提示された提示データ)を取得する取得部として動作する。また、本実施形態では、ステップS34において他端末20の言動実行部23c(対話処理部23a)は、ユーザモデル22Mを用いて、自端末10から受信した対話情報に対応する返答情報(返答メッセージ)を生成する。具体的には、対話処理部23aは、自端末10から受信した対話情報を、他端末20のアバターに対する提示データとしてユーザモデル22Mに入力し、ユーザモデル22Mから出力される返答情報(回答データ)を取得し、取得した返答情報を、自端末10へ返信する返答情報とする。またステップS28において自端末10の言動実行部13c(対話処理部13a)は、ユーザモデル12Mを用いて、他端末20から受信した対話情報(返答情報)に対応する返答情報を生成する。ここでも、自端末10の対話処理部13aは、他端末20から受信した対話情報を、自端末10のアバターに対する提示データとして自端末10のユーザモデル12Mに入力し、ユーザモデル12Mから出力される返答情報を取得し、取得した返答情報を、他端末20へ返信する返答情報とする。
上述した処理により、本実施形態においても、自端末10のユーザは、自端末10に設定してある自身のアバターによって、他端末20のユーザ又はアバターと対話することができる。また、本実施形態では、それぞれのユーザ端末10,20毎に学習されたユーザモデル12M,22Mを用いて、自端末10のアバターが他端末20のユーザ又はアバターとの間でやり取りする対話情報及び返答情報、或いは、他端末20のアバターが自端末10のアバターとの間でやり取りする対話情報及び返答情報が生成される。よって、各ユーザ端末10,20のユーザが行う可能性が高い対話を、各ユーザ端末10,20のアバターによって再現できる。
本実施形態のユーザ端末10,20は、図9及び図10に示す言動処理と同様の処理を行う。なお、本実施形態では、ステップS47において他端末20の言動実行部23cは、自端末10から要求された対話が可能であると判断した場合(S44:YES)、自端末10とのコネクションを設定し、その後、対話を要求された他端末20のユーザ又はアバターが対話可能である旨を自端末10に通知する。またステップS48において自端末10の言動実行部13cは、他端末20から対話可能を通知された後、他端末20とのコネクションを設定し、その後、他端末20への対話情報を受け付ける。また本実施形態では、ステップS55において他端末20の言動実行部23c(対話処理部23a)は、ユーザモデル22Mを用いて、自端末10から受信した対話情報に対応する返答情報(返答メッセージ)を生成する。具体的には、対話処理部23aは、自端末10から受信した対話情報を、他端末20のアバターに対する提示データとしてユーザモデル22Mに入力し、ユーザモデル22Mから出力される返答情報(回答データ)を取得し、取得した返答情報を、自端末10へ返信する返答情報とする。このような処理により、本実施形態においても、自端末10のユーザは、他端末20のユーザ又はアバターと対話することができる。本実施形態では、それぞれの他端末20毎に学習されたユーザモデル22Mを用いて、他端末20のアバターが自端末10のユーザとの間でやり取りする対話情報及び返答情報が生成される。よって、他端末20のユーザが行う可能性が高い対話を、他端末20のアバターにおいて再現でき、自端末10のユーザは、他端末20のアバターを介して他端末20のユーザとの対話を擬似的に行うことができる。
本実施形態のユーザ端末10,20は、図12に示す言動処理と同様の処理を行う。なお、本実施形態では、自端末10の制御部11は、言動実行部13cによって自端末10のアバターを介して、ユーザモデル12Mに基づいて擬似的な外出行為を実行する。具体的には、ステップS61において自端末10の言動実行部13cは、ユーザモデル22Mを用いて、自端末10のユーザが行きたいと思っている場所があるか否かを判断する。例えば言動実行部13cは、「行きたい場所」を提示データとしてユーザモデル12Mに入力し、ユーザモデル12Mから出力される「行きたい場所」に関する情報(回答データ)を取得する。なお、言動実行部13cは、ユーザモデル12Mから「行きたい場所」に関する情報が出力されたか否かに応じて、自端末10のユーザが行きたいと思っている場所があるか否かを判断する。また、ステップS65において自端末10の言動実行部13cは、ユーザモデル22Mを用いて、自端末10のユーザがやりたいと思っていることがあるか否かを判断する。例えば言動実行部13cは、「やりたいこと」を提示データとしてユーザモデル12Mに入力し、ユーザモデル12Mから出力される「やりたいこと」に関する情報(回答データ)を取得する。なお、言動実行部13cは、ユーザモデル12Mから「やりたいこと」に関する情報が出力されたか否かに応じて、自端末10のユーザがやりたいと思っていることがあるか否かを判断する。上述した処理により、本実施形態の自端末10は、ユーザモデル12Mを用いて、自端末10のユーザが行きたい場所又はやりたいことを抽出し、ユーザに代わって行動し、行動した結果得られた情報を履歴情報として蓄積できる。
本実施形態のユーザ端末10,20は、図13に示す言動履歴の再生処理と同様の処理を行う。これにより、ユーザ端末10,20は、図14に示すような履歴画面を表示し、履歴画面を介して、それぞれのユーザ端末10,20の言動実行部13c,23cが行った対話処理及び外出処理の再生指示を受け付ける。よって、自端末10のユーザに代わって自端末10のアバターが他端末20のユーザ又はアバターとの間で行った対話処理を再現することができ、自端末10のユーザは他端末20のユーザ又はアバターとの対話を擬似的に体験することができる。また、自端末10のアバターが擬似的に行った外出処理を再現することができ、自端末10のユーザは、アバターが実行した行動を辿ることができる。
本実施形態においても、実施形態1と同様の効果が得られる。また本実施形態では、それぞれのユーザ端末10,20毎に学習したユーザモデル12M,22Mに基づいて、それぞれのユーザが行う可能性の高い対話内容及び行動内容を特定できる。よって、それぞれのユーザが行う可能性の高い対話内容の対話及び行動内容の行動を実現することにより、それぞれのユーザのアバターによって擬似的な対話及び行動を実現できる。
本実施形態において、自端末10が自端末10のユーザのユーザモデル12Mを記憶し、他端末20が他端末20のユーザのユーザモデル22Mを記憶し、それぞれの端末10,20の言動実行部13c,23cが、それぞれのユーザモデル12M,22Mに基づく言動処理を、それぞれの端末10,20のアバターを介して行う構成に限定されない。例えば、自端末10が、他端末20から他端末20のユーザのユーザモデル22Mを取得することにより、自端末10のユーザモデル12Mだけでなく、他端末20のユーザモデル22Mを記憶してもよい。このような構成によれば、自端末10が、自端末10のユーザモデル12Mに基づく言動処理を自端末10のアバターを介して行うと共に、他端末20のユーザモデル22Mに基づく言動処理を他端末20のアバターを介して行うことができる。よって、自端末10において、自端末10のアバターと他端末20のアバターとの間の対話処理を実行することができる。なお、この場合、自端末10のアバターと他端末20のアバターとの間で実行された対話処理の履歴情報を他端末20へ送信することにより、他端末20のユーザが後日対話内容を確認できる。また逆に、他端末20が、自端末10から自端末10のユーザモデル12Mを取得し、他端末20において、自端末10のアバターと他端末20のアバターとの間の対話処理を実行する構成としてもよい。
本実施形態において、ユーザモデル12M,22Mは、ユーザ端末10,20の各ユーザに対して提示された提示データと、この提示データに対してユーザが行った回答データ及び実行したアプリケーションプログラムの実行データとを含む教師データを用いて学習された学習済みモデルであってもよい。この場合、ユーザモデルは、提示データが入力された場合に、入力された提示データに対応する回答データ及びアプリケーションプログラムの実行データを出力する。ここでの提示データは、例えば自端末10のユーザが自端末10を用いて行った行動に関する行動情報とし、回答データはこの行動情報に対応してユーザが行った処理(行動)に関する処理情報とし、実行データはこの行動情報に対応してユーザが実行(起動)したアプリケーションプログラムの情報とすることができる。
例えば、自端末10のユーザが、電子メール、LINEメッセージ、SNS等を介して会議のスケジュールに関する情報を取得した場合に、その後、自端末10を用いて会議室の使用を予約するための予約アプリ(アプリケーションプログラム)を実行して会議室の予約を行ったとする。この場合、会議のスケジュールに関する情報を取得したことを示す行動情報を提示データとし、予約アプリを用いて会議室の予約を行うことを示す処理情報を回答データとし、会議室の使用を予約するための予約アプリを実行データとすることができる。また、自端末10のユーザが、ネットワークN上の旅行の予約サイトを介して旅行の予約を行った場合に、その後、自端末10を用いてレストランの予約サイトを介したレストランの予約、又はオプショナルツアーの予約サイトを介したオプショナルツアーの申込を行ったとする。この場合、旅行の予約サイトを介して旅行の予約を行ったことを示す行動情報を提示データとし、予約サイトを介したレストランの予約又はオプショナルツアーの申込を行うことを示す処理情報を回答データとし、レストランの予約サイト又はオプショナルツアーの予約サイトにアクセスするためのブラウザを実行データとすることができる。このような提示データ、回答データ及び実行データを含む教師データを用いてユーザモデル12Mを学習させることにより、ユーザがある行動を行った後に行う可能性の高い次の行動(処理)を予測するユーザモデル12Mを生成できる。
上述したように、過去に自端末10のユーザが自端末10を用いて行った行動に関する情報を提示データとし、この行動に対して、自端末10のユーザが更に行った行動(処理)に関する情報を回答データとし、ユーザが実行したアプリケーションプログラムの情報を実行データとする教師データを用いてユーザモデル12Mを学習させる。ユーザモデル12Mは、教師データに含まれる提示データを入力した場合に、教師データに含まれる回答データ及び実行データが出力されるように学習する。これにより、入力された行動情報(提示データ)に基づいて、自端末10のユーザが行う可能性の高い処理情報(回答データ)及びアプリケーションプログラムの情報(実行データ)を出力するように学習されたユーザモデル12Mが得られる。このようなユーザモデル12Mを用いることにより、自端末10の言動実行部13cは、自端末10のユーザがある行動を行った場合に、次に行う可能性の高い行動(処理)を予測して、対応するアプリケーションプログラムを実行することにより、自端末10のユーザの操作負担を軽減できる。言動実行部13cは、ユーザモデル12Mに基づいて実行したアプリケーションプログラムの実行結果を言動履歴DBに蓄積しておき、自端末10のユーザからの要求に応じて、蓄積した実行結果をスピーカ17又は表示部16を介して再現することができる。これにより、自端末10のユーザは、自端末10のアバター(言動実行部13c)がユーザモデル12Mに基づいて行った行動(処理)を後で確認することができる。
(実施形態4)
それぞれのユーザ端末10,20のユーザ毎に学習したユーザモデルをサーバに記憶し、サーバにおいて、それぞれのユーザモデルに基づく言動処理が実行される情報処理システムについて説明する。本実施形態の情報処理システムは、実施形態3の情報処理システムにおけるユーザ端末10,20のほかにサーバ40を備える。図19はサーバ40の構成例を示すブロック図である。サーバ40は、制御部41、記憶部42、処理部43、通信部44、入力部45、表示部46、読み取り部47等を含み、これらの各部はバスを介して相互に接続されている。サーバ40が有する各構成部41~47は、自端末10における各構成部11~16,19と同様の構成であるので詳細については説明を省略する。
サーバ40の記憶部42は、ユーザ端末10,20のそれぞれに対応して設けられた複数のユーザモデル42M(図19では3つの第1ユーザモデル42M1、第2ユーザモデル42M2、第3ユーザモデル42M3)と、言動履歴DB42aとを記憶する。言動履歴DB42aは、例えばユーザ端末10,20のそれぞれに対応して設けられてもよく、この場合、図4Bに示す構成と同様の構成を有する。また言動履歴DB42aは、図4Bに示す構成に、更にユーザID列を有する構成でもよく、この場合、ユーザ端末10,20のそれぞれに割り当てられたユーザIDに対応付けて、それぞれのユーザに対応する履歴情報が蓄積される。
また、サーバ40の処理部43は対話処理部43a及び言動実行部43bを有する。対話処理部43a及び言動実行部43bは、実施形態3の自端末10における対話処理部13a及び言動実行部13cと同様の処理を行う。なお、サーバ40の言動実行部43bは、対話処理部43aを用いて、複数のユーザモデル42Mに基づいて複数のアバター(複数のユーザ端末10,20のアバター)間での対話を行う。図20は、サーバ40による言動処理の手順例を示すフローチャートである。以下の処理はサーバ40の記憶部42に記憶してある制御プログラム42Pに従って制御部41によって実行される。
サーバ40の言動実行部43bは、それぞれのユーザモデル42Mに基づいて、それぞれ対応するユーザのアバターが、他のアバターとの対話を要求しているか否かを判断する(S101)。例えば言動実行部43bは、それぞれのユーザモデル42Mに対して、「対話したい相手がいますか」のようなメッセージを提示データとして入力し、ユーザモデル42Mから、対話したい相手に関する情報(回答データ)が出力されるか否かに応じて、あるアバターが他のアバターとの対話を要求しているか否かを判断する。例えばユーザモデル42Mから、「対話したい相手がいます」、「○○さんと対話したいです」のような回答データが出力された場合、言動実行部43bは、このユーザモデル42Mに対応するアバターからの他のアバターとの対話要求を受け付ける。
言動実行部43bは、対話要求を受け付けていないと判断した場合(S101:NO)、対話要求を受け付けるまで待機する。言動実行部43bは、対話要求を受け付けたと判断した場合(S101:YES)、対話要求してきたユーザモデル42M(第1対話相手)を特定し(S102)、第1対話相手が対話したい第2対話相手を特定する(S103)。ここでは、言動実行部43bは、対話したい相手に関する回答データを出力したユーザモデル42Mを第1対話相手に特定し、第1対話相手のユーザモデル42Mから出力された回答データによって指定された対話相手を第2対話相手に特定する。
次に言動実行部43bは、特定した第1対話相手から第2対話相手への対話情報を生成する(S104)。言動実行部43bは、例えば「話したいことは何ですか」のようなメッセージを提示データとして、第1対話相手のユーザモデル42Mに入力し、ユーザモデル12Mから出力される返答情報(回答データ)に基づいて、第1対話相手からの対話情報を生成する。言動実行部43bは、生成した対話情報に対する第2対話相手からの返答情報を生成する(S105)。ここでは、言動実行部43bは、生成した第1対話相手からの対話情報を提示データとして、第2対話相手のユーザモデル42Mに入力し、ユーザモデル42Mから出力される返答情報(回答データ)に基づいて、第2対話相手から第1対話相手への返答情報を生成する。言動実行部43bは、ステップS104及びS105で生成した第1対話相手から第2対話相手への対話情報と、第2対話相手から第1対話相手への返答情報とを、第1対話相手と第2対話相手との間の対話処理における履歴情報として、例えば第1対話相手及び第2対話相手のユーザ(ユーザID)に対応付けて言動履歴DB42aに記憶する(S106)。
言動実行部43bは、第1対話相手と第2対話相手との間の対話が終了したか否かを判断しており(S107)、終了していないと判断した場合(S107:NO)、ステップS104の処理に戻り、ステップS105で生成した第2対話相手からの対話情報(返答情報)に対する第1対話相手からの返答情報を生成する(S104)。ここでは、言動実行部43bは、第2対話相手からの対話情報(返答情報)を提示データとして、第1対話相手のユーザモデル42Mに入力し、ユーザモデル42Mから出力される返答情報(回答データ)に基づいて、第1対話相手から第2対話相手への返答情報を生成する。言動実行部43bは、第1対話相手と第2対話相手との間の対話が終了するまでステップS104~S106の処理を繰り返す。即ち、第1対話相手のユーザモデル42Mから出力された対話情報を第2対話相手のユーザモデル42Mに入力し、第2対話相手のユーザモデル42Mから出力された対話情報を第1対話相手のユーザモデル42Mに入力する。これにより、第1対話相手のユーザモデル42Mと、第2対話相手のユーザモデル42Mとの間における対話を行うことができ、また対話の結果を言動履歴DB42aに蓄積することができる。
言動実行部43bは、第1対話相手と第2対話相手との間の対話が終了したと判断した場合(S107:YES)、上述した処理を終了する。なお、言動実行部43bは、第1対話相手のユーザモデル42M又は第2対話相手のユーザモデル42Mから出力される回答データ(返答情報)に基づいて対話の終了を判定するが、例えば所定回数の対話の往復が行われた場合に対話を終了してもよい。
本実施形態において、サーバ40の言動実行部43bは、実施形態3の自端末10の言動実行部13cと同様に、それぞれのユーザモデル42Mに基づいて、図12に示す言動処理と同様の処理を行うことができる。即ち、言動実行部43bは、それぞれのユーザモデル42Mに対応するユーザが行きたい場所又はやりたいことを特定し、それぞれのアバターに擬似的な外出行為を行わせることができる。具体的には、ステップS61においてサーバ40の言動実行部43bは、それぞれのユーザモデル42Mを用いて、それぞれのユーザが行きたいと思っている場所があるか否かを判断する。例えば言動実行部43bは、「行きたい場所」を提示データとしてユーザモデル42Mに入力し、ユーザモデル42Mから出力される「行きたい場所」に関する情報(回答データ)を取得することにより、このユーザモデル42Mに対応するユーザが行きたいと思っている場所を取得する。また、ステップS65においてサーバ40の言動実行部43bは、それぞれのユーザモデル42Mを用いて、それぞれのユーザがやりたいと思っていることがあるか否かを判断する。例えば言動実行部43bは、「やりたいこと」を提示データとしてユーザモデル42Mに入力し、ユーザモデル42Mから出力される「やりたいこと」に関する情報(回答データ)を取得することにより、このユーザモデル42Mに対応するユーザがやりたいと思っていることを取得する。上述した処理により、サーバ40は、それぞれのユーザモデル42Mに基づいて、それぞれのユーザが行きたい場所又はやりたいことを抽出できる。また、サーバ40の言動実行部43bは、それぞれのユーザが行きたい場所又はやりたいことに関する各種の情報をネットワークN経由で検索して収集する。そして言動実行部43bは、それぞれ収集した情報を、ユーザモデル42Mに対応するそれぞれのユーザ(ユーザID)に対応付けて言動履歴DB42aに記憶する。これにより、それぞれのユーザのアバターが、ユーザに代わって擬似的に行った行動の結果を履歴情報として蓄積できる。
上述した構成により、本実施形態では、サーバ40がそれぞれのユーザ端末10,20におけるアバター間の対話処理を行い、また、それぞれのアバターによる各種の行動を行い、行った結果を履歴情報として蓄積する。そしてサーバ40は、それぞれのユーザ端末10,20からの要求に応じて、それぞれのユーザに対応付けて蓄積した履歴情報をユーザ端末10,20へ提供する。よって、ユーザ端末10,20の各ユーザは、サーバ40において自身のアバターが行った対話処理及び各種の行動を把握できる。従って、本実施形態においても、それぞれのユーザ端末10,20のユーザは、自身に代わって自身のアバターが他のアバターとの間で行った対話を擬似的に体験することができ、また、自身のアバターが擬似的に行った外出処理を辿ることができる。
本実施形態において、サーバ40の記憶部42に、各ユーザのユーザモデル42Mを記憶する代わりに、実施形態1における各ユーザの固有情報DB12aを記憶しておき、各ユーザの固有情報DB12aに基づく言動処理を行う構成としてもよい。
上述した実施形態1-2では、自端末10のユーザ又はアバターと、他端末20のユーザ又はアバターとが対話する際に、自端末10と他端末20との間で対話情報の送受信が行われるが、このような構成に限定されない。例えば、自端末10と他端末20との通信を中継するサーバを備え、サーバを介して自端末10と他端末20との間で対話情報の送受信が行われてもよい。
今回開示された実施形態はすべての点で例示であって、制限的なものではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。