(57)【要約】【課題】ロボットがユーザと共に映像を視聴しているかのようなアクションを実現し、ロボットがユーザに対して共感を生じさせる。【解決手段】ソーシャルメディアサーバ７から視聴中の番組に関するコメントを取得し、ロボット２に設定されたパーソナリティと一致するパーソナリティ一致話者のコメントからロボット２に発話させる発話内容を決定するとともに、発話内容の対話状態とロボット２の感情状態に基づいてロボット２に実行させるアクション内容をアクションデータベース１５から抽出する。これにより、視聴中の番組の内容に応じたアクションをロボット２に実行させることが可能となる。発話内容を決定する際に、ロボットに設定されたパーソナリティでコメントを絞り込むことで、一貫性のある発話・アクションをロボット２に実行させることが可能となる。【選択図】図１
2015148701.tif 000002
【特許請求の範囲】
【請求項１】
ユーザとともに映像を視聴するような動作をロボットに実行させるロボット制御装置であって、
前記映像に対して投稿されたコメントを取得するコメント取得手段と、
前記コメントから前記ロボットに発話させる発話文を生成する発話文生成手段と、
前記コメントから前記ロボットの感情状態を決定する感情決定手段と、
前記ロボットに発話させる発話文の対話状態と前記ロボットの感情状態と前記ロボットに実行させるアクションとを関連付けて記憶したアクション蓄積手段と、
前記アクション蓄積手段を参照し、前記発話文生成手段が生成した発話文の対話状態と前記感情決定手段が決定した感情状態から前記ロボットに実行させるアクションを決定するアクション決定手段と、
前記発話文生成手段が生成した発話文を音声合成して前記ロボットに出力させるとともに、前記アクション決定手段が決定したアクションに基づく動作を前記ロボットに実行させる制御手段と、
を有することを特徴とするロボット制御装置。
【請求項２】
前記ロボットに設定されるパーソナリティの情報を蓄積したパーソナリティ蓄積手段を有し、
前記発話文生成手段は、前記パーソナリティに一致する投稿者が投稿した前記コメントから前記発話文を生成することを特徴とする請求項１記載のロボット制御装置。
【請求項３】
前記ユーザの方向を取得する方向取得手段を有し、
前記アクションは、前記ユーザの方向を見るアクションを含むことを特徴とする請求項１又は２記載のロボット制御装置。
【請求項４】
ユーザとともに映像を視聴するような動作をロボットに実行させるコンピュータによるロボット制御方法であって、
前記映像に対して投稿されたコメントを取得するステップと、
前記コメントから前記ロボットに発話させる発話文を生成するステップと、
前記コメントから前記ロボットの感情状態を決定するステップと、
前記ロボットに発話させる発話文の対話状態と前記ロボットの感情状態と前記ロボットに実行させるアクションとを関連付けて記憶したアクション蓄積手段を参照し、前記発話文を生成するステップで生成した発話文の対話状態と前記感情状態を決定するステップで決定した感情状態から前記ロボットに実行させるアクションを決定するステップと、
前記発話文を生成するステップで生成した発話文を音声合成して前記ロボットに出力させるとともに、前記アクションを決定するステップで決定したアクションに基づく動作を前記ロボットに実行させるステップと、
を有することを特徴とするロボット制御方法。
【請求項５】
ユーザとともに映像を視聴するような動作をロボットに実行させるロボット制御プログラムであって、
前記映像に対して投稿されたコメントを取得する処理と、
前記コメントから前記ロボットに発話させる発話文を生成する処理と、
前記コメントから前記ロボットの感情状態を決定する処理と、
前記ロボットに発話させる発話文の対話状態と前記ロボットの感情状態と前記ロボットに実行させるアクションとを関連付けて記憶したアクション蓄積手段を参照し、前記発話文を生成する処理で生成した発話文の対話状態と前記感情状態を決定する処理で決定した感情状態から前記ロボットに実行させるアクションを決定する処理と、
前記発話文を生成する処理で生成した発話文を音声合成して前記ロボットに出力させるとともに、前記アクションを決定する処理で決定したアクションに基づく動作を前記ロボットに実行させる処理と、
をコンピュータに実行させることを特徴とするロボット制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットを制御する技術に関する。
【背景技術】
【０００２】
人間同士の間で、ある表情表出において他人が同調的に感情表出をした場合、同調的反応によって被験者の幸福表情は促進され、怒り・悲しみ表情は弱められることが分かっている。そのため、ロボットと映像を共視聴することで共に映像内容に対して笑い・喜び・悲しみ・怒りといった同調的反応をすることは、一人きりで映像を見た場合よりも笑い・喜びといった感情を促進し、悲しみ・怒りといった感情を抑えることが可能となる。
【０００３】
また、人とＣＧ人物とのコミュニケーション研究において、共感を与えるような表情変化をＣＧ人物に行わせることで人に対し親和動機を与えることが指摘されている。親和動機とは、相手に対して近寄り・協力し・行為に報いることを求める欲求と定義されており、人は自分と類似した態度をとる他者に対して親和動機を抱くと考えられている。
【０００４】
映像視聴時にユーザがロボットに対し共感を得たと感じさせる技術として、非特許文献１では、ユーザの視聴番組ログと視聴中の発話から視聴番組に対するユーザの評価をプロファイルとして推定し、視聴中にユーザが退屈そうであればプロファイルを用いてロボットが他のテレビ番組を推薦することで、ロボットに対しユーザの共感を生む技術が開示されている。
【０００５】
また、非特許文献２では、視聴番組に関するソーシャルメディア上のコメントをロボットが発話文として用いユーザに向けて対話を行い、更にロボットがユーザからの発話をソーシャルメディア上へコメントとして投稿することで、ロボットがソーシャルメディアの仲介役を行う技術が開示されている。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】高橋達、他２名、“高齢者の発話機会増加のためのソーシャルメディア仲介ロボット”、信学技報、電子情報通信学会，２０１２年１０月、第１１２巻、第２３３号、pp.21-26
【非特許文献２】高間康史、他５名、“テレビ視聴時の情報推薦に基づくヒューマン・ロボットコミュニケーション”、第２１回人工知能学会全国大会、人工知能学会、２００７年、2D5-5
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、非特許文献１では、番組単位のユーザ評価により他の番組を紹介しているのみで、現在見ている映像の内容について感情表現を行ったり発話を行ったりすることはできない。また、映像やディスプレイに対する電源ＯＮ−ＯＦＦや音量調整といったユーザの操作についての感情表現や発話もチャンネルの変化についてのみであったため、共感を生じさせる影響が限定的であった。
【０００８】
また、非特許文献２においてもテレビ内容に合わせたアクションによる感情表現は実現されていない。発話内容についてもソーシャルメディアを利用する場合はロボットの発話に一貫性を持たせることが難しく、非特許文献２においてもロボットが一貫性の無い発話をしてしまうことについてネガティブな感想が寄せられている。一貫性の無い発話に対しネガティブな感想が寄せられてしまう原因として、例えばユーザと共に視聴している番組に対して女性の話すような発話内容で発話をしていたロボットが、突然男性の発話内容で話し出してしまうと、ユーザの中でそれまで共にテレビを見ていたロボットのエージェンシーが崩れてしまうためと考えられる。そのため、一貫性を保った発話をさせることは重要となる。非特許文献２においては、一貫性の実現方法について「なりきり方式」としてソーシャルメディア上のコメントをテキストの意味属性の解釈を行い、一貫性のある意見のみを抽出し発話することで実現すると述べられているが、一般にソーシャルメディアから一貫性のある意見のみを抽出する事は容易ではなく、具体的な実現方法については述べられていない。また非特許文献２においては、ユーザの操作に対する感情表現や発話については述べられていない。そのため、非特許文献２においても共感を生じさせる影響は限定的であった。
【０００９】
本発明は、上記に鑑みてなされたものであり、ロボットがユーザと共に映像を視聴しているかのようなアクションを実現し、ロボットがユーザに対して共感を生じさせることを目的とする。
【課題を解決するための手段】
【００１０】
第１の本発明に係るロボット制御装置は、ユーザとともに映像を視聴するような動作をロボットに実行させるロボット制御装置であって、前記映像に対して投稿されたコメントを取得するコメント取得手段と、前記コメントから前記ロボットに発話させる発話文を生成する発話文生成手段と、前記コメントから前記ロボットの感情状態を決定する感情決定手段と、前記ロボットに発話させる発話文の対話状態と前記ロボットの感情状態と前記ロボットに実行させるアクションとを関連付けて記憶したアクション蓄積手段と、前記アクション蓄積手段を参照し、前記発話文生成手段が生成した発話文の対話状態と前記感情決定手段が決定した感情状態から前記ロボットに実行させるアクションを決定するアクション決定手段と、前記発話文生成手段が生成した発話文を音声合成して前記ロボットに出力させるとともに、前記アクション決定手段が決定したアクションに基づく動作を前記ロボットに実行させる制御手段と、を有することを特徴とする。
【００１１】
上記ロボット制御装置において、前記ロボットに設定されるパーソナリティの情報を蓄積したパーソナリティ蓄積手段を有し、前記発話文生成手段は、前記パーソナリティに一致する投稿者が投稿した前記コメントから前記発話文を生成することを特徴とする。
【００１２】
上記ロボット制御装置において、前記ユーザの方向を取得する方向取得手段を有し、前記アクションは、前記ユーザの方向を見るアクションを含むことを特徴とする。
【００１３】
第２の本発明に係るロボット制御方法は、ユーザとともに映像を視聴するような動作をロボットに実行させるコンピュータによるロボット制御方法であって、前記映像に対して投稿されたコメントを取得するステップと、前記コメントから前記ロボットに発話させる発話文を生成するステップと、前記コメントから前記ロボットの感情状態を決定するステップと、前記ロボットに発話させる発話文の対話状態と前記ロボットの感情状態と前記ロボットに実行させるアクションとを関連付けて記憶したアクション蓄積手段を参照し、前記発話文を生成するステップで生成した発話文の対話状態と前記感情状態を決定するステップで決定した感情状態から前記ロボットに実行させるアクションを決定するステップと、前記発話文を生成するステップで生成した発話文を音声合成して前記ロボットに出力させるとともに、前記アクションを決定するステップで決定したアクションに基づく動作を前記ロボットに実行させるステップと、を有することを特徴とする。
【００１４】
第３の本発明に係るロボット制御プログラムは、ユーザとともに映像を視聴するような動作をロボットに実行させるロボット制御プログラムであって、前記映像に対して投稿されたコメントを取得する処理と、前記コメントから前記ロボットに発話させる発話文を生成する処理と、前記コメントから前記ロボットの感情状態を決定する処理と、前記ロボットに発話させる発話文の対話状態と前記ロボットの感情状態と前記ロボットに実行させるアクションとを関連付けて記憶したアクション蓄積手段を参照し、前記発話文を生成する処理で生成した発話文の対話状態と前記感情状態を決定する処理で決定した感情状態から前記ロボットに実行させるアクションを決定する処理と、前記発話文を生成する処理で生成した発話文を音声合成して前記ロボットに出力させるとともに、前記アクションを決定する処理で決定したアクションに基づく動作を前記ロボットに実行させる処理と、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１５】
本発明によれば、ロボットがユーザと共に映像を視聴しているかのようなアクションを実現し、ロボットがユーザに対して共感を生じさせることができる。
【図面の簡単な説明】
【００１６】
【図１】本実施の形態におけるロボット制御装置を含む全体構成図である。
【図２】ロボットパーソナリティ属性情報の例を示す図である。
【図３】アクションデータベースに格納されるアクション決定テーブルと制御シーケンステーブルの例を示す図である。
【図４】定型発話文データベースに格納される定型発話文の例を示す図である。
【図５】ポジネガ単語データベースに格納されるデータの例を示す図である。
【図６】口調変換データベースに格納されるデータの例を示す図である。
【図７】番組関連発話・アクションタグデータベースに格納されるデータの例を示す図である。
【図８】電子番組表情報データベースが保持するデータの例を示す図である。
【図９】番組−ソーシャルメディアタグ関連データベースが保持するデータの例を示す図である。
【図１０】ソーシャルメディアサーバが保持するソーシャルメディアコメント情報の例を示す図である。
【図１１】位置取得サーバが保持するユーザ・ディスプレイ方位情報の例を示す図である。
【図１２】ディスプレイ状態変更に基づいて発話内容とアクション内容を決定する処理の流れを示すフローチャートである。
【図１３】盛り上がり値とパーソナリティ一致話者コメント情報を取得する処理の流れを示すフローチャートである。
【図１４】盛り上がり値とパーソナリティ一致話者コメント情報に基づいて発話内容とアクション内容を決定する処理の流れを示すフローチャートである。
【図１５】盛り上がり値とポジティブ・ネガティブ値に基づく感情状態のマップを示す図である。
【図１６】番組に付随するシナリオに基づいて発話内容とアクション内容を決定する処理の流れを示すフローチャートである。
【図１７】決定した発話内容とアクション内容に基づいてロボットに発話とアクションを実行させる処理の流れを示すフローチャートである。
【図１８】ロボット制御装置により制御されたロボットの様子を示す図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態について図面を用いて説明する。
【００１８】
図１は、本実施の形態におけるロボット制御装置を含む全体構成図である。
【００１９】
本実施の形態におけるロボット制御装置１は、リモコン３によって操作されるテレビ番組表示機能を有するディスプレイ４の状態変化（例えば電源ＯＮ，ＯＦＦや音量の変化など）、ソーシャルメディアサーバ７に投稿された視聴中のチャンネル（＝番組）に関連するコメント、および視聴中のチャンネルに付随するシナリオ、に基づいて発話・アクション内容を決定し、ロボット２を制御する装置である。
【００２０】
［ロボット制御装置の構成］
まず、本実施の形態におけるロボット制御装置１の構成について説明する。
【００２１】
ロボット制御装置１は、ディスプレイ情報処理部１１、ソーシャルメディア情報取得部１２、発話・アクション決定部１３、ロボットパーソナリティ属性情報データベース１４、アクションデータベース１５、定型発話文データベース１６、ポジネガ単語データベース１７、口調変換データベース１８、および番組関連発話・アクションタグデータベース１９を備える。ロボット制御装置１が備える各部は、演算処理装置、記憶装置等を備えたコンピュータにより構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムはロボット制御装置１が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。図１では、ロボット制御装置１とロボット２とを分けて示しているが、ロボット２内にロボット制御装置１を組み込んでもよい。
【００２２】
ディスプレイ情報処理部１１は、リモコン３によりディスプレイ４が操作された内容を含むディスプレイ状態変更情報や視聴チャンネル変更情報を取得し、ディスプレイ状態変更情報は発話・アクション決定部１３に送信し、視聴チャンネル変更情報を取得した場合は、新たに視聴するチャンネルの情報を取得してソーシャルメディア情報取得部１２に送信する。また、視聴中のチャンネルに関する発話・アクションタグ情報が番組関連発話・アクションタグデータベース１９に存在する場合は、視聴中のチャンネルに関する発話・アクションタグ情報を取得して発話・アクション決定部１３に送信する。
【００２３】
ソーシャルメディア情報取得部１２は、視聴中のチャンネルの情報をディスプレイ情報処理部１１から受信し、視聴中のチャンネルに関するコメントをソーシャルメディアサーバ７から取得し、ロボットに設定されたパーソナリティと一致するパーソナリティの話者（以下、「パーソナリティ一致話者」という）のコメントと視聴中のチャンネルの盛り上がり度合いを示す盛り上がり値を求め、発話・アクション決定部１３に送信する。
【００２４】
発話・アクション決定部１３は、ディスプレイ情報処理部１１から受信したディスプレイ状態変更情報と発話・アクションタグ情報、ソーシャルメディア情報取得部１２から受信したパーソナリティ一致話者コメント情報と盛り上がり値に基づき、ロボットに発話させる発話内容及びロボットにさせるアクション内容を決定してロボットを制御する。発話・アクション内容を決定する際にはロボット２に設定されたロボットパーソナリティを考慮する。
【００２５】
［ロボット制御装置が保持するデータ］
続いて、ロボット制御装置１が保持するデータについて説明する。
【００２６】
ロボットパーソナリティ属性情報データベース１４は、ロボットに設定されるパーソナリティを表すロボットパーソナリティ属性情報を格納する。ロボットパーソナリティ属性情報は、ソーシャルメディア情報取得部１２がパーソナリティ一致話者を抽出するとき、および発話・アクション決定部１３が発話・アクション内容を決定するときに用いられる。
【００２７】
図２に、ロボットパーソナリティ属性情報データベース１４に格納されるロボットパーソナリティ属性情報の例を示す。ロボットパーソナリティ属性情報は、図２（ａ）に示す映像依存のロボットパーソナリティと図２（ｂ）に示す固定のロボットパーソナリティの２種類のパーソナリティ属性情報で構成される。
【００２８】
映像依存のロボットパーソナリティには、カテゴリ毎に、単数または複数の属性、属性値、属性重みのセットが設定される。カテゴリは、スポーツ・ニュース・ドラマなど映像の種類を表すものから構成され、サブカテゴリを持つカテゴリもある。例えば、メインカテゴリがスポーツである場合は、サッカー、野球、バスケットボールなどがサブカテゴリとなる。属性は、番組に対し個人が持ちうる趣味や趣向の要素を表し、例えば、サッカー番組における好きなチーム・好きな選手やニュース番組における好きなジャンルなどから構成される。属性値は、属性に対する具体的な趣味や趣向の項目であり、例えば、好きなチームの属性に対し属性値はチームＢ，好きなジャンルの属性に対して属性値は芸能などの値が記載される。属性重みは、各属性にそれぞれ付与され、その属性の属性値の一致がパーソナリティの類似性判定に対して、どれだけ寄与するかを表す重みづけである。
【００２９】
固定のロボットパーソナリティは映像に依存しない固定されたパーソナリティであり、属性、属性値、属性重みのセットで構成される。属性として性別や年代を持ち、属性が性別の場合は属性値として男性又は女性が設定され、属性が年代の場合は属性値として２０代、３０代・・が設定される。属性重みは、映像依存のロボットパーソナリティと同様の、各属性に対する重みづけである。
【００３０】
アクションデータベース１５は、発話・アクション決定部１３がロボット２のアクション内容を決定するときに用いるアクション決定テーブルと、各アクションについてのロボットの制御シーケンスを記載した制御シーケンステーブルを格納する。
【００３１】
図３（ａ）は、アクション決定テーブルの例であり、図３（ｂ）は、制御シーケンステーブルの例である。
【００３２】
アクション決定テーブルには、対話状態トリガー、感情状態トリガー、動作名、および実行速度をセットとしたデータが格納される。対話状態トリガーには、「話しかけ」と「感想」のいずれかの値が入る。対話状態は、発話・アクション決定部１３が決定した発話内容により決められるものであり、発話内容が話しかける内容であれば話しかけ、感想を述べる内容であれば感想となる。感情状態トリガーには、喜び、驚きなどロボット２に設定される感情状態の値が入る。感情状態は、発話・アクション決定部１３が決定した発話・アクション内容に応じて決められて、発話・アクション決定部１３が備える記憶領域に格納されている。動作名は、例えば、うなずく、首を横に振る、万歳をするなどロボット２にさせるアクションを識別するためのラベルである。実行速度は、動作名で指定された動きを実行する際の速度に関するパラメータであり、値が大きいほどアクションを実行する速度が速くなる。発話・アクション決定部１３は、アクション決定テーブルを参照し、対話状態、感情状態に基づいてロボット２にさせるアクション内容を決定する。
【００３３】
制御シーケンステーブルには、動作名とアクチュエータ制御シーケンスをセットとしたデータが格納される。動作名は、アクション決定テーブルと対応するラベルであり、一連のアクチュエータ制御シーケンスをロボットが実行した際のロボット動作の様子を示している。アクチュエータ制御シーケンスは、ユーザ方位必要の有無、ディスプレイ方位必要の有無に加えて、モータ制御箇所と値、シーケンス移動間隔で構成されるデータのリストで構成される。ユーザ方位必要の有無、ディスプレイ方位必要の有無には、該当するアクションをする際に、ユーザ方位、ディスプレイ方位が必要であるか否かが指定される。モータ制御箇所と値には、例えば頭部チルト角０度、左腕チルト角０度というように、制御対象のアクチュエータ箇所とそのアクチュエータに設定する角度値が入る。モータ制御箇所と値のデータは、例えば図３（ｂ）のうなずく動作であれば、頭部チルト角０度から始まり，頭部チルト角−４０度、頭部チルト角０度と逐次リスト形式で保持されており、左側から順番に指定の角度になるまでアクチュエータ制御が実施される。シーケンス移動間隔には、同列のモータ制御箇所と値から次のモータ制御箇所と値に遷移する際の遷移間隔を示す値が入り、値が小さいほど遷移する速度が速くなる。
【００３４】
定型発話文データベース１６は、ディスプレイ４の状態変化時のロボット２の発話内容を記載した定型発話文を格納する。発話・アクション決定部１３は、ディスプレイ状態変更情報を受信したときに、定型発話文データベース１６を参照し、ディスプレイ状態変更情報の内容、現在の感情状態、およびロボットパーソナリティからロボット２に発話させる発話内容を決定するとともに、実行時の感情状態を得る。
【００３５】
図４に、定型発話文データベース１６に格納される定型発話文の例を示す。同図に示す定型発話文は、テレビ状態遷移、元の感情状態、実行する感情状態、対話状態、発話内容、およびロボットパーソナリティをセットとしたデータの集合からなる。テレビ状態遷移には、電源ＯＮ、電源ＯＦＦ、チャンネル変更、音量大、音量小など、ディスプレイ４の操作により変化したディスプレイ４の状態変化が入る。元の感情状態と実行する感情状態は、驚きや喜びなどのロボットの感情状態を示す値が入る。元の感情状態には、全ての感情状態を表すＡＬＬや疲労・眠い・悲しみのように複数の感情状態を含んでもよい。対話状態は、発話内容を実行する場合の発話態度であり話しかけ又は感想の値が入る。発話内容は、「一緒にテレビ見ようよ」のように、実際にロボットが発話する文字列が入る。ロボットパーソナリティは、発話内容にあったパーソナリティを示す値が入る。図４の例では、性別と年代を記載している。
【００３６】
ポジネガ単語データベース１７は、単語の意味が、ポジティブな内容であるか、ネガティブな内容であるかを示すデータを格納する。発話・アクション決定部１３は、パーソナリティ一致話者コメント情報を受信したときに、ポジネガ単語データベース１７を参照し、そのコメント内の単語がポジティブであるかネガティブであるかを判定してポジティブ・ネガティブ値を算出する。ポジティブ・ネガティブ値は、盛り上がり値と合わせて感情状態を決定するのに用いられる。また、ロボット２に発話させる音声の高低等を決定するのにも用いられる。
【００３７】
図５に、ポジネガ単語データベース１７に格納されるデータの例を示す。ポジネガ単語データベース１７に格納されるデータは、単語、ポジティブ、ネガティブの３つの要素で構成される。単語には、凄い、きれい、残念などの単語が入る。単語がポジティブな意味であればボジティブの欄に１、ネガティブの欄に０が入り、単語がネガティブな意味であればボジティブの欄に０、ネガティブの欄に１が入る。
【００３８】
口調変換データベース１８は、発話内容の口調を変換するための変換データを格納する。発話・アクション決定部１３は、パーソナリティ一致話者コメント情報から発話内容を決定し、口調変換データベース１８を参照して、その発話内容の口調を変換する。
【００３９】
図６に、口調変換データベース１８に格納されるデータの例を示す。口調変換データベース１８に格納されるデータは、変換元と変換先のセットで構成される。変換元、変換先のどちらも文字列である。
【００４０】
番組関連発話・アクションタグデータベース１９は、ディスプレイ４で映される番組に合わせてロボット２に発話させる発話内容などを格納する。ディスプレイ情報処理部１１が、視聴中のチャンネルの情報を取得して、番組関連発話・アクションタグデータベース１９内に該当する番組のデータが格納されているか否か判定し、視聴中の番組に該当するデータが格納されている場合は、そのデータを発話・アクション決定部１３へ送信し、発話・アクション決定部１３は、番組の再生時刻、ロボットパーソナリティに基づいてロボット２に発話させる発話内容を決定する。
【００４１】
図７に、番組関連発話・アクションタグデータベース１９に格納されるデータの例を示す。番組関連発話・アクションタグデータベース１９に格納されるデータは、チャンネル情報、番組名、動作開始時間、実行アクション、実行する感情状態、発話内容、およびロボットパーソナリティで構成される。チャンネル情報は、テレビ番組のチャンネルを表している。番組名は、各チャンネルで行われているテレビ番組の名前を示している。動作開始時間は、番組の開始時刻を基準として、実行アクション、発話内容を実施させるタイミングを示す時間である。実行アクションは、ロボットが実行する動作名を示している。実行する感情状態は、アクション実行時のロボットの感情状態を示している。発話内容は、アクション実行と同時にロボットが発話する発話文を示したテキストである。ロボットパーソナリティは、実行アクションや発話内容にあったパーソナリティを示す値である。図７の例では、性別と年代を記載している。
【００４２】
[ロボット制御装置が利用する外部のデータ]
続いて、ロボット制御装置１が利用する外部のサーバや外部のデータベースが保持するデータについて説明する。
【００４３】
図８は、電子番組表情報データベース５が保持するデータの例を示す図である。ディスプレイ情報処理部１１は電子番組表情報データベース５を参照し、ディスプレイ４で視聴中のチャンネルの番組名やカテゴリを取得する。
【００４４】
図８に示す電子番組表情報は、チャンネル情報、カテゴリ、番組名、開始時刻、および終了時刻のセットで構成される。電子番組表情報には、各番組がどのチャンネルで何時から何時まで放送されるかが示されている。カテゴリは番組内容に応じた分類を示す情報である。
【００４５】
図９は、番組−ソーシャルメディアタグ関連データベース６が保持するデータの例を示す図である。番組−ソーシャルメディアタグ関連データベース６は、ソーシャルメディア情報取得部１２がユーザが視聴中の番組に関連するコメントを抽出するために用いる。
【００４６】
図９に示す番組−ソーシャルメディアタグ関連データベース６では、番組名、複数の番組関連タグのセットを保持する。番組関連タグとは、ソーシャルメディアサーバを利用する利用者が特定のテレビ番組に関してコメントしたことを示すために意図的にコメント内につける共通の文字列である。図９の例では、ソーシャルメディアタグは記号＃から始まる半角の英語大文字の文字列とする。この番組関連タグを含むコメントを抽出することで、番組に関連するコメントのみを抽出することができる。
【００４７】
図１０は、ソーシャルメディアサーバ７が保持するソーシャルメディアコメント情報の例を示す図である。ソーシャルメディア情報取得部１２は、ソーシャルメディアサーバ７にアクセスしてソーシャルメディアコメント情報を取得する。
【００４８】
図１０に示すソーシャルメディアコメント情報は、ユーザＩＤ、コメント時刻、およびコメント内容のセットで構成される。ユーザＩＤは、ソーシャルメディアサーバ７にコメントを投稿する利用者ひとりひとりに付く固有のＩＤである。コメント時刻は、ソーシャルメディアの利用者がコメントをソーシャルメディアサーバ７に送信した時刻である。コメント内容は、利用者がソーシャルメディアサーバ７に送信したコメントの文字列である。
【００４９】
図１１は、位置取得サーバ８が保持するユーザ・ディスプレイ方位情報の例を示す図である。ユーザ・ディスプレイ方位情報は、ロボット２からユーザ、ディスプレイ４への方向を示す情報であり、発話・アクション決定部１３がロボット２にアクションを実行させるときに用いる。
【００５０】
図１１に示すユーザ・ディスプレイ方位情報は、ユーザとディスプレイ４の２つの対象それぞれに対し、方位角と仰俯角を持つ。方位角は、ロボット２から各対象が地面に水平方向において北を０°とした際にどの方位にあるかを示したものである。仰俯角は、ロボット２から各対象が地面に垂直方向において水平を０°，真上を９０°とした際にどの角度にあるかを示したものである。各対象の方位角と仰俯角は、ユーザ、ロボット２、ディスプレイ４の移動に応じて逐次更新されるものとする。
【００５１】
［ロボット制御装置の動作］
次に、ロボット制御装置１の動作について説明する。以下では、ディスプレイ４に対する操作を取得する処理、発話内容とアクション内容を決定する処理、およびロボット２に発話とアクションを実行させる処理について順に説明する。
【００５２】
［ディスプレイに対する操作を取得する処理］
まず、ディスプレイ４に対するユーザによる操作を取得する処理について説明する。
【００５３】
ユーザがリモコン３を操作すると、リモコン３は、操作内容に応じたディスプレイ状態操作やチャンネル操作の信号をディスプレイ４に送信する。ディスプレイ状態操作は、ディスプレイ４の電源ＯＮや電源ＯＦＦ、音量大や音量小など、ディスプレイ４の状態を変化させる操作である。チャンネル操作は、ディスプレイに表示されてる映像を変更する信号であり、例えば１ｃｈから２ｃｈなど他のチャンネルに変更する操作である。
【００５４】
リモコン３は、ディスプレイ４に信号を送信するとともに、ロボット制御装置１にディスプレイ状態変更情報や視聴チャンネル変更情報を送信する。ディスプレイ状態変更情報にはディスプレイ４に対する操作内容を示す文字列（例えば電源ＯＮや音量大など）が含まれる。視聴チャンネル変更情報には変更後のチャンネル情報が含まれる。
【００５５】
ロボット制御装置１は、視聴チャンネル変更情報やディスプレイ状態変更情報を受信すると、後述する発話内容とアクション内容を決定する処理を実行する。
【００５６】
なお、本実施の形態では、リモコン３からロボット制御装置１に対して視聴チャンネル変更情報やディスプレイ状態変更情報が送信されるとしたが、ロボット制御装置１が、リモコン３からディスプレイ４へ送信される信号を受信し、ロボット制御装置１内の処理によって、受信した信号を視聴チャンネル変更情報とディスプレイ状態変更情報に変換してもよい。例えば、リモコン３としてスマートフォンのアプリケーションを用いて無線ＬＡＮによりディスプレイ４を操作する場合、操作情報の送信先にロボット制御装置１を加える。
【００５７】
また、ディスプレイ４が、ロボット制御装置１に対して視聴チャンネル変更情報とディスプレイ状態変更情報を送信する機能を有しても良い。例えば、赤外線リモコンによるテレビ操作に対してディスプレイ状態の変更を検知する場合は、ディスプレイ４の赤外線受光口の傍に赤外線リモコンからの赤外線信号を受信し、赤外線信号の示す操作内容を無線によりロボット制御装置１へ送信する。
【００５８】
さらに、ユーザの音声やリモコン操作などに応じてロボット２がディスプレイ操作を仲介する場合は、ロボットに対するユーザ音声やリモコン操作からディスプレイ状態の変更を検知する。あるいは、ロボット２がロボット制御装置１へディスプレイ状態を通知してもよい。
【００５９】
［発話内容とアクション内容を決定する処理］
続いて、ロボット２に発話させる発話内容と実行させるアクション内容を決定する処理について説明する。
【００６０】
ロボット制御装置１は、ディスプレイ状態変更情報や視聴チャンネル変更情報を受信すると、ディスプレイの状態の変更や視聴中のチャンネルにあった発話内容とアクション内容を決定する。本実施の形態におけるロボット制御装置１は、（Ａ）ディスプレイ状態変更に基づく方法、（Ｂ）ソーシャルメディアを用いる方法、（Ｃ）番組に付随するシナリオに基づく方法、の３通りの方法で発話・アクション内容を決定する。以下で、（Ａ）〜（Ｃ）の処理について順に説明する。なお、（Ａ）〜（Ｃ）のいずれの方法を用いてもよいし、組み合わせてもよい。予め決められたルールに従う動作でないという点で、（Ｂ）のソーシャルメディアを用いる方法を備えることが好ましい。
【００６１】
（Ａ）ディスプレイ状態変更に基づく方法
まず、ディスプレイ状態変更に基づいて発話内容とアクション内容を決定する方法について説明する。
【００６２】
図１２は、ディスプレイ状態変更に基づいて発話内容とアクション内容を決定する処理の流れを示すフローチャートである。
【００６３】
ディスプレイ情報処理部１１は、リモコン３からディスプレイ状態変更情報を受信すると、ディスプレイ状態変更情報を発話・アクション決定部１３へ送信する（ステップＳ１１）。
【００６４】
発話・アクション決定部１３は、ディスプレイ状態変更情報を受信すると、発話・アクション決定部１３の記憶領域から感情状態を取得する（ステップＳ１２）。なお、電源投入後や初期化後などロボット２に初めてアクションさせる場合は感情状態は保存されていない。
【００６５】
発話・アクション決定部１３は、ロボットパーソナリティ、感情状態、および受信したディスプレイ状態変更情報に応じた定型発話文情報を定型発話文データベース１６から抽出する（ステップＳ１３）。具体的には、発話・アクション決定部１３は、ロボットパーソナリティ属性情報データベース１４からロボット２に設定されたロボットパーソナリティ属性情報を取得するとともに、定型発話文データベース１６を参照し、ステップＳ１２で取得した感情状態と定型発話文データベース１６の元の感情状態の値が一致し、かつロボットパーソナリティ属性情報の属性値と定型発話文データベース１６のパーソナリティの属性値が一致する定型発話文情報を抽出する。そして、抽出した定型発話文情報のなかでテレビ状態遷移の値が受信したディスプレイ状態変更情報と一致する定型発話文情報を抽出する。ステップＳ１３で抽出した定型発話文情報の発話内容がロボット２に発話させる発話内容となる。なお、定型発話文データベース１６において元の感情状態が複数設定されているものに関しては、取得した感情状態が含まれていれば一致したものとする。また、元の感情状態にＡＬＬが設定されている場合は、感情状態にかかわらず一致したものとする。ステップＳ１３で抽出した結果が複数存在する場合は、そのうち１つをランダムで選択する。
【００６６】
そして、ステップＳ１３で抽出した定型発話文情報の実行する感情状態の値を発話・アクション決定部１３の記憶領域に感情状態として保存する（ステップＳ１４）。
【００６７】
続いて、ロボット２に実行させるアクション内容を決定する。
【００６８】
発話・アクション決定部１３は、発話内容の対話状態、感情状態に応じたアクションをアクションデータベース１５から抽出する（ステップＳ１５）。具体的には、発話・アクション決定部１３は、アクションデータベース１５のアクション決定テーブルを参照し、アクションデータベース１５の対話状態トリガーがステップＳ１３で抽出した定型発話文情報の対話状態と一致し、かつアクションデータベース１５の感情状態トリガーがステップＳ１３で抽出した定型発話文情報の実行する感情状態と一致するデータを抽出する。なお、複数のデータが一致する場合は、そのうち１つをランダムで選択する。また、一致するデータがない場合は、実施するアクション無しとする。
【００６９】
そして、ステップＳ１５でアクション決定テーブルから抽出したデータの動作名をアクションデータベース１５の制御シーケンステーブルから検索する。検索したデータのアクチュエータ制御シーケンスがロボット２に実行させるアクション内容となる。なお、アクション内容に基づいてロボット２を制御する処理については後述する。
【００７０】
以上の処理により、受信したディスプレイ状態変更情報に基づき、ロボットパーソナリティを考慮した発話内容とアクション内容が決定される。発話・アクション内容を決定した後は、後述するロボットに発話とアクションを実行させる処理を実行する。
【００７１】
（Ｂ）ソーシャルメディアを用いる方法
続いて、ソーシャルメディアを用いて発話内容とアクション内容を決定する方法について説明する。
【００７２】
図１３は、ソーシャルメディアを用いて発話内容とアクション内容を決定する処理のうち、盛り上がり値とパーソナリティ一致話者コメント情報を取得する処理の流れを示すフローチャートである。後述する処理により、発話・アクション決定部１３は、盛り上がり値とパーソナリティ一致話者コメント情報に基づいて発話内容とアクション内容を決定する。
【００７３】
ディスプレイ情報処理部１１は、リモコン３から視聴チャンネル変更情報を受信すると（ステップＳ２１）、電子番組表情報データベース５を参照し、受信した視聴チャンネル変更情報と現在時刻から視聴中の番組のデータを取得する（ステップＳ２２）。
【００７４】
そして、ディスプレイ情報処理部１１は、番組−ソーシャルメディアタグ関連データベース６を参照し、視聴中の番組に関連する番組関連タグを取得する（ステップＳ２３）。ディスプレイ情報処理部１１は、視聴中の番組のカテゴリと番組関連タグを番組ドメイン情報と番組関連ソーシャルメディアタグ情報としてソーシャルメディア情報取得部１２へ送信する。
【００７５】
ソーシャルメディア情報取得部１２は、番組ドメイン情報と番組関連ソーシャルメディアタグ情報を受信すると、受信した番組関連ソーシャルメディアタグ情報を含むソーシャルメディアコメント情報をソーシャルメディアサーバ７から取得する（ステップＳ２４）。
【００７６】
ソーシャルメディア情報取得部１２は、取得したソーシャルメディアコメント情報から盛り上がり値を算出する（ステップＳ２５）。本実施の形態では、盛り上がり値を各シーンの時間に対応するコメント数の増減に基づいて算出する。具体的には、現在時刻から１分以内に投稿されたソーシャルメディアコメントの総コメント数ｘと、番組開始から現在時刻の1分あたりのコメント数の平均値μと、番組開始から現在時刻まで１分毎にカウントしたコメント数の分散値σを用いて、次式（１）により盛り上がり値を求める。
【００７７】
【数１】
2015148701.tif 000003
【００７８】
式（１）で算出される値が−１．０を下回る場合は盛り上がり値を−１．０、また、値が１．０を上回る場合は盛り上がり値を１．０とする。式（１）で算出される値が−１．０から１．０の範囲内の場合はその値を盛り上がり値とする。
【００７９】
そして、ソーシャルメディア情報取得部１２は、ロボットパーソナリティ属性情報データベース１４を参照し、受信した番組ドメイン情報と一致するロボットパーソナリティ属性情報を抽出する（ステップＳ２６）。番組ドメイン情報とロボットパーソナリティ属性情報との一致判定では、まず映像依存のロボットパーソナリティからメインカテゴリで一致するものがあるか否か判定する。一致するメインカテゴリがない場合は全てのサブカテゴリで一致するものがあるか否か判定する。一致するメインカテゴリが存在し、そのメインカテゴリにサブカテゴリが存在する場合は、そのサブカテゴリのなかからランダムで１つを選択し、選択したサブカテゴリの属性、属性値、属性重みと固定のロボットパーソナリティを組み合わせて、パーソナリティ一致話者の特定に用いるロボットパーソナリティ属性情報とする。一致するメインカテゴリにサブカテゴリがない場合や、一致するメインカテゴリがなく一致するサブカテゴリが存在する場合は、そのカテゴリの属性、属性値、属性重みと固定のロボットパーソナリティを組み合わせて、パーソナリティ一致話者の特定に用いるロボットパーソナリティ属性情報とする。映像依存のロボットパーソナリティに番組ドメイン情報と一致するカテゴリがない場合は、固定のロボットパーソナリティのみをパーソナリティ一致話者の特定に用いるロボットパーソナリティ属性情報とする。
【００８０】
そして、ソーシャルメディア情報取得部１２は、抽出したロボットパーソナリティ属性情報を用いてパーソナリティ一致話者を抽出する（ステップＳ２７）。具体的には、まず、ロボットパーソナリティ属性情報の各属性に対して、ステップＳ２４で取得したソーシャルメディアコメント情報の全ユーザの属性値を推定する。全ユーザの各属性における属性値の推定には、Jun ITO, “What is he/she like?: Estimating Twitter User Attributes from Contents and Social Neighbors” に記載された技術を用いる。そして、推定した全ユーザの各属性における属性値とロボットパーソナリティ属性情報の各属性における属性値を用いて、各ユーザとロボットのパーソナリティの一致度を計算し、予め決められた値を超えた一致度のユーザをパーソナリティ一致話者とする。一致度の計算には、各ユーザとロボットパーソナリティ属性情報の同じ属性に対し、各ユーザの属性値の推定結果とロボットパーソナリティ属性情報の属性値の比較を行い、属性値が一致する属性の属性重みの和を計算する。そして、属性重みの和をロボットパーソナリティ属性情報の属性の数で割ったものをユーザとロボットのパーソナリティの一致度とする。
【００８１】
そして、パーソナリティ一致話者のコメントを抽出する（ステップＳ２８）。抽出したパーソナリティ一致話者のコメントは、パーソナリティ一致話者コメント情報として盛り上がり値とともに発話・アクション決定部１３に送信される。
【００８２】
以上の処理により、ユーザが視聴中の番組の盛り上がり値とロボットに設定されたパーソナリティに合ったパーソナリティ一致話者コメント情報が発話・アクション決定部１３に送信される。引き続いて、発話・アクション決定部１３が発話内容とアクション内容を決定する処理について説明する。
【００８３】
図１４は、ソーシャルメディアを用いて発話内容とアクション内容を決定する処理のうち、盛り上がり値とパーソナリティ一致話者コメント情報に基づいて発話内容とアクション内容を決定する処理の流れを示すフローチャートである。
【００８４】
発話・アクション決定部１３は、ポジネガ単語データベース１７を参照し、受信したパーソナリティ一致話者コメント情報を用いてポジティブ・ネガティブ値を算出する（ステップＳ３１）。具体的には、パーソナリティ一致話者コメント情報の全てのコメント内容に対して形態素解析を行い、形態素解析されたコメント内容の各単語について、ポジネガ単語データベース１７に格納されたポジネガ単語情報の単語と一致するものがあるか否か判定する。形態素解析された全単語の数をｗｏｒｄＮＭＢ、形態素解析された全単語のｉ番目をｗiとすると、ポジティブ・ネガティブ値ＰＮは次式（２）で求められる。
【００８５】
【数２】
2015148701.tif 000004
【００８６】
式（２）において、Ｊ（ｗi）は、ｗiがポジネガ単語情報の単語と一致するものがあり、かつポジティブが１、ネガティブが０であった場合は１、ｗiがポジネガ単語情報の単語と一致するものがあり、かつポジティブが０、ネガティブが１であった場合は−１、それ以外の場合は０を返す関数である。なお、式（２）の算出結果、ＰＮ＞１００の場合はＰＮ＝１００、ＰＮ＜−１００の場合はＰＮ＝−１００とする。−１００≦ＰＮ≦１００の場合は算出されたＰＮをそのままポジティブ・ネガティブ値とする。
【００８７】
そして、発話・アクション決定部１３は、受信したパーソナリティ一致話者コメント情報から発話内容を決定する（ステップＳ３２）。具体的には、まず、現在時刻より一定時間以内に投稿されたコメントをパーソナリティ一致話者コメント情報から抽出し、抽出したコメントに対して形態素解析を行う。そして、形態素解析されたコメントの全ての単語に対してＴＦ−ＩＤＦ値を算出する。このとき、ＴＦは形態素解析されたコメントの全ての単語における各単語の出現数であり、ＩＤＦは一般的な文書コーパスより算出される。一般的な文書コーパスとしては新聞社のコーパスなどが挙げられる。そして、各コメントの文が持つ各単語のＴＦ−ＩＤＦ値の合計値を算出し、合計値が最も大きかったコメントを発話内容として決定する。
【００８８】
そして、発話・アクション決定部１３は、盛り上がり値とポジティブ・ネガティブ値を用いて感情状態を決定する（ステップＳ３３）。感情状態の決定は、ラッセルの感情円環モデル（James A. Russell, “A Circumplex Model of Affect”）を応用した図１５に示す盛り上がり値とポジティブ・ネガティブ値に基づく感情状態のマップに、盛り上がり値とポジティブ・ネガティブ値を当てはめて、マップ中に示された感情状態のうち最も近い感情状態をロボットの感情状態とする。図１５のマップにおいて、盛り上がり値の最大値はＡｃｔＭＡＸ＝１、最小値はＡｃｔＭＩＮ−１であり、ポジティブ・ネガティブ値の最大値はＰＮＭＡＸ＝１００、最小値はＰＮＭＩＮ＝−１００である。図１５のマップ中の感情状態ＥＭnの盛り上がり値をＡｃｔn、ポジティブ・ネガティブ値をＰＮnとし、盛り上がり値をＡｃｔ、ポジティブ・ネガティブ値をＰＮとすると、感情状態ＥＭnとの感情距離ＥｍＤｉｓｔnは次式（３）で表される。
【００８９】
【数３】
2015148701.tif 000005
【００９０】
式（３）を用いて、マップ中の全ての感情状態ＥＭnとの感情距離ＥｍＤｉｓｔnを計算し、感情距離ＥｍＤｉｓｔnが最も小さい値の感情状態ＥＭnをロボットの感情状態とする。決定した感情状態は、発話・アクション決定部１３の記憶領域に保存する。
【００９１】
なお、ロボット２の感情状態を決定する方法として、映像中の音声から感情を類推する方法（特開２００９−１１１９３８号公報、特開２００９−２５１４６９号公報）や映像から感情を類推する方法（特開２０１１−８１４４５号公報）を用いて、特定の登場人物の感情を抽出してもよい。
【００９２】
そして、発話・アクション決定部１３は、ステップＳ３２で決定した発話内容に対して、ノイズ除去、口調変換を行う（ステップＳ３４）。ノイズの除去では、発話時に不必要なソーシャルメディアタグや記号を使った顔文字などを除去する。ソーシャルメディアタグの除去の際には、ソーシャルメディアタグを表すルールに沿った文字列の除去を行う。本実施の形態では＃で始まる半角英語大文字の文字列を除去する。顔文字の除去では、Michal Ptaszynski, “CAO: A Fully Automatic Emoticon Analysis System Based on Theory of Kinesics” などに記載された顔文字解析システムを用いて発話内容内の顔文字を抽出して除去する。また、発話内容に口調変換データベース１８に変換元として登録された言葉が存在する場合は、該当する文字列を変換先の文字列に置き換える。
【００９３】
そして、発話・アクション決定部１３は、ステップＳ３４で変換処理した発話内容とステップＳ３３で決定した感情状態からロボット２に実行させるアクションを決定する（ステップＳ３５）。まず、発話内容が疑問文であるか否かを判定し、対話状態を特定する。発話内容が疑問符や「か」「かな」で終わっている場合は疑問文であると判定する。発話内容が疑問文である場合は対話状態を話しかけとし、そうでない場合は対話状態を感想とする。そして、ディスプレイ状態変更に基づく方法のステップＳ１５と同様に、対話状態と感情状態のそれぞれがアクションデータベース１５の対話状態トリガーと感情状態トリガーに一致するデータを抽出し、ロボット２に実行させるアクション内容を決定する。
【００９４】
以上の処理により、ソーシャルメディアサーバ７に投稿されたコメントを用いて、ロボットパーソナリティを考慮した発話内容とアクション内容が決定される。発話・アクション内容を決定した後は、後述するロボットに発話とアクションを実行させる処理を実行する。
【００９５】
なお、上記では、利用者が自由にコメントを投稿するソーシャルメディアサーバ７から番組に関するタグを含むコメントを抽出して発話・アクション内容を決定したが、チャンネル毎に設置された電子掲示板から番組に関するコメントを抽出して発話・アクション内容を決定してもよい。
【００９６】
また、リアルタイムに放送されている番組でなく、映像の再生時間に対応させてコメントが付与された映像を視聴するときは、映像に付与されたコメントを用いることもできる。
【００９７】
（Ｃ）番組に付随するシナリオに基づく方法
続いて、番組に付随するシナリオに基づいて発話内容とアクション内容を決定する方法について説明する。
【００９８】
図１６は、番組に付随するシナリオに基づいて発話内容とアクション内容を決定する処理の流れを示すフローチャートである。
【００９９】
ディスプレイ情報処理部１１は、番組関連発話・アクションタグデータベース１９を参照し、視聴中の番組に該当する発話・アクションタグ情報を抽出する（ステップＳ４１）。視聴中の番組は、ソーシャルメディアを用いる方法のステップＳ２２と同様に、電子番組表情報データベース５を参照して特定する。ディスプレイ情報処理部１１は、視聴中のチャンネル、番組名が一致する発話・アクションタグ情報を番組関連発話・アクションタグデータベース１９から抽出する。
【０１００】
ディスプレイ情報処理部１１は、抽出した発話・アクションタグ情報のうち、動作開始時間が近いものを発話・アクション決定部１３へ送信する（ステップＳ４２）。例えば、視聴中の番組の開始時刻に抽出した発話・アクションタグ情報の動作開始時間を加えた時刻と現在時刻との差が所定時間（１０秒程度）以内の場合に、該当する発話・アクションタグ情報を発話・アクションタグ候補情報として発話・アクション決定部１３へ送信する。なお、ステップＳ４２の処理は、ディスプレイ４の電源がＯＦＦされるまで、あるいは視聴中の番組が変更されるまで繰り返し行われる。視聴中の番組が変更された場合は、ステップＳ４１に戻る。
【０１０１】
発話・アクション決定部１３は、発話・アクションタグ候補情報を受信すると、発話・アクションタグ候補情報の中から、ロボット２に設定されたロボットパーソナリティに合う発話・アクションタグ情報を選択し、発話内容とアクション内容を決定する（ステップＳ４３）。具体的には、発話・アクションタグ候補情報として受信した発話・アクションタグ情報のうち、ロボットパーソナリティ属性情報データベース１４に格納されたロボットパーソナリティと一致するロボットパーソナリティの属性値を持つ発話・アクションタグ情報を選択する。一致する発話・アクションタグ情報が複数あった場合はそのうちの１つをランダムに選択する。選択した発話・アクションタグ情報の発話内容をロボット２に発話させる発話内容として決定し、発話・アクションタグ情報の実行アクションをロボット２に実行させるアクションとして決定する。なお、一致する発話・アクションタグ情報が無かった場合は発話内容を無し、アクション内容を無しとする。
【０１０２】
発話・アクション決定部１３は、実行させるアクションを決定すると、実行させるアクションを動作名として持つデータをアクションデータベース１５の制御シーケンステーブルから検索する。検索したデータのアクチュエータ制御シーケンスがロボット２に実行させるアクション内容となる。また、実行させるアクションを動作名として持つデータをアクションデータベース１５のアクション決定テーブルから検索してアクションの実行速度を得る。
【０１０３】
また、発話・アクション決定部１３は、ステップＳ４３で選択した発話・アクションタグ情報の実行する感情状態を発話・アクション決定部１３の記憶領域に感情状態として保存する（ステップＳ４４）。
【０１０４】
以上の処理により、番組関連発話・アクションタグデータベース１９に格納された番組に付随するシナリオに基づき、ロボットパーソナリティを考慮した発話内容とアクション内容が決定される。発話・アクション内容を決定した後は、後述するロボットに発話とアクションを実行させる処理を実行する。
【０１０５】
［ロボットに発話とアクションを実行させる処理］
続いて、決定した発話内容とアクション内容に基づいてロボット２に発話とアクションを実行させる処理について説明する。
【０１０６】
図１７は、決定した発話内容とアクション内容に基づいてロボット２に発話とアクションを実行させる処理の流れを示すフローチャートである。
【０１０７】
まず、発話・アクション決定部１３は、ロボット２に実行させるアクションがユーザ方位情報あるいはディスプレイ方位情報を必要とするか否か判定する（ステップＳ５１）。発話・アクション決定部１３は、ロボット２に実行させるアクションのアクチュエータ制御シーケンスのユーザ方位情報必要の有無及びディスプレイ方位情報必要の有無を調べて判定する。ユーザ方位情報必要の有無とディスプレイ方位情報必要のいずれも無の場合はステップＳ５４へ進む。
【０１０８】
ユーザ方位情報あるいはディスプレイ方位情報が必要な場合は、位置取得サーバ８からユーザ方位情報とディスプレイ方位情報を取得し（ステップＳ５２）、ロボット２に実行させるアクションのアクチュエータ制御シーケンスの必要な箇所へ代入する（ステップＳ５３）。例えば、図３（ｂ）に示した「ユーザを見る」アクションでは、アクチュエータ制御シーケンスの頭部チルト角度ｙ1度にはユーザ方位情報の方位角を代入し、アクチュエータ制御シーケンスの頭部ロール角度ｙ2度にはユーザ方位情報の仰俯角を代入する。また、「右手でディスプレイを指さしてユーザを見る」アクションでは、アクチュエータ制御シーケンスの頭部チルト角度ｙ1度にはユーザ方位情報の方位角を代入し、アクチュエータ制御シーケンスの頭部ロール角度ｙ2度にはユーザ方位情報の仰俯角を代入する。さらに、アクチュエータ制御シーケンスの右腕チルト角度ｄ1度にはディスプレイ方位情報の方位角を代入し、アクチュエータ制御シーケンスの右腕ロール角度ｄ2度にはディスプレイ方位情報の仰俯角を代入する。
【０１０９】
なお、ロボット２に対するユーザ方位情報、ディスプレイ方位情報を取得する方法としては、屋内位置測位手法を用いることができる。例えば、Y. Gu, “A Survey of Indoor Positioning Systems for Wireless Personal Networks” に示される手法などが挙げられる。この手法によって取得したユーザ、ロボット２、およびディスプレイ４の屋内位置情報と、さらにロボット２に方位を取得可能なセンサを取り付けることで、ロボット２に対するユーザ・ディスプレイ方向へ視線制御、指差し制御を行うことができる。他の方法としては、ロボット２にカメラを取り付けて画像処理を行うことでユーザ・ディスプレイを識別する方法が挙げられる。カメラ画像中のユーザ・ディスプレイ位置から、ロボット２から見たユーザ方位情報、ディスプレイ方位情報を取得する。
【０１１０】
ロボット２に実行させるアクションのアクチュエータ制御シーケンスを取得後、発話・アクション決定部１３は、発話内容に対して音声合成する（ステップＳ５４）。音声合成する際、音の高低、発話速度、および音の大小は感情状態に応じて決定する。発話・アクション決定部１３は記憶領域から感情状態を取得し、図１５のマップから感情状態に対応する盛り上がり値とポジティブ・ネガティブ値を得る。
【０１１１】
盛り上がり値の最大値をＡｃｔＭＡＸ、最小値をＡｃｔＭＩＮ、ポジティブ・ネガティブ値の最大値をＰＮＭＡＸ、最小値をＰＮＭＩＮ、図１５のマップから得た感情状態に対応する盛り上がり値をＡｃｔm、ポジティブ・ネガティブ値をＰＮmとし、音声合成における音の高さの最大値をＳＴＨ＿ＭＡＸ、最小値をＳＴＨ＿ＭＩＮ、発話速度の最大値をＳＳ＿ＭＡＸ、最小値をＳＳ＿ＭＩＮ、音の大きさの最大値をＳＶ＿ＭＡＸ、最小値をＳＶ＿ＭＩＮとすると、音声合成における音の高さＳＴＨm、発話速度ＳＳm、音の大きさＳＶmは、次式（４）〜（６）でそれぞれ求めることができる。
【０１１２】
【数４】
2015148701.tif 000006
【０１１３】
式（４）〜（６）で求めた音の高さ、発話速度、および音の大きさに従って発話内容を音声合成する。音声合成の結果は、音声ファイルとして生成する。
【０１１４】
そして、発話・アクション決定部１３は、ロボット２にアクチュエータ制御信号と音声ファイルを送信する（ステップＳ５５）。アクチュエータ制御信号は、アクチュエータ制御シーケンスから生成され、制御するアクチュエータ部位、制御角度、および制御角度到達までの時間を含む。
【０１１５】
ロボット２は、受信したアクチュエータ制御信号により指定の部分のアクチュエータを指定の角度と時間で制御するとともに、受信した音声ファイルを再生してロボット２が備えるスピーカーから出力する。
【０１１６】
図１８は、ロボット制御装置１により制御されたロボット２の様子を示す図である。図１８（ａ）は、ディスプレイ４の方向へ視線を向けるように制御された様子を示す図であり、図１８（ｂ）は、ディスプレイ４の方向を指さしつつ、ユーザの方向へ視線を向けるように制御された様子を示す図である。
【０１１７】
ロボット２に対してディスプレイ４の方向へ顔や目を向けるように制御することで、ロボット２がディスプレイ４に注目していることをユーザに自然に知らせることが可能となる。同様に、図示していないが、ロボット２がユーザの方向へ顔や目を向けるように制御することで、ロボット２がユーザに注目していることを自然に知らせることが可能となる。
【０１１８】
また、ロボット２がユーザに注目し、映像内容に対する発話を行う場合に、ロボット２がユーザの方向へ顔や目を向け、ディスプレイ４を指さすように制御することで、ディスプレイ４に表示されている内容に対してユーザに発話していることを自然に知らせることが可能となる。
【０１１９】
このように、ユーザやディスプレイ４に向けたロボットの視線制御、指差し制御を行うことで、ロボット２がユーザとディスプレイ４の存在を認識していることをユーザに知覚させて、ロボット２が共に映像を視聴しているような感覚をユーザに与えることができる。
【０１２０】
以上説明したように、本実施の形態によれば、定型発話文データベース１６を参照し、ディスプレイ４に対する操作内容とロボット２の感情状態に基づいてロボット２に発話させる発話内容を決定するとともに、発話内容の対話状態とロボット２の感情状態に応じたアクション内容をアクションデータベース１５から抽出することで、ディスプレイ４の状態変化に応じたアクションをロボット２に実行させることが可能となる。
【０１２１】
本実施の形態によれば、ソーシャルメディアサーバ７から視聴中の番組に関するコメントを取得し、ロボット２に設定されたパーソナリティと一致するパーソナリティ一致話者のコメントからロボット２に発話させる発話内容を決定するとともに、発話内容の対話状態とロボット２の感情状態に基づいてロボット２に実行させるアクション内容をアクションデータベース１５から抽出することで、視聴中の番組の内容に応じたアクションをロボット２に実行させることが可能となる。その結果、ユーザはロボット２と共に番組を視聴している感覚を持たせることができ、ロボットがユーザに対して共感を生じさせることが可能となる。映像視聴時にユーザがロボットに対して共感を得たと感じることで、ロボット２に対する親和動機をユーザに与え、ロボット２にユーザへ対する商品・サービス・行動レコメンドなどを行わせた際に、ユーザが受け入れる確率を高めることが期待できる。
【０１２２】
本実施の形態によれば、発話内容を決定する際に、ロボットに設定されたパーソナリティでコメントを絞り込むことで、一貫性のある発話・アクションをロボット２に実行させることが可能となる。
【０１２３】
本実施の形態によれば、番組関連発話・アクションタグデータベース１９から視聴中の番組に関連する発話・アクションタグ情報を取得して、ロボット２に発話させる発話内容と実行させるアクション内容を決定することで、ユーザが視聴中の番組に沿ったアクションをロボットに実行させることが可能となる。
【０１２４】
本実施の形態によれば、ユーザ方向、ディスプレイ方向に応じてロボット２を制御し、ユーザに対し、ロボット２が共にディスプレイ４を見ている感覚や発話時にユーザを見ている感覚を与えることで、ロボット２が映像やユーザの存在を認識していることを感じさせて、より視聴内容へ共感を与えることが可能となる。
【符号の説明】
【０１２５】
１…ロボット制御装置
１１…ディスプレイ情報処理部
１２…ソーシャルメディア情報取得部
１３…発話・アクション決定部
１４…ロボットパーソナリティ属性情報データベース
１５…アクションデータベース
１６…定型発話文データベース
１７…ポジネガ単語データベース
１８…口調変換データベース
１９…番組関連発話・アクションタグデータベース
２…ロボット
３…リモコン
４…ディスプレイ
５…電子番組表情報データベース
６…番組−ソーシャルメディアタグ関連データベース
７…ソーシャルメディアサーバ
８…位置取得サーバ
【図１】
2015148701.tif 000007
【図２】
2015148701.tif 000008
【図３】
2015148701.tif 000009
【図４】
2015148701.tif 000010
【図５】
2015148701.tif 000011
【図６】
2015148701.tif 000012
【図７】
2015148701.tif 000013
【図８】
2015148701.tif 000014
【図９】
2015148701.tif 000015
【図１０】
2015148701.tif 000016
【図１１】
2015148701.tif 000017
【図１２】
2015148701.tif 000018
【図１３】
2015148701.tif 000019
【図１４】
2015148701.tif 000020
【図１５】
2015148701.tif 000021
【図１６】
2015148701.tif 000022
【図１７】
2015148701.tif 000023
【図１８】
2015148701.tif 000024