(57)【要約】【課題】ロボット装置に、環境に応じた適切な動作を行なわせる。【解決手段】ロボット装置１０の周囲の環境に関する環境情報を取得する取得部５２と、環境情報に基づいて、ロボット装置１０の行動に関する行動情報および環境情報に、ロボット装置１０が行なった行動に対する反応に基づいて設定された適正度情報を対応付けた制御ポリシー６４を参照して、ロボット装置１０が実行を予定する予定行動についての適正度情報が閾値を超える場合に、ロボット装置１０による予定行動の実行を抑止する抑止制御部５１とを備える。【選択図】図２
2018171683.tif 000002
【特許請求の範囲】
【請求項１】
ロボット装置の処理装置に、
当該ロボット装置の周囲の環境に関する環境情報を取得し、
前記環境情報に基づいて、当該ロボット装置の行動に関する行動情報および環境情報に、当該ロボット装置が行なった行動に対する反応に基づいて設定された適正度情報を対応付けた制御ポリシーを参照して、当該ロボット装置が実行を予定する予定行動についての適正度情報が閾値を超える場合に、前記ロボット装置による前記予定行動の実行を抑止する
処理を実行させる、制御プログラム。
【請求項２】
前記予定行動を決定する
処理を、前記処理装置に実行させる、請求項１記載の制御プログラム。
【請求項３】
当該ロボット装置が行なった行動を示す情報および当該行動に対して観察された反応情報を含むログ情報に基づいて前記制御ポリシーを作成する制御ポリシー作成部
を備えることを特徴とする、請求項１または２記載の制御プログラム。
【請求項４】
ロボット装置であって、
当該ロボット装置の周囲の環境に関する環境情報を取得する取得部と、
前記環境情報に基づいて、当該ロボット装置の行動に関する行動情報および環境情報に、当該ロボット装置が行なった行動に対する反応に基づいて設定された適正度情報を対応付けた制御ポリシーを参照して、当該ロボット装置が実行を予定する予定行動についての適正度情報が閾値を超える場合に、前記ロボット装置による前記予定行動の実行を抑止する抑止制御部と
を備えることを特徴とする、ロボット装置。
【請求項５】
ロボット装置において、
当該ロボット装置の周囲の環境に関する環境情報を取得する処理と、
前記環境情報に基づいて、当該ロボット装置の行動に関する行動情報および環境情報に、当該ロボット装置が行なった行動に対する反応に基づいて設定された適正度情報を対応付けた制御ポリシーを参照して、当該ロボット装置が実行を予定する予定行動についての適正度情報が閾値を超える場合に、前記ロボット装置による前記予定行動の実行を抑止する処理と
を備える、制御方法。
【請求項６】
環境を示す情報を受け付け、
ロボットの行動を識別する情報と、前記ロボットの行動に対する人物の行動を識別する情報とを、前記ロボットの行動時における環境を示す情報に対応付けて記憶する記憶部を参照して、受け付けた前記環境を示す情報に対応付けられたロボットの行動と人物の行動との組みを特定し、
特定した前記組みのうち、人物の行動が特定の種別である組みに含まれるロボットの行動の実行を抑止する
処理をコンピュータに実行させることを特徴とする制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの制御プログラム、ロボット装置、及びロボットの制御方法に関する。
【背景技術】
【０００２】
従来から自律的に話題を選択して発話するロボットが開発されている（例えば、特許文献１）。この種のロボットは、人間の生活空間においてサポートを行なうことが期待されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開2001-38658号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来のロボットは、プログラムに従って動作するにすぎないので、受け取り手によっては、ロボットが提示した話題を不快であると感じる場合がある。また、ロボットの周囲の環境（場所や、その場にいる人物の構成）によっては、ロボットが提供する話題がその環境にふさわしくない場合もある。
【０００５】
本発明の目的の一つは、ロボットに、環境（状況）に応じた適切な動作を行なわせることである。
【課題を解決するための手段】
【０００６】
本発明に係る制御プログラムの一態様は、ロボット装置の処理装置に、当該ロボット装置の周囲の環境に関する環境情報を取得し、前記環境情報に基づいて、当該ロボット装置の行動に関する行動情報および環境情報に、当該ロボット装置が行なった行動に対する反応に基づいて設定された適正度情報を対応付けた制御ポリシーを参照して、当該ロボット装置が実行を予定する予定行動についての適正度情報が閾値を超える場合に、前記ロボット装置による前記予定行動の実行を抑止する処理を実行させる。
【発明の効果】
【０００７】
開示の技術によれば、ロボットに、環境（状況）に応じた適切な動作を行なわせることができる。
【図面の簡単な説明】
【０００８】
【図１】実施形態の一例としてのロボットシステムのハードウェア構成を示す図である。
【図２】実施形態の一例としてのロボットシステムの機能ブロック図である。
【図３】実施形態の一例としてのロボットシステムにおけるログ情報を例示する図である。
【図４】実施形態の一例としてのロボットシステムにおけるイベント情報を例示する図である。
【図５】実施形態の一例としてのロボットシステムにおけるフィルタ情報を例示する図である。
【図６】（Ａ）は実施形態の一例としてのロボットシステムにおける返答評価辞書を例示する図、（Ｂ）は実施形態の一例としてのロボットシステムにおける行動評価辞書を例示する図である。
【図７】実施形態の一例としてのロボットシステムにおけるログ情報、イベント情報、及び、フィルタ情報の生成処理を説明するためのフローチャートである。
【図８】実施形態の一例としてのロボットシステムにおける適正度判定部の処理を説明するためのフローチャートである。
【図９】実施形態の一例としてのロボットシステムにおけるロボットの制御方法を説明するためのフローチャートである。
【図１０】実施形態の変形例としてのロボットシステムにおけるロボットの制御方法を説明するためのフローチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照して、ロボットの制御プログラム、ロボット装置、及びロボットの制御方法に係る実施の形態を説明する。ただし、以下に示す実施形態はあくまでも例示に過ぎず、実施形態で明示しない種々の変形例や技術の適用を排除する意図はない。すなわち、本実施形態を、その趣旨を逸脱しない範囲で種々変形（実施形態及び各変形例を組み合わせる等）して実施することができる。又、各図は、図中に示す構成要素のみを備えるという趣旨ではなく、他の機能等を含むことができる。
【００１０】
［１．ハードウェア構成］
本実施形態に係るロボットシステム１のハードウェア構成を図１に例示する。
【００１１】
ロボットシステム１は、ロボット（ロボット装置）１０及びサーバ３０を備える。
【００１２】
ロボット１０は、例えば、無線通信により、ネットワーク２０を介して、サーバ３０と通信可能に接続される。
【００１３】
まずは、サーバ３０のハードウェア構成について説明する。サーバ３０は、CPU（Central Processing Unit）３１，入力インタフェース３２，通信インタフェース３３，HDD（Hard Disk Drive）３４，メモリ３５，キーボード３２ａ，及びマウス３２ｂを備える。
【００１４】
CPU３１は、HDD３４に記録されたソフトウェアプログラムを呼び出して実行し、入力インタフェース３２及び通信インタフェース３３から伝達される情報に基づいて制御信号を生成する。ここで生成された制御信号は、例えば、通信インタフェース３３を介してロボット１０に出力される。
【００１５】
入力インタフェース３２には、キーボード３２ａ及びマウス３２ｂが接続される。入力インタフェース３２は、キーボード３２ａ及びマウス３２ｂから入力される電圧信号を数値情報に変換し、CPU３１に伝達する。キーボード３２ａ及びマウス３２ｂは、オペレータが種々の入力を行なうために操作する装置である。なお、マウス３２ｂは、ポインティングデバイスの一例であり、他のポインティングデバイスを使用することもできる。他のポインティングデバイスとしては、タッチパネル，タブレット，タッチパッド，及びトラックボール等が挙げられる。
【００１６】
通信インタフェース３３は、ネットワーク２０に接続される。通信インタフェース３３は、ネットワーク２０を介して、ロボット１０との間でデータの送受信を行なう。
【００１７】
HDD３４は、内蔵したディスクに対して、磁気的にデータの書き込み及び読み出しを行なう。HDD３４は、サーバ３０の補助記憶装置として使用される。HDD３４には、OS（Operating System），アプリケーションプログラム，及び各種データが格納される。なお、補助記憶装置としては、ストレージクラスメモリ（Storage Class Memory）や、フラッシュメモリ等の半導体記憶装置（Solid State Drive）を使用することもできる。また、このHDD３４は、ロボット１０の行動時における環境を示す情報に対応付けて記憶する記憶部に相当する。
【００１８】
メモリ３５はROM（Read Only Memory）及びRAM（Random Access Memory）を含む記憶装置である。メモリ３５のROMには、OSや、本実施形態のロボット制御機能を実現するプログラムやこのプログラム用のデータ類が書き込まれている。メモリ３５上のソフトウェアプログラムは、CPU３１に適宜読み込まれて実行される。また、メモリ３５のRAMは、一次記憶メモリあるいはワーキングメモリとして利用される。
【００１９】
サーバ３０は、例えばコンピュータ読み取り可能な非一時的な記録媒体に記録されたプログラム（ロボット制御プログラム等）を実行することにより、本実施形態のロボット制御機能を実現する。サーバ３０に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、サーバ３０に実行させるプログラムをHDD３４に格納しておくことができる。CPU３１は、HDD３４内のプログラムの少なくとも一部をメモリ３５にロードし、ロードしたプログラムを実行する。
【００２０】
また、サーバ３０（CPU３１）に実行させるプログラムを、図示しない光ディスク，メモリ３５，図示しないメモリカード等の非一時的な可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばCPU３１からの制御により、HDD３４にインストールされた後、実行可能になる。また、CPU３１が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。なお、サーバ３０は、上述の如き物理的に構成されたサーバコンピュータに限定されず、Paas（Platform as a Service）等のクラウドサービスを利用してインターネット等に仮想的に構築されたサーバを用いてもよい。
【００２１】
次に、ロボット１０のハードウェア構成について説明する。ロボット１０は、カメラ２１，センサ２２，マイク２３，GPS（Global Positioning System；全地球測位システム）２７，アクチュエータ２４，スピーカ２５，ディスプレイ２６，及びコントローラ１１を備える。
【００２２】
カメラ２１は、ロボット１０の周囲を撮影する撮像装置である。
【００２３】
センサ２２は、対象の監視や事象の検知等を行なう装置である。また、センサ２２には、赤外線センサ，静電センサ，及び温度センサ等が含まれる。
【００２４】
マイク２３は、音を検出する装置である。
【００２５】
GPS２７は、現在位置を測定するための装置である。
【００２６】
アクチュエータ２４は、ロボット１０を物理的に動作させるために、ロボット１０に駆動や制御を与える装置である。
【００２７】
スピーカ２５は、音を発するための音響装置である。
【００２８】
ディスプレイ２６は、映像信号を表示するための装置である。
【００２９】
上記のカメラ２１，センサ２２，マイク２３，及びGPS２７は、ロボット１０とのコミュニケーションにおける人間からの働きかけをロボット１０が把握するための入力装置である。一方、上記のアクチュエータ２４，スピーカ２５，及びディスプレイ２６は、人間とのコミュニケーションにおけるロボット１０からの働きかけを実現するための出力装置である。また、上記の各種センサ類及びアクチュエータ類は、後述するコントローラ１１により統括制御される。
【００３０】
また、上記のカメラ２１，センサ２２，マイク２３，GPS２７，アクチュエータ２４，スピーカ２５，及びディスプレイ２６は、ロボット１０に内蔵されてもよいし、ロボット１０の外部に設けられてもよい。
【００３１】
コントローラ１１は、CPU１２，センサ入力部１３，通信インタフェース１４，メモリ１５，及び出力部１６を備え、ロボット１０の内部に設けられた図示しないバス（通信ライン）を介して上記の各種センサ類及びアクチュエータ２４と互いに通信可能に接続され、ロボット１０の内部での情報処理全般を統括管理する。
【００３２】
CPU１２は制御装置であり、メモリ１５に記録されたソフトウェアプログラムを呼び出すことで種々の機能を実現する。例えば、CPU１２は、センサ入力部１３及び通信インタフェース１４から伝達される情報に基づいて制御信号を生成する。ここで生成された制御信号は、出力部１６を介して、アクチュエータ２４，スピーカ２５，及びディスプレイ２６に出力される。
【００３３】
センサ入力部１３は、カメラ２１，センサ２２，マイク２３，及びGPS２７から入力される電気信号を数値情報に変換し、CPU１２に伝達するものである。
【００３４】
通信インタフェース１４は、例えば図示しないアンテナ装置等を介してネットワーク２０に接続され、サーバ３０との間でデータの送受信を行なう。通信インタフェース１４は、アンテナ装置等を介して受信した無線信号を数値情報に変換し、CPU１２に伝達する。
【００３５】
メモリ１５はROM及びRAMを含む記憶装置である。メモリ１５のROMには、OSや、人間とのコミュニケーションに係るソフトウェアプログラムやこのプログラム用のデータ類が書き込まれている。メモリ１５上のソフトウェアプログラムは、CPU１２に適宜読み込まれて実行される。また、メモリ１５のRAMは、一次記憶メモリあるいはワーキングメモリとして利用される。
【００３６】
出力部１６には、アクチュエータ２４，スピーカ２５，及びディスプレイ２６が接続される。出力部１６は、アクチュエータ２４，スピーカ２５，及びディスプレイ２６の動作を制御するものであり、CPU１２から伝達された制御信号を、アクチュエータ２４，スピーカ２５，及びディスプレイ２６の駆動用の電圧信号に変換する。
【００３７】
上述したセンサ入力部１３，通信インタフェース１４，及び出力部１６のそれぞれは、CPU１２やメモリ１５が設けられた基板上に設けられたものであってもよいし、独立した基板上に設けられたもの（所謂センサ入力ボードや通信ボード，モータ制御ボード，音声出力ボード等）であってもよい。
【００３８】
なお、ロボット１０は、例えばコンピュータ読み取り可能な非一時的な記録媒体に記録されたプログラムを実行することにより、本実施形態のロボット行動機能を実現する。ロボット１０に実行させる処理内容を記述したプログラムは、様々な記録媒体に記録しておくことができる。例えば、ロボット１０に実行させるプログラムの少なくとも一部をメモリ１５にロードし、ロードしたプログラムを実行する。
【００３９】
また、ロボット１０（CPU１２）に実行させるプログラムを、図示しない光ディスク，メモリ１５，図示しないメモリカード等の非一時的な可搬型記録媒体に記録しておくこともできる。可搬型記録媒体に格納されたプログラムは、例えばCPU１２からの制御により、メモリ１５等にインストールされた後、実行可能になる。また、CPU１２が、可搬型記録媒体から直接プログラムを読み出して実行することもできる。
【００４０】
以上のようなハードウェア構成を有するロボット１０に対して、図３〜図１０を参照しながら後述する本実施形態のロボット制御機能が実現される。なお、本実施形態において、ロボット制御機能を実現させるためのプログラムは、ロボット１０とサーバ３０の双方に備えるものとする。
【００４１】
［２．機能ブロック］
本実施形態に係るロボットシステム１の機能ブロックを図２に例示する。
【００４２】
ロボットシステム１のサーバ３０は、ログ情報作成部６８，イベント情報作成部６１，及びフィルタ情報作成部６９としての機能を備える。また、サーバ３０のHDD３４には、学習情報６２，ユーザプロファイル情報６３，ログ情報６７，イベント情報６５，フィルタ情報６４，話題情報６６，返答評価辞書７０，及び行動評価辞書７１が記憶される。
【００４３】
まず、サーバ３０が備えるログ情報作成部６８について説明する。ログ情報作成部６８は、ロボット１０が動作を開始すると、生データの記録を開始し、記録した生データを後述するログ情報６７に記憶する。
【００４４】
ここで、図３を用いて、ログ情報作成部６８によって生成されるログ情報６７について説明する。
【００４５】
ログ情報６７とは、ロボット１０によるイベント（行動），各イベントの環境情報，及びユーザの反応を含むものである。
【００４６】
環境情報とは、例えば、ロボット１０の周囲の環境（状況）を示す情報であり、例えば、日時情報、位置情報、及び、その場にいる人物構成を含む。
【００４７】
ユーザの反応とは、例えば、ロボット１０の行動に対する、ユーザの返答、行動、及び、感情を表す情報を含む。ユーザの反応は、ロボット１０が行なった行動に対して観察された反応情報に相当する。
【００４８】
ログ情報６７は、具体的には、図３に示すように、位置情報６７１，音声データ６７２，映像データ６７３，センサデータ６７４，及び日時情報６７５を記憶する。これらの情報は、テーブル形式でデータベースのような記憶装置に格納されてもよい。
【００４９】
位置情報６７１は、当該イベントが発生した場所に関する情報であり、例えば、ロボット１０のGPS２７によって取得される位置情報である。
【００５０】
音声データ６７２は、ロボット１０と人間との間の会話内容であり、例えば、ロボット１０のマイク２３によって取得される音声データである。
【００５１】
映像データ６７３は、人間を映す映像データであり、例えば、ロボット１０のカメラ２１によって取得される映像データである。
【００５２】
センサデータ６７４は、センサによって取得される各種データであり、例えば、ロボット１０のセンサ２２によって取得されるデータである。このセンサデータは、後述する、人物構成を判定するためにも用いられる。人物構成の判定の精度を向上させるために、種々のセンサを組み合わせて用いてもよい。
【００５３】
日時情報６７５は、当該イベントが発生した日付及び時刻に関する情報であり、位置情報６７１，音声データ６７２，映像データ６７３，又はセンサデータ６７４に付与されるものであってよい。
【００５４】
ロボット１０が動作を開始すると、ログ情報作成部６８により、ロボット１０と人間とのコミュニケーションに関する環境情報等がログ情報６７として記録される。ログ情報６７は、ロボット１０の行動に対する人間の反応を記録したものであるので、人間が不快に感じたコミュニケーションに関する情報も含まれる。
【００５５】
また、ログ情報作成部６８は、ロボット１０に上記の各情報を収集させてもよく、又、ロボット１０が自律的に収集した各情報を受信してもよい。
【００５６】
続いて、図２に示すロボットシステム１の機能ブロック図の説明に戻り、ロボットシステム１のサーバ３０が備えるイベント情報作成部６１について説明する。
【００５７】
イベント情報作成部６１は、ログ情報６７から情報を抽出して、後述するイベント情報６５を作成する。すなわち、イベント情報作成部６１は、ログ情報６７から、イベント毎（発話や動作毎）にログ情報を切り出して、イベント情報６５を生成する。イベント情報６５は、テーブル形式でデータベース等の記憶装置に格納されてもよい。
【００５８】
ここで、図４を用いて、イベント情報作成部６１によって作成されるイベント情報６５について説明する。
【００５９】
図４に例示するイベント情報６５は、イベント毎に、イベントID６５１，ユーザID６５２，発生日時６５３，発生場所６５４，対話内容６５５，発生環境６５６，及び映像データ６５７を有する。ここでは、一例として、イベント毎にイベントテーブルが作成され、各イベントテーブルは、イベント情報６５を構成する上記情報を記憶するための各フィールドを有するものとする。
【００６０】
イベントID６５１は、そのイベントを一意に特定するためのID（Identification）である。図４に示す例では、イベントIDが「Robo235-iawajp」であることを示している。
【００６１】
ユーザID６５２は、ロボット１０と対話を行った人物を識別するためのIDであり、後述する人物構成６５６１の一部を含む。図４に示す例では、ユーザIDが「RoboUser」であることを示している。
【００６２】
発生日時６５３は、当該イベントが開始された日時である。図４に示す例では、当該イベントの発生日時は、「２０１６年１１月２５日６時４０分４３秒」であることを示している。
【００６３】
発生場所６５４は、当該イベントが発生した場所に関する情報であり、例えば、ロボット１０のGPS２７によって取得された位置情報である。ここでは、イベントの発生場所を公私それぞれに最大２箇所まで登録できるようにしたが、それ以上又はそれ以下としてもよい。図４に示す例では、当該イベントの発生場所は、「会社」，「子供の学校」，「自宅」，及び「スポーツジム」であることを示している。また、各発生場所の前に、「私」と記載しているものは、プライベートな発生場所を示しており、各発生場所の前に、「公」と記載しているものは、プライベートではない公開可能な発生場所を示している。
【００６４】
対話内容６５５は、ロボット１０のマイク２３によって取得された、ロボット１０とユーザの会話の内容である。図４に示す例では、会話１〜４がロボット１０とユーザの会話の内容を示している。また、対話内容の前に、「Ｒ」と記載しているものは、ロボット１０によって行なわれた会話を示しており、各対話内容の前に、「Ｕ」と記載しているものは、ユーザによって行なわれた会話を示している。対話内容６５５は、音声データであってもよく、又、音声データを解析して作成されたテキスト等のデータであってもよい。
【００６５】
発生環境６５６は、当該イベントが発生したときの環境を示す情報である。例えば、発生環境６５６として、人物構成６５６１，音量レベル６５６２，及び音程６５６３が記憶される。
【００６６】
人物構成６５６１は、当該イベントに参加した人物の構成情報である。ロボット１０の後述する環境認識部５２が、当該イベントに参加している人物、すなわち、その場にいる人物を識別し、これら人物を識別するための情報（ID）を生成する。イベント情報作成部６１は、ロボット１０から送信されるこれらの情報を人物構成６５６１として記憶する。
【００６７】
音量レベル６５６２は、ロボット１０と人間との会話における、人間の声の音量レベルを記憶するものである。
【００６８】
音程６５６３は、ロボット１０と人間との会話における、人間の声のピッチ（音程）を記憶するものである。
【００６９】
音量レベル６５６２，音程６５６３も、ロボット１０において生成され、サーバ３０に送信される。イベント情報作成部６１は、ロボット１０から送信されるこれらの情報を音量レベル６５６２，音程６５６３として記憶する。音量レベル６５６２及び音程６５６３は、後述するロボット１０の音声認識部５６におけるユーザの感情の判定に用いられる。
【００７０】
映像データ６５７は、ロボット１０のカメラ２１によって取得された、当該イベントの映像データ６７３であり、ログ情報作成部６８によってログ情報６７に記憶される。イベント情報作成部６１は、当該映像データ６７３をイベント情報６５の映像データ６５７に記憶してもよいし、映像データ６７３へのポインタをイベント情報６５の映像データ６５７に記憶してもよい。
【００７１】
次に、上記のような情報を備えるイベント情報６５（図４）の具体的な作成手順を説明する。
【００７２】
イベント情報作成部６１は、HDD３４のログ情報６７から、イベント情報６５を作成するために必要な情報を抽出する。すなわち、イベント情報作成部６１は、HDD３４のログ情報６７から、イベント毎（発話や動作毎）にログ情報を切り出して、イベント情報を生成する。ここでは、１つのイベントにつき１つのイベントテーブルを作成し、イベント情報６５に格納する場合を例にとり説明する。
【００７３】
イベント情報作成部６１は、各イベントに対してイベントIDを付与し、当該イベントテーブルのイベントID６５１に記憶する。
【００７４】
イベント情報作成部６１は、ロボットと対話した人物を識別するための情報（ユーザID）をイベント情報６５のユーザID６５２に記憶する。ロボットと対話した人物を特定するための手法については公知であるため、ここではその説明を省略する。
【００７５】
イベント情報作成部６１は、HDD３４のログ情報６７に含まれる当該イベントの発生日時を取得し、イベント情報６５の発生日時６５３に記憶する。
【００７６】
イベント情報作成部６１は、HDD３４のログ情報６７に含まれる当該イベントの位置情報６７１を取得し、イベント情報６５の発生場所６５４に記憶する。
【００７７】
イベント情報作成部６１は、HDD３４のログ情報６７に含まれる音声データ６７２を取得し、ロボット１０の発話内容と、ユーザの発話内容とを抽出し、イベント情報６５の対話内容６５５に記憶する。発話が複数回行なわれる場合には、個々の発話内容を抽出して記憶する。
【００７８】
イベント情報作成部６１は、HDD３４のログ情報６７に含まれるセンサデータ６７４や、環境認識部５２を介して取得する人物構成を、イベント情報６５の人物構成６５６１として登録する。
【００７９】
イベント情報作成部６１は、音声認識部５６が抽出した人間の声の音量レベルを、イベント情報６５の音量レベル６５６２に記憶する。
【００８０】
イベント情報作成部６１は、音声認識部５６が抽出した人間の声のピッチ（音程）を、イベント情報６５の音程６５６３に記憶する。
【００８１】
イベント情報作成部６１は、HDD３４のログ情報６７に含まれる映像データ６７３を取得し、イベント情報６５の映像データ６５７に記憶してもよいし、映像データ６７３へのポインタをイベント情報６５の映像データ６５７に記憶してもよい。
【００８２】
そして、上記処理を経て、図４に例示するイベント情報６５が作成される。作成されたイベント情報６５は、後述するロボット制御に用いられるフィルタ情報６４を作成するために用いられる。
【００８３】
続いて、図２に示すロボットシステム１の機能ブロック図の説明に戻り、ロボットシステム１のサーバ３０が備えるフィルタ情報作成部６９について説明する。
【００８４】
フィルタ情報作成部６９は、イベント情報６５から、イベントID６５１，発生場所６５４，人物構成６５６１，対話内容６５５，音量レベル６５６２，音程６５６３，及び映像データ６５７を抽出し、フィルタ情報６４を作成する。フィルタ情報作成部６９は、制御ポリシーを作成する制御ポリシー作成部に相当する。
【００８５】
ここで、図５を用いて、フィルタ情報作成部６９によって作成されるフィルタ情報６４について説明する。ロボット１０は、後述する行動の抑止や許可にフィルタ情報６４を用いる。
【００８６】
ここでは、フィルタ情報６４は、図５に示すように、テーブル形式で格納されてもよく、その場合、フィルタ情報６４は、複数のフィルタテーブル６４１を備える。フィルタ情報６４は、制御ポリシーに相当する。また、フィルタ情報６４は、環境情報に対応付けられたロボットの行動と人物の行動との組みに相当する。
【００８７】
図５に例示するフィルタテーブル６４１は、イベントID６４１１，発生場所６４１２，人物構成６４１３，対話テーマ６４１４，対話キーワード６４１５，ユーザ感情６４１６，及び適正度６４１７の各フィールドを有する。
【００８８】
イベントID６４１１は、イベントを一意に特定するためのIDである。図５に示す例では、イベントIDが「Robo235-iawajp」であることを示している。
【００８９】
発生場所６４１２は、当該イベントが発生した場所に関する情報であり、例えば、ロボット１０のGPS２７によって取得された位置情報である。図５に示す例では、発生場所６４１２が「自宅」であることを示している。
【００９０】
人物構成６４１３は、当該イベントに参加した人物の構成情報である。人物構成６４１３は、例えば、ロボット１０のセンサ２２によって取得されたセンサデータ６７４から抽出されるものであってもよく、又、ネットワーク２０を介して各人物が所有する携帯電話等の識別子に基づいて取得されるものであってもよい。図５に示す例では、人物構成６４１３が「本人」と「友人Ａ」であることを示している。
【００９１】
対話テーマ６４１４は、ロボット１０と人間との間で行なわれた会話のテーマ（カテゴリ）であり、例えば、イベント情報６５の対話内容６５５から公知の手法を用いて抽出される。図５に示す例では、対話テーマ６４１４が「予定」であることを示している。
【００９２】
対話キーワード６４１５は、ロボット１０と人間との間で行なわれた会話に含まれるキーワードであり、例えば、イベント情報６５の対話内容６５５から公知の手法を用いて抽出される。図５に示す例では、対話キーワード６４１５が「予定」、「明日」、「午後」、及び「会社」であることを示している。
【００９３】
ユーザ感情６４１６は、人間の感情をカテゴリに分けて表現したものであり、例えば、イベント情報６５の音量レベル６５６２，音程６５６３，映像データ６５７から公知の手法を用いて取得される。ユーザ感情６４１６とは、喜怒哀楽のうちのどれに該当するかを示すものであってもよい。その場合、例えば、人間の感情が怒りの場合、ユーザ感情６４１６に「怒」を記憶する。また、ユーザ感情６４１６は、喜怒哀楽のそれぞれ（「喜」，「怒」，「哀」，及び「楽」）に対して、所定の数値を記憶するものであってもよい。図５に示す例では、ユーザ感情６４１６が「怒」であることを示している。
【００９４】
適正度６４１７は、行動（発話）をどの程度許可するか、又は、行動をどの程度抑止するかを示す情報である。適正度６４１７は、ロボット１０が行なった行動に対する反応に基づいて設定された適正度情報に相当する。本実施形態では、適正度６４１７を「１」〜「５」の５段階で表現し、「１」であれば発話を抑止し、「５」であれば発話を許可するものとしたが、適正度６４１７を、「０」又は「１」の二値で表現し、「０」であれば発話を抑止し、「１」であれば発話を許可する等としてもよい。図５に示す例では、適正度６４１７が「１」であることを示している。
【００９５】
次に、上記のような情報を備えるフィルタ情報６４（フィルタテーブル６４１；図５）の具体的な作成手順を説明する。
【００９６】
ここでは、一例として、フィルタ情報作成部６９は、HDD３４のイベント情報６５から、イベントID６５１，発生場所６５４，人物構成６５６１，対話内容６５５，音量レベル６５６２，音程６５６３，及び映像データ６５７を抽出し、これらの情報に基づき、フィルタ情報６４を生成する場合を説明する。このフィルタ情報６４はテーブル形式で構成されるものとする。また、ロボット１０は、後述する行動の抑止や許可に、フィルタ情報６４を用いる。
【００９７】
フィルタ情報作成部６９は、イベント情報６５に格納されるイベントID６５１を取得し、フィルタテーブル６４１のイベントID６４１１に記憶する。
【００９８】
フィルタ情報作成部６９は、イベント情報６５に格納される発生場所６５４を取得し、発生場所６４１２に記憶する。
【００９９】
フィルタ情報作成部６９は、イベント情報６５に格納される人物構成６５６１を取得し、人物構成６４１３に記憶する。
【０１００】
フィルタ情報作成部６９は、イベント情報６５に格納される対話内容６５５を取得し、対話テーマを抽出して、対話テーマ６４１４に記憶する。なお、対話テーマを抽出するための手法については公知であるため、ここではその説明を省略する。
【０１０１】
フィルタ情報作成部６９は、イベント情報６５に格納される対話内容６５５を取得し、対話キーワードを抽出して、対話キーワード６４１５に記憶する。なお、対話キーワードを抽出するための手法については公知であるため、ここではその説明を省略する。
【０１０２】
フィルタ情報作成部６９は、イベント情報６５の音量レベル６５６２及び音程６５６３を取得し、ユーザの感情を判定して、ユーザ感情６４１６に記憶する。音声からから人間の感情を判定したり、喜怒哀楽の各感情に対して数値化を行なうための手法については公知であるため、ここではその説明を省略する。また、フィルタ情報作成部６９は、イベント情報６５の映像データ６５７、又は、イベント情報６５の当該映像データ６７３に格納される映像データを取得して解析し、ユーザの感情を判定してもよい。画像に基づき人間の感情を解析し、喜怒哀楽の各感情に対して数値化を行なうための手法については公知であるため、ここではその説明を省略する。
【０１０３】
フィルタ情報作成部６９は、返答評価辞書７０，及び行動評価辞書７１に基づき適正度６４１７を設定する。フィルタ情報作成部６９における適正度６４１７の設定処理について以下に具体的に説明する。
【０１０４】
適正度６４１７を設定するにあたり、フィルタ情報作成部６９は、ロボット１０の発話に対するユーザの返答内容（リアクションとしての発話）、ユーザの行動（リアクションとしての行動）、ユーザの表情（リアクションとしての表情）、及びユーザの音声（リアクションとしての音声）をそれぞれ評価する。
【０１０５】
図６（Ａ）は、実施形態の一例としてのロボットシステム１における返答評価辞書７０を示す図であり、図６（Ｂ）は実施形態の一例としてのロボットシステム１における行動評価辞書７１を示す図である。図６（Ａ）及び図６（Ｂ）には、テーブル形式で構成されている返答評価辞書７０及び行動評価辞書７１をそれぞれ例示する。
【０１０６】
本実施形態では、図６（Ａ）に示す返答評価辞書７０を用いて、ユーザの返答内容（リアクションとしての発話）を評価し、ユーザの返答評価値を算出する。これにより、ユーザの返答内容が、ユーザが不快と感じたことを表現するものであった（ネガティブ）か、あるいは、ユーザが不快ではないと感じたことを表現するものであった（ポジティブ）かを評価する。
【０１０７】
ロボット１０の発話に対して、ユーザからの返答があると、ユーザからの返答内容に基づき、ユーザがどの程度不快と感じたかを評価するために、音声認識部５６によって、ログ情報６７に含まれる音声データ６７２の中から、ロボット１０の発話に対するユーザの発話が切り出され、切り出されたユーザの発話（音声データ）に含まれるキーワードが抽出されるものとする。
【０１０８】
ここでは、ロボット１０が、周囲の環境（状況）に不適切な話題を提示し、この提示した話題に対して、ユーザが怒った顔をして、ロボット１０の頭をたたき、大きな怒った声で「黙れ」と発話したシナリオを例にとる。
【０１０９】
音声認識部５６によって、ログ情報６７に含まれる音声データ６７２から、公知の手法を用いて、ユーザの返答内容である「黙れ」が切り出されるものとする。そして、この返答内容から、公知の手法が用いられ、返答のキーワードである「黙れ」が抽出される。
【０１１０】
そして、適正度判定部５４によって、返答のキーワード（「黙れ」）が返答評価辞書７０に登録されているかどうかが検索される。
【０１１１】
図６（Ａ）に示す返答評価辞書７０は、人間の返答内容７０２と返答評価値７０３との対応関係を示すものである。
【０１１２】
ここで、返答評価辞書７０は、返答ＩＤ７０１，返答内容７０２，及び返答評価値７０３の各フィールドを有する。
【０１１３】
返答ＩＤ７０１は、返答内容７０２と返答評価値７０３との関係を特定するもので、１つの返答内容７０２につき、１つの返答ＩＤ７０１が付与されるものとする。
【０１１４】
返答内容７０２は、ロボット１０の発話に対して、ユーザが返答した内容に関する情報を記憶する。ここでは、返答内容７０２として、ユーザが返答した内容に含まれるキーワードを記憶するものとする。返答内容７０２には、好ましくは、一般的な返答に含まれる複数のキーワードを予め記憶しておき、必要に応じて更新するものとする。ここでは、図６（Ａ）に示すように、返答内容７０２として、「黙れ」，「ありがとう」が登録されているものとする。
【０１１５】
返答評価値７０３は、返答内容７０２に対する評価値を記憶する。ここで、評価値とは、ロボット１０の発話に対しユーザが返答した内容が、否定的な要素を含んでいる度合い、すなわち、ロボット１０の発話に対して不快であると感じた度合いを表すものとし、一例として、返答評価値７０３を、「０」〜「１」の値で表現する。すなわち、返答評価値７０３が「１」に近ければ近いほど、ユーザは不快に感じたと評価するものとし、返答評価値７０３が「０」に近ければ近いほど、ユーザは不快に感じなかったと評価するものとする。図６（Ａ）の例では、返答内容７０２が「黙れ」であった場合に返答評価値７０３を「０．８」とし、返答内容７０２が「ありがとう」であった場合に返答評価値７０３を「０」とすることを示す。
【０１１６】
また、返答評価値７０３は、予め種々のキーワードに返答評価値７０３を対応付けた参照情報を用意しておき、この参照情報に基づいて設定されてもよい。また、返答評価値７０３は、ユーザやシステム管理者によって任意に設定されてもよい。
【０１１７】
上記シナリオを例にとると、上記のような返答評価辞書７０の返答内容７０２に「黙れ」が登録されているかどうかが適正度判定部５４によって検索される。
【０１１８】
そして、返答評価辞書７０の返答ＩＤ＝１に、返答内容７０２が「黙れ」である情報が登録されていることから、返答内容７０２が「黙れ」である場合の返答評価値７０３「０．８」が適正度判定部５４によって取得される。
【０１１９】
次に、本実施形態では、図６（Ｂ）に示す行動評価辞書７１を用いて、ユーザの行動内容を評価し、ユーザの行動評価値を算出する。これにより、ユーザの行動内容が、ネガティブ（ユーザが不快と感じたことを表現するものであった）か、あるいは、ポジティブ（ユーザが不快ではないと感じたことを表現するものであった）かが評価される。
【０１２０】
ユーザの行動内容に基づき、ユーザがどの程度不快と感じたかを評価するために、行動認識部５３によって、ログ情報６７に含まれる映像データ６７３の中から、ロボット１０の発話に対するユーザの行動（リアクションとしての行動）が切り出され、切り出されたユーザの行動（映像データ）から行動が特定されるものとする。
【０１２１】
上記シナリオを例にとると、ロボット１０が提示した話題に対して、ユーザがロボット１０の頭をたたいたことに関して、ログ情報６７に含まれる映像データ６７３より、行動認識部５３によって、公知の手法が用いられ、ロボット１０の発話に対するユーザの行動内容が切り出され、ユーザの行動が「頭をたたく」ことであることが特定される。
【０１２２】
そして、適正度判定部５４によって、このユーザの行動が行動評価辞書７１に登録されているかどうかが検索される。
【０１２３】
図６（Ｂ）に示す行動評価辞書７１は、人間の行動内容７１２と行動評価値７１３との対応関係を示すものである。
【０１２４】
行動評価辞書７１は、行動ＩＤ７１１，行動内容７１２，及び行動評価値７１３の各フィールドを有する。
【０１２５】
行動ＩＤ７１１は、人間の行動内容７１２と行動評価値７１３との対応関係を特定するもので、１つの行動内容７１２につき、１つの行動ＩＤ７１１が付与されるものとする。
【０１２６】
行動内容７１２は、ロボット１０の発話に対して、ユーザが行なった行動（リアクションとしての行動）に関する情報を記憶する。行動評価辞書７１の行動内容７１２には、好ましくは、一般的な行動（リアクションとしての行動）を予め記憶しておき、必要に応じて更新するものとする。ここでは、図６（Ｂ）に示すように、行動内容７１２として、「頭をたたく」，「頭をなでる」が登録されているものとする。
【０１２７】
行動評価値７１３は、行動内容７１２に対する評価値を記憶する。ここでも、上述したように、評価値とは、ロボット１０の発話に対しユーザが返答した内容が、否定的な要素を含んでいる度合い、すなわち、ロボット１０の発話に対して不快であると感じた度合いを表すものとし、一例として、行動評価値７１３を、「０」〜「１」の値で表現する。すなわち、行動評価値７１３が「１」に近ければ近いほど、ユーザは不快に感じたと評価するものとし、行動評価値７１３が「０」に近ければ近いほど、ユーザは不快に感じなかったと評価するものとする。図６（Ｂ）の例では、行動内容７１２が「頭をたたく」であった場合に行動評価値７１３を「０．８」とし、行動内容７１２が「頭をなでる」であった場合に行動評価値７１３を「０」とすることを示している。
【０１２８】
また、行動評価値７１３は、予め種々の行動に行動評価値７１３を対応付けた参照情報を用意しておき、この参照情報に基づいて設定されてもよい。また、行動評価値７１３は、ユーザやシステム管理者によって任意に設定されてもよい。
【０１２９】
上記シナリオを例にとると、行動評価辞書７１に、上記シナリオにおけるユーザの行動、すなわち、「頭をたたく」ことが登録されているかが、適正度判定部５４によって検索される。
【０１３０】
そして、行動評価辞書７１の行動ＩＤ＝１に、「頭をたたく」ことが登録されていることから、この行動内容に対する返答評価値７０３「０．８」が適正度判定部５４によって取得される。
【０１３１】
続いて、ユーザの返答としての、ユーザの表情（リアクションとしての表情）、及び、ユーザの音声（リアクションとしての音声）を評価し、感情値を算出する。
【０１３２】
表情認識部５５によって、ロボット１０の発話に対するユーザの表情（リアクションとしての表情）が評価されると共に，音声認識部５６によってユーザの音声（リアクションとしての音声）が評価される。ここでは、ユーザの表情，及びユーザの音声を評価するために、ロボット１０の発話に対するユーザの表情が含まれる映像データ６７３、及び、ロボット１０の発話に対するユーザの音声から取得された音量レベル及び音程が用いられる。ここでは、公知の手法が用いられ、ユーザの表情、及び、ユーザの音声が解析され、ユーザの感情である喜怒哀楽の各感情がどの程度のものであるかが判定される。具体的には、「喜」，「怒」，「哀」，及び「楽」のそれぞれに対して、「０」〜「１」の値をもつ感情値が割り当てられ、感情値が「１」に近ければ近いほど、ユーザは不快に感じたと評価するものとし、感情値が「０」に近ければ近いほど、ユーザは不快に感じなかったと評価するものとする。
【０１３３】
本実施形態では、表情認識部５５及び音声認識部５６によって、「喜」，「怒」，「哀」，及び「楽」のうち、ポジティブな（不快ではないことを示す）感情である、「喜」及び「楽」の感情値が算出される。
【０１３４】
上記シナリオでは、ユーザの表情及びユーザの音声から公知の手法を用いて、ロボット１０の発話に対するユーザのポジティブな感情値（「喜」及び「楽」の各感情値）が算出される。上記シナリオでは、ユーザの「怒った顔」（表情）や、ユーザの「大きな怒った声」（音声）から、公知の手法が用いられ、「喜」及び「楽」の各感情値が取得される。ここでは、「喜」の感情値として「０．２」が取得され、「楽」の感情値として「０．２」が取得されるものとする。
【０１３５】
続いて、表情認識部５５及び音声認識部５６によって、「喜」，「怒」，「哀」，及び「楽」のうち、ネガティブな（不快であることを示す）感情である、「怒」及び「哀」の感情値が算出される。
【０１３６】
上記シナリオでは、ユーザの表情及びユーザの音声から公知の手法を用いて、ロボット１０の発話に対するユーザのネガティブな感情値（「怒」及び「哀」の各感情値）が算出される。上記シナリオでは、ユーザの「怒った顔」（表情）や、ユーザの「大きな怒った声」（音声）から、公知の手法が用いられ、「怒」及び「哀」の各感情値が取得される。ここでは、「怒」の感情値として「０．８」が取得され、「哀」の感情値として「０．８」が取得される。
【０１３７】
続いて、返答評価値７０３、行動評価値７１３、ポジティブな感情値（「喜」及び「楽」の感情値）の平均値、及び、ネガティブな感情値（「怒」及び「哀」の感情値）の平均値を用いて、適正度判定部５４によって、ユーザの感情全体（総合感情値）として、ネガティブな（不快であることを示す）度合いがどの程度であるかが算出される。
【０１３８】
なお、「喜」及び「楽」の感情値（の平均値）はポジティブな感情を示す度合いであることから、上記総合感情値（ネガティブな感情を示す度合い）を求める演算においては、「喜」及び「楽」の感情値（の平均値）は「１」から減算したものを用いるものとする。
【０１３９】
本実施形態では、算出された評価値及び感情値を用いて総合感情値が算出される。上記シナリオでは、返答評価値７０３である「０．８」、返答評価値７０３である「０．８」、「喜」及び「楽」の感情値の平均値である「０．２」、及び、「怒」及び「哀」の感情値の平均値である「０．８」を用いて、ユーザの感情全体（総合感情値）として、ネガティブな（不快であることを示す）度合いがどの程度であるかが算出される。上述したとおり、「喜」及び「楽」の感情値の平均値については、「１」から減算した値を用いる。これは、「喜」及び「楽」の感情値が、ポジティブな感情を示すものであるのに対し、総合感情値、及び、総合感情値の演算においては、ネガティブな感情の度合いを求めるからである。すなわち、上記シナリオでは、返答評価値７０３の値「０．８」、返答評価値７０３の値「０．８」、「喜」及び「楽」の感情値の平均値「０．２」を「１」から減算した値「０．８」、及び、「怒」及び「哀」の感情値の平均値「０．８」が乗算され、乗算された値である「０．４１」が総合感情値となる。
【０１４０】
このように、ユーザの返答内容、ユーザの行動内容、及び、ユーザの表情や音声のいずれに対してもネガティブな評価値及び感情値を乗算することにより、総合感情値が算出される。
【０１４１】
続いて、適正度判定部５４において、上記総合感情値は天井関数（ceil(5＊総合感情値)）を用いて正規化（標準化）され、この正規化された値が適正度として求められる。本実施形態では、適正度は、１〜５の値に正規化されるものとする。すなわち、ここで算出された適正度は、ロボット１０に対するユーザの反応がどの程度ネガティブなものかを示すものといえる。ここで算出された適正度は、図５に示すフィルタテーブル６４１の適正度６４１７に記憶される。
【０１４２】
上記シナリオでは、総合感情値「０．４１」に対して天井関数を用いた値である「２」が、適正度として算出される。
【０１４３】
そして、上記シナリオがフィルタ情報６４のフィルタテーブル６４１に登録されるときに、上記算出された適正度（「２」）が、当該フィルタテーブル６４１の適正度６４１７に記憶される。
【０１４４】
このような処理を経て、フィルタ情報作成部６９において、適正度６４１７が設定され、当該適正度６４１７を有するフィルタ情報６４（フィルタテーブル６４１）が作成される。
【０１４５】
このようにして作成されたフィルタ情報６４は、後述するロボット制御に用いられる。また、フィルタ情報作成部６９において、ロボット１０と人間の各コミュニケーションに関して上記適正度６４１７を記憶しておくことにより、過去と同じ場面が発生した場合に、ロボット１０がこれからおこそうとする行動を制御することができる。ロボット１０がこれからおこそうとする行動は、ロボット１０が実行を予定する予定行動に相当する。
【０１４６】
例として、図５に示すフィルタテーブル６４１は、私（本人）の自宅に、私と友人Ａとが一緒にいたときに、会社での明日の予定をロボット１０が話したら、自分又は友人Ａが怒った反応を示したため、適正度を１と設定していることを表している。フィルタテーブル６４１は、以後同じような環境が発生した場合に、ロボット１０が同様の話題の提示を抑止することを可能とするものである。
【０１４７】
続いて、図２に示すHDD３４に記憶される、学習情報６２，ユーザプロファイル情報６３，話題情報６６，返答評価辞書７０，及び行動評価辞書７１について説明する。
【０１４８】
話題情報６６は、ロボット１０が提示する話題を記憶する。ここでは、後述するロボット１０の話題決定部５０において、話題情報６６に記憶する話題の中から、ロボット１０によってユーザに提供される話題が自律的に決定される。
【０１４９】
ユーザプロファイル情報６３は、ユーザの属する組織や過去の行動履歴等をもとにユーザに関する情報をユーザ毎に分析したものである。例えば、ユーザプロファイル情報６３は、嗜好に関する情報、生活エリアに関する情報、及びユーザが属する会社に関する情報等であり、これらの情報はユーザ毎に備えられる。
【０１５０】
学習情報６２は、一般的なロボットが備える情報であり、過去の経験等から機械学習等のアルゴリズムを用いて取得した情報である。
【０１５１】
返答評価辞書７０は、図６（Ａ）に例示した返答評価辞書７０であり、例えば、テーブル形式で構成されてもよい。
【０１５２】
行動評価辞書７１は、図６（Ｂ）に例示した行動評価辞書７１であり、例えば、テーブル形式で構成されてもよい。
【０１５３】
続いて、図２に示すロボットシステム１のロボット１０のブロック図について説明する。
【０１５４】
ロボット１０のコントローラ１１は、話題決定部５０，環境認識部５２，音声認識部５６，行動認識部５３，表情認識部５５，適正度判定部５４，適正動作判定部５１，反応認識部５９，感情表現部５７，及び発話表現部５８としての機能を備える。また、ロボット１０のメモリ１５には、ログ情報５０１が記憶される。
【０１５５】
話題決定部５０は、ロボット１０がユーザに対して提示する話題を決定する。本実施形態では、話題決定部５０が、１つの話題を決定するものとしたが、複数の話題を決定するものとしてもよい。話題決定部５０において話題が決定されることにより、ロボット１０がユーザに対して自律的に話題を提示できる。話題決定部５０は、サーバ３０のHDD３４に記憶される話題情報６６の中から、現在の時刻やHDD３４のユーザプロファイル情報６３に基づき話題を決定する。話題決定部５０は、ユーザプロファイル情報６３に基づき話題を決定する場合、後述する環境認識部５２を介して、例えば、後述する人物構成６５６１を取得し、取得した人物構成６５６１に含まれる人物に関するユーザプロファイル情報６３が登録されていれば、そのユーザプロファイル情報６３に基づき話題を決定してもよい。現在の時刻やユーザプロファイル情報に基づき話題を決定するための手法については公知であるため、ここではその説明を省略する。話題決定部５０は、ロボット１０の予定行動を決定する予定行動決定部に相当する。
【０１５６】
環境認識部５２は、ロボット１０の周囲の環境（状況）に関する情報を取得する。ここでは、環境情報として、その場にいる人物の構成に関する情報と現在の位置情報とを取得する。環境認識部５２は、例えば、センサ２２によって取得されたセンサデータに基づいて人物構成を取得したり、ネットワーク２０を介して、各参加者が所有する携帯電話等の識別子を取得することによって人物構成を取得する。また、環境認識部５２は、例えば、GPS２７によって取得された現在の位置情報を取得する。この環境認識部５２は、ロボット１０の周囲の環境に関する環境情報を取得する取得部に相当する。
【０１５７】
適正動作判定部５１は、環境認識部５２から環境情報を取得し、話題決定部５０において決定された話題が、ロボット１０の周囲の環境（状況）、すなわち、現在位置（現在の場所）及び人物構成にふさわしいかどうかを判定する。そして、適正動作判定部５１は、話題決定部５０において決定された話題がロボット１０の周囲の環境にふさわしくないと判定した場合に、このふさわしくないと判定したロボット１０の行動を抑止する。また、適正動作判定部５１は、予定行動の実行を抑止する抑止制御部に相当する。
【０１５８】
音声認識部５６は、例えば、ロボット１０が備えるログ情報５０１から、ロボット１０の発話に対するユーザの発話を切り出し、例えば、切り出したユーザの発話（音声データ）に含まれるキーワードを抽出して、後述する適正度判定部５４に出力する。音声データから所望の音声を切り出したり、音声データに含まれるキーワードを抽出するための手法（音声認識等）については公知であるため、ここではその説明を省略する。
【０１５９】
また、音声認識部５６は、切り出したユーザの音声データから、その音声が備える音量レベル及び音程を解析する。そして、解析した音量レベル及び音程から、ユーザの感情である喜怒哀楽の各感情がどの程度のものであるかを判定する。
【０１６０】
行動認識部５３は、例えば、ロボット１０が備えるログ情報５０１から、ロボット１０の発話に対するユーザの行動（リアクションとしての行動）を切り出し、切り出したユーザの行動（映像データ）から行動を特定する。映像データから所望の映像を切り出したり、映像データに含まれる行動を特定するための手法（画像認識等）については公知であるため、ここではその説明を省略する。なお、ログ情報５０１に含まれる、ユーザの音声や、センサ２２によって取得されるセンサデータに基づいて行動を特定してもよい。
【０１６１】
表情認識部５５は、例えば、ロボット１０が備えるログ情報５０１から、ロボット１０の発話に対するユーザの表情（リアクションとしての表情）を切り出し、切り出したユーザの表情（映像データ）からユーザの感情を抽出する。
【０１６２】
上記音声認識部５６，行動認識部５３，及び表情認識部５５から出力されるデータは、ロボット１０が自律的に決定して提示した話題に対するユーザの反応を評価するものである。上記音声認識部５６，行動認識部５３，及び表情認識部５５から出力されるデータは、後述する適正度判定部５４に入力され、適正度を算出するために用いられる。
【０１６３】
適正度判定部５４は、音声認識部５６が抽出した音声データに含まれるキーワード、行動認識部５３が特定したユーザの行動、表情認識部５５がユーザの表情に基づき算出した「喜」，「怒」，「哀」，及び「楽」の各感情値（「０」〜「１」）、及び、音声認識部５６がユーザの音声（音量レベル及び音程）に基づき算出した「喜」，「怒」，「哀」，及び「楽」の各感情値（「０」〜「１」）を用いて適正度を算出する。
【０１６４】
本実施形態における適正度とは、ロボット１０が自律的に決定して提示した話題に対して、ユーザの感情全体（総合感情値）として、ネガティブな（不快であると感じる）度合いがどの程度であるかを示す指標である。
【０１６５】
また、適正度判定部５４は、上記音声認識部５６，行動認識部５３，及び表情認識部５５から出力されるデータを用いた所定の演算に基づき総合感情値を算出し、算出した総合感情値に対して天井関数を用いて１〜５の値に正規化し、この正規化した値を適正度として算出する。
【０１６６】
上記音声認識部５６，行動認識部５３，表情認識部５５，及び適正度判定部５４は、ロボット１０と人間とのコミュニケーションが発生した後に機能する。具体的には、上記音声認識部５６，行動認識部５３，表情認識部５５，及び適正度判定部５４は、ロボット１０の行なった行動（提供した話題）に対して、人間が行なった反応を評価して、ロボット１０による行動（ロボットが提示した話題）が、その人間にとって、不快と感じるものであったか、又は、不快と感じないものであったかを評価するために機能する。
【０１６７】
一方、上記話題決定部５０，環境認識部５２，及び適正動作判定部５１は、ロボット１０と人間とのコミュニケーションが発生する前に機能する。すなわち、上記話題決定部５０及び環境認識部５２は、人間とのコミュニケーションのきっかけをつくるべく、ロボット１０が人間に話題を提供するために機能する。そして、適正動作判定部５１は、上記話題決定部５０及び環境認識部５２によって決定されたロボット１０の行動を、適正度に基づき抑止または制御するために機能する。
【０１６８】
ロボット１０が提供した話題に対して、人間が何らかの反応を行なった後（何の反応もない場合は、無反応という反応が行なわれたと判断する）は、以下に説明する、反応認識部５９，感情表現部５７，及び発話表現部５８が機能する。
【０１６９】
反応認識部５９は、上記音声認識部５６，行動認識部５３，及び表情認識部５５から、ロボット１０が提供した話題に対する人間の反応に関する情報を取得し、ユーザが反応したときの感情を「喜」，「怒」，「哀」，及び「楽」の各感情値（０〜１）を用いて算出する。ユーザの音声，行動，及び表情から、感情値を算出するための手法については上述したとおりである。
【０１７０】
また、反応認識部５９は、ユーザの反応に対してロボット１０が行なう複数の行動をルールとして備える。反応認識部５９は、ルールとして、例えば、ユーザの感情のうち「怒」の感情値が「０．８」以上であれば、「ごめんなさいと言っておじぎをする」や、ユーザの感情のうち「喜」の感情値が「０．８」以上であれば、「にっこりする」といった、ユーザの反応に対する、ロボット１０の発話や感情表現を記憶する。
【０１７１】
感情表現部５７は、アクチュエータ２４及びディスプレイ２６を制御するための制御信号を生成して、上記アクチュエータ２４及びディスプレイ２６に出力する。例えば、ロボット１０に、「おじぎをする」という行動を行なわせたい場合には、アクチュエータ２４に対して「おじぎをする」ための動作制御に必要な駆動信号を送る。また、ロボット１０に、「にっこりする」という行動を行なわせたい場合には、ディスプレイ２６に対して「にっこりする」顔を表示させるための表示制御に必要な駆動信号を送る。
【０１７２】
発話表現部５８は、スピーカ２５を制御するための制御信号を生成し、スピーカ２５に出力する。例えば、ロボット１０に、「ごめんなさい」と発話する行動を行なわせたい場合には、スピーカ２５に対して「ごめんなさい」と発話させるための出力制御に必要な駆動信号を送る。
【０１７３】
このように、上記反応認識部５９，感情表現部５７，及び発話表現部５８は、ロボット１０と人間とのコミュニケーションが終わった後、厳密には、ロボット１０の行動に対して人間からの反応を得た後に機能する。したがって、上記反応認識部５９，感情表現部５７，及び発話表現部５８は、人間からの反応を判断し、当該反応に応じて、人間に対して謝ったり感謝したりするようなフォローアップを行なうものとして機能する。
【０１７４】
また、ログ情報５０１は、ロボット１０のカメラ２１，センサ２２，マイク２３，及びGPS２７を介して取得される、人間とロボット１０との間のコミュニケーションや環境情報を記録したものである。ログ情報５０１には、例えば、位置情報，音声データ，映像データ，センサデータ，及び日時情報等が含まれる。このログ情報５０１は、ネットワークを介してサーバ３０に送信され、サーバ３０のHDD３４のログ情報６７として格納されてもよい。
【０１７５】
［３．ログ情報、イベント情報、及び、フィルタ情報の生成処理を示すフローチャート］
実施形態の一例としてのロボットシステム１におけるログ情報６７，イベント情報６５、及び、フィルタ情報６４の生成処理を図７に示すフローチャート（ステップＡ１〜Ａ６）に従って説明する。
【０１７６】
なお、本処理の開始に先立って、ロボット１０の話題決定部５０が、ユーザに対して提示する話題を決定する。
【０１７７】
ステップＡ１において、ロボット１０が行動（行動，発話）を開始する。例えば、発話表現部５８が音声の出力を行なうとともに、感情表現部５７が、発話内容に合わせた動作を行なわせるべく、アクチュエータ２４に対して駆動信号を送信する。また、感情表現部５７は、発話内容に合わせた画像表示を行なわせるべく、ディスプレイ２６に表示制御信号を送信する。
【０１７８】
ステップＡ２において、ロボット１０は、発話に対して行なわれるユーザの反応（リアクション）を収集し、ログ情報５０１に記録する。例えば、マイク２３を用いてユーザの音声が録音され、カメラ２１を用いてユーザの行動が録画される。これらの処理により、ユーザによる返答および行動やユーザの感情が検出される。
【０１７９】
ステップＡ３において、ロボット１０の環境認識部５２が、ロボット１０の周囲の環境（状況）に関する情報を取得する。環境認識部５２は、例えば、マイク２３を用いて周囲の音を録音し、カメラ２１を用いて周囲の映像を録画する。また、GPS２７を用いて、ロボット１０の位置情報を取得したり、センサ２２を用いてロボット１０の周囲の人物構成を取得する。
【０１８０】
これらの処理により、ロボット１０がいる場所や周囲にいる人物等の情報が取得される。また、ロボット１０に備えられる内部時計（図示しない）や取得した画像等に含まれる属性情報等に基づき、時間も取得される。これらの取得された情報は、ログ情報５０１に記録される。
【０１８１】
また、ログ情報５０１は、サーバ３０に送信され、ログ情報６７として保存される。
【０１８２】
ステップＡ４において、ロボット１０は、ログ情報５０１に基づき、テーマやキーワードの抽出を行なう。例えば、音声認識部５６が、ログ情報５０１に含まれる音声データから、ロボット１０の発話に対するユーザの発話を切り出し、例えば、切り出したユーザの発話（音声データ）に含まれるキーワードを抽出する。
【０１８３】
また、行動認識部５３が、ログ情報５０１に含まれる映像データの中から、ロボット１０の発話に対するユーザの行動（リアクションとしての行動）を切り出し、切り出したユーザの行動（映像データ）から行動を特定する。さらに、表情認識部５５が、ログ情報５０１に含まれる映像データの中から、ロボット１０の発話に対するユーザの表情（リアクションとしての表情）を切り出し、切り出したユーザの表情（映像データ）からユーザの感情を抽出する。
【０１８４】
ステップＡ５では、ロボット１０の適正度判定部５４が、ステップＡ１において当該ロボット１０が行なった行動について、ログ情報５０１に基づき適正度を決定する。これにより、当該ロボット１０が行なった行動が適正なものであったかの判定が行なわれる。
【０１８５】
ステップＡ６では、ステップＡ１において当該ロボット１０が行なった行動について、サーバ３０のログ情報作成部６８がログ情報６７を作成し、サーバ３０のイベント情報作成部６１がイベント情報６５を作成し、また、フィルタ情報作成部６９がフィルタ情報６４を作成する。サーバ３０におけるこれらの情報の作成は、ロボット１０から作成指示を送信することにより行なってもよい。また、ロボット１０からログ情報５０１が送付されたことをきっかけにサーバ３０が自律的に開始してもよい。作成されたイベント情報６５やフィルタ情報６４は、サーバ３０においてデータベース等に参照可能な状態で保存される。その後、処理を終了する。
【０１８６】
このように、サーバ３０側のログ情報作成部６８、イベント情報作成部６１、及び、フィルタ情報作成部６９は、ロボット１０が行動をおこした後に機能する。
【０１８７】
また、上記ステップＡ１〜Ａ６の処理は、ロボット１０が行動（イベント）を行なう毎、すなわち、イベントが発生する度に行なわれる。従って、ロボット１０においてイベントが発生する度に、ログ情報５０１，６７、及びイベント情報６５は更新され、それに伴い、適宜フィルタ情報６４も更新される。
【０１８８】
［４．適正度判定部の処理］
次に、実施形態の一例としてのロボットシステム１における適正度判定部５４の処理を、図８に示すフローチャート（ステップＢ１〜Ｂ６）に従って説明する。
【０１８９】
ステップＢ１において、適正度判定部５４は、ロボット１０の行動（発話）に対するユーザの返答内容（リアクションとしての発話）を評価する。具体的には、適正度判定部５４は、返答評価辞書７０を用いて、ユーザの返答評価値（ａ）を算出することにより、ユーザの返答内容を評価する。
【０１９０】
ステップＢ２において、適正度判定部５４は、ユーザによって行なわれた行動が、ネガティブ（ユーザが不快と感じたことを表現するものであった）か、あるいは、ポジティブ（ユーザが不快ではないと感じたことを表現するものであった）かを評価する。適正度判定部５４は、ユーザ行動に対する行動評価値（ｂ）を設定する。
【０１９１】
ステップＢ３において、適正度判定部５４は、ユーザによって行なわれた行動に対してユーザが行なった行動について、ポジティブな感情（「喜」，「楽」）についての検出値を評価（ポジティブ感情評価）する。適正度判定部５４は、「喜」の感情値（ｃ１）、及び、「楽」の感情値（ｃ２）をそれぞれ設定する。
【０１９２】
ステップＢ４において、適正度判定部５４は、ユーザによって行なわれた行動に対してユーザが行なった行動について、ネガティブな感情（「怒」，「哀」）についての検出値を評価（ネガティブ感情評価）する。適正度判定部５４は、「怒」の感情値（ｄ１）、及び、「哀」の感情値（ｄ２）をそれぞれ設定する。
【０１９３】
ステップＢ５において、適正度判定部５４は、上記ステップＢ１〜Ｂ４において設定した、返答評価値（ａ），行動評価値（ｂ），感情値（ｃ１，ｃ２，ｄ１，ｄ２）に基づき、適正度を算出する。
【０１９４】
ステップＢ６において、適正度判定部５４は、ステップＢ５で算出した適正度について正規化を行ない、処理を終了する。
【０１９５】
［５．制御用フローチャート］
次に、実施形態の一例としてのロボットシステム１におけるロボット１０の制御方法を、図９に示すフローチャート（ステップＣ１〜Ｃ１０）に従って説明する。
【０１９６】
ステップＣ１において、ロボット１０は、自身が実行する行動を決定する。例えば、話題決定部５０がユーザに対して提示する話題を１つ決定する。ここでは、一例として、ロボット１０が会社の会議室Ａで提示する話題として「スノーボード」を決定したとする。
【０１９７】
ステップＣ２において、ロボット１０の環境認識部５２が、カメラ２１，センサ２２，マイク２３，及びGPS２７等を用いて、環境情報として人物構成や位置情報を取得する。上述した例では、センサ２２によって、「所長Ａ」，「上司Ｃ」，「本人」，及び「友人Ａ」が人物構成として取得されるものとする。また、GPS２７によって、「会議室Ａ」が位置情報として取得されるものとする。
【０１９８】
ステップＣ３において、適正動作判定部５１が、ステップＣ２で取得した環境情報に基づいてフィルタ情報６４を参照し、当該環境情報に対応するフィルタ情報６４を抽出する。上述した例では、適正度判定部５４により、ステップＣ２において取得される環境情報に基づき、発生場所６４１２が「会議室」又は「会議室Ａ」であるフィルタ情報６４、及び、人物構成６４１３が「所長Ａ」，「上司Ｃ」，「本人」，又は「友人Ａ」であるフィルタ情報６４がすべて抽出される。
【０１９９】
ステップＣ４において、適正動作判定部５１は、ステップＣ３で抽出したフィルタ情報６４のうち、適正度６４１７が所定の閾値（例えば、「３」）より大きいかを判定する。本実施形態では、適正度６４１７が所定の閾値未満のフィルタ情報６４が１つもない場合、ステップＣ５に進むものとする。
【０２００】
一方、ステップＣ４において、適正度６４１７が所定の閾値より大きい場合（ステップＣ４のＴＲＵＥルート参照）、ステップＣ５に移行する。
【０２０１】
ステップＣ５では、適正動作判定部５１がステップＣ１において決定された行動に許可を行ない、ロボット１０は、当該行動を実行する。例えば、本人と友人Ａが（本人の）自宅におり、友人Ａが「スノーボード」を趣味としている場合等には、ロボット１０は「スノーボード」の話題を提示することが許可される場合がある。
【０２０２】
ステップＣ６において、反応認識部５９は、ロボット１０が行なった行動に対するユーザの反応を取得する。そして、適正度判定部５４は、ユーザの反応に基づき、ロボット１０が行なった行動に対する適正度を判定する。
【０２０３】
ステップＣ７において、感情表現部５７及び発話表現部５８が、ステップＣ６において判定された適正度に応じた応答行動を行なう。
【０２０４】
ステップＣ８において、ステップＣ５においてロボット１０が実行した行動が、当該ロボット１０における新規な行動であるかが判定される。すなわち、適正度判定部５４が、ステップＣ５においてロボット１０が実行した行動が、フィルタ情報６４に登録されているか否かを検索する。
【０２０５】
ステップＣ８における確認の結果、ステップＣ５でロボット１０が実行した行動が新規でない場合には（ステップＣ８のＮＯルート参照）、ステップＣ９に移行する。
【０２０６】
ステップＣ９において、適正動作判定部５１は、ステップＣ６で判定された適正度が、フィルタ情報６４における当該行動についての適正度６４１７の値と異なるものであるか、すなわち、変化があるかを確認する。
【０２０７】
ステップＣ６において判定された適正度が、フィルタ情報６４における当該行動についての適正度６４１７の値と一致する場合には（ステップＣ９の“無し”ルート参照）、処理を終了する。例えば、ステップＣ７において実行したロボット１０の行動が、「にっこりする」といったような行動の場合には、ステップＣ５で実行したロボット１０の行動が適切なものであったと判断することができる。このような場合には、フィルタ情報６４の適正度６４１７を更新する必要がないと判断される。
【０２０８】
一方、ステップＣ６において判定された適正度が、フィルタ情報６４における当該行動についての適正度６４１７の値と不一致の場合には（ステップＣ９の“有り”ルート参照）、フィルタ情報を変更（修正）する必要があると判定される。例えば、ステップＣ７において実行したロボット１０の行動が、「謝る」といったような行動の場合には、ステップＣ５で実行したロボット１０の行動が不適切であったということになる。このような場合、適正動作判定部５１によって、フィルタ情報６４（の適正度６４１７）を更新する必要があると判断される。このような場合、続くステップＣ１０において、適正度判定部５４は、ステップＣ６において判定された適正度を用いて、フィルタ情報６４における当該行動についての適正度６４１７の値を更新する。その後、処理を終了する。
【０２０９】
また、ステップＣ８における確認の結果、ステップＣ５においてロボット１０が実行した行動がフィルタ情報６４に登録されていない場合、すなわち、新規の行動である場合にも（ステップＣ８のＹＥＳルート参照）、ステップＣ１０に移行する。そして、続くステップＣ１０において、適正度判定部５４は、ロボット１０によって新たに行なわれた行動をフィルタ情報６４に登録することで、フィルタ情報６４を更新する。その後、処理を終了する。例えば、ステップＣ９において、ステップＣ７で実行したロボット１０の行動が不適切であり、適正動作判定部５１によって、フィルタ情報６４の適正度６４１７を更新する必要があると判断された場合、フィルタ情報６４の適正度６４１７は減算される。なお、減算しても適正度６４１７が所定の閾値よりも大きい場合には、適正度６４１７は所定の閾値よりも小さい値（例えば、「２」）に設定される。これにより、今後同じような環境で同じような話題を提示しようとした場合に、その行動を抑止することが可能となる。
【０２１０】
また、適正度６４１７が所定の閾値未満のものがある場合（ステップＣ４のＦＡＬＳＥルート参照）、処理を終了する。上述した例のように、「所長Ａ」，「上司Ｃ」，「本人」，及び「友人Ａ」が人物構成として取得され、「会議室Ａ」が位置情報として取得された場合、ロボット１０がこれから「スノーボード」の話題を提示しようとした場合、その行動が抑止される。したがって、ロボット１０は、会社の会議室Ａで、且つ、「所長Ａ」，「上司Ｃ」，「本人」，及び「友人Ａ」がいる場合に、「スノーボード」の話題を提示しないこととなる。
［６．実施形態の変形例］
【０２１１】
図９に示したフローチャートにおいては、ステップＣ１においてロボット１０自身が実行する行動を決定しているが、これに限定されるものではない。例えば、ロボット１０が実行する行動を決定するに際して、複数の行動候補を抽出し、フィルタ情報６４を参照することで、より好適な一つの行動を決定してもよい。
【０２１２】
実施形態の変形例としてのロボットシステム１におけるロボット１０の制御方法を、図１０に示すフローチャート（ステップＤ１〜Ｄ４，Ｃ４〜Ｃ１０）に従って説明する。
【０２１３】
なお、図中、既述の符号と同一の符号を付したステップ（Ｃ４〜Ｃ１０）は、同様の処理を示しているので、その説明は省略する。
【０２１４】
ステップＤ１において、ロボット１０は、自身が実行する行動の候補として、複数の行動セットを抽出する。例えば、話題決定部５０がユーザに対して提示する話題として、複数の話題を決定する。
【０２１５】
ステップＤ２において、ロボット１０の環境認識部５２が、カメラ２１，センサ２２，マイク２３，及びGPS２７等を用いて、環境情報を取得する。例えば、環境認識部５２は、人物構成や位置情報を取得する。
【０２１６】
ステップＤ３において、適正動作判定部５１が、ステップＤ１において抽出した各行動セットについて、ステップＤ２で取得した環境情報に基づいてフィルタ情報６４を参照することで、各行動セットについての適正度をそれぞれ取得する。
【０２１７】
ステップＤ４において、適正度判定部５４は、複数の行動セットのそれぞれの適正度を比較し、適正度の値が最も高い行動を優先して処理を行なう。すなわち、適正度判定部５４は、適正度の値が最も高い行動を選択する。
【０２１８】
ステップＣ４以降においては、この適正度の値が最も高い行動について処理を行なう。
【０２１９】
［７．効果］
このように、本実施形態の制御プログラムは、ロボット１０と人間とのコミュニケーションに関する環境情報等をログ情報６７として記録し、ログ情報６７から作成されるフィルタ情報をロボット１０の制御において用いることにより、従来の方法で実現できない、ロボットの周囲の環境に適した話題の提示を可能とする。
【０２２０】
そして、本実施形態の制御プログラムは、ロボット１０と人間とのコミュニケーションに関する過去の情報に基づきロボット１０を制御するため、過去と同じ環境が発生した場合に、ロボット１０の行動を許可又は抑止することができる。
【０２２１】
［８．その他］
なお、上述した実施形態では、行動評価辞書７１と返答評価辞書７０に、人間が不快に感じる場合の行動や返答だけでなく、人間が不快に感じない場合の行動や返答も記憶するものとしたが、人間が不快に感じる場合の行動や返答だけを記憶するものとしたり、人間が不快に感じない場合の行動や返答だけを記憶するものとしてもよい。また、行動評価辞書７１と返答評価辞書７０をそれぞれ複数設けてもよい。
【０２２２】
また、上述した実施形態では、適正度判定部５４の処理（図８）において、ユーザの返答評価値（ａ）、ユーザ行動に対する行動評価値（ｂ）、「喜」及び「楽」の感情値（ｃ１，ｃ２）、及び、「怒」及び「哀」の感情値（ｄ１，ｄ２）に基づき適正度を算出するものとしたが、当該適正度の算出において、上記数値のうち一部を用いてもよいし、又は、他の感情（例えば、「緊張」等）を表す数値を用いてもよい。また、適正度を算出するための演算は、これに限定されるものではない。
【０２２３】
また、上述した実施形態では、ロボット１０が、話題決定部５０において、ユーザに対して提示する話題を自律的に決定するものとしたが、ユーザからロボット１０への問いかけや、ユーザとのロボット１０とのコミュニケーションの内容に基づき、ロボット１０がユーザに提示する話題を決定するものとしてもよい。
【０２２４】
また、上述した実施形態では、図２に示すように、ログ情報作成部６８，イベント情報作成部６１，及びフィルタ情報作成部６９としての機能をサーバ３０に備えるように構成したが、これらの機能の一部又はすべてをロボット１０に備えるように構成してもよい。その場合、サーバ３０は、ロボット１０側のログ情報作成部６８，イベント情報作成部６１，フィルタ情報作成部６９において作成された情報をネットワーク２０を介して取得して、HDD３４に記憶してもよい。
【０２２５】
また、上述した実施形態では、図２に示すように、学習情報６２，ユーザプロファイル情報６３，ログ情報６７，イベント情報６５，フィルタ情報６４，話題情報６６，返答評価辞書７０，及び行動評価辞書７１をサーバ３０のHDD３４に記憶するように構成したが、これらの情報の一部又はすべてをロボット１０に備えるように構成してもよい。その場合、サーバ３０は、ロボット１０側に記憶される上記情報をネットワーク２０を介して取得して、HDD３４に記憶してもよい。
【０２２６】
また、上述した実施形態では、図２に示すように、話題決定部５０，環境認識部５２，音声認識部５６，行動認識部５３，表情認識部５５，適正度判定部５４，適正動作判定部５１，反応認識部５９，感情表現部５７，及び発話表現部５８としての機能をロボット１０に備えるように構成したが、これらの機能の一部又はすべてをサーバ３０に備えるように構成してもよい。その場合、ロボット１０は、サーバ３０側の話題決定部５０，環境認識部５２，音声認識部５６，行動認識部５３，表情認識部５５，適正度判定部５４，適正動作判定部５１，反応認識部５９，感情表現部５７，発話表現部５８において作成された情報をネットワーク２０を介して取得して、メモリ１５や図示しないHDDに記憶してもよい。
【０２２７】
また、上述した実施形態では、図２に示すように、ログ情報５０１をロボット１０のメモリ１５に記憶するように構成したが、ログ情報５０１の情報の一部又はすべてをサーバ３０のHDD３４に記憶するように構成してもよい。その場合、ロボット１０は、サーバ３０側に記憶されるログ情報５０１をネットワーク２０を介して取得して、メモリ１５に記憶してもよい。
【０２２８】
［９．付記］
（付記１）
ロボット装置の処理装置に、
当該ロボット装置の周囲の環境に関する環境情報を取得し、
前記環境情報に基づいて、当該ロボット装置の行動に関する行動情報および環境情報に、当該ロボット装置が行なった行動に対する反応に基づいて設定された適正度情報を対応付けた制御ポリシーを参照して、当該ロボット装置が実行を予定する予定行動についての適正度情報が閾値を超える場合に、前記ロボット装置による前記予定行動の実行を抑止する
処理を実行させる、制御プログラム。
【０２２９】
（付記２）
前記予定行動を決定する
処理を、前記処理装置に実行させる、付記１記載の制御プログラム。
【０２３０】
（付記３）
当該ロボット装置が行なった行動を示す情報および当該行動に対して観察された反応情報を含むログ情報に基づいて前記制御ポリシーを作成する制御ポリシー作成部
を備えることを特徴とする、付記１または２記載の制御プログラム。
【０２３１】
（付記４）
環境を示す情報を受け付け、
ロボットの行動を識別する情報と、前記ロボットの行動に対する人物の行動を識別する情報とを、前記ロボットの行動時における環境を示す情報に対応付けて記憶する記憶部を参照して、受け付けた前記環境を示す情報に対応付けられたロボットの行動と人物の行動との組みを特定し、
特定した前記組みのうち、人物の行動が特定の種別である組みに含まれるロボットの行動の実行を抑止する
処理をコンピュータに実行させることを特徴とする制御プログラム。
【０２３２】
（付記５）
ロボット装置であって、
当該ロボット装置の周囲の環境に関する環境情報を取得する取得部と、
前記環境情報に基づいて、当該ロボット装置の行動に関する行動情報および環境情報に、当該ロボット装置が行なった行動に対する反応に基づいて設定された適正度情報を対応付けた制御ポリシーを参照して、当該ロボット装置が実行を予定する予定行動についての適正度情報が閾値を超える場合に、前記ロボット装置による前記予定行動の実行を抑止する抑止制御部と
を備えることを特徴とする、ロボット装置。
【０２３３】
（付記６）
前記予定行動を決定する予定行動決定部を備える
ことを特徴とする、付記５記載のロボット装置。
【０２３４】
（付記７）
当該ロボット装置が行なった行動を示す情報および当該行動に対して観察された反応情報を含むログ情報に基づいて前記制御ポリシーを作成する制御ポリシー作成部
を備えることを特徴とする、付記５または６記載のロボット装置。
【０２３５】
（付記８）
ロボット装置であって、
当該ロボット装置の環境を示す情報を受け付ける取得部と、
当該ロボット装置の行動を識別する情報と、当該ロボット装置の行動に対する人物の行動を識別する情報とを、当該ロボット装置の行動時における環境を示す情報に対応付けて記憶する記憶部を参照して、受け付けた前記環境を示す情報に対応付けられたロボット装置の行動と人物の行動との組みを特定する特定部と、
特定した前記組みのうち、人物の行動が特定の種別である組みに含まれるロボット装置の行動の実行を抑止する抑止制御部と
を備えることを特徴とする、ロボット装置。
【０２３６】
（付記９）
ロボット装置において、
当該ロボット装置の周囲の環境に関する環境情報を取得する処理と、
前記環境情報に基づいて、当該ロボット装置の行動に関する行動情報および環境情報に、当該ロボット装置が行なった行動に対する反応に基づいて設定された適正度情報を対応付けた制御ポリシーを参照して、当該ロボット装置が実行を予定する予定行動についての適正度情報が閾値を超える場合に、前記ロボット装置による前記予定行動の実行を抑止する処理と
を備える、制御方法。
【０２３７】
（付記１０）
前記予定行動を決定する処理
を備える、付記９記載の制御方法。
【０２３８】
（付記１１）
当該ロボット装置が行なった行動を示す情報および当該行動に対して観察された反応情報を含むログ情報に基づいて前記制御ポリシーを作成する
処理を備える、付記９または１０記載の制御方法。
【０２３９】
（付記１２）
ロボット装置において、
当該ロボット装置の環境を示す情報を受け付ける処理と、
当該ロボット装置の行動を識別する情報と、当該ロボット装置の行動に対する人物の行動を識別する情報とを、当該ロボット装置の行動時における環境を示す情報に対応付けて記憶する記憶部を参照して、受け付けた前記環境を示す情報に対応付けられたロボット装置の行動と人物の行動との組みを特定する処理と、
特定した前記組みのうち、人物の行動が特定の種別である組みに含まれるロボット装置の行動の実行を抑止する処理と
を備える、制御方法。
【符号の説明】
【０２４０】
１    ロボットシステム
１０    ロボット
１１    コントローラ
１２    CPU
１３    センサ入力部
１４    通信インタフェース
１５    メモリ
１６    出力部
２０    ネットワーク
２１    カメラ
２２    センサ
２３    マイク
２４    アクチュエータ
２５    スピーカ
２６    ディスプレイ
２７    GPS
３０    サーバ
３１    CPU  
３２    入力インタフェース
３２ａ    キーボード
３２ｂ    マウス
３３    通信インタフェース
３４    HDD
３５    メモリ
５０    話題決定部
５１    適正動作判定部
５２    環境認識部
５３    行動認識部
５４    適正度判定部
５５    表情認識部
５６    音声認識部
５７    感情表現部
５８    発話表現部
５９    反応認識部
６１    イベント情報作成部
６２    学習情報
６３    ユーザプロファイル情報
６４    フィルタ情報
６５    イベント情報
６６    話題情報
６７    ログ情報
６８    ログ情報作成部
６９    フィルタ情報作成部
７０    返答評価辞書
７１    行動評価辞書
【図１】
2018171683.tif 000003
【図２】
2018171683.tif 000004
【図３】
2018171683.tif 000005
【図４】
2018171683.tif 000006
【図５】
2018171683.tif 000007
【図６】
2018171683.tif 000008
【図７】
2018171683.tif 000009
【図８】
2018171683.tif 000010
【図９】
2018171683.tif 000011
【図１０】
2018171683.tif 000012