(57)【要約】【課題】ロボットの会話能力を高く見せる技術を提供する。【解決手段】ロボット１００のユーザに関する情報と、ロボット１００の周囲の状況の情報である状況情報との少なくとも一方の情報である第１情報を取得する第１情報取得手段と、取得した第１情報に基づいて、ロボット１００と所定の対象とが少なくとも第１情報に適合する会話をしているようにユーザに認識させるための会話データを作成する作成手段と、作成した会話データに基づく情報を出力するように出力部を制御することによって、ユーザに、ロボット１００と所定の対象とが少なくとも第１情報に適合する会話をしているように認識させる出力制御手段と、を備える会話出力システム１０００であって、ロボット１００は、会話データに基づく会話のレベル以上のレベルの会話を実行する機能を有していない。【選択図】図１
2019136481.tif 000002
【特許請求の範囲】
【請求項１】
ロボットのユーザに関する情報と、前記ロボットの周囲の状況の情報である状況情報との少なくとも一方の情報である第１情報を取得する第１情報取得手段と、
取得した前記第１情報に基づいて、前記ロボットと所定の対象とが少なくとも前記第１情報に適合する会話をしているように前記ユーザに認識させるための会話データを作成する作成手段と、
前記作成した会話データに基づく情報を出力するように出力部を制御することによって、前記ユーザに、前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させる出力制御手段と、を備え、
前記ロボットは、前記会話データに基づく会話のレベル以上のレベルの会話を実行する機能を有していない、
会話出力システム。
【請求項２】
前記ロボットは、
前記第１情報としての前記状況情報を取得する第１センサと、
前記第１センサが取得した前記第１情報としての前記状況情報を前記会話出力システムに送信する状況送信部と、を備え、
前記会話出力システムは、会話出力サーバ及び会話出力端末を備え、
前記会話出力サーバは、対端末通信部と、前記第１情報取得手段と、前記作成手段と、を有し、
前記会話出力端末は、前記出力制御手段と、前記出力部と、状況受信部と、対サーバ通信部と、を有し、
前記会話出力端末の前記出力制御手段は、前記状況受信部を介して、前記ロボットの前記状況送信部が送信した前記第１情報としての前記状況情報を受信することにより取得し、前記対サーバ通信部を介して、前記受信した前記第１情報としての前記状況情報を前記会話出力サーバの前記対端末通信部に送信し、
前記会話出力サーバの前記第１情報取得手段は、前記対端末通信部を介して、前記送信された前記第１情報を、受信することにより取得し、前記作成手段により作成した前記会話データを、前記対端末通信部を介して、前記会話出力端末の前記対サーバ通信部に送信し、
前記会話出力端末の前記出力制御手段は、前記対サーバ通信部を介して、前記会話出力サーバが送信した前記会話データを受信することにより取得し、前記取得した会話データに基づく情報を出力するように前記出力部を制御することによって、前記ユーザに、前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させる、
請求項１に記載の会話出力システム。
【請求項３】
前記会話出力サーバは、ＳＮＳ（Ｓｏｃｉａｌ  Ｎｅｔｗｏｒｋｉｎｇ  Ｓｅｒｖｉｃｅ）を提供可能に構成され、
前記会話出力端末の前記出力制御手段は、
前記会話出力サーバが提供する前記ＳＮＳにアクセスするＳＮＳクライアントソフトとして機能し、
前記取得した会話データを、前記ＳＮＳへの書き込み内容として、前記対サーバ通信部を介して、前記会話出力サーバの前記対端末通信部に送信し、
前記会話データに基づく情報を出力するように前記出力部を制御することによって、前記ユーザに、前記ＳＮＳ上で前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させる、
請求項２に記載の会話出力システム。
【請求項４】
前記作成手段は、
会話の話題を選定し、
少なくとも前記選定した話題と前記第１情報とに基づいて前記会話データを作成する、
請求項１から３のいずれか１項に記載の会話出力システム。
【請求項５】
前記作成手段は、
会話の第１の話題を選定し、
前記選定した第１の話題と前記第１情報とに基づいて第１の会話データを作成し、
前記出力制御手段によって前記第１の会話データに基づく情報を出力するように前記出力部が制御された後に、前記選定した第１の話題とは異なる第２の話題を選定し、
前記選定した第２の話題と前記第１情報とに基づいて第２の会話データを作成する、
請求項４に記載の会話出力システム。
【請求項６】
前記作成手段は、
前記第１の会話データと前記第２の会話データとの間をつなぐ文章であるつなぎ文を取得し、
前記作成した第２の会話データの前に前記取得したつなぎ文を追加する、
請求項５に記載の会話出力システム。
【請求項７】
前記ユーザの居住国を取得する居住国取得手段をさらに備え、
前記作成手段は、前記会話データを、前記取得した居住国の言語に翻訳する、
請求項１から６のいずれか１項に記載の会話出力システム。
【請求項８】
前記所定の対象は、前記ユーザ、前記ロボット以外の他のロボット、又は、前記ユーザ以外の人物である、
請求項１から７のいずれか１項に記載の会話出力システム。
【請求項９】
前記所定の対象は、前記ロボットとは別個に設けられ、前記ユーザとは異なる他のユーザに属する他のロボットであり、
前記他のユーザに関する情報と、前記他のロボットの周囲の状況の情報である状況情報との少なくとも一方の情報である第２情報を取得する第２情報取得手段をさらに備え、
前記作成手段は、前記取得した前記第１及び第２情報に基づいて、前記会話データとして、前記ロボットと前記他のロボットとが前記第１情報及び前記第２情報に適合する会話をしているように前記ユーザに認識させるためのデータを作成し、
前記出力制御手段は、前記会話データに基づく情報を出力するように前記出力部を制御することによって、前記ユーザに、前記ロボットと前記他のロボットとが前記第１及び第２情報に適合する会話をしているように認識させる、
請求項１から７のいずれか１項に記載の会話出力システム。
【請求項１０】
前記所定の対象は仮想のロボットであり、
前記作成手段は、前記仮想のロボットに関する第２情報を設定し、前記第１情報及び前記設定した前記第２情報に基づいて、前記会話データとして、前記ロボットと前記仮想のロボットとが前記第１及び第２情報に適合する会話をしているように前記ユーザに認識させるためのデータを作成し、
前記出力制御手段は、前記会話データに基づく情報を出力するように前記出力部を制御することによって、前記ユーザに、前記ロボットと前記仮想のロボットとが前記第１及び第２情報に適合する会話をしているように認識させる、
請求項１から７のいずれか１項に記載の会話出力システム。
【請求項１１】
前記ユーザから当該ユーザが個人情報を公開したいと考えているか否かを示すユーザ意向情報を取得するユーザ意向情報取得手段をさらに備え、
前記作成手段は、前記取得した前記ユーザ意向情報により前記ユーザが個人情報を公開したいと考えていることが示されている場合に、前記ユーザに関する情報を含めた前記第１情報に基づいて、前記会話データを作成する、
請求項１から１０のいずれか１項に記載の会話出力システム。
【請求項１２】
前記ロボットは、会話する機能を有していない、
請求項１から１１のいずれか１項に記載の会話出力システム。
【請求項１３】
前記出力部としてディスプレイを備え、
前記出力制御手段は、前記作成手段が作成した会話データを前記ディスプレイに表示することによって、前記ユーザに、前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させる、
請求項１から１２のいずれか１項に記載の会話出力システム。
【請求項１４】
前記出力部としてスピーカを備え、
前記出力制御手段は、前記作成手段が作成した会話データを音声合成して、前記スピーカから出力させることによって、前記ユーザに、前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させる、
請求項１から１３のいずれか１項に記載の会話出力システム。
【請求項１５】
ロボットのユーザに関する情報、及び、前記ロボットの周囲の状況の情報である状況情報の少なくとも一方の情報である第１情報を取得する情報取得手段と、
前記取得した前記第１情報に基づいて、前記ロボットと所定の対象とが少なくとも前記第１情報に適合する会話をしているように、前記ロボットのユーザに認識させるための会話データを作成する作成手段と、
当該作成した前記会話データを、前記ロボットとは別個に設けられた会話出力端末に送信する送信手段と、を備える、
会話出力サーバ。
【請求項１６】
会話出力システムによって実行される会話出力方法であって、
ロボットのユーザに関する情報、及び、前記ロボットの周囲の状況の情報である状況情報の少なくとも一方の情報である第１情報を取得するステップと、
前記取得した前記第１情報に基づいて、前記ロボットと所定の対象とが少なくとも前記第１情報に適合する会話をしているように、前記ユーザに認識させるための会話データを作成するステップと、
前記作成した会話データに基づく情報を出力するように、前記ロボットとは別個に設けられた出力部を制御することによって、前記ユーザに、前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させるためのステップと、
を含む会話出力方法。
【請求項１７】
会話出力サーバのコンピュータに、
ロボットのユーザに関する情報、及び、前記ロボットの周囲の状況の情報である状況情報の少なくとも一方の情報である第１情報を取得する処理と、
前記取得した前記第１情報に基づいて、前記ロボットと所定の対象とが少なくとも前記第１情報に適合する会話をしているように前記ロボットのユーザに認識させるための会話データを作成する処理と、
前記作成した会話データに基づく情報を出力するように、前記ロボットとは別個に設けられた出力部を制御することによって、前記ユーザに、前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させるための処理と、
を実行させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、会話出力システム、会話出力サーバ、会話出力方法及びプログラムに関する。
【背景技術】
【０００２】
動物を模したロボットが普及してきている。このようなロボットは電子ペットとも呼ばれ、ユーザに愛されるような外観を備えている。また、ユーザの音声を認識してユーザの指示に応じた動作をしたり、ロボット同士で会話したりするロボットも登場している。例えば、特許文献１には、複数のロボットがロボット同士で会話するロボットシステムが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−２０５４８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来、ロボット同士で会話が可能なロボットシステムは、例えば特許文献１に開示されている。特許文献１に記載の複数のロボット間での会話の内容は、シナリオとして台詞が記されている台本であり、会話人数に応じて予め設定されているものであるため、決まりきった会話になっていた。スーパーコンピュータを使ったＡＩ（Ａｒｔｉｆｉｃｉａｌ  Ｉｎｔｅｌｌｉｇｅｎｃｅ）技術を駆使すれば、それなりに高度な会話が可能であるが、一般ユーザのためのコンシューマ製品に搭載するのは現実的でない。したがって、ロボット同士の会話技術に改善の余地がある。このような問題は、複数のロボット同士の会話技術のみならず、ロボットと所定の対象との会話技術についても同様に当てはまる。  
【０００５】
本発明は、上記問題を解決するためになされたものであり、ロボットの会話能力を高く見せる技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の会話出力システムは、
ロボットのユーザに関する情報と、前記ロボットの周囲の状況の情報である状況情報との少なくとも一方の情報である第１情報を取得する第１情報取得手段と、
取得した前記第１情報に基づいて、前記ロボットと所定の対象とが少なくとも前記第１情報に適合する会話をしているように前記ユーザに認識させるための会話データを作成する作成手段と、
前記作成した会話データに基づく情報を出力するように出力部を制御することによって、前記ユーザに、前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させる出力制御手段と、を備え、
前記ロボットは、前記会話データに基づく会話のレベル以上のレベルの会話を実行する機能を有していない、
会話出力システムである。
【発明の効果】
【０００７】
本発明によれば、ロボットの会話能力を高く見せる技術を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施形態１に係る会話出力システムの機能構成を示す図である。
【図２】実施形態１に係るロボットの外観の一例を示す図である。
【図３】実施形態１に係るシナリオ記憶部に記憶されているデータの一例を示す図である。
【図４】実施形態１に係るユーザプロファイル記憶部に記憶されているデータの一例を示す図である。
【図５】実施形態１に係るユーザ状況記憶部に記憶されているデータの一例を示す図である。
【図６】実施形態１に係る会話処理の状況情報収集のスレッド群のフローチャートである。
【図７】実施形態１に係る会話処理の会話要求収集のスレッド群のフローチャートである。
【図８】実施形態１に係る会話処理の会話内容出力のスレッド群のフローチャートである。
【図９】実施形態１に係るシナリオ選択処理のフローチャートである。
【図１０】実施形態１に係る会話出力システムにおいて一方の会話出力端末に出力される会話内容の一例を示す図である。
【図１１】実施形態１に係る会話出力システムにおいて他方の会話出力端末に出力される会話内容の一例を示す図である。
【図１２】本発明の実施形態１の変形例３に係るシナリオ記憶部に記憶されているデータの一例を示す図である。
【図１３】本発明の実施形態２に係る会話出力システムの機能構成を示す図である。
【図１４】本発明の実施形態３に係る会話出力システムの機能構成を示す図である。
【図１５】本発明の実施形態４に係る会話出力システムの機能構成を示す図である。
【図１６】本発明の実施形態５に係る会話出力システムの機能構成を示す図である。
【図１７】本発明の実施形態６に係る会話出力システムの機能構成を示す図である。
【図１８】実施形態６に係る疑似チャットのためのスレッド群のフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明の実施形態に係る会話出力システムについて、図表を参照して説明する。なお、図中同一又は相当部分には同一符号を付す。
【００１０】
（実施形態１）
本発明の実施形態１に係る会話出力システムは、音声で自然言語による会話をすることができないロボットが、あたかも他のロボットと自然言語で会話をしているようにユーザに見せるシステムである。
【００１１】
図１に示すように、本発明の実施形態１に係る会話出力システム１０００は、ロボット１００と、会話出力端末２００と、会話出力サーバ３００と、を備える。ロボット１００と会話出力端末２００とは近距離無線通信により無線接続されてペアになっている。会話出力システム１０００は、ロボット１００と会話出力端末２００のペアを複数（例えば、ロボット１００と会話出力端末２００、ロボット１００’と会話出力端末２００’、ロボット１００’’と会話出力端末２００’’等）含んでいてもよい。ロボット１００は、会話出力端末２００及び会話出力サーバ３００を介して、他のロボット１００と自然言語で会話しているようにユーザに見せることができる。
【００１２】
ロボット１００は、かわいらしい形状をしたペット型のロボットであり、機能構成として、状況取得部１１０と、近距離通信部１２０と、を備える。これら機能構成については後述する。また、図示しないが、ロボット１００は現在日時を取得できる時計を備えてもよい。
【００１３】
また、ロボット１００は、図２に示すように、目の位置に人感センサ１３１を、鼻の位置にカメラ１３２を、耳の位置にマイク１３３を、口に位置にスピーカ１３４を、それぞれ備える。そして、ロボット１００は、足１３５や尻尾１３６を動かすことにより感情を表現することができる。例えば足１３５をバタバタと前後左右に動かしたり、尻尾１３６を振ったりすると、喜んでいることを表す。また、図示しないが、ロボット１００は、加速度センサ、触覚センサ等を備えることにより、ユーザに抱かれたことを検出することができる。また、図示しないが、温度センサ、湿度センサ等を備えることにより、周囲の環境の情報を取得することができる。
【００１４】
ロボット１００の機能構成について説明する。状況取得部１１０は、人感センサ１３１、カメラ１３２、マイク１３３、加速度センサ、触覚センサ、温度センサ、湿度センサ等を備え、これらにより、ロボット１００の周囲の状況の情報である状況情報を取得する。状況情報には、ロボット１００のユーザに関する情報と、ロボット１００に関する情報とが含まれる。例えば、ロボット１００のユーザに関する情報には、人感センサ１３１から得られる「ユーザがロボット１００に近づいた」という情報、カメラ１３２から得られる「ユーザがロボット１００を見つめた」という情報、マイク１３３から得られる「ユーザがロボット１００に話しかけた」という情報、加速度センサ又は触覚センサから得られる「ユーザがロボット１００を抱き上げた」という情報等が含まれる。また、ロボット１００に関する情報には、温度センサから得られる「ロボット１００の周囲の現在の気温」、湿度センサから得られる「ロボット１００の周囲の現在の湿度」、時計から得られる「ロボット１００が存在する地域の現在日時」等の情報が含まれる。ユーザに関する情報については、その頻度（回数）の情報を状況情報に含めてもよい。ここでは、状況取得部１１０が備える各種センサを総称して第１センサという。
【００１５】
なお、状況情報は、ロボット１００のユーザに関する情報と、ロボット１００に関する情報とのうちのいずれか一方のみしか含まなくてもよい。例えば後述するシナリオ選択処理において、ロボット１００に関する情報は用いられず、ロボット１００のユーザに関する情報のみが用いられる場合には、状況情報はロボット１００のユーザに関する情報のみ含めばよく、ロボット１００に関する情報を含まなくてもよい。
【００１６】
近距離通信部１２０は、近距離無線通信デバイス（例えばＢｌｕｅｔｏｏｔｈ（登録商標）の通信デバイス）を備え、状況取得部１１０が取得した状況情報を、会話出力端末２００に送信する。したがって、近距離通信部１２０は、状況送信部として機能する。
【００１７】
なお、ロボット１００は、スピーカ１３４を備えているが、自然言語を発話する機能は備えていない。ロボット１００は、スピーカ１３４から、電子音又は動物の鳴き声を模した音を出力することができる。したがって、ユーザはロボット１００の出力する音を聞いている限りにおいては、ロボット１００が人間の話す言葉を理解できると考えることはできない。ここで、ロボット１００は、赤ん坊や幼児のようにかたことの会話能力を備えてもよいが、後述する会話データに基づく会話のレベル以上のレベルの会話を実行する機能は有していない。
【００１８】
次に、会話出力端末２００について説明する。会話出力端末２００は、ディスプレイ２７０を備えるスマートフォンであり、機能構成として、近距離通信部２１０と、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）通信部２２０と、会話出力部２３１（端末制御部２３０）と、を備える。また、図示しないが、端末制御部２３０は時計の機能を備えており、現在日時を取得することができる。ディスプレイ２７０は、例えば、ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ）、ＥＬ（Ｅｌｅｃｔｒｏｌｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイ等によって構成され、会話出力部２３１（端末制御部２３０）から指示された内容を表示する。ディスプレイ２７０は、出力部として機能する。
【００１９】
近距離通信部２１０は、近距離通信部１２０と同じ通信規格で通信できる近距離無線通信デバイスを備え、ロボット１００から送信された状況情報を受信する。したがって、近距離通信部２１０は、状況受信部として機能する。
【００２０】
ＬＴＥ通信部２２０は、ＬＴＥの通信規格で通信するデバイスを備え、会話出力サーバ３００と通信する。例えば、ＬＴＥ通信部２２０は、会話出力サーバ３００に状況情報を送信する。また、ＬＴＥ通信部２２０は、会話出力サーバ３００が送信した後述するシナリオのデータを受信する。ＬＴＥ通信部２２０は、会話出力サーバ３００との通信を行うので、対サーバ通信部として機能する。
【００２１】
なお、ロボット１００によっては（例えば時計や温度センサを備えていないために）、会話出力端末２００に送信する状況情報の中に、ロボット１００が存在する地域の現在日時、天気、気温、ニュース等に関する情報が含まれていない場合がある。この場合は、会話出力端末２００は、状況情報にロボット１００が存在する地域の現在日時、天気、気温、ニュース等の情報を追加し、これらの情報が追加された状況情報を、ＬＴＥ通信部２２０を介して会話出力サーバ３００に送信する。なお、会話出力端末２００は、端末制御部２３０の備える時計により現在日時を取得することができる。また、会話出力端末２００は、ＬＴＥ通信部２２０によりインターネットにアクセスし、天気、気温、ニュース等の情報を取得することができる。
【００２２】
端末制御部２３０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）等で構成され、記憶部（図示せず）に記憶されたプログラムを実行することにより、会話出力部２３１の機能を実現する。例えば、ユーザはロボット１００を購入後に、ロボット用アプリのＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）に、会話出力端末２００（スマホ）でアクセスすることにより、ロボット用アプリを会話出力端末２００にインストールすることができ、このロボット用アプリにより、会話出力部２３１の機能が実現される。なお、ロボット用アプリのＵＲＬは、例えばロボット１００の取扱説明書等に記載されることになる。
【００２３】
会話出力部２３１は、会話出力サーバ３００からＬＴＥ通信部２２０を介して受信した後述するシナリオデータに基づき、他のロボット１００’と自然言語で会話しているように見える会話内容をディスプレイ２７０に表示するように、ディスプレイ２７０を制御する。なお、会話出力部２３１は、会話出力サーバ３００が提供するＳＮＳ（Ｓｏｃｉａｌ  Ｎｅｔｗｏｒｋｉｎｇ  Ｓｅｒｖｉｃｅ）にアクセスするＳＮＳクライアントソフトとして実現することができる。会話出力部２３１は、出力制御手段として機能する。
【００２４】
例えば、ロボット１００（会話出力端末２００と無線接続している）とロボット１００’（会話出力端末２００’と無線接続している）とが会話しているように見せる画面を出力する場合を想定する。この場合、会話出力部２３１は、ロボット１００の発言内容のみをシナリオデータとして会話出力サーバ３００から受信し、受信したシナリオデータを会話出力サーバ３００の提供するＳＮＳへの書き込み内容として送信する。そして、会話相手（ロボット１００’）に無線接続している会話出力端末２００’の会話出力部２３１も、ロボット１００’の返答内容のみをシナリオデータとして会話出力サーバ３００から受信し、受信したシナリオデータを会話出力サーバ３００の提供するＳＮＳへの書き込み内容として送信する。
【００２５】
すると、会話出力サーバ３００のＳＮＳの機能により、ＳＮＳクライアントソフトとしての会話出力部２３１は、ロボット１００の発言内容とロボット１００’の返答内容とを会話出力端末２００のディスプレイ２７０に出力することになる。
【００２６】
次に会話出力サーバ３００について説明する。会話出力サーバ３００はインターネット上に存在するクラウドサーバであり、ロボット１００同士のＳＮＳを提供する。会話出力サーバ３００の提供するＳＮＳに、ロボット１００と無線接続している会話出力端末２００がアクセスすることによって、ロボット１００は他のロボット１００と会話（チャット）しているように、ユーザに見せることができる。
【００２７】
会話出力サーバ３００は、機能構成として、ＬＴＥ通信部３１０と、シナリオ選択部３２１（制御部３２０）と、シナリオ記憶部３３１（記憶部３３０）と、ユーザプロファイル記憶部３３２（記憶部３３０）と、ユーザ状況記憶部３３３（記憶部３３０）と、を備える。
【００２８】
ＬＴＥ通信部３１０は、ＬＴＥの通信規格で通信するデバイスを備え、会話出力端末２００と通信する。例えば、ＬＴＥ通信部３１０は、会話出力端末２００が送信した状況情報を受信する。また、ＬＴＥ通信部３１０は、会話出力端末２００にシナリオのデータを送信する。このように、ＬＴＥ通信部３１０は、会話出力端末２００との通信を行うので、対端末通信部として機能する。
【００２９】
制御部３２０は、ＣＰＵ等で構成され、記憶部３３０に記憶されたプログラムを実行することにより、シナリオ選択部３２１の機能を実現する。また、制御部３２０は、時計（図示せず）を備え、ロボット１００が存在する地域の現在日時を取得することができる。
【００３０】
シナリオ選択部３２１は、ＬＴＥ通信部３１０が受信した状況情報に基づいて、シナリオ記憶部３３１に記憶されているシナリオデータを選択する。なお、ロボット１００とロボット１００’とが会話しているように見せるためのシナリオデータを選択する際には、シナリオ選択部３２１は、後述するように、ロボット１００の状況情報だけでなく、ロボット１００’の状況情報も用いる。これらはどちらも状況情報であるが、両者を区別したい場合には、ロボット１００の状況情報を第１の状況情報、ロボット１００’の状況情報を第２の状況情報と呼ぶことにする。
【００３１】
記憶部３３０は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等で構成され、機能的に、シナリオ記憶部３３１、ユーザプロファイル記憶部３３２及びユーザ状況記憶部３３３を含む。ＲＯＭには制御部３２０のＣＰＵが実行するプログラム及びプログラムを実行する上で予め必要なデータが記憶されている。ＲＡＭには、プログラム実行中に作成されたり変更されたりするデータが記憶される。
【００３２】
シナリオ記憶部３３１には、図３に示すように、会話の話題毎に、状況情報等に基づいて、ロボット１００が発言する内容とその会話相手（ここではロボット１００’とする）が返答する内容とが記憶されている。この、ロボット１００とその会話相手がそれぞれ発言する一対の内容をここではシナリオと呼ぶ。
【００３３】
例えば、図３の一番上の表は、話題がご主人（ロボット１００，１００’それぞれのユーザ）とのコミュニケーションの親密度の場合のシナリオデータの例である。図３では、ロボット１００の親密度のレベルと、ロボット１００’の親密度のレベルと、に応じて、シナリオデータ（ロボット１００の発言内容と、それに対するロボット１００’の返答内容）が定義されている。親密度レベルとは、ロボット１００に対するユーザの関わり度合い（話しかけた回数、顔を見つめてくれた回数、抱いてくれた回数等を総合的に勘案して定義される）を表す。
【００３４】
例えば、親密度レベルは、全く関わってくれなかった（ユーザがロボット１００に話しかけることも、ロボット１００を抱くこともなかった）場合は１、頻繁に関わってくれた（例えば話しかけた回数＋顔を見つめてくれた回数＋抱いてくれた回数が１０以上になる）場合は５となる。また、図３で「［私］」となっている部分は、人称代名詞を表す文言が入ることを示している。この部分は、性別によって人称代名詞が変わる国においては、ロボット１００の性別によって変化する部分である。例えば、居住国が日本の場合、「［私］」は、ロボット１００（のユーザ）が男性なら「僕」になり、女性なら「私」になる。また、ここにペットの名前を入れてもよい。例えば、ペットの名前が「ＧｌａｄＤｏｇ」であったとすると、「いいなぁ。ＧｌａｄＤｏｇの主人は全然遊んでくれないんだ。」等となる。
【００３５】
また、図３の真ん中の表は、話題が天気の場合のシナリオデータの例である。この例では、ロボット１００の状況情報（第１の状況情報）に含まれる天気が晴れで、ロボット１００’の状況情報（第２の状況情報）に含まれる天気が雨の場合、ロボット１００の発言内容は「今日は晴れてて気持ち良いよ。」と定義されており、ロボット１００’の返答内容は「いいなぁ。こっちは雨が降っていてつまらないんだ。」と定義されている。
【００３６】
また、図３の下の表は、話題が記念日の場合のシナリオデータの例である。ロボット１００の現在日時とロボット１００’の現在日時とは、それぞれの居住地間の時差のずれしかないので、日付の違いは最大でも１日である。したがって、この例では、ロボット１００’の状況情報に含まれる日時情報を無視してシナリオデータが定義されている。もちろん、時差を考慮して、ロボット１００’の状況情報に含まれる日時が、ロボット１００の状況情報に含まれる日時の１日前又は１日後の場合のそれぞれのシナリオデータを定義してもよい。
【００３７】
ユーザプロファイル記憶部３３２には、図４に示すように、会話出力サーバ３００の提供するＳＮＳ上でのロボット１００のＩＤ及びアイコン、ロボット１００のユーザの居住国、性別、誕生日、趣味等、ロボット１００及びそのユーザのプロファイルが記憶されている。なお、図４では、性別、誕生日等は、ユーザのものしか記憶されていないため、ロボット１００の性別、誕生日等はユーザの性別、誕生日等と同一のものとして扱われる。しかし、ユーザプロファイル記憶部３３２に別途ロボット１００の性別、誕生日等の項目を設けて、ユーザとは別個の性別、誕生日を設定してもよい。
【００３８】
ユーザ状況記憶部３３３には、図５に示すように、各ロボット１００（各会話出力端末２００）から送信された状況情報を記憶している。ユーザ状況記憶部３３３は、各会話出力端末２００から状況情報を受信する度に更新される。また、「話かけられた回数」、「見つめられた回数」等の回数に関しては、一定期間毎（例えば毎日０時）に０にリセットされる。
【００３９】
制御部３２０は、ユーザプロファイル記憶部３３２に記憶されているユーザに関する情報とユーザ状況記憶部３３３に記憶されている状況情報とに基づいて、シナリオ記憶部３３１に記憶されているシナリオデータを選択することにより、ロボット１００が第１情報に適合する会話をしているようにユーザに認識させるための会話データを作成する。なお、制御部３２０は、ユーザプロファイル記憶部３３２に記憶されているユーザに関する情報とユーザ状況記憶部３３３に記憶されている状況情報のいずれか一方のみに基づいて、シナリオ記憶部３３１に記憶されているシナリオデータを選択してもよい。ユーザプロファイル記憶部３３２に記憶されているユーザに関する情報とユーザ状況記憶部３３３に記憶されている状況情報との少なくとも一方の情報を第１情報と呼ぶ。制御部３２０は、第１情報を取得する際、第１情報取得手段として機能する。
【００４０】
また、制御部３２０が作成する会話データにおいて、ロボット１００の会話相手（ロボット１００’とする）の状況情報及び該ロボット１００’のユーザに関する情報も、それぞれユーザ状況記憶部３３３及びユーザプロファイル記憶部３３２に記憶されている。ロボット１００’のユーザに関する情報とロボット１００’の状況情報との少なくとも一方の情報も第１情報と呼ぶことができるが、ロボット１００のユーザに関する情報とロボット１００の状況情報との少なくとも一方の情報（第１情報）と区別したい場合には、ロボット１００’のユーザに関する情報とロボット１００’の状況情報との少なくとも一方の情報を第２情報と呼ぶ。制御部３２０は、第２情報を取得する際、第２情報取得手段として機能する。
【００４１】
次に、ロボット１００が、会話出力端末２００及び会話出力サーバ３００を介して、他のロボット１００と会話する会話処理について説明する。この会話処理は、状況情報収集のスレッド群、会話要求収集のスレッド群、会話内容出力のスレッド群、の３つのスレッド群で構成されている。これら３つのスレッド群は順次実行されるのではなく、それぞれが並行して同時に実行されている。会話内容出力のスレッド群により、シナリオ記憶部３３１に記憶されているシナリオデータが（必要に応じて修正されてから）、ロボット１００と無線接続している会話出力端末２００に送信される。そして、このシナリオデータに基づいて、会話出力サーバ３００の提供するＳＮＳ上で、ロボット１００が会話相手（例えばロボット１００’）と会話（チャット）しているように見える画面が、会話出力端末２００から出力される。まず状況情報収集のスレッド群について、図６を参照して説明する。
【００４２】
ロボット１００は、電源が投入されると、図６の左側のフローチャートに示す状況送信スレッドが起動する。また、会話出力端末２００は、電源が投入されると、図６の真ん中のフローチャートに示す状況中継スレッドが起動する。また、会話出力サーバ３００は、電源が投入されると図６の右側のフローチャートに示す状況更新スレッドが起動する。なお、図６において、点線矢印は各スレッド間でデータが送受信されることを示す。
【００４３】
状況送信スレッドでは、ロボット１００は、状況取得部１１０で状況情報を取得する（ステップＳ１０１）。そして、取得した状況情報を近距離通信部１２０を介して会話出力端末２００に送信し（ステップＳ１０２）、ステップＳ１０１に戻る。なお、ロボット１００は、ステップＳ１０１では、取得した状況情報を常時記録（録音又は録画）しておいて、適宜ステップＳ１０２を実行するようにしてもよいし、記録（録音又は録画）したデータを丸ごと会話出力端末２００に送信して会話出力端末２００で分析するようにしてもよい。
【００４４】
また、状況中継スレッドでは、会話出力端末２００は、状況情報がロボット１００から送られてくるまで待ち続け、送られてきたら近距離通信部２１０で状況情報を受信する（ステップＳ１１１）。そして、受信した状況情報に、必要に応じて現在日時、天気等の情報を追加し、ＬＴＥ通信部２２０を介して会話出力サーバ３００に送信し（ステップＳ１１２）、ステップＳ１１１に戻る。
【００４５】
また、状況更新スレッドでは、会話出力サーバ３００は、状況情報が会話出力端末２００から送られてくるまで待ち続け、送られてきたらＬＴＥ通信部３１０で状況情報を受信する（ステップＳ１２１）。そして、受信した状況情報を用いて、ユーザ状況記憶部３３３に記憶されている状況情報を更新し（ステップＳ１２２）、ステップＳ１２１に戻る。
【００４６】
ロボット１００及び会話出力端末２００のペアが複数存在する場合は、以上の処理が、各ロボット１００及び該ロボット１００と通信接続している各会話出力端末２００で行われる。したがって、会話出力サーバ３００のユーザ状況記憶部３３３には、各ロボット１００のユーザに関する状況情報が蓄積されていく。
【００４７】
以上、状況情報収集のスレッド群について説明した。次に、会話要求収集のスレッド群について、図７を参照して説明する。
【００４８】
ロボット１００は、電源が投入されると、図７の左側のフローチャートに示す要求送信スレッドが起動する。また、会話出力端末２００は、電源が投入されると、図７の真ん中のフローチャートに示す要求中継スレッドが起動する。また、会話出力サーバ３００は、電源が投入されると図７の右側のフローチャートに示す要求更新スレッドが起動する。なお、図７において、点線矢印は各スレッド間でデータが送受信されることを示す。
【００４９】
要求送信スレッドでは、ロボット１００は、状況取得部１１０の備える人感センサ１３１等により、ユーザが接近したか否かを判定する（ステップＳ２０１）。ユーザが接近していなければ（ステップＳ２０１；Ｎｏ）、ステップＳ２０１に戻る。ユーザが接近していれば（ステップＳ２０１；Ｙｅｓ）、ロボット１００は会話要求パケットを近距離通信部１２０を介して会話出力端末２００に送信する（ステップＳ２０２）。会話要求パケットとは、ロボット１００が他のロボット１００’と会話することを求めていることを示すパケットであり、ロボット１００のＩＤの情報を含んでいる。
【００５０】
そして、ロボット１００は、状況取得部１１０の備える人感センサ１３１等により、ユーザがまた近くにいるか否かを判定する（ステップＳ２０３）。ユーザがまだ近くにいるなら（ステップＳ２０３；Ｙｅｓ）、ステップＳ２０３に戻る。ユーザがもう近くにいないなら（ステップＳ２０３；Ｎｏ）、ロボット１００は会話キャンセル要求パケットを近距離通信部１２０を介して会話出力端末２００に送信する（ステップＳ２０４）。会話キャンセル要求パケットとは、ロボット１００がそれ以前に送信した会話要求パケットをキャンセルするために送信するパケットであり、ロボット１００のＩＤを含んでいる。そして、ステップＳ２０１に戻る。
【００５１】
また、要求中継スレッドでは、会話出力端末２００は、会話要求パケットがロボット１００から送られてくるまで待ち続け、送られてきたら近距離通信部２１０で会話要求パケットを受信する（ステップＳ２１１）。そして、会話要求パケットを、ＬＴＥ通信部２２０を介して会話出力サーバ３００に送信する（ステップＳ２１２）。そして、会話出力端末２００は、会話キャンセル要求パケットがロボット１００から送られてくるまで待ち続け、送られてきたら近距離通信部２１０で会話キャンセル要求パケットを受信する（ステップＳ２１３）。そして、会話キャンセル要求パケットを、ＬＴＥ通信部２２０を介して会話出力サーバ３００に送信し（ステップＳ２１４）、ステップＳ２１１に戻る。
【００５２】
また、要求更新スレッドでは、会話出力サーバ３００は、会話要求パケット又は会話キャンセル要求パケット（以下、「要求パケット」と呼ぶ）が会話出力端末２００から送られてくるまで待ち続け、送られてきたらＬＴＥ通信部３１０で要求パケットを受信する（ステップＳ２２１）。そして、受信した要求パケットを用いて、会話可能メンバーの情報を更新し（ステップＳ２２２）、ステップＳ２２１に戻る。
【００５３】
会話可能メンバーの情報とは、会話要求パケットを送信したロボット１００（つまりユーザが近くにいるロボット１００）のＩＤの集合である。会話出力サーバ３００は、会話要求パケットを受信すると会話要求パケットに含まれるＩＤを、会話可能メンバーの情報に追加し、会話キャンセル要求パケットを受信すると会話キャンセル要求パケットに含まれるＩＤを、会話可能メンバーの情報から削除する。
【００５４】
ロボット１００及び会話出力端末２００のペアが複数存在する場合は、以上の処理が、各ロボット１００及び該ロボット１００と通信接続している会話出力端末２００で行われる。したがって、会話出力サーバ３００には、その時点でユーザが近くにいる全てのロボット１００のＩＤを、会話可能メンバーの情報として持つことになる。
【００５５】
以上、会話要求収集のスレッド群について説明した。ただし、上述の処理は一例に過ぎず、ロボット１００は、ユーザの接近とは関係なく（例えば定期的に）会話要求パケットを送信してもよい。次に、会話内容出力のスレッド群について、図８を参照して説明する。
【００５６】
会話出力端末２００は、電源が投入されると、図８の左側のフローチャートに示す会話出力スレッドが起動する。また、会話出力サーバ３００は、電源が投入されると図８の真ん中のフローチャートに示すシナリオ送信スレッドが起動する。なお、図８の右側のフローチャートに示す会話出力スレッドは、左側のフローチャートと同一である。会話出力端末２００に無線接続しているロボット１００の会話相手である他のロボット１００’に無線接続している会話出力端末２００’で、右側のフローチャートが実行されることを想定している。また、図８において、点線矢印は各スレッド間でデータが送受信されることを示している。
【００５７】
まず、シナリオ送信スレッドでは、会話出力サーバ３００は、上述の要求更新スレッドで更新している会話可能メンバーの情報に含まれるロボット１００のＩＤの中から２つを任意に選ぶことによって、会話相手を選定する（ステップＳ３１１）。なお、会話可能メンバーの情報にロボット１００のＩＤが１つしかなかった場合は、そのロボット１００と仮想の（実在しない）ロボット１００との会話を提供してもよい。また、図３に示したシナリオ記憶部３３１には、２つのロボット１００の間の会話を想定したシナリオデータしか記憶されていなかったが、３つ以上のロボット１００の間の会話を想定したシナリオデータも記憶している場合には、ステップＳ３１１で３つ以上のＩＤを選んで、それらを会話相手として選定してもよい。
【００５８】
会話相手は最近の会話履歴に応じて適切な相手を選ぶようにしてもよい。例えばユーザは予め会話相手選択嗜好（自分のロボット１００を、知っている人のロボット１００’と会話させたいのか、知らない人のロボット１００’’と会話させたいのか等）をユーザプロファイル記憶部３３２に登録可能にしておく。そして、会話出力サーバ３００は、会話相手選択嗜好の同じユーザのロボット同士が会話相手になるように会話相手を選定することが考えられる。なお仮想の（実在しない）ロボット１００は、ＳＮＳ上のＡＩによる会話エンジンであってもよい。この会話エンジンは、会話出力サーバ３００の中に設けてもよいし、ネットワークで接続している他のコンピュータ上で実現されていてもよい。
【００５９】
次に、会話出力サーバ３００の制御部３２０は、ＬＴＥ通信部３１０を介して、会話開始通知パケットを、ステップＳ３１１で選定した各ロボット１００に接続している会話出力端末２００に送信する（ステップＳ３１２）。会話開始通知パケットとは、会話相手となる各ロボット１００のＩＤが含まれ、これから会話内容を示すシナリオデータを送信することを各会話出力端末２００に通知するパケットである。そして、会話出力サーバ３００は、提供するＳＮＳの機能により、会話開始通知パケットに含まれるＩＤに対応するロボット１００たちによる会話（チャット）を開始させる。
【００６０】
次に、シナリオ選択部３２１は、シナリオ記憶部３３１からシナリオデータを選択するシナリオ選択処理を行う（ステップＳ３１３）。このシナリオ選択処理の詳細については図９を参照して後述する。次に制御部３２０は、シナリオデータをＬＴＥ通信部３１０を介して各会話出力端末２００に送信する（ステップＳ３１４）。この時、制御部３２０は、送信手段として機能する。
【００６１】
ここで送信するシナリオデータは、送信先の会話出力端末２００により異なる。最初に発言する方の会話出力端末２００には、シナリオ記憶部３３１（図３）の「発言内容」に対応するシナリオデータを送信する。そして、それに返答する方の会話出力端末２００’には、シナリオ記憶部３３１（図３）の「返答内容」に対応するシナリオデータを送信する。
【００６２】
次に制御部３２０は、会話を終了させるか否かを判定する（ステップＳ３１５）。通常、制御部３２０は、シナリオ記憶部３３１から２つのシナリオデータを選択及び送信したら、会話を終了させる。会話を終了させないなら（ステップＳ３１５；Ｎｏ）、ステップＳ３１３に戻る。
【００６３】
会話を終了させるなら（ステップＳ３１５；Ｙｅｓ）、会話終了通知パケットを、ＬＴＥ通信部３１０を介して各会話出力端末２００に送信する（ステップＳ３１６）、ステップＳ３１１に戻る。会話終了通知パケットとは、会話相手だったロボット１００のＩＤが含まれ、これまで行っていたシナリオデータの送信を終了することを通知するパケットである。
【００６４】
以上、シナリオ送信スレッドの動作について説明したが、これに対応する会話出力端末２００の動作である会話内容出力スレッド（図８の左のフローチャート）について、以下に説明する。なお、会話出力端末２００’の動作（図８の右のフローチャート）も同様になる。
【００６５】
まず、会話出力端末２００の端末制御部２３０は、ＬＴＥ通信部２２０を介して会話開始通知パケットを受信したか否かを判定する（ステップＳ３０１）。会話開始通知パケットを受信していなければ（ステップＳ３０１；Ｎｏ）、ステップＳ３０１に戻る。会話開始通知パケットを受信したなら（ステップＳ３０１；Ｙｅｓ）、端末制御部２３０は、会話通知パケットに含まれているＩＤとの会話（チャット）を行う準備をし、ＬＴＥ通信部２２０を介して会話出力サーバ３００が送信したシナリオデータを受信する（ステップＳ３０２）。
【００６６】
そして、会話出力部２３１は、そのシナリオデータをＬＴＥ通信部２２０を介して会話出力サーバ３００のＳＮＳに送信する。すると、ＳＮＳのクライアントソフトとしての会話出力部２３１は、ＳＮＳから返ってきたデータを会話出力端末２００のディスプレイ２７０に出力させるので、ＳＮＳ上での会話内容が出力される（ステップＳ３０３）。なお、会話出力サーバ３００の提供するＳＮＳは、アクセスしてきたユーザの居住国の情報に基づいて、クライアントソフトに返すデータを翻訳する機能を有していてもよい。この翻訳機能を有しているなら、各会話出力端末２００のディスプレイ２７０には、そのユーザの使用している自然言語での会話内容が出力されるようになる。
【００６７】
なお、端末制御部２３０は、会話内容を出力したら、近距離通信部２１０を介して誰の発言内容を出力したのかをロボット１００に通知してもよい。ロボット１００は、近距離通信部１２０を介して、会話相手の発言内容を出力したとの通知を受け取ったら、例えば尻尾１３６を振ってもよい。すると、会話相手からメッセージが来る度にロボット１００は尻尾１３６を振るので、ユーザには、まるでロボット１００が会話相手からのメッセージを読んでいるかのように見えることになる。この場合、近距離通信部１２０は、受信手段として機能する。
【００６８】
そして、端末制御部２３０は、ＬＴＥ通信部２２０を介して会話終了通知パケットを受信したか否かを判定する（ステップＳ３０４）。会話終了通知パケットを受信していなければ（ステップＳ３０４；Ｎｏ）、ステップＳ３０２に戻る。会話終了通知パケットを受信したなら（ステップＳ３０４；Ｙｅｓ）、会話を終了させて、ステップＳ３０１に戻る。
【００６９】
以上、会話内容出力のスレッド群について説明した。上述の処理により、会話出力サーバ３００がシナリオ送信スレッドのステップＳ３１１で選定した会話相手となる全ての会話出力端末２００（ステップＳ３１１で選定したＩＤで示されるロボット１００が無線接続している会話出力端末２００）のディスプレイ２７０に、会話相手との会話内容が出力される。
【００７０】
次に、会話出力サーバ３００のシナリオ送信スレッドのステップＳ３１３ステップのシナリオ選択処理の詳細について、図９を参照して説明する。
【００７１】
まず、シナリオ選択部３２１は、会話の話題を選定する（ステップＳ３２１）。この選定方法は任意だが、例えば、シナリオ記憶部３３１に記憶されている話題の中からランダムに選ぶ。ただし、最近選定した話題（例えば直近の５つの話題）については、選定対象から除外し、同じシナリオデータが選択されるのを防ぐ。
【００７２】
次に、シナリオ選択部３２１は、ユーザ状況記憶部３３３を参照して、各ロボット１００から送信された状況情報を取得する（ステップＳ３２２）。例えば、ロボット１００の状況情報（第１の状況情報）と、ロボット１００’の状況情報（第２の状況情報）と、を取得する。そして、選定した話題及び取得した状況情報（第１の状況情報及び第２の状況情報）に基づいて、シナリオ記憶部３３１を参照して、シナリオデータを取得する（ステップＳ３２３）。なお、会話相手選定（ステップＳ３１１）において、会話相手に仮想の（実在しない）ロボット１００が設定された場合は、ステップＳ３２２では会話相手の状況情報をランダムに設定してよい。
【００７３】
また、ステップＳ３２２では、シナリオ選択部３２１は、状況情報に加えて、又は、状況情報に代えて、ユーザプロファイル記憶部３３２を参照して、各ロボット１００のユーザに関する情報を取得してもよい。この場合、シナリオ選択部３２１は、ステップＳ３２３において、取得した状況情報とユーザに関する情報の少なくとも一方とステップＳ３２１で選定した話題とに基づいて、シナリオ記憶部３３１を参照して、シナリオデータを取得する。例えば、シナリオ選択部３２１は、ステップＳ３２２で、ロボット１００の状況情報とロボット１００のユーザに関する情報との少なくとも一方の情報（第１情報）と、ロボット１００’の状況情報とロボット１００’のユーザに関する情報との少なくとも一方の情報（第２情報）と、を取得する。そして、選定した話題並びに取得した第１情報及び第２情報に基づいて、シナリオ記憶部３３１を参照して、シナリオデータを取得する（ステップＳ３２３）。
【００７４】
そして、シナリオ選択部３２１は、取得したシナリオデータを必要に応じて修正する（ステップＳ３２４）。例えば、シナリオデータに「［私］」という文字列が含まれていた場合には、この部分を性別に応じて「私」又は「僕」に置換する処理を行う。また、シナリオデータの送信先のユーザの居住国の言語がシナリオデータの言語と異なる場合は、翻訳処理も行う。なお、シナリオ選択部３２１は、ユーザの居住国の情報をユーザプロファイル記憶部３３２から取得し、シナリオデータの言語をシナリオ記憶部３３１から取得する。これにより、シナリオ選択部３２１は、ユーザの居住国の言語がシナリオデータの言語と異なるか否かを判定することができる。この時、シナリオ選択部３２１は、居住国取得手段としても機能する。また、シナリオ選択部３２１は、ステップＳ３２１で、各発言内容がどのロボット１００の発言内容かを区別できるようにするために、発言する側のロボットのアイコンを付加する。このようにして、ユーザに提示される会話データが作成される。なお、シナリオ記憶部３３１に予め各国用のシナリオデータを記憶しておいて、ステップＳ３２３でシナリオデータを取得する際に、該シナリオデータの送信先のユーザの居住国の言語で記載されたシナリオデータを取得するようにしてもよい。
【００７５】
そして、シナリオ選択処理を終了する。通常、制御部３２０は、シナリオ記憶部３３１から２つのシナリオデータを選択及び送信したら、会話を終了させるので、１回の会話の中で上記シナリオ選択処理は、２回行われる。つまり、１回目のステップＳ３２１で第１の話題が選定され、第１の話題に基づき、ステップＳ３２３で第１のシナリオデータが取得され、最終的に第１の会話データが作成される。そして、２回目のステップＳ３２１で第２の話題が選定され、第２の話題に基づき、ステップＳ３２３で第２のシナリオデータが取得され、最終的に第２の会話データが作成される。シナリオ選択処理を実行する際、制御部３２０は、作成手段として機能する。
【００７６】
以上のシナリオ選択処理によって、選定された話題及び取得した状況情報に基づいた会話を生成できるシナリオデータを、会話出力サーバ３００は会話出力端末２００に送信できるようになる。
【００７７】
では、会話内容出力のスレッド群（図８）による処理について、具体例で説明する。ここでは、前提として、会話出力端末２００の近くにロボット１００が存在し、該ロボット１００は、図４に示すＩＤがＧｌａｄＤｏｇのユーザプロファイルを持つものとする。また、会話出力端末２００’の近くにロボット１００’が存在し、該ロボット１００’は、図４に示すＩＤがＨａｐｐｙＣａｔのユーザプロファイルを持つものとする。そして、これらロボット１００及びロボット１００’にはそれぞれユーザが近づいており、これらのロボット１００，１００’は会話要求パケットを送信していたものとする。
【００７８】
そして、ステップＳ３１１では、ＩＤがＧｌａｄＤｏｇのロボット１００とＩＤがＨａｐｐｙＣａｔのロボット１００’とが会話相手として選定されたこととする。そして、これらの状況情報は、図５に示す内容だったとする。また、最初のステップＳ３２１では、話題として「コミュニケーションの親密度」が選定され、２回目のステップＳ３２１では、話題として「記念日」が選定されたとする。
【００７９】
すると、最初のステップＳ３２２では、図５に示す状況情報から、それぞれの親密度レベルが算出される。例えば、親密度レベルを「話しかけられた回数」＋「見つめられた回数」＋「抱かれた回数」で表す（ただし、これらが５を超えたら５とし、１未満なら１とする）とすると、ＧｌａｄＤｏｇの親密度レベルは５、ＨａｐｐｙＣａｔの親密度レベルは１となる。すると、ステップＳ３２３では図３を参照して、ＧｌａｄＤｏｇの発言内容は「いっぱい遊んでくれたのでとても嬉しいよ。」になり、ＨａｐｐｙＣａｔの返答内容は「いいなぁ。［私］の主人は全然遊んでくれないんだ。」になる。
【００８０】
そして、ＨａｐｐｙＣａｔは図４を参照すると女性なので、シナリオデータの「いいなぁ。［私］の主人は全然遊んでくれないんだ。」は、ステップＳ３２４で「いいなぁ。私の主人は全然遊んでくれないんだ。」に修正される。また、図４に示すユーザプロファイル記憶部３３２によると、ＩＤがＨａｐｐｙＣａｔのロボット１００’のユーザはアメリカ人であることがわかるので、ロボット１００’に接続している会話出力端末２００’に送信するシナリオデータは英語に翻訳される。
【００８１】
そして、次のステップＳ３２２では、図５に示す状況情報から、本日がクリスマスに該当することがわかるので、ステップＳ３２３では図３を参照して、ＧｌａｄＤｏｇの発言内容は「メリークリスマス！」になり、画像ファイルとしてクリスマスカードが添付される。そして、ＨａｐｐｙＣａｔの返答内容は「クリスマスカード？  ありがとう！」になる。この場合、ステップＳ３２４では、一人称の修正は不要だが、会話出力端末２００’に送信するシナリオデータが英語に翻訳される。
【００８２】
上述のような処理が行われる結果、ロボット１００に接続している会話出力端末２００に表示される画面は図１０に示すようになり、ロボット１００’に接続している会話出力端末２００’に表示される画面は図１１に示すようになる。いずれの図でも、ロボット１００又はロボット１００’を示すアイコンと共に会話内容が表示され、どちらがロボット１００の発言内容で、どちらがロボット１００’の発言内容なのかが区別できるようになっていることがわかる。また、ロボット１００のユーザの居住国は日本なので、図１０に示される会話内容は日本語で表示されており、ロボット１００’のユーザの居住国はアメリカなので、図１１に示される会話内容は英語で表示されている。
【００８３】
以上説明したように、本実施形態では、各ユーザの会話出力端末２００，２００’のディスプレイに、あたかもロボット１００とロボット１００’とが会話しているかのような文章が表示される。したがって、ロボット１００，１００’に高い会話能力が備わっているかのように、ユーザに見せることができる。
【００８４】
（実施形態１の変形例１）
上述した具体例のように、最初の話題における会話で、自分（上記の例ではＧｌａｄＤｏｇ）の気分は嬉しいのに相手（上記の例ではＨａｐｐｙＣａｔ）の気分が落ち込んでいる場合は、次の話題に移る際に自分の発言内容の冒頭に「そっかー、じゃあ元気出して！」のような「つなぎ文」を追加してもよい。このような、話題間をつなげるつなぎ文を挿入することによって、会話の流れをより自然に見せることができる。このような処理を行う実施形態１の変形例１について説明する。
【００８５】
実施形態１の変形例１は、会話出力サーバ３００の機能構成として、記憶部３３０が、自分及び返答者の気分に応じたつなぎ文を記憶する「つなぎ文記憶部」（図示せず）を備え、シナリオ記憶部３３１の各シナリオデータには、自分及び返答者それぞれの気分を示す「気分」の情報も記憶されている。なお、この「気分」の情報は、図３に示す話題がコミュニケーションの親密度の場合の、レベル及び相手のレベルと同様の情報と考えることができる。
【００８６】
そして、２番目以降の話題におけるシナリオ選択処理のシナリオ修正（ステップＳ３２４）において、前回の話題のシナリオデータにおける自分及び返答者の気分に基づいて、つなぎ文記憶部から該気分に対応するつなぎ文を取得し、該つなぎ文を発言内容の冒頭に追加する処理を行う。なお、自分及び返答者の気分によっては、つなぎ文が不要の場合もありうるので、この場合はつなぎ文の追加は行わない。
【００８７】
以上の処理により、実施形態１においてＧｌａｄＤｏｇが「メリークリスマス！」と発言していた内容は、実施形態１の変形例１においては「そっかー、じゃあ元気出して！  メリークリスマス！」という発言内容に修正される。
【００８８】
このように、実施形態１の変形例１では、話題間の流れをより自然に見せることができる。したがって、ロボット１００，１００’により高い会話能力が備わっているように、ユーザに見せることができる。
【００８９】
（実施形態１の変形例２）
実施形態１では、会話出力サーバ３００がＳＮＳの機能を提供し、会話出力端末２００の会話出力部２３１が、このＳＮＳのクライアントソフトとして動作することによって、ロボット１００が他のロボット１００’と自然言語で会話しているように見える会話内容を会話出力端末２００のディスプレイに出力している。しかし、会話出力サーバ３００がＳＮＳの機能を提供することは必須ではない。ここでは、会話出力サーバ３００がＳＮＳの機能を提供しない場合でも、ロボット１００が他のロボット１００’と自然言語で会話しているように見える会話内容を会話出力端末２００のディスプレイに出力する実施形態１の変形例２について説明する。
【００９０】
実施形態１の変形例２では、会話内容出力のスレッド群（図８）の処理において、会話出力サーバ３００がシナリオデータとして送信する内容と、会話出力端末２００が該シナリオデータを受信する時の処理が、実施形態１と異なる。また、この変形例２においては、会話出力サーバ３００はＳＮＳの機能を提供する必要はない。以下の説明では、ロボット１００（会話出力端末２００と無線接続している）とロボット１００’（会話出力端末２００’と無線接続している）とが会話しているように見せる画面を出力する場合を想定する。
【００９１】
実施形態１の変形例２に係る会話出力サーバ３００は、シナリオ送信スレッド（図８の真ん中のフローチャート）のシナリオ送信（ステップＳ３１４）において、ロボット１００の発言内容だけでなく、ロボット１００’の返答内容もシナリオデータとして各会話出力端末２００に送信する。その際、会話出力サーバ３００は、この発言内容及び返答内容を、予め、シナリオ選択処理（図９）のシナリオ修正（ステップＳ３２４）において、送信先の会話出力端末２００のユーザの居住国の言語に翻訳しておく。
【００９２】
また、実施形態１の変形例２に係る会話出力部２３１は、会話出力スレッド（図８の左又は右のフローチャート）のシナリオ受信（ステップＳ３０２）において、ロボット１００の発言内容だけでなく、ロボット１００’の返答内容もシナリオデータとして会話出力サーバ３００から受信する。そして、会話内容出力（ステップＳ３０３）では、ステップＳ３０２で受信したロボット１００の発言内容とロボット１００’の返答内容とを順番に会話出力端末２００のディスプレイに出力する。
【００９３】
このような処理により、実施形態１の変形例２では、会話出力サーバ３００がＳＮＳの機能を提供しなくても、各ユーザの会話出力端末２００，２００’のディスプレイに、あたかもロボット１００とロボット１００’とが会話しているかのような文章が表示される。したがって、ロボット１００，１００’に高い会話能力が備わっているかのように、ユーザに見せることができる。また、会話出力サーバ３００の提供するＳＮＳが、アクセスしてきたユーザの居住国の情報に基づいて、クライアントソフトに返すデータを翻訳する機能を有していない場合でも、変形例２によれば、各会話出力端末２００のディスプレイには、そのユーザの使用している自然言語での会話内容が出力されるようになる。
【００９４】
（実施形態１の変形例３）
ロボット１００とロボット１００’との会話により、ロボット１００のユーザとロボット１００’のユーザとの会話を導く実施形態１の変形例３について説明する。
【００９５】
変形例３では、シナリオ記憶部３３１に記憶されているシナリオの話題として、図１２に示すように、ロボット１００（ロボット１００’）のユーザに関連する情報の話題、例えば「主人のＩＤ紹介」、「主人の趣味」等も用意しておく。そして、ユーザプロファイル記憶部３３２には、ユーザの使用しているＳＮＳの名称や、そのＳＮＳでのＩＤも記憶しておく。
【００９６】
そして、図１２に示すように、シナリオの話題が「主人のＩＤ紹介」の場合の発言内容を、例えば「［私］の主人は、［ＳＮＳの名称］というＳＮＳに、［そのＳＮＳでのＩＤ］というＩＤで参加しているんだよ。」とし、返答内容を「へぇ〜、そうなんだ。［私］の主人は、［ＳＮＳの名称］というＳＮＳに、［そのＳＮＳでのＩＤ］というＩＤで参加しているよ。」としたものをシナリオ記憶部３３１に記憶させておく。ここで、［ＳＮＳの名称］及び［そのＳＮＳでのＩＤ］の部分は、シナリオ選択処理（図９）のステップＳ３２４で、ユーザプロファイル記憶部３３２に記憶されている各ユーザの使用ＳＮＳの名称及びそのＳＮＳでのＩＤに置換される。
【００９７】
また、同じく図１２に示すように、シナリオの話題が「主人の趣味」の場合の発言内容としては、例えば主人の趣味の一つ（図１２では「読書」）を「私の主人の趣味の一つは読書だよ。」として紹介し、返答内容としては、共通の趣味（図１２では「読書」）がある場合は「［私］の主人の趣味も読書だよ。好きな作家や作品を紹介し合うと面白いかもね。」とし、共通の趣味が無い場合は、相手の趣味の一つ（図１２では「テニス」）を「そうなんだ。［私］の主人はテニスが趣味だよ。」としたものをシナリオ記憶部３３１に記憶させておく。
【００９８】
以上のような構成にすることにより、このように、実施形態１の変形例３では、ロボット１００，１００’により高い会話能力が備わっているように、ユーザに見せることができるだけでなく、ロボット１００，１００’同士の会話によって、そのユーザ同士の会話を導くことができ、ユーザ同士の交流の場を広げることができる。
【００９９】
（実施形態２）
実施形態１では、会話出力端末２００は、スマートフォンであり、会話内容は文字で出力された。しかし、会話の出力形態は文字に限られない。会話内容を音声で出力する実施形態２について説明する。
【０１００】
本発明の実施形態２に係る会話出力システム１００１は、図１３に示すように、ロボット１００と、会話出力端末２０１と、会話出力サーバ３００と、を備える。会話出力端末２０１は、スマートスピーカ（ＡＩスピーカ）であり、会話内容を音声で出力する。会話出力端末２０１の機能構成は会話出力端末２００の構成のディスプレイ２７０に代えてスピーカ２８０を備える。会話出力部２３１は、会話内容を音声合成して、スピーカ２８０から出力させる。スピーカ２８０は、出力部として機能する。
【０１０１】
ロボット１００の発言内容を出力する際の声と、会話相手のロボット１００’の発言内容を出力する際の声とは異なっている方が望ましい。そのため、会話出力端末２０１は複数の種類の声を出力できる機能を持っている。そして、実施形態２に係るユーザプロファイル記憶部３３２には、各ロボットについて、声の種類の情報も記憶されており、会話出力サーバ３００は、会話開始通知パケットの中に、各ロボット１００に対応する声の種類の情報も含めて送信する。そして、会話出力端末２０１は、会話開始通知パケットで通知された声の種類で、各ロボット１００に対応する発言内容を発話する。
【０１０２】
すると、会話出力端末２０１は、１台で声を使い分けることによって、複数のロボット１００が会話しているかのように発話することができる。
【０１０３】
以上のように、本実施形態では、各ユーザの会話出力端末２００，２００’が、あたかもロボット１００とロボット１００’とが会話しているかのような音声を出力する。したがって、ロボット１００，１００’に高い会話能力が備わっているように、ユーザに見せることができる。
【０１０４】
なお、会話出力端末２０１は、スピーカ２８０だけでなく、ディスプレイ２７０をも備えてもよい。この場合、会話出力部２３１は、会話内容をスピーカ２８０から音声で出力するとともに、ディスプレイ２７０に表示してもよい。また、ユーザの指示等に基づき、ある時は会話内容をスピーカ２８０から音声で出力し、別の時にはディスプレイ２７０に表示するというように、出力部が切り替え可能になっていてもよい。
【０１０５】
（実施形態２の変形例）
上記実施形態２では、会話出力端末２０１が出力する声について、異なるロボットの発言内容は異なる声で出力したとしても、ユーザは自分のロボット１００の発言内容がどの声に対応するのか判別しづらい場合があった。そこで、自分のロボット１００の声がどのような声なのかをユーザに分かり易く示すために、ロボット１００を会話出力端末２０１と接続する設定を行う際に、ロボット１００の声で「私は○○です。」等と会話出力端末２０１が発声するようにしてもよい。また、この設定の際に、ユーザが自分の好みの声（例えば、男性の声、女性の声、子供（男女の別あり）の声、お年寄り（男女の別あり）の声、アナウンサーの声、声優の声、等）をロボット１００の声として発声するように会話出力端末２０１に設定できるようにしてもよい。
【０１０６】
ここで、アナウンサーや声優等の声については、有名なアナウンサーや声優等の声については会話出力端末２０１に予め登録しておいてもよい。また、あまり有名でないアナウンサーや声優等の声についても会話出力端末２０１が発声できるように、音声データをダウンロードできるようにしてもよい。
【０１０７】
また、ロボット１００を会話出力端末２０１と接続する設定を行う時に限らず、任意のタイミングで（例えば、ユーザがロボット１００又は会話出力端末２０１に、声を確認したい旨の指示（例えばロボット１００又は会話出力端末２０１に備えられた（図示しない）声確認用のボタンを押す等）をしたタイミングで）、ロボット１００の声で「私は○○です。」等と会話出力端末２０１が発声するようにしてもよい。
【０１０８】
さらに、会話出力端末２０１は、ロボット１００を会話出力端末２０１と接続する設定を行う際にはロボット１００の声で発声しなくても、実際にロボット１００とロボット１００’とで会話しているかのようにユーザに認識させる際に、会話の最初で、ロボット１００の声で「私はロボット○○です。」、ロボット１００’の声で「私はロボット△△です。」等と、それぞれのロボットに対応する声で自己紹介的な内容を会話出力端末２０１が発声するようにしてもよい。
【０１０９】
（実施形態３）
実施形態１及び実施形態２では、会話出力サーバ３００は、会話出力端末２００，２０１とは別の装置であったが、会話出力サーバ３００の機能を、特定の会話出力端末が備えてもよい。このような実施形態３について説明する。
【０１１０】
本発明の実施形態３に係る会話出力システム１００２は、図１４に示すように、少なくとも、ロボット１００と、シナリオ会話出力端末２５０と、を備える。会話出力システム１００２は、実施形態１と同様に、ロボット１００と会話出力端末２００のペアを複数含んでいてもよい。ロボット１００は、シナリオ会話出力端末２５０及び会話出力端末２００を介して、他のロボット１００と会話しているようにユーザに見せることができる。
【０１１１】
実施形態３が実施形態１と異なっている点は、会話出力サーバ３００が存在しない代わりにシナリオ会話出力端末２５０が存在している点である。それ以外は、実施形態１と同様の構成であるため、以下、シナリオ会話出力端末２５０について説明する。
【０１１２】
シナリオ会話出力端末２５０も会話出力端末２００と同様に、ディスプレイを備えるスマートフォンであるが、会話出力サーバ３００の機能も備える。シナリオ会話出力端末２５０は、図１４に示すように、機能構成として、近距離通信部２１０と、ＬＴＥ通信部２２０と、端末制御部２３０と、記憶部２４０と、を備える。そして、端末制御部２３０は、会話出力部２３１及びシナリオ選択部２３２として機能する。また、記憶部２４０は機能構成として、シナリオ記憶部２４１、ユーザプロファイル記憶部２４２、ユーザ状況記憶部２４３と、を備える。
【０１１３】
近距離通信部２１０及びＬＴＥ通信部２２０並びに会話出力部２３１は、会話出力端末２００の備えるそれらと同様である。ただし、シナリオ会話出力端末２５０の備えるＬＴＥ通信部２２０は、会話出力端末２００の備えるＬＴＥ通信部２２０と通信する。例えば、シナリオ会話出力端末２５０の備えるＬＴＥ通信部２２０は、会話出力端末２００の備えるＬＴＥ通信部２２０が送信した状況情報を受信する。また、シナリオ会話出力端末２５０の備えるＬＴＥ通信部２２０は、会話出力端末２００にシナリオデータを送信する。このように、シナリオ会話出力端末２５０の備えるＬＴＥ通信部２２０は、会話出力端末２００と通信を行うので、対端末通信部として機能する。
【０１１４】
シナリオ選択部２３２は、実施形態１の会話出力サーバ３００が備えるシナリオ選択部３２１と同様である。また、シナリオ記憶部２４１、ユーザプロファイル記憶部２４２及びユーザ状況記憶部２４３は、それぞれ、実施形態１の会話出力サーバ３００が備えるシナリオ記憶部３３１、ユーザプロファイル記憶部３３２及びユーザ状況記憶部３３３と同様である。
【０１１５】
ロボット１００が、シナリオ会話出力端末２５０及び会話出力端末２００を介して、他のロボット１００と会話する処理についても、以下の２点を除くと、同じ処理を適用できる。１つ目は、会話出力サーバ３００の処理をシナリオ会話出力端末２５０が代わりに行う点である。また、２つ目は、シナリオ会話出力端末２５０に接続しているロボット１００が会話相手に選定された場合には、シナリオ会話出力端末２５０は、会話出力端末２００と会話出力サーバ３００の処理を並行して別スレッドで行う点である。この場合、シナリオ会話出力端末２５０で行われる状況中継スレッドと状況更新スレッドとの間の通信は、スレッド間通信によって行われる（ＬＴＥ通信部２２０は使われない）。同様に、シナリオ会話出力端末２５０で行われる、要求中継スレッドと要求更新スレッドとの間の通信、及び、会話出力スレッドとシナリオ送信スレッドとの間の通信も、スレッド間通信によって行われる（ＬＴＥ通信部２２０は使われない）。
【０１１６】
以上の構成及び処理内容により、実施形態３では、会話出力サーバ３００を用意しなくても、シナリオ会話出力端末２５０は、各ロボット１００から受信した状況情報に基づいたシナリオデータを各会話出力端末２００に送信することができる。このため、本実施形態では、会話出力サーバ３００を用意しなくても、各ユーザのシナリオ会話出力端末２５０及び会話出力端末２００のディスプレイに、あたかもロボット１００とロボット１００’とが会話しているかのような文章が表示される。したがって、ロボット１００，１００’に高い会話能力が備わっているかのように、ユーザに見せることができる。
【０１１７】
（実施形態４）
上記実施形態では、主にＳＮＳ機能を利用して、ロボットと他のロボットのコミュニケーションを可能としている。そして、ユーザは、自分の保有するロボットが、図１０や図１１に示すような流暢な会話のやり取りをしているのを見て、「このロボットは音声会話機能が無いか又は不十分なロボットなのに、こんな流暢な会話ができるのか」と感心するとともに、その会話のやり取りを見て楽しむことができる。各ロボットにはそれぞれユーザがいるので、ロボット１００のユーザはロボット１００の会話相手であるロボット１００’等のロボットのユーザがどんなユーザなのか気になってくることが考えられる。
【０１１８】
そのような場合に、ユーザ同士の交流を可能にするために、実施形態１の変形例３では、シナリオ記憶部３３１に記憶されているシナリオの話題として、ロボット１００及びロボット１００’の各々のユーザの「主人のＩＤ紹介」、「主人の趣味」等も用意し、また、ユーザプロファイル記憶部３３２には、ユーザの使用しているＳＮＳの名称や、そのＳＮＳでのＩＤも記憶しておくこととした。これによって、ロボット１００のユーザとロボット１００’のユーザである他のユーザのコミュニケーションをはかることを可能にした。
【０１１９】
しかし、実施形態１の変形例３では、シナリオの話題は会話出力サーバ３００が勝手に選定するため、ユーザが知りたい時に知りたい内容の会話が行われるとは限らない。また、ユーザによっては、自分の個人情報を他人に知られたくない場合も考えられる。そこで、ユーザが他のユーザと交流したいと思った時にだけ、個人情報の公開を行うことを可能にする実施形態４について、説明する。
【０１２０】
本発明の実施形態４に係る会話出力システム１００３は、図１５に示すように、ロボット１０１と、会話出力端末２０２と、会話出力サーバ３０１と、を備える。ロボット１０１は、ユーザ意向取得部１３０を備える。ユーザ意向取得部１３０は、ユーザが自分の個人情報（自分が参加しているＳＮＳやＩＤ、自分の趣味等）を公開したいと考えているか否か示す情報（ユーザ意向情報）を取得する。ユーザ意向取得部１３０は例えば単なるスイッチでもよい（ユーザが個人情報を公開したい場合はＯＮ、公開したくない場合はＯＦＦに設定する）。ユーザ意向取得部１３０は、ユーザ意向情報取得手段として機能する。また、ロボット１０１は、音声認識によってユーザ意向情報を取得するようにしてもよい。この場合、ユーザ意向取得部１３０は、マイク１３３と音声認識部（図示せず）とによって構成されることになる。
【０１２１】
ロボット１０１は、ユーザ意向取得部１３０が取得したユーザ意向情報を、近距離通信部１２０を介して、会話出力端末２０２に送信する。そして、会話出力端末２０２は、ロボット１０１から受信したユーザ意向情報を会話出力サーバ３０１に送信する。そして、会話出力サーバ３０１は、受信したユーザ意向情報に基づき、シナリオを選択する。
【０１２２】
例えば、ロボット１０１とロボット１０１’とが会話相手として選定している場合を考える。そして、ロボット１０１から送信されたユーザ意向情報とロボット１０１’から送信されたユーザ意向情報とが両方とも「個人情報公開不可」の場合は、シナリオを選択する際に、「主人のＩＤ紹介」、「主人の趣味」等、個人情報が公開されてしまう話題からはシナリオを選択しないようにする。逆に、ユーザ意向情報が両方とも「個人情報公開可能」の場合は、シナリオを選択する際に、「主人のＩＤ紹介」、「主人の趣味」等、個人情報が公開される話題のシナリオを頻繁に選択するようにする。
【０１２３】
また、会話しているロボット１０１のうち一方のユーザ意向情報だけが「個人情報公開不可」の場合は、会話出力サーバ３０１は、「［私］の主人は個人情報を交換したがっているだけど、だめかな？」等の発言内容を会話出力端末２０２に送信することによって、「個人情報公開不可」に設定しているユーザが、個人情報の公開を許可する機会を与える。なお、会話出力サーバ３０１は、「個人情報公開不可」に設定している（ロボット１０１のユーザ意向取得部１３０で取得されるユーザ意向情報が「個人情報を公開したくない」である）ユーザに個人情報の公開を許可する機会を与えずに、「個人情報公開可能」としている（ロボット１０１のユーザ意向取得部１３０で取得されるユーザ意向情報が「個人情報を公開したい」である）ユーザの個人情報だけが公開されるシナリオを選択するようにしてもよい。
【０１２４】
また、会話出力端末２０２は、ユーザ入力部２６０を備える。ユーザ入力部２６０は、ユーザが入力した発言内容（文章）を受け付け、会話出力端末２０２は、それを会話出力サーバ３０１が提供するＳＮＳに投稿する。これにより、ロボット１０１のユーザは、ロボット１０１と他のロボット１０１’とが会話しているＳＮＳに入って、他のロボット１０１’のユーザと会話することができる。
【０１２５】
例えば、以下のような会話例（シナリオ例）が考えられる。
ＧｌａｄＤｏｇ：いっぱい遊んでくれたので、とても楽しいよ。
ＨａｐｐｙＣａｔ：よかったね。実は［私］の主人もいっぱい遊んでくれたんだ。
ＧｌａｄＤｏｇ：［私］の主人の趣味はテニスだよ。
ＨａｐｐｙＣａｔ：そうなんだ。［私］の主人の趣味もテニスだよ。  今度一緒にテニスしたら楽しいかもね。
ここで、図１２に示すシナリオには予め趣味の組合せを想定したシナリオが用意されている。しかしこれに限られない。例えば、シナリオ選択処理（図９）において、会話相手の趣味が一致するか否かを判断する判断ステップを追加し、一致する場合には、そのことをお互いに言い合うシナリオを生成するようにしてもよい。上記会話の場合は、趣味がテニスで一致するので、例えば、以下のようなシナリオが生成されてもよい。
ＧｌａｄＤｏｇ：趣味が同じだね！
ＨａｐｐｙＣａｔ：そうだね。同じだね。
【０１２６】
この会話を見たロボット１０１のユーザが相手のロボット１０１’のユーザと交流を持ちたいと思った場合は、ロボット１０１のユーザ意向取得部に、個人情報を公開したい旨を伝える（例えば、個人情報を公開してもよいことを示すスイッチをＯＮにする）。すると、このユーザ意向情報は会話出力端末２０２を介して会話出力サーバ３０１に送信される。ロボット１０１の会話相手のロボット１０１’のユーザも同じく個人情報を公開したくなったら、ロボット１０１’のユーザ意向取得部１３０は、個人情報を公開したいというユーザ意向情報を取得することになり、このユーザ意向情報は会話出力サーバ３０１に送信される。
【０１２７】
すると、ユーザ意向情報とが両方とも「個人情報公開可能」となるので、会話出力サーバ３０１は、シナリオを選択する際に、「主人のＩＤ紹介」、「主人の趣味」等、個人情報が公開される話題のシナリオを頻繁に選択するようになる。例えば、「主人の住所」という話題が選択されると、以下のような会話が行われる。
ＧｌａｄＤｏｇ：［あなた］の主人はどこに住んでいるの？  ［私］の主人は東京に住んでいるよ。
ＨａｐｐｙＣａｔ：［私］の主人はシアトルに住んでいるよ。
また、例えば、「主人のメールアドレス」という話題が選択されると、以下のような会話が行われる。
ＧｌａｄＤｏｇ：［あなた］の主人のメールアドレスは何？  ［私］の主人のメールアドレスは、ｎａｍｅ＠ｎｅ．ｊｐだよ。
ＨａｐｐｙＣａｔ：［私］の主人のメールアドレスは、ｎａｍｅ＠ｎｅｔだよ。
【０１２８】
ここでは、ロボット同士の会話でユーザの情報がやりとりされているが、ユーザがロボット１０１同士の会話のやり取りを見ていて、相手のロボット１０１’のユーザに興味を持ったとき、会話出力端末２０２からＳＮＳを通じて、ユーザ自身が相手のロボット１０１’のユーザと会話するようにしてもよい。
【０１２９】
例えば、以下のような会話も考えられる。
ＧｌａｄＤｏｇ：いっぱい遊んでくれたので、とても楽しいよ。
ＨａｐｐｙＣａｔ：よかったね。実は［私］の主人もいっぱい遊んでくれたんだ。
ＧｌａｄＤｏｇ：［私］の主人の趣味はテニスだよ。
ＨａｐｐｙＣａｔ：そうなんだ。［私］の主人の趣味もテニスだよ。  今度一緒にテニスしたら楽しいかもね。
【０１３０】
このような会話がロボット１０１同士で行われた後、ユーザ同士が直接以下のように会話することもできる。
Ｔａｒｏｕ：はじめまして。ＧｌａｄＤｏｇのユーザのＴａｒｏｕと申します。直接ご連絡してもよろしいでしょうか？
Ｌｉｌｙ：はじめまして。構いませんよ。Ｔａｒｏｕ：ありがとうございます。テニスがご趣味なんですね。私もテニスが趣味なんです。
Ｌｉｌｙ：それは奇遇ですね。
このように、ロボット１０１の会話を通じてユーザ同士がコミュニケーションを図ることができる。
【０１３１】
なお、実施形態４の変形例として、ユーザ意向取得部１３０をロボット１０１ではなく、会話出力端末２０２が備えてもよい。この場合、ユーザは会話出力端末２０２が備えるタッチパネル等を操作して、個人情報の公開可否を入力することができ、ユーザ意向取得部１３０は該タッチパネル等からユーザ意向情報を取得する。
【０１３２】
（実施形態５）
上記実施形態１では、ロボット１００は、ＬＴＥ通信部を備えていないため、状況取得部１１０で取得した状況情報を近距離通信部１２０により会話出力端末２００に送信し、会話出力端末２００が当該状況情報をＬＴＥ通信部２２０により会話出力サーバ３００に送信していた。しかし、ロボットがＬＴＥ通信部を備えているなら、状況情報を直接会話出力サーバ３００に送信することが可能になる。また、実施形態１では、状況情報はロボット１００が備える状況取得部１１０が取得していたが、ロボットとは別個に設けたセンサでも状況情報を取得できるようにすれば、ロボットが備えていないセンサによる状況情報を利用することができるようになる。このような実施形態５について説明する。
【０１３３】
本発明の実施形態５に係る会話出力システム１００４は、図１６に示すように、ロボット１０２と、会話出力端末２００と、会話出力サーバ３００と、センサ装置４００と、を備える。センサ装置４００は、通常、ロボット１０２に装着され、ロボット１０２の状況取得部１１０の機能を補う。ただし、センサ装置４００は、ロボット１０２の周囲の状況の情報を取得可能であれば、必ずしもロボット１０２に装着される必要はない。ロボット１０２、会話出力端末２００及びセンサ装置４００は、近距離無線通信により無線接続して三つ組を形成している。会話出力システム１００４は、ロボット１０２、会話出力端末２００及びセンサ装置４００による三つ組を複数（例えば、ロボット１０２と会話出力端末２００とセンサ装置４００、ロボット１０２’と会話出力端末２００’とセンサ装置４００’等）含んでいてもよい。
【０１３４】
センサ装置４００は、状況取得部４１０と、近距離通信部４２０と、を備え、状況取得部４１０が取得した状況情報をロボット１０２に送信する。
【０１３５】
状況取得部４１０は、センサ装置４００が備える各種センサ（温度センサ、湿度センサ、照度センサ、人感センサ等）から、ロボット１０２の周囲の状況の情報である状況情報を取得する。
【０１３６】
近距離通信部４２０は、近距離無線通信デバイス（例えばＢｌｕｅｔｏｏｔｈ（登録商標）の通信デバイス）を備え、状況取得部４１０が取得した状況情報をロボット１０２に送信する。なお、図１６では示していないが、近距離通信部４２０が会話出力端末２００の近距離通信部２１０と通信して、状況取得部４１０が取得した状況情報を会話出力端末２００に送信するようにしてもよい。
【０１３７】
なお、図示しないが、センサ装置４００がＬＴＥ通信部を備え、状況取得部４１０が取得した状況情報を直接会話出力サーバ３００に送信できるようにしてもよい。
【０１３８】
また、センサ装置４００は複数存在してもよい。例えば、センサとして、温度センサのみを備えたセンサ装置４００Ａ、湿度センサのみを備えたセンサ装置４００Ｂ、照度センサのみを備えたセンサ装置４００Ｃ、が存在し、各センサ装置４００Ａ、４００Ｂ、４００Ｃが、それぞれ自身の備えるセンサで取得した状況情報をロボット１０２に送信してもよい。
【０１３９】
ロボット１０２は、実施形態１に係るロボット１００の構成に加えて、ＬＴＥ通信部１４０を備える。ＬＴＥ通信部１４０は、ＬＴＥの通信規格で通信するデバイスを備え、会話出力サーバ３００と通信する。例えば、ＬＴＥ通信部１４０は、会話出力サーバ３００に状況情報を送信する。
【０１４０】
また、ロボット１０２の近距離通信部１２０は、会話出力端末２００の近距離通信部２１０だけでなく、センサ装置４００の近距離通信部４２０とも通信し、センサ装置４００からセンサ装置４００が取得した状況情報を受信する。
【０１４１】
なお、ロボット１０２は、状況取得部１１０を備えなくてもよい。この場合、ロボット１０２の周囲の状況の情報である状況情報は、全てセンサ装置４００で取得されることになる。
【０１４２】
会話出力端末２００及び会話出力サーバ３００の構成は実施形態１と同じであるので、説明を省略する。また、ロボット１０２、会話出力端末２００及び会話出力サーバ３００が実行する各種スレッドの処理内容も実施形態１と共通する部分が多いため、以下では異なる部分を中心に説明する。
【０１４３】
実施形態５に係るロボット１０２は、状況送信スレッド（図６の左）のステップＳ１０１において、状況取得部１１０で取得した状況情報だけでなく、センサ装置４００の状況取得部４１０が取得した状況情報も近距離通信部１２０を介して取得する。
【０１４４】
また、実施形態５に係るロボット１０２は、状況送信スレッド（図６の左）のステップＳ１０２において、ステップＳ１０１で取得した状況情報をＬＴＥ通信部１４０を介して会話出力サーバ３００に送信してもよい。このような処理にする場合、会話出力端末２００は、状況中継スレッド（図６の真ん中）を実行しなくてもよく、会話出力サーバ３００は、状況更新スレッド（図６の右）のステップＳ１２１において、状況情報がロボット１０２から送られてくるまで待ち続け、送られてきたらＬＴＥ通信部３１０で状況情報を受信する。
【０１４５】
また、実施形態５に係るロボット１０２は、センサ装置４００がロボット１０２に装着されている場合には、要求送信スレッド（図７の左）のステップＳ２０１やステップＳ２０３において、センサ装置４００から得られる状況情報も用いてユーザが接近したか否かの判定やユーザがまだ近くにいるか否かの判定を行ってもよい。
【０１４６】
上記の処理以外の処理については、実施形態１と共通であるため、説明を省略する。実施形態５では、ロボット１０２が直接会話出力サーバ３００に状況情報を送信するので、会話出力端末の負荷を低下させることができる。
【０１４７】
また、実施形態５では、センサ装置４００が取得する状況情報も利用可能になるので、シナリオに用いることができる状況情報の幅が広がり、シナリオのバリエーションを広げることができる。例えば、ロボット１０２はコストを下げるために最低限のセンサしか搭載していないことも考えられるが、この場合でも、ユーザは後からセンサ装置４００を買い足すことにより、よりバリエーションの広がった会話を楽しむことができるようになる。
【０１４８】
なお、実施形態５において、ロボット１０２が状況情報を直接会話出力サーバ３００に送信しなくてもよい場合（会話出力端末２００を経由して状況情報を送信する場合）には、ロボット１０２は、ＬＴＥ通信部１４０を備えなくてもよい。また、実施形態５において、状況情報のバリエーションを広げる必要が無い場合には、会話出力システム１００４は、センサ装置４００を備えなくてもよい。
【０１４９】
（実施形態６）
上記実施形態では、状況情報に基づいて会話出力サーバ３００がシナリオデータを選択し、それを会話出力端末２００が出力することによって、ロボット１００に高い会話能力が備わっているかのように、ユーザに見せることができた。しかし、シナリオデータによらずとも、ロボット１００に高い会話能力が備わっているかのように、ユーザに見せることはできる。このような実施形態６について説明する。
【０１５０】
本発明の実施形態６に係る会話出力システム１００５は、図１７に示すように、ロボット１０３と、会話出力端末２０３と、会話出力サーバ３０２と、を備える。
【０１５１】
ロボット１０３は、実施形態１のロボット１００の構成に加えて、自己診断部１５０を備える。自己診断部１５０は、ロボット１０３自身の診断を行い、異常が見つかったら、当該異常に関する情報を状況情報として近距離通信部１２０を介して会話出力端末２０３に送信する。例えば、足１３５や尻尾１３６を動かすことができなくなったり、これらの動きが悪くなったりしたら、そのことを示す情報を状況情報として会話出力端末２０３に送信する。
【０１５２】
会話出力端末２０３は、実施形態４の会話出力端末２０２の構成に加えて、端末制御部２３０が状況通知作成部２３３を備える。また、会話出力端末２０３は、ロボット１０３の修理等を請け負うサービスセンターの連絡先の情報を記憶しており、ＬＴＥ通信部２２０を介してサービスセンターにメッセージを通知することができる。
【０１５３】
会話出力端末２０３においては、近距離通信部２１０がロボット１０３からロボット１０３の異常に関する状況情報を受信すると、状況通知作成部２３３が当該状況情報を通知するための自然言語のメッセージを作成する。例えば、足１３５を動かすことができない旨の状況情報を受信したら、状況通知作成部２３３は、「私は型番○○、製造番号△△のロボットですが、今朝急に足を動かすことができなくなりました。どうすれば良いでしょうか。」のようなメッセージを作成する。
【０１５４】
そして、会話出力端末２０３は、状況通知作成部２３３が作成したメッセージを、ＬＴＥ通信部２２０を介してサービスセンターに通知するとともに、当該メッセージによるサービスセンターとのやり取りを会話出力部２３１で出力する。
【０１５５】
このようなメッセージによるサービスセンターとのやり取りを出力することにより、会話出力システム１００５は、ユーザにあたかもロボット１０３がサービスセンターにいる担当者（人物）と会話をしているように見せることができる。なお、このように、会話出力端末２０３は、ユーザ入力部２６０を用いることなく、ユーザにあたかもロボット１０３がサービスセンターにいる担当者と会話をしているように見せることができるので、この機能を提供するだけであれば、会話出力端末２０３はユーザ入力部２６０を備えなくてよい。
【０１５６】
会話出力サーバ３０２は、実施形態１の会話出力サーバ３００の構成に加えて、文作成部３２２を備える。なお、会話出力サーバ３０２において、シナリオ送信スレッド（図８）の処理を行わない場合は、会話出力サーバ３０２は、シナリオ選択部３２１やシナリオ記憶部３３１を備えなくてもよい。
【０１５７】
文作成部３２２は、発言文（ユーザ等から入力された文）が与えられると、その発言に返答しているかのように見える返答文を作成する。返答文の作成方法は任意だが、例えば、以下のような処理を行うことが考えられる。
【０１５８】
予め、ＬＴＥ通信部３１０を介して、インターネット等から公開されているＳＮＳの会話のやり取りを大量に取得して記憶部３３０に保存しておく。そして、発言文が与えられたら、記憶部３３０に記憶されている会話のやり取りの中から、発言文に最も近い文を検索し、当該やり取りにおいて、その発言文に最も近い文の返答として用いられている文を返答文とする。発言文に最も近い文を検索する処理においては、厳密に最も近い文を検索する必要はなく、例えば「発言文に含まれる何らかのキーワードを含む文を検索し、その文に対する返答として用いられている文を返答文とする」というような処理を行うことにしてもよい。
【０１５９】
そして、会話出力サーバ３０２は、文作成部３２２が作成した文をＬＴＥ通信部３１０を介して会話出力端末２０３に送信し、会話出力端末２０３は、当該文を会話出力部２３１で出力する。このようにすることにより、ユーザはロボット１０３と擬似的なチャットを楽しむことができるようになる。この疑似チャットのためのスレッド群について、図１８を参照して説明する。
【０１６０】
会話出力端末２０３は、電源が投入されると、図１８の左側のフローチャートに示す文入出力スレッドが起動する。また、会話出力サーバ３０２は、電源が投入されると図１８の真ん中のフローチャートに示す文送信スレッドが起動する。なお、図１８の右側のフローチャートに示す文入出力スレッドは、左側のフローチャートと同一である。会話出力端末２０３に無線接続しているロボット１０３の会話相手である他のロボット１０３’に無線接続している会話出力端末２０３’で、右側のフローチャートが実行されることを想定している。また、図１８において、点線矢印は各スレッド間でデータが送受信されることを示している。
【０１６１】
文入出力スレッドと文送信スレッドは、会話出力サーバ３０２がシナリオ選択部３２１やシナリオ記憶部３３１を備える場合には、図８を参照して説明した会話内容出力のスレッド群と並行に動作する。その場合でも、会話開始通知受信判定（ステップＳ３０１）及び会話終了通知受信判定（ステップＳ３０４）に関しては、文入出力スレッド（図１８）と会話出力スレッド（図８）とで共通の処理になる。また、会話相手選定（ステップＳ３１１）、会話開始通知送信（ステップＳ３１２）、会話終了判定（ステップＳ３１５）及び会話終了通知送信（ステップＳ３１６）に関しては、文入出力スレッド（図１８）と会話出力スレッド（図８）とで共通の処理になる。
【０１６２】
従って、会話出力サーバ３０２がシナリオ選択部３２１やシナリオ記憶部３３１を備える場合、文入出力スレッドのステップＳ３３１〜ステップＳ３３７が、シナリオ受信（ステップＳ３０２）及び会話内容出力（ステップＳ３０３）と並行して動作し、文送信スレッドのステップＳ３４１〜ステップＳ３４４が、シナリオ選定処理（ステップＳ３１３）及びシナリオ送信（ステップＳ３１４）と並行して動作することになる。会話出力サーバ３０２がシナリオ選択部３２１及びシナリオ記憶部３３１を備える場合も備えない場合も、図１８で図８と符号が共通するステップの処理は、図８で説明した処理と同じなので、以下、図８で説明した処理と異なる部分の処理について説明する。
【０１６３】
まず、入出力スレッドでは、会話開始通知パケットを受信したら（ステップＳ３０１；Ｙｅｓ）、端末制御部２３０は、ユーザ入力部２６０から発言文が入力されているか又はＬＴＥ通信部２２０から発言文を受信しているか否かを判定する（ステップＳ３３１）。発言文の入力も受信もなければ（ステップＳ３３１；Ｎｏ）、ステップＳ３３１に戻る。
【０１６４】
ユーザ入力部２６０から発言文が入力されているか又はＬＴＥ通信部２２０から発言文を受信しているなら（ステップＳ３３１；Ｙｅｓ）、端末制御部２３０は、ユーザ入力部２６０から発言文が入力されているか否かを判定する（ステップＳ３３２）。ユーザ入力部２６０から発言文が入力されていないなら（ステップＳ３３２；Ｎｏ）、ステップＳ３３４に進む。
【０１６５】
ユーザ入力部２６０から発言文が入力されているなら（ステップＳ３３２；Ｙｅｓ）、端末制御部２３０は、ユーザ入力部２６０から入力された発言文をＬＴＥ通信部２２０を介して、会話出力サーバ３０２に送信する（ステップＳ３３３）。すると、会話出力サーバ３０２の文送信スレッドでは、制御部３２０がＬＴＥ通信部３１０を介して、会話出力端末２０３から送信された発言文を受信し（ステップＳ３４１）、発言文の送信元も含め会話相手となっている全ての会話出力端末２０３に、受信した発言文を送信する（ステップＳ３４２）。
【０１６６】
そして、文送信スレッドでは、文作成部３２２が、該発言文に対する返答文を作成し（ステップＳ３４３）、会話相手となっている全ての会話出力端末２０３に、作成した返答文を送信する（ステップＳ３４４）。
【０１６７】
一方、文入出力スレッドでは、端末制御部２３０がＬＴＥ通信部２２０を介して会話出力サーバ３０２から送信された発言文を受信し（ステップＳ３３４）、受信した発言文を会話出力部２３１が出力する（ステップＳ３３５）。
【０１６８】
そして、端末制御部２３０がＬＴＥ通信部２２０を介して会話出力サーバ３０２から送信された返答文を受信し（ステップＳ３３６）、受信した返答文を会話出力部２３１が出力する（ステップＳ３３７）。この他の処理は、図８を参照して説明した（同一符号で示した）各ステップの処理と同じなので、説明を省略する。
【０１６９】
以上、図１８に示す処理を行うことにより、会話出力端末２０３は、ユーザ等が入力した発言文に対して、例えばＳＮＳで実際に行われた会話に基づく返答を出力することができるので、会話出力システム１００５は、ロボット１０３が自然言語で会話をしているようにユーザに認識させることができる。
【０１７０】
なお、上述の実施形態では、ＬＴＥ通信部１４０，２２０，３１０は、ＬＴＥの通信規格で通信するデバイスを備えるものとして説明したが、ＬＴＥ通信部１４０，２２０，３１０は、ＬＴＥの通信規格に限定されるものではない。各ＬＴＥ通信部１４０，２２０，３１０間で通信可能なデバイスであれば、任意のデバイスを利用することができる。
【０１７１】
また、上述の実施形態では、データ通信を無線で行うこととして説明したが、データ通信の一部又は全部を無線に代えて有線で行ってもよい。特に、実施形態３においては、上述したように、シナリオ会話出力端末２５０で行われる状況中継スレッドと状況更新スレッドとの間の通信、要求中継スレッドと要求更新スレッドとの間の通信、及び、会話出力スレッドとシナリオ送信スレッドとの間の通信は、スレッド間通信によって行われ、該通信ではＬＴＥ通信部２２０は使われない。
【０１７２】
（実施形態の効果）
ユーザが、自分の保有するロボットが、会話出力端末に文字で表示されたり、会話出力端末で音声で発声されたりする流暢な会話のやり取りを見たり聞いたりして、音声会話機能が無いか又は不十分なロボットであっても、あたかも優れた会話能力を有しているように感じることができる。また、ユーザは、そのロボット同士の会話のやり取りを見て楽しむことができる。更には、ユーザは、その会話を通じて他のユーザとのコミュニケーションを図ることができる。そして、ユーザの知らない間にロボット同士が友達になっているかのような会話が出力されるので、ユーザもロボット同士の会話に触発されて、コミュニケーションの輪を広げることができる。
【０１７３】
なお、会話出力端末２００，２０１，２０２、シナリオ会話出力端末２５０及び会話出力サーバ３００，３０１の各機能は、通常のＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等のコンピュータによっても実施することができる。具体的には、上記実施形態では、会話出力端末２００，２０１，２０２、及びシナリオ会話出力端末２５０の端末制御部２３０並びに会話出力サーバ３００，３０１の制御部３２０が実行するプログラムが、記憶部２４０，３３０のＲＯＭに予め記憶されているものとして説明した。しかし、プログラムを、フレキシブルディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）及びＭＯ（Ｍａｇｎｅｔｏ−Ｏｐｔｉｃａｌ  Ｄｉｓｃ）等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムをコンピュータに読み込んでインストールすることにより、上述の各機能を実現することができるコンピュータを構成してもよい。
また、上記実施の形態では、ロボット１００と１００’の１対１の会話を例にとって説明したが、ＬＩＮＥ（登録商標）のグループ機能のように、複数のロボットが会話するようにしてもよい。この場合、シナリオデータは複雑且つ容量が大きくなるが、基本的にはパターンが増えるだけである。
また、シナリオデータは予め用意されているものとして説明したが、学習機能やＡＩによって、逐次更新又は新規作成されていくようにすることもできる。
また、上記実施の形態では、ロボット１００とロボット１００’の情報を同じ会話出力サーバが両方とも管理しているので、会話出力サーバがロボット１００の発言もロボット１００’の発言も生成することになり、シナリオに沿ってつじつまが合うように会話文を作成することができる。
【０１７４】
以上、本発明の好ましい実施形態について説明したが、本発明は係る特定の実施形態に限定されるものではなく、本発明には、特許請求の範囲に記載された発明とその均等の範囲が含まれる。以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【０１７５】
（付記１）
ロボットのユーザに関する情報と、前記ロボットの周囲の状況の情報である状況情報との少なくとも一方の情報である第１情報を取得する第１情報取得手段と、
取得した前記第１情報に基づいて、前記ロボットと所定の対象とが少なくとも前記第１情報に適合する会話をしているように前記ユーザに認識させるための会話データを作成する作成手段と、
前記作成した会話データに基づく情報を出力するように出力部を制御することによって、前記ユーザに、前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させる出力制御手段と、を備え、
前記ロボットは、前記会話データに基づく会話のレベル以上のレベルの会話を実行する機能を有していない、
会話出力システム。
【０１７６】
（付記２）
前記ロボットは、
前記第１情報としての前記状況情報を取得する第１センサと、
前記第１センサが取得した前記第１情報としての前記状況情報を前記会話出力システムに送信する状況送信部と、を備え、
前記会話出力システムは、会話出力サーバ及び会話出力端末を備え、
前記会話出力サーバは、対端末通信部と、前記第１情報取得手段と、前記作成手段と、を有し、
前記会話出力端末は、前記出力制御手段と、前記出力部と、状況受信部と、対サーバ通信部と、を有し、
前記会話出力端末の前記出力制御手段は、前記状況受信部を介して、前記ロボットの前記状況送信部が送信した前記第１情報としての前記状況情報を受信することにより取得し、前記対サーバ通信部を介して、前記受信した前記第１情報としての前記状況情報を前記会話出力サーバの前記対端末通信部に送信し、
前記会話出力サーバの前記第１情報取得手段は、前記対端末通信部を介して、前記送信された前記第１情報を、受信することにより取得し、前記作成手段により作成した前記会話データを、前記対端末通信部を介して、前記会話出力端末の前記対サーバ通信部に送信し、
前記会話出力端末の前記出力制御手段は、前記対サーバ通信部を介して、前記会話出力サーバが送信した前記会話データを受信することにより取得し、前記取得した会話データに基づく情報を出力するように前記出力部を制御することによって、前記ユーザに、前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させる、
付記１に記載の会話出力システム。
【０１７７】
（付記３）
前記会話出力サーバは、ＳＮＳ（Ｓｏｃｉａｌ  Ｎｅｔｗｏｒｋｉｎｇ  Ｓｅｒｖｉｃｅ）を提供可能に構成され、
前記会話出力端末の前記出力制御手段は、
前記会話出力サーバが提供する前記ＳＮＳにアクセスするＳＮＳクライアントソフトとして機能し、
前記取得した会話データを、前記ＳＮＳへの書き込み内容として、前記対サーバ通信部を介して、前記会話出力サーバの前記対端末通信部に送信し、
前記会話データに基づく情報を出力するように前記出力部を制御することによって、前記ユーザに、前記ＳＮＳ上で前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させる、
付記２に記載の会話出力システム。
【０１７８】
（付記４）
前記作成手段は、
会話の話題を選定し、
少なくとも前記選定した話題と前記第１情報とに基づいて前記会話データを作成する、
付記１から３のいずれか１つに記載の会話出力システム。
【０１７９】
（付記５）
前記作成手段は、
会話の第１の話題を選定し、
前記選定した第１の話題と前記第１情報とに基づいて第１の会話データを作成し、
前記出力制御手段によって前記第１の会話データに基づく情報を出力するように前記出力部が制御された後に、前記選定した第１の話題とは異なる第２の話題を選定し、
前記選定した第２の話題と前記第１情報とに基づいて第２の会話データを作成する、
付記４に記載の会話出力システム。
【０１８０】
（付記６）
前記作成手段は、
前記第１の会話データと前記第２の会話データとの間をつなぐ文章であるつなぎ文を取得し、
前記作成した第２の会話データの前に前記取得したつなぎ文を追加する、
付記５に記載の会話出力システム。
【０１８１】
（付記７）
前記ユーザの居住国を取得する居住国取得手段をさらに備え、
前記作成手段は、前記会話データを、前記取得した居住国の言語に翻訳する、
付記１から６のいずれか１つに記載の会話出力システム。
【０１８２】
（付記８）
前記所定の対象は、前記ユーザ、前記ロボット以外の他のロボット、又は、前記ユーザ以外の人物である、
付記１から７のいずれか１つに記載の会話出力システム。
【０１８３】
（付記９）
前記所定の対象は、前記ロボットとは別個に設けられ、前記ユーザとは異なる他のユーザに属する他のロボットであり、
前記他のユーザに関する情報と、前記他のロボットの周囲の状況の情報である状況情報との少なくとも一方の情報である第２情報を取得する第２情報取得手段をさらに備え、
前記作成手段は、前記取得した前記第１及び第２情報に基づいて、前記会話データとして、前記ロボットと前記他のロボットとが前記第１情報及び前記第２情報に適合する会話をしているように前記ユーザに認識させるためのデータを作成し、
前記出力制御手段は、前記会話データに基づく情報を出力するように前記出力部を制御することによって、前記ユーザに、前記ロボットと前記他のロボットとが前記第１及び第２情報に適合する会話をしているように認識させる、
付記１から７のいずれか１つに記載の会話出力システム。
【０１８４】
（付記１０）
前記所定の対象は仮想のロボットであり、
前記作成手段は、前記仮想のロボットに関する第２情報を設定し、前記第１情報及び前記設定した前記第２情報に基づいて、前記会話データとして、前記ロボットと前記仮想のロボットとが前記第１及び第２情報に適合する会話をしているように前記ユーザに認識させるためのデータを作成し、
前記出力制御手段は、前記会話データに基づく情報を出力するように前記出力部を制御することによって、前記ユーザに、前記ロボットと前記仮想のロボットとが前記第１及び第２情報に適合する会話をしているように認識させる、
付記１から７のいずれか１つに記載の会話出力システム。
【０１８５】
（付記１１）
前記ユーザから当該ユーザが個人情報を公開したいと考えているか否かを示すユーザ意向情報を取得するユーザ意向情報取得手段をさらに備え、
前記作成手段は、前記取得した前記ユーザ意向情報により前記ユーザが個人情報を公開したいと考えていることが示されている場合に、前記ユーザに関する情報を含めた前記第１情報に基づいて、前記会話データを作成する、
付記１から１０のいずれか１つに記載の会話出力システム。
【０１８６】
（付記１２）
前記ロボットは、会話する機能を有していない、
付記１から１１のいずれか１つに記載の会話出力システム。
【０１８７】
（付記１３）
前記出力部としてディスプレイを備え、
前記出力制御手段は、前記作成手段が作成した会話データを前記ディスプレイに表示することによって、前記ユーザに、前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させる、
付記１から１２のいずれか１つに記載の会話出力システム。
【０１８８】
（付記１４）
前記出力部としてスピーカを備え、
前記出力制御手段は、前記作成手段が作成した会話データを音声合成して、前記スピーカから出力させることによって、前記ユーザに、前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させる、
付記１から１３のいずれか１つに記載の会話出力システム。
【０１８９】
（付記１５）
ロボットのユーザに関する情報、及び、前記ロボットの周囲の状況の情報である状況情報の少なくとも一方の情報である第１情報を取得する情報取得手段と、
前記取得した前記第１情報に基づいて、前記ロボットと所定の対象とが少なくとも前記第１情報に適合する会話をしているように、前記ロボットのユーザに認識させるための会話データを作成する作成手段と、
当該作成した前記会話データを、前記ロボットとは別個に設けられた会話出力端末に送信する送信手段と、を備える、
会話出力サーバ。
【０１９０】
（付記１６）
会話出力システムによって実行される会話出力方法であって、
ロボットのユーザに関する情報、及び、前記ロボットの周囲の状況の情報である状況情報の少なくとも一方の情報である第１情報を取得するステップと、
前記取得した前記第１情報に基づいて、前記ロボットと所定の対象とが少なくとも前記第１情報に適合する会話をしているように、前記ユーザに認識させるための会話データを作成するステップと、
前記作成した会話データに基づく情報を出力するように、前記ロボットとは別個に設けられた出力部を制御することによって、前記ユーザに、前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させるためのステップと、
を含む会話出力方法。
【０１９１】
（付記１７）
会話出力サーバのコンピュータに、
ロボットのユーザに関する情報、及び、前記ロボットの周囲の状況の情報である状況情報の少なくとも一方の情報である第１情報を取得する処理と、
前記取得した前記第１情報に基づいて、前記ロボットと所定の対象とが少なくとも前記第１情報に適合する会話をしているように前記ロボットのユーザに認識させるための会話データを作成する処理と、
前記作成した会話データに基づく情報を出力するように、前記ロボットとは別個に設けられた出力部を制御することによって、前記ユーザに、前記ロボットと前記所定の対象とが少なくとも前記第１情報に適合する会話をしているように認識させるための処理と、
を実行させる、
プログラム。
【符号の説明】
【０１９２】
１００，１００’，１００’’，１０１，１０１’，１０１’’，１０２，１０２’，１０３，１０３’，１０３’’…ロボット、１１０，４１０…状況取得部、１２０，２１０，４２０…近距離通信部、１３０…ユーザ意向取得部、１３１…人感センサ、１３２…カメラ、１３３…マイク、１３４，２８０…スピーカ、１３５…足、１３６…尻尾、１４０，２２０，３１０…ＬＴＥ通信部、１５０…自己診断部、２００，２００’，２００’’，２０１，２０２，２０２’，２０２’’，２０３，２０３’，２０３’’…会話出力端末、２３０…端末制御部、２３１…会話出力部、２３２，３２１…シナリオ選択部、２３３…状況通知作成部、２４０，３３０…記憶部、２４１，３３１…シナリオ記憶部、２４２，３３２…ユーザプロファイル記憶部、２４３，３３３…ユーザ状況記憶部、２５０…シナリオ会話出力端末、２６０…ユーザ入力部、２７０…ディスプレイ、３００，３０１，３０２…会話出力サーバ、３２０…制御部、３２２…文作成部、４００，４００Ａ，４００Ｂ，４００Ｃ，４００’…センサ装置、１０００，１００１，１００２，１００３，１００４，１００５…会話出力システム
【図１】
2019136481.tif 000003
【図２】
2019136481.tif 000004
【図３】
2019136481.tif 000005
【図４】
2019136481.tif 000006
【図５】
2019136481.tif 000007
【図６】
2019136481.tif 000008
【図７】
2019136481.tif 000009
【図８】
2019136481.tif 000010
【図９】
2019136481.tif 000011
【図１０】
2019136481.tif 000012
【図１１】
2019136481.tif 000013
【図１２】
2019136481.tif 000014
【図１３】
2019136481.tif 000015
【図１４】
2019136481.tif 000016
【図１５】
2019136481.tif 000017
【図１６】
2019136481.tif 000018
【図１７】
2019136481.tif 000019
【図１８】
2019136481.tif 000020