(58)【調査した分野】(Int.Cl.,DB名)
前記更新部は、前記センサによって検出された前記センサ情報が表す意味内容が、前記センサ情報が検出されたときに活性状態にある前記内分泌人工ニューロンに対応する感情に影響を与えるよう、前記影響情報を更新する
請求項1から4のいずれか一項に記載の感情制御システム。
【発明を実施するための形態】
【0017】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0018】
図1は、本実施形態に係るシステム10の利用場面の一例を概略的に示す。システム10は、サーバ60と、ロボット40a及びロボット40bとを備える。ロボット40a及びロボット40bは、通信ネットワーク90を通じて、サーバ60と通信して情報をやりとりする。サーバ60は、通信ネットワーク90を介して、WEBサーバ80a及びWEBサーバ80bと通信する。通信ネットワーク90は、公衆ネットワークを含む。
【0019】
ユーザ30aは、ロボット40aのユーザである。ユーザ30bは、ロボット40bのユーザである。ロボット40bは、ロボット40aと略同一の機能を有する。そのため、ロボット40a及びロボット40bをロボット40と総称してシステム10を説明する場合がある。
【0020】
ロボット40は、周囲の状況に応じて頭部や肢部を動かしたり、ユーザ30と会話を行ったり、ユーザ30に映像を提供したりする等、状況に応じて各種の動作を行う。ロボット40は、サーバ60と連携して動作を行う。例えば、ロボット40は、カメラ機能で取得したユーザ30の顔画像や、マイク機能で取得したユーザ30の音声等のセンサ情報をサーバ60に送信する。サーバ60は、ロボット40から受信したセンサ情報を解析して、ロボット40が取るべき動作を決定して、決定した動作を表す動作情報を、ロボット40に送信する。ロボット40は、サーバ60から受信した動作情報に従って動作する。このように、ロボット40の動作は、サーバ60によって制御される。ロボット40は、サーバ60が制御する制御対象の一例である。
【0021】
ロボット40は自身の感情を表す感情値を持つ。例えば、ロボット40は、「嬉しい」、「楽しい」、「悲しい」、「怖い」、「興奮」等のそれぞれの感情の強さを表す感情値を持つ。ロボット40の感情値は、サーバ60が決定する。サーバ60は、決定した感情に応じた動作をロボット40に行わせる。例えば、興奮の感情値が大きい状態でユーザ30と会話するときは、早口でロボット40に発話させる。このように、ロボット40は、自己の感情を行動等で表現することができる。
【0022】
サーバ60は、ロボット40から受信した検出情報に基づいて、ニューラルネットワークを用いて、ロボット40の現在の状態を更新する。ロボット40の状態には、ロボット40の感情が含まれる。したがって、サーバ60は、ニューラルネットワークを用いて、ロボット40の感情を決定する。
【0023】
WEBサーバ80は、例えばニュース、天気予報等、様々な公開コンテンツを提供する。WEBサーバ80は、例えばポータルサイトの情報を提供するサーバである。WEBサーバ80a及びWEBサーバ80bは、例えばポータルサイトの運営者が異なる。WEBサーバ80a及びWEBサーバ80bをWEBサーバ80と総称する場合がある。
【0024】
サーバ60は、WEBサーバ80に巡回的にアクセスして、WEBサーバ80から配信されるニュース、天気予報等のコンテンツを取得する。ここで、サーバ60において、球団である「福丘ファルコンズ」を、ロボット40a及びロボット40bにとって好ましい対象として扱う旨が定められており、「福丘ファルコンズが快勝」というニュースコンテンツをサーバ60がWEBサーバ80から取得た場合を例に挙げて、サーバ60及びロボット40の動作の一例を概略的に説明する。なお、サーバ60において、ロボット40aがユーザ30aを好ましい人物として扱う旨が定められており、ロボット40bがユーザ30bを好ましい人物として扱う旨が定められているとする。
【0025】
サーバ60は、「福丘ファルコンズが快勝」というコンテンツから、ロボット40aにとって好ましい対象である「福丘ファルコンズ」と、「快勝」という肯定的な単語とが抽出される。したがって、サーバ60により、ロボット40aの感情として、「嬉しい」という感情が生成される。そして、サーバ60は、嬉しさを表す行動をロボット40aに行わせる。同様に、サーバ60は、ロボット40bの感情として、「嬉しい」という感情が生成され、嬉しさを表す行動をロボット40bに行わせる。
【0026】
ここで、サーバ60は、ロボット40aのマイク機能によって、ユーザ30aから「何かあったの?」という質問があったことを検出すると、「福丘ファルコンズが勝ったので嬉しいんだ!」という言葉をロボット40aから発させる。続いて、サーバ60は、ロボット40aのマイク機能によって、ユーザ30aが「うん、良かったよね!」という肯定的な言葉を検出すると、ロボット40aにとっての福丘ファルコンズの好ましさを上昇させる。このように、ロボット40aにとって好ましいユーザ30aが「福丘ファルコンズ」について肯定的な反応を示したことに応じて、ロボット40aの「福丘ファルコンズ」ついての印象を肯定的な方向に変化させることができる。
【0027】
一方、ロボット40bにおいて、「福丘ファルコンズが勝って嬉しいな!」という言葉をロボット40bから発させた後に、サーバ60は、ロボット40bのマイク機能で取得した情報から、ユーザ30bが「何を言うとんや!」という否定的な発言したことを検出すると、ロボット40bにとっての福丘ファルコンズの好ましさを低下させる。このように、ロボット40bにとって好ましいユーザ30bが「福丘ファルコンズ」について否定的な反応を示したことに応じて、ロボット40bの「福丘ファルコンズ」ついての印象を否定的な方向に変化させることができる。
【0028】
このように、システム10によれば、ロボット40の趣味嗜好を徐々に変化させていくことができる。そのため、あたかも人間が環境から学んでいくような振る舞いをロボット40に行わせることができる。
【0029】
図2は、サーバ60及びロボット40の機能ブロック構成を概略的に示す。ロボット40は、センサ部120と、OS/ミドルウェア部110と、ロボット側検出サブシステム130と、行動制御サブシステム170と、会話サブシステム180と、情報表示サブシステム190とを有する。サーバ60は、コンテンツ取得部210と、言語処理部200と、トピックフィルタ220と、サーバ側検出サブシステム230と、内分泌制御部250と、感情生成エンジン240と、状況更新サブシステム260と、行動計画サブシステム270と、安全安心サブシステム272と、会話サブシステム280と、情報表示サブシステム290と、CMS70とを有する。
【0030】
ロボット40において、センサ部120は、マイク、カメラ、タッチセンサ、赤外線センサ、超音波センサ、モータ角度センサを有する。センサ部120において、マイクは周囲の音声を検出する。例えば、マイクは、ユーザ30の音声を検出する。カメラは、可視光によって撮像して画像情報を生成する。赤外線センサは、赤外光によって撮像して画像情報を生成する。赤外線センサは、赤外光を照射し、照射した赤外光が被写体で反射した赤外光によって撮像してよい。超音波センサは、超音波を照射して、被写体で反射した超音波を検出してよい。モータ角度センサは、モータのシャフトの回転角度を検出してよい。
【0031】
センサ部120が有する各センサで検出されたセンサ情報は、OS/ミドルウェア部110に出力される。OS/ミドルウェア部110は、ロボット40の全体の制御を担う。OS/ミドルウェア部110は、センサ部120、ロボット側検出サブシステム130、行動制御サブシステム170、会話サブシステム180及び情報表示サブシステム190を統括的に制御する。
【0032】
ロボット側検出サブシステム130は、OS/ミドルウェア部110を通じてセンサ情報を取得して、ロボット40に送信するデータを生成する。また、ロボット側検出サブシステム130は、センサ部120の各センサを制御する。ロボット側検出サブシステム130は、聴覚サブシステム、視覚サブシステム、触覚サブシステム、内臓感覚サブシステム、行動意識サブシステム及び会話意識サブシステムを有する。聴覚サブシステムは、主としてセンサ部120のマイクによって検出された音声信号を処理して、音声情報を生成する。視覚サブシステムは、主としてセンサ部120のカメラによって検出された画像信号を処理して、視覚情報を生成する。触覚サブシステムは、主としてセンサ部120のタッチセンサによって検出されたタッチ信号を処理して、触覚情報を生成する。内臓感覚サブシステムは、各種のセンサで検出された信号を処理して内臓感覚に関する情報を生成する。行動意識サブシステムは、行動意識に関する情報を生成する。会話意識サブシステムは、主として音声情報を処理して、会話意識に関する情報を生成する。ロボット側検出サブシステム130で生成した情報は、ロボット40に送信され、サーバ側検出サブシステム230で処理される。
【0033】
行動制御サブシステム170は、ロボット40から取得する行動制御情報に従って、ロボット40の行動を制御する。例えば、行動制御サブシステム170は、肢部の動きを制御する。会話サブシステム180は、ロボット40から取得する会話制御情報に従って、ロボット40の会話を制御する。例えば、会話サブシステム180は、会話制御情報に含まれる発話情報に従って、スピーカを制御する。情報表示サブシステム190は、ロボット40から取得する表示制御情報に従って、ロボット40における表示を制御する。例えば、会話サブシステム180は、表示制御情報に含まれる画像や表示内容を、モニタに表示させる。
【0034】
サーバ60において、コンテンツ取得部210は、WEBサーバ80からネットワークコンテンツを取得する。コンテンツ取得部210は、公衆ネットワークから取得されたネットワークコンテンツを取得する情報取得部の一例である。コンテンツ取得部210は、例えば公開されたウェブコンテンツを取得する。
【0035】
言語処理部200は、コンテンツ取得部210が取得したコンテンツを解析する。言語処理部200は、コンテンツに含まれるテキスト情報に対して言語解析を行う。言語処理部200は、コンテンツ取得部210が取得したネットワークコンテンツに含まれる文字を解析して、ネットワークコンテンツの意味内容を抽出する抽出部として機能する。
【0036】
一実施形態において、言語処理部200は、形態素解析部と、構文解析部と、意味解析部と、トピック抽出部と、イベント抽出部とを有する。形態素解析部は、テキスト情報に形態素解析を行う。例えば、形態素解析部は、テキストを形態素の列に分割して、品詞を判別する。構文解析部は、形態素解析部によって分割された形態素に基づいて、係り受け等の、文章の文法的な関係を特定する。意味解析部は、構文解析部によって解析された構文情報に基づいて意味解析を行う。例えば、意味解析部は、意味を利用して構文木を選択する。トピック抽出部は、トピック分析を行う。例えば、トピック抽出部は、何についてのコンテンツであるかを特定する。イベント抽出部は、主体及びその動作を抽出する。
【0037】
サーバ側検出サブシステム230は、ロボット側検出サブシステム130から取得したセンサ情報と、言語処理部200によって解析された情報とに基づいて、内分泌制御部250、感情生成エンジン240及び状況更新サブシステム260への入力情報を生成する。具体的には、サーバ側検出サブシステム230は、ロボット側検出サブシステム130の各サブシステムに対応するサブシステムとして、聴覚サブシステム、視覚サブシステム、触覚サブシステム、内臓感覚サブシステム、行動意識サブシステム及び会話意識サブシステムを有する。サーバ側検出サブシステム230において、各サブシステムで処理された情報に基づいて、入力情報を生成する。例えば、サーバ側検出サブシステム230は、視覚情報、聴覚情報等から人物を認識して、「知っている人がいる」又は「知らない人がいる」という入力情報を生成する。
【0038】
また、サーバ側検出サブシステム230は、コンテンツ処理部232を更に有する。コンテンツ認識部232は、言語処理部200によって解析された情報に基づいて、内分泌制御部250、感情生成エンジン240及び状況更新サブシステム260への入力情報を生成する。例えば、コンテンツ認識部232は、言語処理部200で抽出されたイベントが、好ましい対象に関するイベントである場合に、感情生成エンジン240において「嬉しさ」の感情が生成され易くなるよう、内分泌制御部250を制御する。例えば、感情生成エンジン240が用いるニューラルネットワークは、ドーパミンの放出量に対応するパラメータを有し、内分泌制御部250は、ドーパミンの放出量が多くなる方向に、ニューラルネットワークのパラメータを制御する。なお、コンテンツ認識部232は、ネットワークコンテンツがロボット40の感情に与える影響を示す影響情報を保持している。そして、コンテンツ認識部232は、保持している影響情報を、ロボット40のセンサ部120によって検出されたセンサ情報に基づいて更新する。センサ情報等に基づく好ましさの更新処理については、後述する。
【0039】
内分泌制御部250は、感情生成エンジン240において用いられるニューラルネットワークのパラメータを調整する。例えば、内分泌制御部250は、ドーパミンの放出量に対応するパラメータを調節する。なお、ドーパミンは、内分泌物質の一例である。内分泌物質とは、神経伝達物質及びホルモン等、体内で分泌されシグナルを伝達する物質を意味する。また、内分泌とは、内分泌物質が体内で分泌されることを意味する。ただし、ロボット40自身の内分泌物質とは、ロボット40の動作に影響を及ぼす情報の1つであり、ロボット40が内分泌物質を実際に発生するということを意味していない。ロボット40自身の感情についても同様に、ロボット40の動作に影響を及ぼす情報の1つであり、ロボット40が実際に感情を有しているということを意味していない。
【0040】
感情生成エンジン240は、サーバ側検出サブシステム230からの入力情報及び内分泌制御部250によって調整されたパラメータに基づいて、ニューラルネットワークを用いて、ロボット40の感情を生成する。感情生成エンジン240は、コンテンツ取得部210が取得したネットワークコンテンツと、コンテンツ認識部232が保持している影響情報とに基づいて、ロボット40の感情を制御する感情制御部の一例である。
【0041】
状況更新サブシステム260は、サーバ側検出サブシステム230からの入力情報に基づいて、ロボット40の状況を認識して、状況を更新する。状況更新サブシステム260は、「知っている人と一緒」等の状況を認識する。
【0042】
行動計画サブシステム270は、サーバ側検出サブシステム230からの入力情報や、感情生成エンジン240が生成した感情に関する情報に基づいて、行動計画を立てる。例えば、行動計画サブシステム270は、感情生成エンジン240で決定された感情に応じた姿勢を、ロボット40に取らせる。安全安心サブシステム272は、行動計画サブシステム270が決定した行動計画が安全な行動計画であるか否かを判断する。例えば、安全安心サブシステム272は、行動計画サブシステム270が決定した行動計画に、ユーザ30に障害を与えるような行動が含まれていない場合に、行動計画に沿った行動を示す行動情報を、ロボット40に送信する。
【0043】
会話サブシステム280は、サーバ側検出サブシステム230からの入力情報や、感情生成エンジン240が生成した感情に関する情報に基づいて、ロボット40がユーザ30と会話するための会話情報を生成して、ロボット40に送信する。会話情報には、発話内容、発話速度等の情報を含む。情報表示サブシステム290は、サーバ側検出サブシステム230からの入力情報や、感情生成エンジン240が生成した感情に関する情報に基づいて、ロボット40が表示する情報を制御する。例えば、ロボット40の現在の感情がどのような感情であるかを示す情報をユーザ30に提示するべく、ロボット40に表示させる。
【0044】
CMS70は、コンテンツ管理システムである。CMS70は、禁忌事項を格納する。禁忌事項としては、宗教的スタンス等の宗教的事項、政治的スタンス等の政治的事項、戦争や殺人等の極限状態の事項等を例示することができる。コンテンツ認識部232は、言語処理部200が抽出したネットワークコンテンツの意味内容が、CMS70に格納されている禁忌事項に該当するか否かを判断する。コンテンツ認識部232は、言語処理部200によって抽出されたネットワークコンテンツの意味内容が予め定められた禁忌事項に該当するとトピックフィルタ220によって判断した場合に、コンテンツ取得部210が取得したネットワークコンテンツがロボット40の感情に影響を与える度合いを低くする。例えば、コンテンツ認識部232は、コンテンツが禁忌事項に該当する場合に、強い感情が生成されることを抑制する。例えば、コンテンツ認識部232は、内分泌制御部250に、ドーパミン分泌量が抑制方向に作用するようニューラルネットワークのパラメータを調整させてよい。また、内分泌制御部250に、セロトニン分泌量が促進方向に作用するようにニューラルネットワークのパラメータを調整させてよい。また、コンテンツ認識部232は、コンテンツが禁忌事項に該当する場合に、コンテンツに基づく感情が生成されないように、当該感情に対応する内分泌物質の分泌量が抑制方向に作用するようにニューラルネットワークのパラメータを調整させてよい。また、コンテンツ認識部232は、コンテンツが禁忌事項に該当する場合に、感情生成エンジン240において悲しみ等の予め定められた感情が生成され易くなるように、内分泌制御部250を制御してよい。これにより、「戦争が始まった」というコンテンツを取得した場合に、通常の人間が持つ感情とは相反する感情をロボット40が持つことを未然に防ぐことができる。
【0045】
トピックフィルタ220は、言語処理部200が抽出したネットワークコンテンツのトピックが、CMS70格納されている禁忌事項に該当するか否かを判断する。例えば、トピックフィルタ220は、トピックが禁忌事項に該当する場合、強い感情が生成されることを抑制する方向に、内分泌制御部250を制御してよい。例えば、内分泌制御部250に、ドーパミン分泌量が抑制方向に作用するようニューラルネットワークのパラメータを調整制させてよい。また、内分泌制御部250に、セロトニン分泌量が促進方向に作用するようにニューラルネットワークのパラメータを調整させてよい。このように、コンテンツ認識部232及びトピックフィルタ220が禁忌事項に基づいて制御を行うことで、ネットワークコンテンツが予め定められた禁忌事項に該当する場合に、コンテンツ取得部210が取得したネットワークコンテンツがロボット40の感情に影響を与える度合いを低くすることができる。これにより、通常の人間が持つ感情とは異質な感情をロボット40が持つことを未然に防ぐことができる。
【0046】
図3は、ニューラルネットワークの一部を概略的に示す。本図は、感情生成エンジン240における人工ニューロンのパラメータの計算方法を説明するために、ニューラルネットワークを部分的に示す。図示されるニューラルネットワークの部分は、人工ニューロンN
i、N
j及びN
kと、N
i及びN
jを接続する人工シナプスS
jiと、N
i及びN
kを接続する人工シナプスS
ikとを含む。人工ニューロンは、生体におけるニューロンに対応する。人工シナプスは、生体におけるシナプスに対応する。
【0047】
ニューラルネットワークのパラメータは、ニューラルネットワークの各N
iへの入力であるI
tiと、ニューラルネットワークの外部からN
iへの入力であるE
tiと、N
iのパラメータと、S
iのパラメータとを含む。
【0048】
N
iのパラメータは、N
iのステータスを表すS
tiと、N
iが表す人工ニューロンの内部状態を表すV
im
tと、N
iの発火の閾値を表すT
itと、N
iからの出力の増減パラメータであるh
tiとを含む。出力の増減パラメータh
tiは、人工ニューロンN
iの発火時の出力の時間発展を定めるパラメータの一例である。なお、本実施形態において、下付きの添え字のtは、時刻の進展とともに更新され得るパラメータであることを表す。また、V
im
tは、人工ニューロンの膜電位に対応する情報であり、人工ニューロンN
iの内部状態又は出力を表すパラメータの一例である。S
ijのパラメータは、S
ijの人工シナプスの結合係数を表すBS
tijを含む。
【0049】
感情生成エンジン240は、サーバ側検出サブシステム230からの入力と、ニューラルネットワークに基づいて上述したパラメータを更新して、各N
iの内部状態を算出する。なお、本実施形態において、N
iは、V
im
tが閾値T
iを超えた場合に「発火」状態となる。発火状態になると、V
im
tは、増減パラメータh
tiに従って、上昇した後に下降する。そして、V
im
tが所定値Vminにまで低下すると、N
iのステータスは末発火となる。「発火」の状態を、内部状態が上昇中であるか否かに応じて「上昇相」と「下降相」とに分ける。「未発火」と、「上昇相」及び「下降相」とは、ステータスS
tiの値によって表される。
【0050】
なお、感情生成エンジン240が用いるニューラルネットワークの人工ニューロンには、ロボット40の状態が定義される。ロボット40の状態とは、ロボット40の感情、内分泌物質の生成状態、ロボット40の状況等を含む。一例として、ニューラルネットワークは、「知っている人がいる」という状況等が割り当てられた概念人工ニューロンを含んでよい。また、ニューラルネットワークは、「嬉しい」、「悲しい」等の感情が割り当てられた感情人工ニューロンを含んでよい。また、ニューラルネットワークは、ドーパミンの発生状態が割り当てられた内分泌人工ニューロン、ノルアドレナリンの発生状態が割り当てられた内分泌人工ニューロンを含んでよい。なお、ドーパミンは、報酬系に関与する内分泌物質の一例である。ノルアドレナリンは、交感神経系に関与する内分泌物質の一例である。このように、ニューラルネットワークは、神経細胞が定義された人工ニューロンを含んでよい。
【0051】
図4は、人工ニューロンN
iのV
tn+1i及びS
tn+1iを計算するフローチャートを示す。S4において、感情生成エンジン240は、S
tniが未発火を示すか否かを判断する。
【0052】
S
tniが未発火を示す場合、感情生成エンジン240は、N
iへの入力I
tn+1iを計算する(S410)。具体的には、ニューラルネットワークの外部からの入力がN
iに接続されていない場合、I
tn+1i=Σ
jBS
tn+1ji×Vm
tnj×f(S
tnj)によって計算する。ニューラルネットワークの外部からの入力がN
iに接続されている場合、I
tn+1i=Σ
jBS
tn+1ji×Vm
tnj×f(S
tnj)+E
tn+1iによって計算する。ここで、E
tniは、ニューラルネットワークの外部からの時刻t
nにおける入力である。
【0053】
f(S)は、Sが未発火を表す値の場合は0を返し、Sが上昇相又は下降相を示す値の場合は1を返す。このモデルは、ニューロンが発火した場合のみシナプスが活動電位を伝達するモデルに対応する。なお、f(S)=1を返してもよい。これは、ニューロンの発火状態によらず膜電位を伝達するモデルに対応する。
【0054】
S412において、感情生成エンジン240は、I
tn+1iがT
tn+1iを超えるか否かを判断する。I
tn+1iがT
tn+1iを超える場合、感情生成エンジン240は、Vm
tn+1iを増減パラメータh
iに基づいて算出するとともに、Vm
tn+1iに応じてS
tn+1iを上昇相又は下降相に示す値に設定し(S414)、このフローを終了する。S412において、I
tn+1iがT
tn+1iを超えない場合、感情生成エンジン240は、Vm
tn+1i=I
tn+1iとする。
【0055】
S400において、S
tniが上昇相又は下降相である場合、感情生成エンジン240は、Vm
tn+1iを算出する(S420)。そして、感情生成エンジン240は、t
n+1までにVm
tiがVminに達した場合は、S
tn+1iを未発火の値に設定し、t
n+1までにVm
tiがVminに達していない場合は、S
tn+1iを上昇相又は下降相の値に設定して、このフローを終了する。なお、感情生成エンジン240は、t
n+1までにVm
tiがVmaxに達した場合はS
tn+1iに下降相の値を設定し、t
n+1までにVm
tiがVmaxに達していない場合はS
tn+1iに上昇相の値を設定する。
【0056】
このように、N
iが発火している場合は、たとえ出力が閾値以下になっても、N
iの出力は入力に依存しない。このような期間は、生体のニューロンにおける絶対不応期に対応する。
【0057】
図5は、パラメータに影響を及ぼす影響定義情報を概略的に示す。定義情報は、内分泌人工ニューロンの内部状態に関する条件と、影響を与える人工ニューロン又は人工シナプスを特定する情報と、影響内容を定める式を含む。
【0058】
図5の例において、N
1は、嬉しさの感情が定義された感情人工ニューロンであり、N
2は、メラトニン等の眠気の内分泌物質が定義された内分泌人工ニューロンであるとする。N
2に関する定義情報は、「Vm
tn2>T
tn2」の条件、N
2が影響を与える人工ニューロンとして「感情人工ニューロンN
1」、影響内容を定める式として「T
tn+1i=T
tni×1.1」が定められている。これにより、感情生成エンジン240は、Vm
tn2がT
tn2を超える場合、時刻t
n+1の感情人工ニューロンN
1の閾値を、10%上昇させる。これにより、例えば、眠気が生じた場合に、感情人工ニューロンを発火させにくくすることができる。例えば、「蓄電量が閾値以下」である場合に生じる外部入力を、N
2の入力に接続したニューラルネットワークを定めることで、蓄電量が低くなると感情が高まりにくくなる現象を体現することが可能になる。
【0059】
また、内分泌人工ニューロンN
5は、ドーパミンの内分泌物質が定義された内分泌人工ニューロンであるとする。内分泌人工ニューロンN
5に関する定義情報は、「Vm
tn5>T
tn5」の条件、内分泌人工ニューロンN
5が影響を与える人工ニューロンとして「N
1」、影響内容を定める式として「T
tn+1i=T
tni×0.9」という式が定められている。これにより、感情生成エンジン240は、Vm
tn5がT
tn5を超える場合、時刻t
n+1の人工ニューロンN
1の増減パラメータを10%低下させる。これにより、報酬系の内分泌人工ニューロンN
5が発火した場合に、嬉しいという感情が発火し易くなる。
【0060】
なお、影響定義情報は、
図5の例に限られない。例えば、条件として、人工ニューロンの内部状態が閾値以下であるとの条件を定義してよい。また、人工ニューロンのステータスに関する条件、例えば、上昇相、下降相又は未発火に関する条件を定義してよい。また、影響範囲は、人工ニューロンや人工シナプスを直接指定する他に、「特定の人工ニューロンに接続された全人工シナプス」というような定義を行うこともできる。また、影響の式については、対象が人工ニューロンの場合、閾値を定数倍にすることの他に、閾値に定数を加えることや、内部状態の増減パラメータを定数倍するような式を定義してよい。また、対象が人工シナプスの場合、増減パラメータを定数倍することの他に、結合係数を定数倍するような式を定義してよい。
【0061】
図6は、コンテンツ認識部232が管理する情報の一例である。コンテンツ認識部232は、対象と、好ましさとを対応づけて管理する。本図の例では、「福丘ファルコンズ」という対象に対応づけて「好き」という好ましさが対応づけられている。
【0062】
例えば、コンテンツ認識部232は、コンテンツから「福丘ファルコンズが快勝」というが抽出された場合に、内分泌制御部250に、「嬉しい」という感情が生成され易くなるよう指示する。例えば、コンテンツ認識部232は、「嬉しい」という感情が定義された感情人工ニューロンが発火し易くなるよう、ドーパミンが定義された内分泌人工ニューロンを発火させ易くしてよい。
【0063】
また、コンテンツ認識部232は、「福丘ファルコンズ」について肯定的なフレーズをロボット40に発声させたことに応じて、ドーパミンが定義された内分泌人工ニューロンの内部状態が高まった場合に、「福丘ファルコンズ」に対応する好ましさを高める。例えば、コンテンツ認識部232は、「福丘ファルコンズ」に、「大好き」という好ましさを対応づける。
【0064】
図7は、コンテンツに付与される感情タグ情報の一例を示す。感情タグ情報は、感情タグと、感情に対する影響度と、対象地域と、影響期間を含む。
【0065】
感情タグは、影響が与えられる感情を示す情報である。例えば、感情タグ情報700に関連する感情タグについて説明すると、言語処理部200によって、「福丘ファルコンズが快勝」というフレーズから、「福丘ファルコンズ」が「快勝」したというイベントが抽出された場合、「福丘ファルコンズ」について「好き」という好ましさが対応づけられており、「快勝」が肯定的なイベントであることから、感情タグ情報700では「嬉しい」という感情タグが決定される。
【0066】
影響度は、感情タグで特定される感情に影響が及ぶ度合いを示す情報である。影響度は、0から1までの値をとる。感情タグ情報700に関連して説明すると、言語処理部200において抽出されたイベントが「快勝」という強いイベントであるから、影響度として1.0が決定される。
【0067】
対象地域は、どの地域に位置するロボット40に影響が及ぶかを示す情報である。感情タグ情報700に関連して説明すると、「福丘ファルコンズ」のファンは全国に存在するので、「福丘ファルコンズ」については全国的なイベントである。そのため、対象地域として「全国」が決定される。
【0068】
影響期間は、感情に影響が及ぶ期間を示す情報である。感情タグ情報700に関連して説明すると、「福丘ファルコンズ」は次の日も試合をすることから、影響期間として、次の日の所定の時間までが決定される。
【0069】
なお、仮に、抽出されたイベントが「大敗」である場合、感情タグとして「悲しい」が決定され得る。好ましい対象についての否定的なイベントには、「悲しい」という感情が生じ得るからである。また、仮に、「福丘ファルコンズ」に「嫌い」という好ましさが対応づけられているとすると、感情タグとして「悲しい」が決定され得る。好ましくない対象についての肯定的なイベントには、「悲しい」という感情が生じ得るからである。また、仮に、「福丘ファルコンズ」に「嫌い」という好ましさが対応づけられており、抽出されたイベントが「大敗」である場合、感情タグとして「嬉しい」が決定され得る。好ましくない対象についての否定的なイベントには、「嬉しい」という感情が生じ得るからである。
【0070】
感情タグ情報710に関連して説明すると、「明日は九州で大雨」というフレーズから、「大雨」が「嫌い」という好ましさが対応づけられているので、感情タグとして「悲しい」が決定される。また、雨が活動に与える影響は比較的小さいため、影響度として0.2が決定される。また、大雨となる地域が九州であることから、対象地域として「九州」が決定される。また、「明日」というイベントから、影響期間として翌日の終日が決定される。
【0071】
図8は、コンテンツに付与される感情タグ情報800の一例を示す。感情タグ情報800は、「ファルコンズの田柳が初回の第1打席で川貞の投球を左前腕付近に受けて、3回の守備から大事を取って交代」というフレーズから得られる感情タグ情報である。ここでは、言語解析によって、「悲しい」という感情タグが決定されることについて説明する。
【0072】
言語処理部200における句構造解析(HPSG)によって、一番目の句の文章解析により、主体である「田柳」が、「福丘ファルコンズ」に属する旨が特定される。したがって、主体は好きな対象に属すると判断され、主体は好ましい対象であると判断される。また、動詞である「受ける」は「投球を」に係ることが特定される。したがって、「投球を受ける」は、否定的なイベントであると判断される。
【0073】
また、二番目の句の文章解析により、主体が「田柳」であり、動詞が「交代」であると解析される。一番目の句と同様、二番目の句の主体も好ましい対象であると判断される。また、動詞である「交代」は、否定的なイベントであると判断される。
【0074】
これにより、一番目の句及び二番目の句のいずれも、好きな対象についての否定的なイベントを意味するので、感情タグ情報800の感情タグとして「悲しい」が決定される。
【0075】
図9は、コンテンツを取得してから好ましさ情報を更新するまでの動作を表す処理フローの一例を示す。コンテンツ取得部210において、WEBサーバ80からコンテンツを取得する(S920)。取得されたコンテンツは、言語処理部200において解析されて、言語処理部200による解析結果に基づいて、コンテンツ認識部232が感情タグ情報を生成する(S922)。
【0076】
S924において、感情生成エンジン240でロボット40の感情が生成され、行動計画サブシステム270よってロボット40の行動が決定される(S924)。感情生成エンジン240により計算される感情は、感情タグ情報に応じて影響を受ける。
【0077】
S928において、「福丘ファルコンズ」等の好ましさが対応づけられた対象に関する行動に応じて活性化した内分泌人工ニューロンを特定する。ドーパミンが定義された内分泌人工ニューロンが活性化した場合、対象について好ましさを「大好き」の方向にシフトする(S930)。一方、ノルアドレナリンが定義された内分泌人工ニューロンが活性化した場合、対象について好ましさを「大嫌い」の方向にシフトする(S932)。
【0078】
これにより、例えば「福丘ファルコンズが勝って嬉しい」という行動に応じて、ユーザ30から頭をなでられた場合には、肯定的な内分泌人工ニューロンが活性化し、「福丘ファルコンズ」の好ましさが「好き」から「大好き」になり得る。一方、「福丘ファルコンズが勝って嬉しいな」という行動に応じて、ユーザ30から「何をいうとんねん!」と言われたり、頭を小突かれたりした場合には、否定的な内分泌人工ニューロンが活性化し、「福丘ファルコンズ」の好ましさが「好き」から「普通」になり得る。
【0079】
このように、システム10によれば、ロボット40が環境から得る情報に基づいて、ロボット40の趣味嗜好を徐々に変化させていくことができる。そのため、あたかも人間が環境から学んでいくような振る舞いをロボット40に行わせることができる。
【0080】
なお、サーバ60の機能は、1以上のコンピュータによって実装されてよい。サーバ60の少なくとも一部の機能は、仮想マシンによって実装されてよい。また、サーバ60の機能の少なくとも一部は、クラウドで実装されてよい。また、サーバ60の機能は、CPUがプログラムに基づいて動作することによって実現できる。例えば、サーバ60の動作として説明した処理の少なくとも一部は、プロセッサがプログラムに従ってコンピュータが有する各ハードウェア(例えば、ハードディスク、メモリ等)を制御することにより実現できる。このように、サーバ60の処理の少なくとも一部は、プロセッサがプログラムに従って動作して各ハードウェアを制御することにより、プロセッサ、ハードディスク、メモリ等を含む各ハードウェアとプログラムとが協働して動作することにより実現できる。すなわち、プログラムが、サーバ60の各構成要素としてコンピュータを機能させることができる。なお、コンピュータは、上述した処理の実行を制御するプログラムを読み込み、読み込んだプログラムに従って動作して、当該処理を実行してよい。コンピュータは、当該プログラムを記憶しているコンピュータ読取可能な記録媒体から当該プログラムを読み込むことができる。また、当該プログラムは通信回線を通じてコンピュータに供給され、コンピュータは、通信回線を通じて供給されたプログラムを読み込んでよい。
【0081】
以上に説明した実施形態では、ロボット40とは異なるサーバ60が、ニューラルネットワークの処理を担う。しかし、ロボット40自身が、ニューラルネットワークの処理等の、サーバ60の機能を担ってよい。また、ロボット40は、サーバ60による制御対象となる機器の一例である。制御対象となる機器はロボット40に限られず、家電製品、乗物、玩具等の様々な機器を制御対象として適用できる。
【0082】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【0083】
特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階などの各処理の実行順序は、特段「より前に」、「先立って」などと明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」などを用いて説明したとしても、この順で実施することが必須であることを意味するものではない。