本発明の一実施形態について、図1〜図10に基づいて説明すれば以下の通りである。
〔家族伝言板システムの概要〕
まず、本発明の一実施形態にかかる家族伝言板システムの概要を図2に基づいて説明する。図2は、家族伝言板システム100の概要を示す図である。
家族伝言板システム100は、登録されたグループのメンバー間におけるコミュニケーションのための電子伝言板を提供するシステムである。また、家族伝言板システム100では、家庭内に配置された機器(以下、家庭内機器と呼ぶ)の状態や、メンバーの書き込み内容等に応じて、家族伝言板に書き込みが行われるようになっている。さらに、家族伝言板システム100では、メンバーからの指示に従って、家庭内機器の動作制御を行うこともできるようになっている。
図示のように、家族伝言板システム100は、エージェントサーバ(行動制御装置)1、家族伝言板サーバ2、およびホームサーバ3を含む。また、家族伝言板には、家族のメンバー(図示の例ではお父さん、お母さん、子供)の所持する携帯端末4a、4b、および4cにてアクセスし、書き込み、閲覧、および家庭内機器の操作指示を行うことができるようになっている。また、ホームサーバ3には、掃除ロボット(機器)5が無線通信接続されていると共に、家庭内機器が有線または無線にて通信接続されている。なお、同図では、家庭内機器が、空調装置6、照明装置7、テレビ8、および録画装置9である例を示しているが、家庭内機器の種類および数は特に限定されない。
エージェントサーバ1は、家庭内機器の状態、家庭内機器が取得した情報、およびメンバーの書き込み内容等に応じて、家族伝言板に書き込みを行う。より具体的には、エージェントサーバ1は、掃除ロボット5を擬人化したキャラクタとして書き込みを行う。これにより、家族のメンバーは、家族伝言板において、掃除ロボット5とのコミュニケーションを疑似体験することができる。
また、エージェントサーバ1は、携帯端末4a、4b、および4cからの操作指示を受け付け、これに応じた操作指示をホームサーバ3に送信することによって、掃除ロボット5または家庭内機器の動作を制御する。
なお、ここでは、エージェントサーバ1が、家族伝言板への書き込みを行う機能と、掃除ロボット5および家庭内機器の動作を制御する機能とを備えている例を説明するが、これらの機能は個別のサーバに搭載してもよい。
家族伝言板サーバ2は、携帯端末4a、4b、および4cに対する家族伝言板の表示画面の提示、および書き込みの管理等の、家族伝言板に関する処理全般を行う。
ホームサーバ3は、掃除ロボット5または家庭内機器と、エージェントサーバ1との間の情報の送受信を統括して制御する。具体的には、ホームサーバ3は、エージェントサーバ1から受信した操作指示に従って、掃除ロボット5または家庭内機器の動作制御を行う。また、ホームサーバ3は、掃除ロボット5から取得した情報、および家庭内機器から取得した情報をエージェントサーバ1に送信する。
なお、図示の例では、掃除ロボット5または家庭内機器に搭載されたセンサによって取得されたセンシングデータ、掃除ロボット5または家庭内機器の動作ログ、および掃除ロボット5または家庭内機器が撮影した写真を送信しているが、送信する情報はこれらの例に限られない。
また、例えば家族伝言板に関与する家庭内機器が存在しない場合のように、統括的な制御の必要がない場合には、ホームサーバ3を設けずに、掃除ロボット5がエージェントサーバ1と情報を送受信する構成としてもよい。
携帯端末4a、4b、および4cは、家族伝言板の閲覧、書き込み、並びに掃除ロボット5および家庭内機器の操作指示を行うための装置である。同図では、携帯端末4a、4b、および4cがスマートフォンである例を示しているが、家族伝言板の閲覧、書き込み、および操作指示を行うことができるものであればこれに限られない。
掃除ロボット5は、自動で床の掃除を行う自走式の掃除機である。また、掃除ロボット5は、掃除のための機能の他にも、動作ログの記憶機能、充電残量の検出および出力機能、画像撮影機能、音声認識機能、音声出力機能、室温を検知する温度センサ等を備えている。さらに、掃除ロボット5は、家庭内機器に制御信号を送信してこれを操作する機能も有している。
その他にも、掃除ロボット5は、様々な機能を備えることが可能である。例えば、ユーザの接触を検知するセンサ、湿度を検知する湿度センサ、人を検知する人感センサ、およびにおいを検知するにおいセンサなどを備えていてもよい。
空調装置6は、冷暖房等の空調を行う装置であり、いわゆるエアコンである。また、空調装置6は、温度センサを備えており、これによって検出した室温をホームサーバ3に送信する。
照明装置7は、LED等の光源を備えた照明装置であり、ホームサーバ3の制御によって点灯および消灯することができる。
テレビ8はテレビジョン受像機であり、録画装置9はテレビ8が受信した放送番組を録画する装置である。これらの機器についても、ホームサーバ3によって動作制御することができる。
〔家族伝言板の画面例〕
次に、図3を参照して、エージェントサーバ1による家族伝言板への書き込みについて、図3は、家族伝言板の画面例を示す図である。
図示の画面例では、家族伝言板に書き込まれたメッセージM1〜M5が時系列で並んでおり、各メッセージにはその書き込み者を示すアイコンが表示されている。具体的には、メッセージM1のアイコンは、書き込み者が図2の「お父さん」であることを示し、メッセージM3、M5のアイコンは、書き込み者が図2の「お母さん」であることを示している。そして、メッセージM2、M4のアイコンは、書き込み者が掃除ロボット5であることを示している。
この掃除ロボット5としての書き込みを制御するのがエージェントサーバ1である。図示の例では、「お父さん」からの「掃除を開始して」という指示に対して、掃除ロボット5から応答の書き込みが行われているが、この書き込みを行っているのがエージェントサーバ1である。
このとき、エージェントサーバ1は、掃除ロボット5自体の感情を示す指標である気分情報と、ユーザに対する感情を示す指標である対ユーザ感情情報とに応じて決定される行動を実行する。図示の例では、掃除ロボット5からの書き込みとして「はい」のメッセージを投稿して、掃除の実行を引き受けるという行動を実行している。
また、図示の例では、「お母さん」からも掃除ロボット5に対して指示が行われている。ここで、掃除ロボット5との親密度は、「お父さん」に比べて「お母さん」の方が高いとする。この場合、エージェントサーバ1は、応答の文面、文字フォント、文字の色、背景色などを変化させた応答を行う。
これにより、掃除ロボット5からの書き込みとして「はい、よろこんで♪」のメッセージが投稿される。このように、掃除ロボット5に対して同様に指示を行った場合であって、指示を行ったユーザの対ユーザ感情情報が異なっていれば、異なる応答がなされる。
すなわち、ユーザ毎に応答内容を変化させることで、あたかも掃除ロボット5が、各ユーザに対して、好き嫌いの感情を有しているかのような応答を行う。
また、上記応答は、気分情報によっても内容が変化する。これにより、機嫌が悪いために、人間が普段仲の良い相手に対してそっけない態度をとるというような状況を、家族伝言板へのメッセージを通して表現できる。
このように、エージェントサーバ1は、掃除ロボット5とユーザとのコミュニケーションを、よりリアルなものとするような制御を行う。
なお、掃除ロボット5への行動は、図3に示すような指示だけに限定されない。例えば、掃除ロボット5を褒めたり、叱ったりすることも可能である。また、ユーザから掃除ロボット5に声をかける、または操作する等の掃除ロボット5に対する直接の行動であってもよい。そして、この場合には、掃除ロボット5からの応答は、掃除ロボット5が音声を出力して直接ユーザにメッセージを伝える等、掃除ロボット5に対して行動を行ったユーザが掃除ロボット5の応答を即座に確認できる態様で行う。
なお、掃除ロボット5からの応答は、指示を行ったユーザに対する応答に限定されない。例えば、ユーザから掃除ロボット5に対する直接の声かけ、あるいは操作によって、家族伝言板を介さずに指示がなされた場合には、その旨(誰から指示を受けたかおよびどのような指示を受けたかなど)を家族伝言板に投稿してもよい。なお、この場合に、指示を行ったユーザに応じて、投稿の内容を変更してもよい。
これにより、掃除ロボット5に直接指示がなされた場合でも、各ユーザは家族伝言板に投稿された掃除ロボット5のメッセージを通して、当該指示を確認することができる。
〔エージェントサーバの構成〕
次に、図1を参照して、エージェントサーバ1の構成について説明する。図1は、本実施形態に係るエージェントサーバ1の要部構成を示すブロック図である。
本実施形態では、説明の便宜上、対ユーザ感情情報は、ユーザ毎に管理される属性情報として説明するが、対ユーザ感情情報は、複数のユーザで構成されるグループ毎に管理されてもよい。
図1に示すように、エージェントサーバ1は少なくとも、通信部11、記憶部12、および、制御部13を含んでいる。
通信部11は、エージェントサーバ1が外部と通信するための通信デバイスである。具体的には、後述する通信制御部131が、家族伝言板サーバ2、およびホームサーバ3と各種情報を送受信するために用いられる。
記憶部12は、装置内で使用する各種情報を記憶する記憶装置であり、気分情報記憶部121、対ユーザ感情情報記憶部122、算出方法記憶部123、および行動記憶部124を含む。
気分情報記憶部121には、掃除ロボット5の属性を示すものとしてユーザと独立に設定された機器属性情報である気分情報が記憶される。この気分情報は、掃除ロボット5を取り巻く環境、掃除ロボット5の状態、あるいは掃除ロボット5に対するユーザの行為などに応じて更新される。気分情報は、掃除ロボット5の感情を示す指標として設定された情報である。
例えば、気分情報は、3(良い)、2(普通)、1(悪い)の3段階で気分情報記憶部121に記憶される。なお、気分情報は3段階に限らず、掃除ロボット5の感情を区分できる分け方であればよい。また、気分情報の更新処理の詳細については後述する。
対ユーザ感情情報記憶部122には、掃除ロボット5のユーザ毎に設定される、対ユーザ感情情報が記憶される。対ユーザ感情情報は、例えば、掃除ロボット5に対するユーザの行為により、各ユーザに対して決定される。つまり、対ユーザ感情情報は、掃除ロボット5の各ユーザに対する好き嫌いのようなものである。
算出方法記憶部123には、気分情報と対ユーザ感情情報とから、行動決定レベルを決定するための算出方法が記憶される。
行動記憶部124には、各行動決定レベルと掃除ロボット5の行動内容とを対応付けた情報が記憶される。
対ユーザ感情情報記憶部122、算出方法記憶部123、および、行動記憶部124に記憶されるデータの構造、および具体例については後述する。
なお、エージェントサーバ1は、図示しない一時記憶部を備えていてもよい。一時記憶部は、エージェントサーバ1が実行する各種処理の過程で、演算に使用するデータおよび演算結果などを一時的に記憶するいわゆるワーキングメモリであり、RAM(Random Access Memory)などの記憶装置で構成される。
また、どのデータをどの記憶装置に記憶するのかについては、エージェントサーバ1の使用目的、利便性、コスト、物理的な制約などから適宜決定される。
次に、制御部13は、エージェントサーバが備える各部を統括制御するものである。制御部13は、通信制御部131、行動決定部(行動決定手段)132、出力情報作成部(実行制御手段)133、ユーザ特定部134、気分情報更新部(機器属性更新手段)135、および、対ユーザ感情情報更新部(ユーザ属性更新手段)136を備えている。
通信制御部131は、通信部11を介して、エージェントサーバ1の内部と外部との通信を制御するものである。具体的には、通信制御部131は、通信部11を介して、家族伝言板サーバ2あるいはホームサーバ3から各種情報を取得する。そして、取得した情報を各部に供給する。また、通信制御部131は、後述する出力情報作成部133から供給された出力情報を、通信部11を介して、家族伝言板サーバ2あるはホームサーバ3に送信する。
行動決定部132は、掃除ロボット5の気分情報と、ユーザに対して設定された対ユーザ感情情報とに基づいて、掃除ロボット5のユーザに対する行動を決定する。より詳細には、行動決定部132は、掃除ロボット5にユーザに対して直接行わせる行動の内容および態様の決定と、家族伝言板において掃除ロボット5の代理として投稿するメンバー宛のメッセージの内容および態様の決定とを行う。なお、行動の決定方法については後述する。
出力情報作成部133は、行動決定部132が決定した行動を実行する。より詳細には、出力情報作成部133は、行動決定部132が掃除ロボット5にユーザに対して直接行わせる行動を決定した場合、ホームサーバ3を介して掃除ロボット5に該行動を実行させる。また、出力情報作成部133は、行動決定部132がメッセージの投稿に関する決定を行った場合、決定された内容および態様でメッセージを投稿する。
ユーザ特定部134は、通信制御部131から供給された情報から、掃除ロボット5に対して所定の行為を行ったユーザを特定する。具体的には、ユーザ特定部134は、家族伝言板サーバ2から取得した家族伝言板のログから、掃除ロボット5へのメッセージを投稿したユーザを特定する。また、ユーザ特定部134は、掃除ロボット5から、ホームサーバ3を経由して送信された、ユーザの掃除ロボット5に対する所定の行為に関する情報を取得し、この行為を行ったユーザを特定する。
ここで、「行為に関する情報」とは、掃除ロボット5に対してユーザが行った行為を示す音声、画像、および動画などのデータである。例えば、ユーザの声を録音した音声データ、ユーザの行為を撮影した写真、ユーザからの接触の検出結果などである。ユーザの行為の具体例については後述する。
気分情報更新部135は、通信制御部131から供給された情報に基づいて、気分情報を更新する。具体的には、気分情報更新部135は、家族伝言板サーバ2、あるいはホームサーバ3から通信制御部131を介して取得した、掃除ロボット5を取り巻く環境、掃除ロボット5の状態、あるいは掃除ロボット5に対するユーザの行為に関する情報に応じて気分情報を更新する。
より詳細には、気分情報更新部135は、気分情報に影響を与える因子のそれぞれについて、気分情報への影響の度合いに応じたカウント値の増減を定義した情報に基づき、上記因子の検出に応じてカウント値を更新する。そして、カウント値が所定の上限値または下限値に達したときに気分情報を更新する。
このように、カウント値を介して気分情報を更新することにより、気分情報の変動する頻度を下げることができる。また、カウント値の上限値および下限値を大きく設定することによって、さらに気分情報の変動を抑えることができ、逆に小さく設定することによって、気分情報が変動しやすくすることもできる。これにより、気分が変わりやすい、変わりにくいといった性格を表現することも可能になる。
なお、気分情報の更新は、掃除ロボット5を取り巻く環境、掃除ロボット5の状態、あるいは掃除ロボット5に対するユーザの行為が気分情報に反映されるように行えばよく、その具体的な態様は特に限定されない。
対ユーザ感情情報更新部136は、通信制御部131から供給された情報に基づいて、対ユーザ感情情報を更新する。具体的には、対ユーザ感情情報更新部136は、家族伝言板サーバ2、あるいはホームサーバ3から通信制御部131を介して取得した、ユーザの掃除ロボット5に対する行為に関する情報に応じて対ユーザ感情情報を更新する。対ユーザ感情情報の更新は、気分情報と同様にして行うことができる。
以上のように、エージェントサーバ1では、行動決定部132が、気分情報および対ユーザ感情情報からユーザに対する行動を決定するので、同じユーザであっても気分情報に応じて異なる行動が決定され得る。
したがって、コミュニケーションのリアリティを高めることができる。そして、これにより、掃除ロボット5を利用する際のエンタテインメント性を高めることができる。
〔対ユーザ感情情報記憶部の構成〕
次に、図4を参照して、対ユーザ感情情報記憶部122に格納されるデータについて説明する。図4の(a)は、対ユーザ感情情報記憶部122に格納される対ユーザ感情情報の一例を示す模式図である。なお、図4の(a)に示すデータの構造は一例であって、データ構造が表形式に限定されるものではない。これは、以降に説明するデータについても同様である。
「ユーザ名」の列には、各ユーザを示す情報が格納される。なお、この列に格納される情報は、個人を示す情報に限定されず、例えば、複数のユーザで構成されるグループを示す情報であってもよい。また、ユーザを示す情報は、状況に応じて適宜追加可能であってもよい。
「親密度」の列には、各ユーザに対する掃除ロボット5の親密度(ユーザ属性情報、更新対象情報)が格納される。ここで、親密度とは、ユーザに対する掃除ロボット5の親密さの度合いを数値で示した指標である。親密度が高いほど、掃除ロボット5の当該ユーザへの対応は好意的なものとなり、反対に親密度が低い場合は、当該ユーザを嫌っているような対応となる。
なお、図4の(a)では親密度を10段階で示しているが、これに限定する意図はなく、ユーザ毎の親密度を区分できる分け方であればよい。例えば、「好き」、「普通」、「嫌い」といった分け方でもよい。
また、対ユーザ感情情報記憶部122において、「ユーザ名」に対応付けられる情報は複数あってもよい。例えば、図4の(b)に示すように、「親密度」に加えて、「礼儀度」の列があってもよい。
「礼儀度」の列には、掃除ロボット5の各ユーザへの礼儀度(ユーザ属性情報、非更新対象情報)が格納される。ここで、礼儀度とは、掃除ロボット5の、各ユーザに対する言葉遣いを決定する情報である。例えば、礼儀度が高いユーザに対しては、丁寧な言葉遣いで応答する。
礼儀度は、ユーザによって定義される、あるいはデフォルトで定義される値であり、更新の対象としない。これにより、親密度の値にかかわらず、礼儀度に応じた言葉遣いでコミュニケーションさせることが可能になる。例えば、「お父さん」に対しては、常に丁寧な言葉遣いで対応することが可能になる。
また、図4の(b)では、礼儀度を10段階で示しているが、これに限定する意図はなく、ユーザ毎の礼儀度を区分できる分け方であればよい。例えば、「丁寧」、「普通」、「なれなれしい」といった分け方でもよい。
なお、対ユーザ感情情報は、上記の親密度および礼儀度に限られず、ユーザに対する行動に影響を与えると考えられる因子に対応するものであればよい。例えば、目上、目下、同格などの立場を示す指標をユーザ感情情報として用いてもよいし、ユーザとの相性を示す指標を対ユーザ感情情報として用いてもよい。なお、立場は変化させることが好ましいが、相性は、基本的に変化しないものと考えられるため、更新の対象としないことが好ましい。
〔算出方法記憶部の構成〕
次に、図5を参照して、算出方法記憶部123に格納されるデータについて説明する。図5の(a)および(b)は、算出方法記憶部123に格納されるデータの一例を示す模式図である。
図5の(a)は、行動決定レベルを決定するためのレベル決定テーブルの一例を示している。図示のデータにおいて、「指標値範囲」の列には、指標値の範囲を示す情報が格納されている。ここで、指標値とは、気分情報および対ユーザ感情情報の双方を加味した、行動決定の指標となる値であり、気分情報および対ユーザ感情情報を用いて所定の算出式から算出される。
なお、算出式は、気分情報と対ユーザ感情情報との双方を反映させた指標値を算出できるものであればよい。例えば、単に気分情報と対ユーザ感情情報とを掛け合わせるもの(指標値=気分情報×対ユーザ感情情報)であってもよいし、加算するもの(指標値=気分情報+対ユーザ感情情報)であってもよい。
さらに、気分情報と対ユーザ感情情報とで重みづけを行ってもよい。例えば、指標値=気分情報×α+対ユーザ感情情報×β(α、β:各情報に対する重みづけの数値)の算出式を用いてもよい。重みづけによって、どちらの属性情報をどの程度重視するのかを設定することができる。
「行動決定レベル」の列には、行動決定レベルを示す数値が格納されている。すなわち、図5の(a)のレベル決定テーブルを用いる場合、行動決定部132は、該テーブルを参照して、算出式によって算出した指標値に対応付けられた行動決定レベルを読み出す。なお、同図の例では、行動決定レベルを1から5までの5段階としているが、これに限定されない。
また、レベル決定テーブルは、図5の(b)に示すような、横軸×縦軸のマトリックスのテーブルであってもよい。この場合、行動決定部132は、該テーブルを参照して、気分情報記憶部121および対ユーザ感情情報記憶部122から読み出した気分情報および対ユーザ感情情報に対応する行動決定レベルを読み出す。
なお、対ユーザ感情情報が複数ある場合は、単に気分情報と複数の対ユーザ感情情報とを掛け合わせた、または加算した値を指標値としてもよい。また、重みづけを行ってもよい。
さらに、対ユーザ感情情報が複数ある場合に、レベル決定テーブルにて行動決定レベルを決定するときには、3次元のマトリックスのテーブルを用いてもよい。ただし、礼儀度のように、特定の行動(礼儀度の場合には言葉遣い)を指定する対ユーザ感情情報を用いる場合、行動決定レベルにはこれを反映させない。他のユーザ感情情報との併用によって特定の行動がなされなくなる(礼儀度の場合には言葉遣いが変わる)ことを防ぐためである。
〔行動記憶部の構成〕
次に、図6を参照して、行動記憶部124に格納されるデータについて説明する。図6は、行動記憶部124に格納される行動決定テーブルの一例を示す模式図である。図示のように、行動決定テーブルは、行動決定レベルに応じた行動の内容および態様を示すテーブルである。
具体的には、図示の行動決定テーブルでは、各行動決定レベルに対して、「口調」、「ユーザからの依頼を受けた時の対応」、「表示する際のフォント」、「表示する際の背景色」、および「出力音量」がそれぞれ対応付けられている。
これらの項目のうち、「表示する際のフォント」、「表示する際の背景色」は、家族伝言板に登録する、掃除ロボット5を投稿者とするメッセージのフォントおよび背景色を示している。なお、「表示する際の背景色」に加えて、例えば、「表示する際の文字色」を指定する項目が含まれていてもよい。ここで、「表示する際の文字色」は、家族伝言板に登録する、掃除ロボット5を投稿者とするメッセージの文字色を示している。また、「出力音量」は、掃除ロボット5からユーザに対して直接に音声メッセージを出力する場合の音量を示している。
そして、「口調」は、メッセージの投稿時および掃除ロボット5からユーザへの音声メッセージの出力時の双方に適用されるものであり、メッセージにおける掃除ロボット5の口調を示している。
また、「ユーザからの依頼を受けた時の対応」も、メッセージの投稿時および掃除ロボット5からユーザへの音声メッセージの出力時の双方に適用されるものである。家族伝言板で掃除等の実行依頼がなされた場合、あるいは掃除ロボット5に対して直接に掃除等の実行依頼がなされた場合の行動内容を示している。
なお、上記の例のうち、「ユーザからの依頼を受けた時の対応」以外は、ベースとなる行動(メッセージを投稿または出力させること、およびそのメッセージの内容)が決まっており、行動決定レベルに応じて、その一部(例えば口調)を変更させるためのものである。
また、図6の例では、行動決定レベル「1」については、「ユーザからの依頼を受けた時の対応」が「断る」となっている。この場合、エージェントサーバ1は、掃除ロボット5を動作させるための信号を送信しない。つまり、エージェントサーバ1は、嫌われている相手に依頼して断わられるという、人と人とのコミュニケーションに特有のシチュエーションを掃除ロボット5という機器とのコミュニケーションにおいて再現することができる。
なお、行動記憶部124のデータ例を図6に限定する意図はなく、図6に示されている行動および動作以外に、新たな列が追加されてもよい。
また、行動決定レベルを介さずに、算出式から算出した指標値、あるいは気分情報の数値および対ユーザ感情情報の数値から、直接行動を決定してもよい。
以上より、行動決定部132は、気分情報と対ユーザ感情情報とから、行動決定レベルを決定し、当該決定レベルに対応付けられた行動を読み出すだけで、掃除ロボット5としての行動を決定することができる。
また、決定された行動は、行動決定レベル、すなわち気分情報および対ユーザ感情情報に応じてそれぞれ異なる。つまり、ユーザあるいは状況に応じて電子伝言板に表示されたメッセージ、あるいは掃除ロボット5の出力する音声の内容が変更されるので、ユーザはより人間相手に近いコミュニケーションを行うことができる。
〔行動決定処理の流れ〕
続いて、図7を参照して、エージェントサーバ1における行動決定処理(行動制御方法)の流れの一例について説明する。図7は、エージェントサーバ1における行動決定処理の流れを示すフローチャートである。
なお、ここでは、ユーザから掃除ロボット5に対して指示が行われたときの、該指示に対する応答となる行動を決定する例を説明するが、行動決定処理はこのような場合に限られず、掃除ロボット5に関する任意の行動の決定の際に行ってよい。例えば、ユーザから掃除ロボット5に対して直接または家族伝言板にて褒める、叱る等のメッセージが発せられたときに、このメッセージに対する応答を決定するために行ってもよい。
まず、掃除ロボット5への指示を受信する(S101)。具体的には、通信制御部131が、家族伝言板サーバ2またはホームサーバ3から、通信部11を介して、掃除ロボット5への指示を受信する。指示の受信により、行動決定部132が、この指示に対する応答となる行動を決定するために以下の処理を開始する。
なお、ユーザが掃除ロボット5に対して直接指示を行った場合、掃除ロボット5から指示を受けた旨がホームサーバ3に通知され、ホームサーバ3からこの旨がエージェントサーバ1に通知される。この場合、掃除ロボット5は、エージェントサーバ1からの指示を受けるまで、ユーザからの指示の実行を保留する。一方、ユーザが家族伝言板で指示を行った場合、家族伝言板サーバ2からこの旨がエージェントサーバ1に通知される。ただし、この場合、掃除ロボット5への指示を判別して、エージェントサーバ1に通知する機能を家族伝言板サーバ2に搭載する必要がある。このため、エージェントサーバ1が家族伝言板サーバ2から会話ログを定期的に、または会話ログが更新されたタイミングで取得し、これを解析することによって、掃除ロボット5への指示が行われたことを特定してもよい。これにより、家族伝言板サーバ2に上記の機能を搭載する必要がなくなる。
続いて、行動決定部132は、指示したユーザの特定をユーザ特定部134に行わせる(S102)。ここで、家族伝言板による指示の場合には、ユーザ特定部134が、家族伝言板のログから指示を行ったユーザを特定する。一方、掃除ロボット5に対する直接の指示の場合、ユーザの行為に関する音声、画像および動画などのデータを掃除ロボット5から取得し、このようなデータから指示を行ったユーザを特定する。
次に、行動決定部132は、気分情報の読出しを行い(S103)、続いて対ユーザ感情情報の読み出しを行う(S105)。具体的には、行動決定部132は、S105では、ユーザ特定部134が特定したユーザに対応付けられた対ユーザ感情情報(例えば、親密度)を対ユーザ感情情報記憶部122から読み出す。なお、気分情報の読出しと、対ユーザ感情情報の読出しの順番はどちらが先でもよく、また平行して読み出してもよい。
次に、行動決定部132は、他に対ユーザ感情情報を使用するか否かの判定を行う(S107)。他に対ユーザ感情情報を使用する場合(S107でYES)、行動決定部132は、ユーザ特定部134が特定したユーザの、別の対ユーザ感情情報(例えば、礼儀度)を、対ユーザ感情情報記憶部122から読み出す。
一方、他に対ユーザ感情情報を使用しない場合(S107でNO)、行動決定部132は、算出方法の読出しを行う(S109)。具体的には、行動決定部132は、算出方法記憶部123から算出式を読み出す。なお、行動決定レベルの決定が、レベル決定テーブルによって行われる場合は、当該テーブルを読み出す。
次に、行動決定部132は、行動決定レベルを決定する(S111)。具体的には、行動決定部132は、算出方法記憶部123から読み出した算出式に、気分情報記憶部121および対ユーザ感情情報記憶部122からそれぞれ読み出した気分情報および対ユーザ感情情報を代入して、指標値を算出する。続いて、算出方法記憶部123を参照して、算出した指標値と対応付けられた行動決定レベルを読み出す。
なお、行動決定レベルの決定をレベル決定テーブルによって行う場合は、行動決定部132は、気分情報記憶部121および対ユーザ感情情報記憶部122からそれぞれ読み出した気分情報および対ユーザ感情情報と対応付けられた行動決定レベルをレベル決定テーブルから読み出す。
次に、行動決定部132は、行動内容の読出しを行う(S113、行動決定ステップ)。具体的には、行動決定部132は、S111で決定した行動決定レベルに対応する行動を行動記憶部124から読み出し、読み出した内容と掃除ロボット5への指示内容とに応じた行動を決定する。そして、行動決定部132は、決定した行動を実行するように出力情報作成部133に指示する。
例えば、家族伝言板から掃除の実行指示がなされた場合、行動決定レベルが2以上であれば、掃除を実行させることを決定する。また、掃除の実行を引き受けることを示すメッセージを家族伝言板に投稿することを決定すると共に、行動決定テーブルを参照してこのメッセージの内容および態様を決定する。例えば、図6の行動決定テーブルを用いる場合に、行動決定レベルが5であれば、「親しい口調」で掃除の指示を「快く受ける」内容のメッセージを「丸文字」で「明るい色」の背景色で表示させることを決定する。
なお、図4の(b)の礼儀度のような言葉遣いを指定する対ユーザ感情情報を用いる場合には、以上のようにして決定したメッセージの言葉遣いを、指定されたものに変更する処理をさらに行う。
最後に、出力情報作成部133は、出力情報の作成を行い(S115、実行制御ステップ)、作成した出力情報を出力し(S117)、行動決定処理は終了する。
具体的には、ユーザが家族伝言板で指示を行った場合、出力情報作成部133は、行動決定部132からの指示に従って、家族伝言板に投稿するメッセージを生成し、掃除ロボット5からのメッセージとして家族伝言板サーバ2に投稿する。また、出力情報作成部133は、掃除ロボット5にユーザの指示した動作を実行させる命令を生成して、ホームサーバ3に送信し、掃除ロボット5に伝達させる。なお、行動決定部132がユーザの指示した動作を実行させないことを決定している場合には、この命令の生成および送信は行わない。
一方、ユーザが掃除ロボット5に直接指示を行った場合、出力情報作成部133は、行動決定部132から指示された内容および態様で掃除ロボット5に音声出力を行わせる命令を生成してホームサーバ3に送信して、掃除ロボット5に伝達させる。また、出力情報作成部133は、掃除ロボット5にユーザの指示した動作を実行させる命令を生成して、ホームサーバ3に送信し、掃除ロボット5に伝達させる。なお、行動決定部132がユーザの指示した動作を実行させないことを決定している場合には、動作の実行命令の生成および送信は行わない。
以上のように、エージェントサーバ1は、掃除ロボット5の気分情報および対ユーザ感情情報に基づいたメッセージを家族伝言板に投稿する。あるいは、気分情報および対ユーザ感情情報に基づいた音声を掃除ロボット5に出力させる。
これにより、掃除ロボット5とのリアリティのあるコミュニケーションをユーザに体験させることができ、家電を利用する際のエンタテインメント性を高めることができる。
〔情報の更新〕
次に、図8を参照して、気分情報および対ユーザ感情情報の更新について説明する。図8は、気分情報および対ユーザ感情情報の更新例を示すテーブルである。
まず、気分情報の更新について説明する。気分情報は、掃除ロボット5の機嫌のような指標であり、掃除ロボット5を取り巻く環境、掃除ロボット5の状態、あるいは掃除ロボット5に対するユーザの行為などによって変化する。気分情報は、上述したように、3(良い)、2(普通)、1(悪い)の3段階で気分情報記憶部121に記憶され、掃除ロボット5を取り巻く環境の変化、掃除ロボット5の状態の変化、あるいは掃除ロボット5に対するユーザの行為などがあったとき、気分情報のカウント値を更新する。そして、このカウント値が所定の値に達したときに、気分情報の段階を変化させる。
具体的には、図8の(a)の例では、掃除ロボット5が掃除を完了したときには、達成感から掃除ロボット5の気分は良くなると想定して、当該状態にカウント値を1増やすことを対応付けている。このように、掃除を終了したという掃除ロボット5の動作状態(状態情報)をカウント値の増減の対象としてもよい。
また、ユーザが、掃除ロボット5が掃除を完了したことを褒めたときには、掃除ロボット5の気分がさらに良くなると想定して、当該事象にカウント値を2増やすことを対応付けている。このように、掃除を終了したという動作状態と、ユーザからのメッセージとの組み合わせを1つの事象としてカウント値の増減の対象としてもよい。
一方、掃除予定時間の直前にユーザから掃除の指示があったときには、これから掃除をしようとしていた掃除ロボット5は気分が悪くなると想定して、当該事象にカウント値を1減らすことを対応付けている。
その他にも、掃除ロボット5自体の状態を示す状態情報に応じて、気分情報のカウント値を増減させてもよい。例えば、図8の(a)の例では、充電残量が所定量より少ない状態となったとき、およびダストカップのごみの量が所定量より多い状態となったときには、掃除ロボット5の気分は悪くなると想定して、当該状態に遷移したことに対し、カウント値を1減らすことを対応付けている。
なお、同図には示していないが、これらの状態が解消されたときには、掃除ロボット5の気分も回復すると想定される。このため、充電残量が所定量より少ない状態から多い状態への遷移、およびごみの量が所定量より多い状態から少ない状態への遷移には、カウント値を1増やすことを対応付けてもよい。また、ごみの量や充電残量の程度に応じてカウント値を段階的に増減させてもよい。
例えば、充電残量が10%未満となったときに、カウント値を減らし、充電することによって10%以上となったときにカウント値を増やしてもよい。また、例えば、ごみの蓄積量が90%となったときにカウント値を1減らし、ごみの蓄積量が100%(ダストカップが一杯)となったときにさらにカウント値を2減らしてもよい。
無論、カウント値を変動させる因子は、適宜決定されればよく、図8の(a)に示したものに限定されない。例えば、室温が上限値を超えたとき、または下限値を未満となったときにカウント値を減らしてもよい。同様に、湿度が上限値を超えたとき、または下限値を未満となったときにカウント値を減らしてもよい。このように、掃除ロボット5の周囲の状況を示す環境情報に応じてカウント値を更新してもよい。なお、環境情報は、掃除ロボット5にセンサを設けることによって取得することができるので、センシングデータと表現することもできる。
また、複数の情報の変化を複合させて、カウント値を変化させてもよい。例えば、ダストカップのごみの量が多くても、充電残量が十分残っている場合は減らさないが、充電残量が所定量より少ない場合は減らす、といった構成でもよい。
なお、図8の(a)に示すようなテーブルは、例えば、気分情報記憶部121に保存されていてもよい。気分情報更新部135は、このテーブルを参照することで、カウント値の増減を決定してもよい。
そして、上記のようにカウント値を増減させることによって、カウント値が所定の値(例えば+10および−10)を超えたときには、気分情報を更新してカウント値をリセットする。なお、例えば、カウント値0〜5の場合は気分が悪く、6〜22の場合、普通、23〜30の場合は気分が良い、というように、カウント値をリセットしない構成でもよい。
また、気分情報のそれぞれの段階の範囲は、同じとしてもよいし、異ならせてもよい。異ならせる場合、気難しい等の性格を表現することも可能である。なお、以降では、カウント値が所定の値を超えた場合に、カウント値をリセットする構成を例に挙げて説明する。
次に、対ユーザ感情情報の更新について説明する。対ユーザ感情情報は、掃除ロボット5が各ユーザに対して持っている、好き嫌いのような指標であるため、例えば、掃除ロボット5に対するユーザの行為によって変化する。対ユーザ感情情報は、上述したように、10段階で対ユーザ感情情報記憶部122に記憶され、掃除ロボット5に対するユーザの行為に応じて更新される。この更新は、気分情報と同様に、カウント値が所定の値に達したときに対ユーザ感情情報の段階を変化させることで行う。
具体的には、ユーザの掃除ロボット5に対する行動に対して、予めカウント値の増減を定義しておく。例えば、図8の(b)に示すように、掃除ロボット5を蹴っ飛ばす、たたくなどの行為に対して、カウント値を所定量減らすことを定義し、反対になでるなどの行為に対しては、カウント値を所定量増やすことを定義しておく。
なお、蹴っ飛ばす、たたくなどの行為は、掃除ロボット5にセンサを設けることで検出することが可能である。また、なでる行為については、なでたことを検知可能なパネルやシートを掃除ロボット5に設けることで検出可能である。
無論、カウント値を変動させる因子は、適宜決定されればよく、図8の(b)の例に限られない。例えば、掃除ロボット5に声をかけることでカウント値を変動させてもよく、掃除ロボット5に向けて発したメッセージの内容(叱る、褒める等)に応じてカウント値を変動させてもよい。
また、上述した、気分情報の更新で説明したような、掃除完了後に掃除ロボット5を褒めるといった行為のように、掃除ロボット5の状態とユーザの行為との組み合わせによってカウント値を変動させてもよい。
なお、掃除ロボット5に対するメッセージは、ユーザから掃除ロボット5に向かって直接に発せられたものであってもよいし、家族伝言板への投稿にて掃除ロボット5に向かって発せられるメッセージであってもよい。
さらに、掃除ロボット5へのお礼などの声かけを、掃除完了後すぐ行えばカウント値が増加し、反対に声かけが遅い、あるいは、掃除完了報告を無視するといった行為でカウント値が減少するというように、掃除ロボット5への応答までの時間に基づいて、カウント値を変動させてもよい。
なお、上記の例のように、対ユーザ感情情報の段階が10段階などと多い場合は、図8の(c)に示すように、ユーザの行動と、対ユーザ感情情報とを直接対応付けたデータを用いて、カウント値を用いずに対ユーザ感情情報を更新してもよい。
最後に、図8の(b)および(c)に示すようなテーブルは、例えば対ユーザ感情情報記憶部122に保存されていてもよい。対ユーザ感情情報更新部136は、このテーブルを参照することで、カウント値の増減を決定してもよい。
〔気分情報更新処理の流れ〕
次に、図9を参照して、エージェントサーバ1における気分情報更新処理の流れについて説明する。図9は、エージェントサーバ1における気分情報更新処理の流れを示すフローチャートである。
まず、掃除ロボット5を取り巻く環境・情報の変化に関する情報が変化したか否かを判定する(S201)。具体的には、気分情報更新部135は、ホームサーバ3を介してエージェントサーバ1に送信される掃除ロボット5に関する情報(掃除ロボット5の状態情報、センシングデータなど)を受信して、この情報に基づいて上記の判定を行う。
ここで、情報が変化したと判定したときには(S201でYES)、気分情報更新部135は、気分情報を更新するか否かを判定する(S203)。具体的には、気分情報更新部135は、図8の(a)のテーブルに規定されている変化を検出したか否かによって、この判定を行う。
そして、気分情報更新部135は、気分情報を更新すると判定した場合(S203でYES)、気分情報のカウント値の増減を決定する(S205)。具体的には、気分情報更新部135は、上記テーブルを参照して、検出した変化と対応付けられたカウント値の増減を読み出す。
続いて、気分情報更新部135は、カウント値を更新する(S207)。具体的には、気分情報更新部135は、読み出したカウント値の増減に基づいて、カウント値を更新する。
次に、気分情報更新部135は、カウント値が所定の値に達したか否かを判定する(S209)。所定の値に達したと判定した場合(S209でYES)、気分情報更新部135は、気分情報を更新する(S211)。具体的には、気分情報を1段階上げる、あるいは下げる処理を行い、カウント値の数値を0に戻し、気分情報更新処理を終了する。
なお、上記変化の情報が気分情報を更新するものでない場合(S203でNO)、および、カウント値が所定の値に達していない場合(S209でNO)には、気分情報更新処理を終了する。
上記の例では、カウント値による更新を行っているが、カウント値を用いずに、直接感情情報を更新してもよい。この場合、S205〜S209のステップは省略する。
〔対ユーザ感情情報更新処理の流れ〕
次に、図10を参照して、エージェントサーバ1における対ユーザ感情情報更新処理の流れについて説明する。図10は、エージェントサーバ1における対ユーザ感情情報更新処理の流れを示すフローチャートである。
まず、ユーザからの行為に関する情報を受信する(S301)。具体的には、通信制御部131が、通信部11を介して、家族伝言板サーバ2あるいはホームサーバ3から、ユーザからの行為に関する情報を受信する。ここで、通信制御部131が受信する情報とは、家族伝言板サーバ2から取得する、家族伝言板へ投稿されたメッセージのログであり、また、ホームサーバ3から取得する、掃除ロボット5から供給された音声、画像、および動画などのデータである。
次に、ユーザからの行為を特定する(S303)。具体的には、対ユーザ感情情報更新部136が、通信制御部131が受信した上記の情報から、行為を特定する。続いて、対ユーザ感情情報更新部136は、対ユーザ感情情報を更新するか否かを判定する(S305)。具体的には、対ユーザ感情情報更新部136は、図8の(b)に示すようなテーブルを参照して、特定した行為が対ユーザ感情情報を更新するものであるか否かを判定する。
ここで、特定した行為が対ユーザ感情情報を更新するものであった場合(S305でYES)、対ユーザ感情情報更新部136は、ユーザ特定部134に指示して、当該行為を行ったユーザを特定させる(S307)。
次に、対ユーザ感情情報更新部136は、対ユーザ感情情報のカウント値の増減を決定する(S307)。具体的には、対ユーザ感情情報更新部136は、上記のテーブルを参照して、当該行為と対応付けられたカウント値の増減を読み出す。続いて、対ユーザ感情情報更新部136は、特定したユーザのカウント値を更新する(S311)。具体的には、対ユーザ感情情報更新部136が、特定したユーザのカウント値を、読み出したカウント値の増減に基づいて更新する。
次に、対ユーザ感情情報更新部136は、カウント値が所定の値に達したか否かを判定する(S313)。所定の値に達した場合(S313でYES)、対ユーザ感情情報更新部136は、特定したユーザの対ユーザ感情情報を更新する。具体的には、対ユーザ感情情報記憶部122を特定したユーザの情報で参照し、ユーザ名に対応付けられた対ユーザ感情情報を1段階上げる、あるいは下げる処理を行い、カウント値の数値を0に戻し、対ユーザ感情情報更新処理を終了する。
なお、ユーザからの行為が、対ユーザ感情情報を更新するものでなかった場合(S305でNO)、および、カウント値が所定の値に達していない場合(S313でNO)は、その時点で対ユーザ感情情報更新処理を終了する。
また、カウント値を用いず、ユーザからの行為によって、直接対ユーザ感情情報を更新する場合は、S309〜S313のステップは省略する。
〔変形例〕
上記では、ユーザと掃除ロボット5とのコミュニケーションを制御する例を示したが、コミュニケーションの対象とする機器は、掃除ロボット5に限られない。例えば、家庭内機器である空調装置6やテレビ8のような他の機器とのコミュニケーションも、掃除ロボット5の場合と同様にして実現することができる。
〔まとめ〕
以上のように、本発明の一態様に係る行動制御装置(エージェントサーバ1)は、機器(掃除ロボット5)のユーザに対する行動を制御する行動制御装置であって、上記ユーザに対して設定されたユーザ属性情報(対ユーザ感情情報)と、上記機器の属性を示すものとして上記ユーザと独立に設定され、更新の対象となる機器属性情報(気分情報)とに基づいて、上記ユーザ属性情報および上記機器属性情報に応じて予め定められた行動を決定する行動決定手段(行動決定部132)と、上記行動決定手段が決定した行動を実行する実行制御手段(出力情報作成部133)とを備えている。
また、本発明の一態様に係る行動制御方法は、機器のユーザに対する行動を制御する行動制御装置による行動制御方法であって、上記ユーザに対して設定されたユーザ属性情報と、上記機器の属性を示すものとして上記ユーザと独立に設定され、更新の対象となる機器属性情報とに基づいて、上記ユーザ属性情報および上記機器属性情報に応じて予め定められた行動を決定する行動決定ステップと、上記行動決定ステップにて決定した行動を実行する実行制御ステップとを含む。
上記の構成によれば、ユーザ属性情報および機器属性情報に応じて機器のユーザに対する行動を決定し、決定した行動を実行する。なお、機器のユーザに対する行動には、機器がユーザに向けて直接に行う行動の他、機器の代理として行動制御装置がユーザに向けて行う行動等も含まれる。
ここで、上記ユーザ属性情報は、ユーザに対して設定された情報であるから、この情報に基づいて行動を決定することにより、ユーザに応じた行動を決定することができる。
一方、上記機器属性情報は、ユーザと独立に設定され、更新の対象となるものであるから、機器属性情報を考慮して行動を決定することにより、同じユーザに対する行動が、そのときの機器属性情報に応じて変化し得る。
つまり、上記の構成によれば、ユーザに応じた行動を実行することを可能にしながらも、そのときの機器属性情報に応じて変化に富んだ行動を実行することができる。また、上記機器属性情報は、ユーザと独立に設定されたものであるから、ユーザが直接的に制御することはできない。
このように、上記の構成によれば、人と人とのコミュニケーションにおける相手の気分のような、ユーザが直接的に制御することのできない要素を行動に反映させることができるので、ユーザと機器とのコミュニケーションにリアリティを持たせることができる。
なお、上記行動制御装置は、以下のように表現することもできる。
機器のユーザに対する行動を制御する行動制御装置であって、上記ユーザに対して設定されたユーザ属性情報と、上記機器の属性を示すものとして上記ユーザと独立に設定され、更新の対象となる機器属性情報とに基づいて、上記ユーザ属性情報および上記機器属性情報に応じて予め定められた行動を決定する行動決定手段と、上記機器に上記行動決定手段が決定した行動を実行させる実行制御手段とを備えていることを特徴とする行動制御装置。
通信ネットワークを介したメッセージの投稿および閲覧を可能にするサービスにおいて、機器の代理として該機器のユーザ宛のメッセージを投稿する投稿装置であって、上記ユーザに対して設定されたユーザ属性情報と、上記機器の属性を示すものとして上記ユーザと独立に設定され、更新の対象となる機器属性情報とに基づいて、上記ユーザ属性情報および上記機器属性情報に応じて予め定められた内容および態様のメッセージを決定する決定手段と、上記決定手段が決定したメッセージを投稿する実行制御手段とを備えていることを特徴とする投稿装置。
また、本発明の一態様に係る行動制御装置は、上記機器の状態を示す状態情報、上記ユーザまたは他のユーザからの上記機器に対する行動、および上記機器の周囲の状況を示す環境情報の少なくとも何れかに応じて上記機器属性情報を更新する機器属性更新手段(気分情報更新部135)を備えていてもよい。
上記の構成によれば、ユーザと機器とのコミュニケーションにさらなるリアリティを持たせることができる。人と人とのコミュニケーションにおいても、そのときの状態、他人からなされた行動、および周囲の状況に応じて感情が変化し、感情に応じて行動も変化するためである。
また、本発明の一態様に係る行動制御装置は、上記ユーザからの上記機器に対する行動に応じて上記ユーザ属性情報を更新するユーザ属性更新手段を備えていてもよい。
上記の構成によれば、ユーザと機器とのコミュニケーションにさらなるリアリティを持たせることができる。人と人とのコミュニケーションにおいても、相手からどのような行動がなされたかによってその相手への感情が変化し、感情に応じて行動も変化するためである。
また、本発明の一態様に係る行動制御装置では、上記ユーザ属性情報には、更新の対象となる更新対象情報と、更新の対象とならない非更新対象情報とが含まれており、上記ユーザ属性更新手段は、上記更新対象情報のみを更新する構成であってもよい。
上記の構成によれば、ユーザと機器とのコミュニケーションにさらなるリアリティを持たせることができる。人と人とのコミュニケーションにおいても、相性、立場、あるいは血縁関係等のように変動しない要因と、相手からの行動に応じて変動する相手に対する感情とに応じて行動が変化するためである。
また、本発明の一態様に係る行動制御装置では、上記機器のユーザに対する行動は、通信ネットワークを介したメッセージの投稿および閲覧を可能にするサービスにおいて、上記行動制御装置が上記機器の代理として上記ユーザ宛のメッセージを投稿する行動であり、上記行動決定手段は、上記ユーザ属性情報および上記機器属性情報に応じて予め定められた内容および態様のメッセージを投稿することを決定する構成であってもよい。
上記の構成によれば、通信ネットワークを介したメッセージの投稿および閲覧を可能にするサービスにメッセージを投稿するので、機器の近くに居らず、機器との直接のコミュニケーションができないユーザとのコミュニケーションを実現することができる。また、投稿するメッセージは、ユーザ属性情報および機器属性情報に応じて予め定められた内容および態様のメッセージであるから、人とコミュニケーションをしているかのようなリアルなコミュニケーションをユーザに体験させることができる。
また、本発明の一態様に係る行動制御装置では、上記ユーザ属性情報および上記機器属性情報に応じた、口調、対応内容、表示フォント、メッセージの背景色、およびメッセージの文字色のうち少なくとも1つを示す情報を参照して、投稿するメッセージの内容および態様を決定する構成であってもよい。
上記の構成によれば、人とコミュニケーションをしているかのようなリアルなコミュニケーションをユーザに体験させることができる。人と人とのメッセージのやり取りにおいても、その時の気分や、相手に対する感情に応じて、口調、対応内容、使用フォント、背景色、文字色等を変えることが行われるためである。
また、本発明の一態様に係る行動制御装置では、上記行動決定手段は、ユーザから上記機器に対して行われた行動に対して、上記ユーザ属性情報および上記機器属性情報に応じて予め定められた内容および態様の応答を上記機器に実行させることを決定する構成であってもよい。
上記の構成によれば、ユーザが機器に対して行った行動に対して、ユーザ属性情報および機器属性情報に応じて予め定められた内容および態様の応答を機器に行わせるので、人とコミュニケーションをしているかのようなリアルなコミュニケーションをユーザに体験させることができる。
また、本発明の一態様に係る行動制御装置では、上記行動決定手段は、上記ユーザ属性情報および上記機器属性情報に応じた、口調、対応内容、および出力音量のうち少なくとも1つを示す情報を参照して、ユーザからの行動に対する上記応答の内容および態様を決定する構成であってもよい。
上記の構成によれば、人とコミュニケーションをしているかのようなリアルなコミュニケーションをユーザに体験させることができる。人と人とのコミュニケーションにおいても、その時の気分や、相手に対する感情に応じて、口調、対応内容、声の大きさ等を変えることが行われるためである。
なお、上記行動制御装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記行動制御装置の各手段として動作させることにより、上記行動制御装置をコンピュータにて実現させる制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も本発明の範疇に入る。
〔ソフトウェアによる実現例〕
最後に、エージェントサーバ1の各ブロック、特に通信制御部131、行動決定部132、出力情報作成部133、ユーザ特定部134、気分情報更新部135、および対ユーザ感情情報更新部136は、集積回路(ICチップ)上に形成された論理回路によってハードウェア的に実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェア的に実現してもよい。
後者の場合、エージェントサーバ1は、各機能を実現するプログラムの命令を実行するCPU、上記プログラムを格納したROM、上記プログラムを展開するRAM、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアであるエージェントサーバ1の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、上記エージェントサーバ1に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
上記記録媒体としては、一時的でない有形の媒体(non-transitory tangible medium)、例えば、磁気テープやカセットテープ等のテープ類、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク類、ICカード(メモリカードを含む)/光カード等のカード類、マスクROM/EPROM/EEPROM(登録商標)/フラッシュROM等の半導体メモリ類、あるいはPLD(Programmable logic device)やFPGA(Field Programmable Gate Array)等の論理回路類などを用いることができる。
また、エージェントサーバ1を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークは、プログラムコードを伝送可能であればよく、特に限定されない。例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(Virtual Private Network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、この通信ネットワークを構成する伝送媒体も、プログラムコードを伝送可能な媒体であればよく、特定の構成または種類のものに限定されない。例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL(Asymmetric Digital Subscriber Line)回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、IEEE802.11無線、HDR(High Data Rate)、NFC(Near Field Communication)、DLNA(Digital Living Network Alliance)、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。