(57)【要約】【課題】特定の対話モデルに対してユーザが愛着を形成することが可能な対話システムを提供する。【解決手段】第１対話モデル１００は、ユーザとのコミュニケーションを通して、ユーザに対して表出されるコミュニケーション機能が初期状態から向上していくように構成されている。第２対話モデル２００は、第１対話モデル１００の初期状態よりも良好なコミュニケーション機能によりユーザと対話を行って、ユーザに対し、第１対話モデル１００のコミュニケーション機能の向上を支援する発話を行うように構成されている。【選択図】図４
2020134905.tif 000002
【特許請求の範囲】
【請求項１】
ユーザと少なくとも対話によるコミュニケーションを行う対話システムであって、
ユーザと少なくとも対話を行う第１対話モデルと第２対話モデルとを少なくとも有し、
前記第１対話モデルは、ユーザとのコミュニケーションを通して、ユーザに対して表出されるコミュニケーション機能が初期状態から向上していくように構成されており、
前記第２対話モデルは、前記第１対話モデルの初期状態よりも良好なコミュニケーション機能によりユーザと対話を行って、ユーザに対し、前記第１対話モデルの前記コミュニケーション機能の向上を支援する発話を行うように構成されている
対話システム。
【請求項２】
前記第２対話モデルは、前記第１対話モデルの状態を取得し、前記状態に応じた支援を行う
請求項１に記載の対話システム。
【請求項３】
前記第２対話モデルは、前記第１対話モデルの前記コミュニケーション機能の向上が停滞していると判定された場合に、前記支援を行う
請求項２に記載の対話システム。
【請求項４】
前記第２対話モデルは、ユーザに対して、前記第１対話モデルの前記コミュニケーション機能が向上するためにユーザがすべき動作を提示するための発話を行う
請求項１〜３のいずれか１項に記載の対話システム。
【請求項５】
前記第２対話モデルは、文字列を用いて、ユーザに対して前記動作を提示するための発話を行う
請求項４に記載の対話システム。
【請求項６】
少なくとも前記第１対話モデルは、ユーザ端末における仮想的なキャラクタとして実現され、
前記第１対話モデルの前記向上されたコミュニケーション機能に関する情報を、前記第１対話モデルに対応する実機コミュニケーションロボットに送信する情報送信部をさらに有する
請求項１〜５のいずれか１項に記載の対話システム。
【請求項７】
前記第２対話モデルの前記コミュニケーション機能の向上度合は、前記第１対話モデルの前記コミュニケーション機能の向上度合よりも小さい
請求項１〜６のいずれか１項に記載の対話システム。
【請求項８】
ユーザと少なくとも対話によるコミュニケーションを行う対話システムを用いて行われる対話方法であって、
ユーザとのコミュニケーションを通して、ユーザに対して表出されるコミュニケーション機能が初期状態から向上していく第１対話モデルを実現し、
前記第１対話モデルの初期状態よりも良好なコミュニケーション機能によりユーザと対話を行って、ユーザに対し、前記第１対話モデルの前記コミュニケーション機能の向上を支援する発話を行う第２対話モデルを実現する
対話方法。
【請求項９】
ユーザと少なくとも対話によるコミュニケーションを行う対話システムを用いて行われる対話方法を実行するプログラムであって、
ユーザとのコミュニケーションを通して、ユーザに対して表出されるコミュニケーション機能が初期状態から向上していく第１対話モデルを実現する機能と、
前記第１対話モデルの初期状態よりも良好なコミュニケーション機能によりユーザと対話を行って、ユーザに対し、前記第１対話モデルの前記コミュニケーション機能の向上を支援する発話を行う第２対話モデルを実現する機能と
をコンピュータに実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は対話システム、対話方法及びプログラムに関し、特に、ユーザと対話を行う対話システム、対話方法及びプログラムに関する。
【背景技術】
【０００２】
ユーザと自律的に対話を行う対話システムが知られている。この技術に関連し、特許文献１は、２つのエージェント（ロボット）により、ユーザの発話を対話システムが取得するための条件を満たす範囲に引き込み、ユーザとの対話を長く継続するための対話システムを開示している。
【０００３】
特許文献１にかかる対話システムにおいて、第一のエージェントが第一発話を提示した後で、第二のエージェントが、第一発話に対するユーザの発話を促すための発話を提示する。これにより、ユーザ発話は、第二のエージェントの発話に引きずられて、対話システムが取得するための条件を満たす範囲に引き込まれる。したがって、２つのエージェント（対話モデル）を用いてユーザと対話を行うことによって、ユーザと対話システムとが円滑な対話を行うことができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１７−２０７６９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ロボットの販促活動等により、ある特定のロボット（対話モデル）に対してユーザが強い愛着を抱くように誘導する必要があることがある。しかしながら、特許文献１は、対話を行うエージェント（ロボット）に対してユーザが愛着を形成することについて、何ら開示していない。したがって、特許文献１にかかる技術を用いても、これらの２つのエージェントのどのエージェントに対して愛着を形成するように制御することは困難である。例えば、第一のエージェントに対してユーザが強い愛着を抱くことが要求されているのに、実際には、ユーザは、第二のエージェントに愛着を抱いてしまうおそれがある。したがって、対話システムにおける特定のロボット（対話モデル）に対してユーザが愛着を形成するように誘導することが望まれる。
【０００６】
本発明は、特定の対話モデルに対してユーザが愛着を形成することが可能な対話システム、対話方法及びプログラムを提供するものである。
【課題を解決するための手段】
【０００７】
本発明にかかる対話システムは、ユーザと少なくとも対話によるコミュニケーションを行う対話システムであって、ユーザと少なくとも対話を行う第１対話モデルと第２対話モデルとを少なくとも有し、前記第１対話モデルは、ユーザとのコミュニケーションを通して、ユーザに対して表出されるコミュニケーション機能が初期状態から向上していくように構成されており、前記第２対話モデルは、前記第１対話モデルの初期状態よりも良好なコミュニケーション機能によりユーザと対話を行って、ユーザに対し、前記第１対話モデルの前記コミュニケーション機能の向上を支援する発話を行うように構成されている。
【０００８】
また、本発明にかかる対話方法は、ユーザと少なくとも対話によるコミュニケーションを行う対話システムを用いて行われる対話方法であって、ユーザとのコミュニケーションを通して、ユーザに対して表出されるコミュニケーション機能が初期状態から向上していく第１対話モデルを実現し、前記第１対話モデルの初期状態よりも良好なコミュニケーション機能によりユーザと対話を行って、ユーザに対し、前記第１対話モデルの前記コミュニケーション機能の向上を支援する発話を行う第２対話モデルを実現する。
【０００９】
また、本発明にかかるプログラムは、ユーザと少なくとも対話によるコミュニケーションを行う対話システムを用いて行われる対話方法を実行するプログラムであって、ユーザとのコミュニケーションを通して、ユーザに対して表出されるコミュニケーション機能が初期状態から向上していく第１対話モデルを実現する機能と、前記第１対話モデルの初期状態よりも良好なコミュニケーション機能によりユーザと対話を行って、ユーザに対し、前記第１対話モデルの前記コミュニケーション機能の向上を支援する発話を行う第２対話モデルを実現する機能とをコンピュータに実現させる。
【００１０】
上記のように構成されていることによって、ユーザは、第２対話モデルの支援を受けることで、第１対話モデルの状態によらないで第１対話モデルを成長させることができる。したがって、ユーザは、より確実に、第１対話モデルがユーザとのコミュニケーションを通じて成長していくような体験をすることができる。これにより、ユーザは、第１対話モデルに対して愛着を形成することが可能となる。
【００１１】
また、好ましくは、前記第２対話モデルは、前記第１対話モデルの状態を取得し、前記状態に応じた支援を行う。
このように構成されていることによって、第２対話モデルは、より適切な支援を行うことが可能となる。したがって、ユーザが第１対話モデルをより確実に成長させることが、可能となる。
【００１２】
また、好ましくは、前記第２対話モデルは、前記第１対話モデルの前記コミュニケーション機能の向上が停滞していると判定された場合に、前記支援を行う。
このように構成されていることによって、第２対話モデルは、適切なタイミングで支援を行うことができる。したがって、ユーザが第１対話モデルをさらに確実に成長させることが、可能となる。
【００１３】
また、好ましくは、前記第２対話モデルは、ユーザに対して、前記第１対話モデルの前記コミュニケーション機能が向上するためにユーザがすべき動作を提示するための発話を行う。
本発明は、このように構成されていることによって、ユーザは、第１対話モデルを成長させるために何をすべきかを、容易に把握することが可能となる。
【００１４】
また、好ましくは、前記第２対話モデルは、文字列を用いて、ユーザに対して前記動作を提示するための発話を行う。
このように構成されていることによって、第２対話モデルは、より確実に、ユーザと対話を行うことができる。したがって、第２対話モデルとユーザとが円滑なコミュニケーションを行うことが可能となる。
【００１５】
また、好ましくは、少なくとも前記第１対話モデルは、ユーザ端末における仮想的なキャラクタとして実現され、前記第１対話モデルの前記向上されたコミュニケーション機能に関する情報を、前記第１対話モデルに対応する実機コミュニケーションロボットに送信する情報送信部をさらに有する。
このように構成されていることによって、ユーザは、自分が育てた仮想的なキャラクタが実体として物理的に具現化された実機コミュニケーションロボットとコミュニケーションを行う、という体験を得ることができる。したがって、ユーザが実機コミュニケーションロボットに対して強い愛着を形成することが、可能となる。
【００１６】
また、好ましくは、前記第２対話モデルの前記コミュニケーション機能の向上度合は、前記第１対話モデルの前記コミュニケーション機能の向上度合よりも小さい。
このように構成されていることによって、ユーザが第２対話モデルに対して愛着を形成することを抑制することができる。したがって、ユーザが第１対話モデルに対して確実に愛着を形成することが、可能となる。
【発明の効果】
【００１７】
本発明によれば、特定の対話モデルに対してユーザが愛着を形成することが可能な対話システム、対話方法及びプログラムを提供できる。
【図面の簡単な説明】
【００１８】
【図１】実施の形態１にかかる対話システムのハードウェア構成を示す図である。
【図２】実施の形態１にかかる対話システムによって表示されるキャラクタを例示する図である。
【図３】実施の形態１にかかる対話システムが実機コミュニケーションロボット及びユーザ端末に搭載される例を示す図である。
【図４】実施の形態１にかかる制御装置の構成を示す機能ブロック図である。
【図５】実施の形態１にかかる機能データベースに格納される機能情報を例示する図である。
【図６】実施の形態１にかかる学習情報格納部に格納される学習情報を例示する図である。
【図７】対話システムによって実行される対話方法を示すフローチャートである。
【図８】対話システムによって実行される対話方法を示すフローチャートである。
【図９】実施の形態１にかかる支援キャラクタとユーザとの対話を例示する図である。
【図１０】実施の形態１にかかる情報送信部の処理を説明するための図である。
【発明を実施するための形態】
【００１９】
（実施の形態１）
以下、図面を参照して本発明の実施の形態について説明する。なお、各図面において、同一の要素には同一の符号が付されており、必要に応じて重複説明は省略されている。
【００２０】
図１は、実施の形態１にかかる対話システム１のハードウェア構成を示す図である。対話システム１は、ユーザと音声又は文字列（テキスト）を用いて対話を行う。なお、以下、「発話」は、音声に限られず、文字列によるものも含む。対話システム１は、ユーザからの発話（ユーザ発話）に応じて、ユーザに対して発話（システム発話）を実行することで、ユーザと対話を行う。対話システム１は、例えば、生活支援ロボット及び小型ロボット等のロボット、クラウドシステム、及びスマートフォン又はタブレット端末等のユーザ端末に搭載可能である。以下、実施の形態１では、主に、対話システム１がユーザ端末に搭載された例を示している。
【００２１】
対話システム１は、周囲の音声を収集するマイク２と、音声を発するスピーカ４と、カメラ等の撮像部５と、入力部６と、表示部８と、制御装置１０とを有する。マイク２は、主な機能として、ユーザの発話音声を集音する。マイク２は、集音したユーザの発話音声を音声信号に変換し、ユーザからの入力発話（ユーザ発話）として制御装置１０へ出力する。スピーカ４は、制御装置１０で変換された音声信号を受け取って、出力発話（システム発話）を音声として出力する。
【００２２】
入力部６及び表示部８は、ユーザインタフェースである。入力部６は、例えばタッチパネル又はキーボード等の入力デバイスである。また、表示部８は、例えばディスプレイ等の出力デバイスである。なお、入力部６及び表示部８は、入力デバイスと出力デバイスとが一体となったタッチパネルとして構成されてもよい。つまり、入力部６及び表示部８は、物理的に別個である必要はない。対話が文字列で行われる場合に、入力部６は、ユーザが文字列にてユーザ発話を入力するために使用され得る。また、この場合、表示部８は、対話システム１がシステム発話を表示するために使用され得る。さらに、表示部８は、制御装置１０による制御に応じて、対話システム１によって実現されるキャラクタを表示する。詳しくは後述する。
【００２３】
制御装置１０は、例えばコンピュータとしての機能を有する。制御装置１０は、マイク２、スピーカ４、撮像部５、入力部６及び表示部８と、有線又は無線で接続されている。制御装置１０は、音声にて対話が行われる場合に、マイク２によって集音されたユーザ発話を解析して、そのユーザ発話に応じて、ユーザに対するシステム発話を決定して、スピーカ４に出力する。また、制御装置１０は、文字列にて対話が行われる場合に、入力部６によって入力された文字列のユーザ発話を解析して、そのユーザ発話に応じて、ユーザに対するシステム発話を決定して実行する。なお、対話は、ユーザ発話及びシステム発話の両方が音声であること、又は、ユーザ発話及びシステム発話の両方が文字列であることに限定されない。ユーザ発話及びシステム発話の一方が音声であり、他方が文字列であってもよい。
【００２４】
制御装置１０は、主要なハードウェア構成として、ＣＰＵ（Central Processing Unit）１２と、ＲＯＭ（Read Only Memory）１４と、ＲＡＭ（Random Access Memory）１６と、インタフェース部（ＩＦ；Interface）１８とを有する。ＣＰＵ１２、ＲＯＭ１４、ＲＡＭ１６及びインタフェース部１８は、データバスなどを介して相互に接続されている。
【００２５】
ＣＰＵ１２は、制御処理及び演算処理等を行う演算装置としての機能を有する。ＲＯＭ１４は、ＣＰＵ１２によって実行される制御プログラム及び演算プログラム等を記憶するための機能を有する。ＲＡＭ１６は、処理データ等を一時的に記憶するための機能を有する。インタフェース部１８は、有線又は無線を介して外部と信号の入出力を行う。また、インタフェース部１８は、ユーザによるデータの入力の操作を受け付け、ユーザに対して情報を表示するための処理を行う。
【００２６】
図２は、実施の形態１にかかる対話システム１によって表示されるキャラクタを例示する図である。表示部８は、育成キャラクタ９０２及び支援キャラクタ９０４を表示する。対話システム１は、これらの２つのキャラクタ（対話モデル）である育成キャラクタ９０２及び支援キャラクタ９０４によって、ユーザとの対話を実現する。つまり、ユーザは、育成キャラクタ９０２及び支援キャラクタ９０４と対話を行う。ここで、育成キャラクタ９０２は、後述する第１対話モデルに対応し、支援キャラクタ９０４は、後述する第２対話モデルに対応する。なお、図２の例では、育成キャラクタ９０２及び支援キャラクタ９０４は、ユーザ端末上で仮想的に実現される。一方、支援キャラクタ９０４は、必ずしも表示部８に表示される必要はなく、例えば発話がテキスト形式で表示されるチャット機能として実現されてもよい。さらに、支援キャラクタ９０４は、音声のみで実現されてもよい。
【００２７】
育成キャラクタ９０２は、ユーザとのコミュニケーションを通して、ユーザに対して表出されるコミュニケーション機能が初期状態から向上していくように構成されている。つまり、初期段階においては、育成キャラクタ９０２は、ユーザとほとんどコミュニケーションを行うことができないように設定されている。そして、育成キャラクタ９０２は、ユーザと対話等のコミュニケーションを行っていくことで、コミュニケーション機能が向上していくので、ユーザにとって、育成キャラクタ９０２があたかも成長していくように感じられる。
【００２８】
支援キャラクタ９０４は、育成キャラクタ９０２の初期状態よりも良好なコミュニケーション機能によりユーザと対話を行って、育成キャラクタ９０２とユーザとのコミュニケーションを支援するように構成されている。つまり、支援キャラクタ９０４は、育成キャラクタ９０２と異なり、当初から円滑なコミュニケーションが可能である。そして、支援キャラクタ９０４は、ユーザの発話に応じて、ユーザに対して、育成キャラクタ９０２のコミュニケーション機能が向上するためにユーザがすべき動作を提示するための発話を行う。つまり、支援キャラクタ９０４は、育成キャラクタ９０２の初期状態よりも良好なコミュニケーション機能によりユーザと対話を行って、ユーザに対し、育成キャラクタ９０２のコミュニケーション機能の向上を支援する発話を行う。支援キャラクタ９０４の存在により、ユーザは、育成キャラクタ９０２を成長させるために何をすればいいのかを把握することができる。
【００２９】
対話システム１は、育成キャラクタ９０２及び支援キャラクタ９０４の発話を音声信号に変換してスピーカ４に出力する。その際に、対話システム１は、育成キャラクタ９０２及び支援キャラクタ９０４のどちらが発話しているかを明確にするため、育成キャラクタ９０２と支援キャラクタ９０４とで音声のイントネーション及び周波数等の声音を異なるようにしてもよい。あるいは、対話システム１は、育成キャラクタ９０２及び支援キャラクタ９０４の発話を、表示部８に吹き出し形式のテキストボックスに文字列で表示させる。その際に、対話システム１は、育成キャラクタ９０２及び支援キャラクタ９０４のどちらが発話しているかを明確にするため、発話を行ったキャラクタの近傍にテキストボックスを表示させてもよい。
【００３０】
図３は、実施の形態１にかかる対話システム１が実機コミュニケーションロボット及びユーザ端末に搭載される例を示す図である。この場合、対話システム１は、実機コミュニケーションロボット３０と、ユーザ端末４０とを有する。実機コミュニケーションロボット３０は、図２に示した育成キャラクタ９０２が物理的に具現化された実体である。また、ユーザ端末４０は、図２に示した支援キャラクタ９０４を実現する。
【００３１】
実機コミュニケーションロボット３０は、例えば、生活支援ロボット等の自立移動型ロボットである。ユーザ端末４０は、例えば、スマートフォン又はタブレット端末である。実機コミュニケーションロボット３０及びユーザ端末４０は、共に、図１に示したハードウェア構成を有し得る。さらに、実機コミュニケーションロボット３０は、台車部３２とロボットアーム３４とを有する。台車部３２は、実機コミュニケーションロボット３０が自律移動を行うための機能を有する。台車部３２は、車輪及びモータ等を有し得る。ロボットアーム３４は、物を把持してユーザに渡すための機能を有する。ロボットアーム３４は、関節及びエンドエフェクタ（ロボットハンド）等を有し得る。また、実機コミュニケーションロボット３０及びユーザ端末４０は、それぞれのインタフェース部１８を用いて、有線又は無線を介して互いに通信を行う。
【００３２】
図４は、実施の形態１にかかる制御装置１０の構成を示す機能ブロック図である。制御装置１０は、キャラクタデータベース５２（キャラクタＤＢ）と、履歴格納部５４と、発話データベース５６（発話ＤＢ）と、発話解析部５８と、調停部６０と、情報送信部７０とを有する。制御装置１０は、さらに、第１対話モデル１００と、第２対話モデル２００とを有する。第１対話モデル１００は、連携部１０２と、第１対話部１０４と、成長処理部１０６と、機能データベース１０８（機能ＤＢ）と、学習情報格納部１１０とを有する。第２対話モデル２００は、連携部２０２と、第２対話部２０４と、支援処理部２０６と、支援内容データベース２０８（支援内容ＤＢ）とを有する。
【００３３】
第１対話モデル１００及び第２対話モデル２００は、ユーザと対話を行う。第１対話モデル１００は、図２に示した育成キャラクタ９０２を実現するように構成されている。第２対話モデル２００は、図２に示した支援キャラクタ９０４を実現するように構成されている。言い換えると、育成キャラクタ９０２は、第１対話モデル１００の機能をユーザに対して表出するための仮想的なキャラクタである。また、支援キャラクタ９０４は、第２対話モデル２００の機能をユーザに対して表出するための仮想的なキャラクタである。したがって、第１対話モデル１００は、ユーザとのコミュニケーションを通して、ユーザに対して表出されるコミュニケーション機能が初期状態から向上していくように構成されている。また、第２対話モデル２００は、第１対話モデル１００の初期状態よりも良好なコミュニケーション機能によりユーザと対話を行って、第１対話モデル１００とユーザとのコミュニケーションを支援するように構成されている。
【００３４】
図４に示した各構成要素は、例えば、ＣＰＵ１２がＲＯＭ１４に記憶されたプログラムを実行することによって実現可能である。また、必要なプログラムを任意の不揮発性記録媒体に記録しておき、ＣＰＵ１２が必要に応じてインストールするようにしてもよい。なお、各構成要素は、上記のようにソフトウェアによって実現されることに限定されず、何らかの回路素子等のハードウェアによって実現されてもよい。
【００３５】
ここで、対話システム１が図３に例示したように実現される場合、実機コミュニケーションロボット３０は、図４に示した構成要素のうち、第２対話モデル２００以外の構成要素を有し得る。また、ユーザ端末４０は、図４に示した構成要素のうち、第１対話モデル１００以外の構成要素を有し得る。さらに、ユーザ端末４０は、情報送信部７０を有さなくてもよい。つまり、第１対話モデル１００は、実機コミュニケーションロボット３０の機能を制御し、第２対話モデル２００は、ユーザ端末４０における支援キャラクタ９０４に関する機能を制御する。言い換えると、実機コミュニケーションロボット３０は、第１対話モデル１００の機能をユーザに対して表出するための物理的な装置である。また、ユーザ端末４０は、第２対話モデル２００の機能をユーザに対して表出するための物理的な装置である。
【００３６】
キャラクタデータベース５２は、育成キャラクタ９０２及び支援キャラクタ９０４それぞれに関する情報を格納する。例えば、キャラクタデータベース５２は、育成キャラクタ９０２及び支援キャラクタ９０４それぞれの映像データを格納する。また、キャラクタデータベース５２は、育成キャラクタ９０２及び支援キャラクタ９０４それぞれの声音の情報（声音情報）を格納してもよい。履歴格納部５４は、ユーザと育成キャラクタ９０２との間でこれまでに実行した対話情報、及びユーザと支援キャラクタ９０４との間でこれまでに実行した対話情報を含む、参照データを格納する。
【００３７】
発話データベース５６は、コーパスとして体系化された個々の用語を、再生可能な発話データを伴って格納する。なお、発話データベース５６に格納された情報は、対話システム１に内蔵されていなくてもよく、例えば、外部のサーバ等からネットワーク経由で取得されてもよい。
【００３８】
発話解析部５８は、マイク２から取得したユーザ発話を解析してテキスト化し、ユーザの発話内容を認識する。発話解析部５８は、具体的には、一般的な音声認識技術を用いてユーザの発話内容を認識する。例えば、発話解析部５８は、テキスト化された入力発話に構文解析又は単語分析等を施して、ＤＮＮ（deep neural network）モデルやロジスティック回帰モデルを用いて発話内容を認識する。
【００３９】
調停部６０は、ユーザ発話から、ユーザが育成キャラクタ９０２に話しかけているのか支援キャラクタ９０４に話しかけているのかを判定する。調停部６０は、ユーザが育成キャラクタ９０２に話しかけていると判定されたときに、発話権限を第１対話部１０４に引き渡すための処理を行う。一方、調停部６０は、ユーザが支援キャラクタ９０４に話しかけていると判定されたときに、発話権限を第２対話部２０４に引き渡すための処理を行う。調停部６０は、例えば、発話解析部５８の解析結果を用いて、ユーザ発話が、ユーザが何をすればよいのかを尋ねていることを示している場合に、ユーザが支援キャラクタ９０４に話しかけていると判定する。また、調停部６０は、育成キャラクタ９０２の学習機能による学習が進んでおらず発話できる単語数が少ない場合に、ユーザが育成キャラクタ９０２に話しかけたときは、発話権限を第２対話部２０４に引き渡すための処理を行ってもよい。
【００４０】
情報送信部７０は、インタフェース部１８を制御して、第１対話モデル１００（育成キャラクタ９０２）に関する情報（第１情報）を外部の装置に送信するための処理を行う。情報送信部７０の処理については後述する。
【００４１】
第１対話モデル１００の連携部１０２と第２対話モデル２００の連携部２０２とは、互いに通信可能に接続されており、互いに情報をやり取りする。これにより、第２対話モデル２００は、第１対話モデル１００と連携する。連携部１０２は、第１情報を連携部２０２に伝送する。つまり、連携部２０２は、連携部１０２から第１情報を取得する、情報取得部として機能する。これにより、第２対話モデル２００は、第１対話モデル１００（育成キャラクタ９０２）の状態を把握することができる。特に、連携部２０２は、第１対話モデル１００の機能データベース１０８及び学習情報格納部１１０に格納された情報を取得する。なお、連携部２０２が、第２対話モデル２００（支援キャラクタ９０４）に関する情報（第２情報）を連携部１０２に伝送し、連携部１０２が、連携部２０２から第２情報を取得してもよい。ここで、対話システム１が図３に例示したように実現される場合、連携部１０２は、第１対話モデル１００を有する実機コミュニケーションロボット３０のインタフェース部１８を用いて、有線又は無線により、ユーザ端末４０に、第１情報を送信してもよい。
【００４２】
第１対話部１０４は、育成キャラクタ９０２による発話機能を担う。具体的には、第１対話部１０４は、キャラクタデータベース５２を参照して、表示部８に育成キャラクタ９０２を表示させる。また、第１対話部１０４は、発話データベース５６を参照してユーザ発話に相応しい応答発話文を生成する。そして、第１対話部１０４は、当該応答発話文を音声としてスピーカ４から発するか、又は、文字として表示部８に表示する。このとき、第１対話部１０４は、後述する機能データベース１０８及び学習情報格納部１１０を参照して、実行可能なコミュニケーション機能を、実行可能なレベルで実現する。したがって、コミュニケーション機能が向上していない初期状態では、第１対話部１０４は、ユーザが発話内容を十分に理解できない程度に低いレベルの発話を行い得る。また、第１対話部１０４は、撮像部５を制御して、対話を行っているユーザの顔画像を取得する。
【００４３】
成長処理部１０６は、後述する機能データベース１０８を参照して、ユーザに対して表出されるコミュニケーション機能を向上させるための処理を行う。具体的には、成長処理部１０６は、例えばミニゲームプログラムを実行してユーザとコミュニケーションを行う。そして、成長処理部１０６は、ユーザがミニゲームをクリアすると、そのミニゲームに対応する、第１対話モデル１００に予め備わっている機能を解放し、当該機能を実行可能とする。これにより、第１対話部１０４は、当該機能を実行できる。このように、第１対話モデル１００に予め備わっているが、初期状態では実行できず、その機能が解放されることで初めて実行可能となる機能を、「解放機能」と称する。なお、ミニゲームについては後述する。
【００４４】
また、成長処理部１０６は、ユーザとの対話等のコミュニケーションを通して、ユーザに関する情報及び単語等を学習する。これにより、第１対話部１０４は、学習によって得られ蓄積された情報を用いて、ユーザに対してコミュニケーションを行う。このように、データが蓄積されることで性能が向上していく機能を、「学習機能」と称する。なお、学習機能は、ユーザと第１対話モデル１００（育成キャラクタ９０２）とがコミュニケーションを行うごとに徐々に向上していくので、成長処理部１０６によって実行されてもよい。一方、解放機能は、一旦解放されると機能が徐々に向上する必要はないので、解放された後、第１対話部１０４によって実現されてもよい。
【００４５】
機能データベース１０８は、第１対話モデル１００によって現在又は将来において実行され得る機能に関する情報（機能情報）を格納する。学習情報格納部１１０は、学習機能によって蓄積されたデータに関する学習情報を格納する。これらの情報について、以下に説明する。
【００４６】
図５は、実施の形態１にかかる機能データベース１０８に格納される機能情報を例示する図である。機能データベース１０８は、上述した解放機能及び学習機能と、これらの機能の現在の実行レベルとを格納する。解放機能は、例えば、ロボット動作機能、天気予報機能、乗換案内機能、及び感情表現機能がある。また、学習機能は、例えば、ユーザ学習機能、単語習得機能、及び空間把握機能がある。なお、第１対話モデル１００つまり育成キャラクタ９０２が、図２に例示するように、ユーザ端末によって仮想的に実現される場合は、空間把握機能はなくてもよい。なお、これらの機能は、ユーザに対して表出される機能であるので、コミュニケーション機能であると言える。
【００４７】
ロボット動作機能は、第１対話モデル１００に対応するロボット（育成キャラクタ９０２又は実機コミュニケーションロボット３０）が動作するための機能である。第１対話モデル１００が仮想的な育成キャラクタ９０２に対応する場合、ロボット動作機能は、表示部８に表示されたアニメーションで、育成キャラクタ９０２を動作させるようにしてもよい。また、第１対話モデル１００が実機コミュニケーションロボット３０に対応する場合、ロボット動作機能は、台車部３２を制御して実機コミュニケーションロボット３０を自律移動させてもよいし、ロボットアーム３４を動作させてもよい。
【００４８】
天気予報機能は、ユーザ発話（例えば「明日の天気を教えて」）に応じて又は自律的に、天気予報をユーザに提供する機能である。天気予報機能は、例えばインターネットから、天気予報を取得してもよい。天気予報機能は、スピーカ４を制御して音声によって天気予報を出力してもよいし、表示部８を制御して視覚的に天気予報を表示させてもよい。
【００４９】
乗換案内機能は、ユーザ発話（例えば「競技場までの行き方を教えて」）に応じて又は自律的に、目的地までの交通案内を行う機能である。乗換案内機能は、例えばインターネットから、乗換案内を取得してもよい。乗換案内機能は、スピーカ４を制御して音声によって乗換案内を出力してもよいし、表示部８を制御して視覚的に乗換案内を表示させてもよい。
【００５０】
感情表現機能は、音声又は映像によって、第１対話モデル１００に対応する育成キャラクタ９０２の感情を表現する機能である。例えば、感情表現機能は、スピーカ４を制御して音声にて喜びを表現してもよいし、表示部８を制御して笑顔を表示させてもよい。
【００５１】
ユーザ学習機能は、ユーザとのコミュニケーションを通じて、ユーザの属性（顔画像及び名前等）を学習し、学習した内容を踏まえてユーザとコミュニケーションを行う機能である。ユーザ学習機能は、ユーザについて学習した内容を示す情報を、後述する学習情報格納部１１０に格納する。ユーザ学習機能は、例えば、あるユーザの名前と顔画像とを対応付けて学習した場合に、撮像部５を制御してそのユーザを顔認識し、ユーザの名前を音声で出力してもよい。また、例えば、ユーザ学習機能は、後述する接触回数に応じて、対話における親密さを変更してもよい。例えば、ユーザ学習機能は、接触回数がＮ（Ｎは予め定められた２以上の整数；例えば５回）回未満のユーザに対しては敬語で対話し、接触回数がＮ回以上のユーザに対しては敬語なしで対話するように、第１対話部１０４を制御してもよい。
【００５２】
また、例えば、ユーザ学習機能は、顔認識等によってユーザを識別できるようになったとき、そのユーザとよく対話する時間帯を学習して、その時間帯にそのユーザに話しかけるように、第１対話部１０４を制御してもよい。この場合、ユーザ学習機能は、そのユーザが普段の会話タイミングと異なる行動（その時間帯にユーザが話しかけないなど）を取った際に、ユーザに対し、「何かあった？」などと発話するように、第１対話部１０４を制御してもよい。
【００５３】
単語習得機能は、ユーザ発話を蓄積して、発話に利用する機能である。単語習得機能は、ユーザの音声認識結果を保存しておき、その中から名詞等の単語を、後述する学習情報格納部１１０に格納する。単語習得機能は、ユーザに対し任意のタイミングで単語の意味（人名、地名、食べ物、あいさつ等）を尋ね、単語と意味とを対応付ける。そして、単語習得機能は、格納された単語を、その後の会話に取り入れるように、第１対話部１０４を制御する。例えば、ユーザが「豊田」と発話したとき、第１対話モデル１００（育成キャラクタ９０２）が「豊田って何？」と発話し、ユーザが「地名」と答えたら、第１対話モデル１００は、後日の対話で「この前豊田に行ったよ」などと発話する。
【００５４】
空間把握機能は、部屋の形状を認識し、部屋ごとにマップを生成する機能である。空間把握機能は、第１対話モデル１００（実機コミュニケーションロボット３０）の撮像部５及び台車部３２を制御して、部屋の内部を自律的に移動し、撮像部５（カメラ又は三次元センサ等）を用いて部屋の形状を取得しながら探索を行い、部屋のマップを生成して、後述する学習情報格納部１１０に格納する。このとき、空間把握機能は、マップのデータが格納されていない部屋を発見した時に、マップの生成処理を行ってもよい。また、空間把握機能は、マップのデータが格納されている部屋については、マップに従って行動し、格納されていたマップとの差分箇所の更新を行ってもよい。
【００５５】
また、実行レベルは、対応する機能がどの程度実行できるかを示す。解放機能の実行レベルは、「実行可」及び「実行不可」のいずれかであり得る。また、学習機能の実行レベルは、例えば後述する学習情報の蓄積量に応じて定められ得る。つまり、学習機能の実行レベルは、対応する機能に関する学習情報の蓄積量が少ないほど低くなり、蓄積量が多い程高くなり得る。
【００５６】
図５に示す例では、ロボット動作機能は実行可能である（つまり機能が解放されている）が、天気予報機能、乗換案内機能、及び感情表現機能は実行不可である（つまり機能が解放されていない）。また、ユーザ学習機能の実行レベルは「低」であり、単語習得機能及び空間把握機能の実行レベルは「中」である。
【００５７】
図６は、実施の形態１にかかる学習情報格納部１１０に格納される学習情報を例示する図である。学習情報は、ユーザ情報と、単語情報と、空間情報とを含み得る。ユーザ情報は、ユーザ学習機能によって蓄積される学習情報である。単語情報は、単語習得機能によって蓄積される学習情報である。単語情報は、単語辞書であり得る。空間情報は、空間把握機能によって蓄積される学習情報である。
【００５８】
ユーザ情報は、例えば、ユーザの顔画像と、そのユーザの名前と、そのユーザと第１対話モデル１００（育成キャラクタ９０２）とが接触（対話）した回数である接触回数と、そのユーザと対話したタイミングである対話タイミングとを含む。なお、対話タイミングは、そのユーザと対話した回数が最も多い時間帯であってもよい。また、顔画像については、対応するユーザと対話するごとにそのユーザの顔画像が取得される。このように、対話するごとにそのユーザの顔画像が蓄積されていくので、そのユーザの認識精度が向上していく。
【００５９】
図６に示す例では、顔画像Ｘについて、ユーザの名前「Ｘさん」と、接触回数「６回」と、対話タイミング「平日夜７時」とが対応付けられている。また、顔画像Ｙについて、ユーザの名前「Ｙさん」と、接触回数「２回」とが対応付けられている。なお、顔画像Ｙに（Ｙさん）に関する対話タイミングについては、接触回数が少ないので、格納されていない。また、顔画像Ｚについては、対応するユーザの名前を第１対話モデル１００が取得できなかったので、接触回数「１回」のみが対応付けられている。図６に示す例の場合、第１対話モデル１００は、敬語なしでユーザ「Ｘさん」と対話を行ってもよく、平日夜７時にユーザ「Ｘさん」に対して対話を行ってもよい。
【００６０】
単語情報は、単語（名詞等）とその意味とを含む。図６に示す例では、単語「リンゴ」と意味「食べ物」とが対応付けられており、単語「豊田」と意味「地名」とが対応付けられており、単語「おはよう」と意味「朝の挨拶」とが対応付けられている。図６に示す例の場合、第１対話モデル１００は、任意のユーザに対して「リンゴは好き？」と発話してもよい。また、第１対話モデル１００は、朝の時間帯に、任意のユーザに対して「おはよう」と発話してもよい。
【００６１】
空間情報は、部屋の識別情報と、その部屋のマップを表すマップ情報とを含む。ここで、マップ情報とは、各部屋に存在する各物体の各位置（点群）の三次元座標データ（又は二次元座標データ）を示す情報である。マップ情報では、ある三次元座標（Ｘ，Ｙ，Ｚ）で示される点に何らかの物体が存在するか否かといったことが示され得る。
【００６２】
第２対話モデル２００（図４）について、第２対話部２０４は、支援キャラクタ９０４による発話機能を担う。具体的には、第２対話部２０４は、キャラクタデータベース５２を参照して、表示部８に支援キャラクタ９０４を表示させる。また、第２対話部２０４は、発話データベース５６を参照してユーザ発話に相応しい応答発話文を生成する。そして、第２対話部２０４は、当該応答発話文を音声としてスピーカ４から発するか、又は、文字として表示部８に表示する。ここで、第２対話部２０４は、第１対話モデル１００（第１対話部１０４）の初期状態よりも良好なコミュニケーション機能を有している。したがって、第２対話モデル２００は、初期状態から、ユーザが発話内容を十分に理解できる程度に高いレベルの発話を行い得る。
【００６３】
支援処理部２０６は、支援内容データベース２０８を参照して、上述した第１対話モデル１００のコミュニケーション機能の向上を支援する発話を行う。このとき、支援処理部２０６は、連携部２０２によって取得された第１対話モデル１００の状態（機能情報及び学習情報等）を取得し、状態に応じた支援を行う。詳しくは後述する。
【００６４】
支援内容データベース２０８は、図５を用いて例示した第１対話モデル１００のコミュニケーション機能ごとに、機能の向上を支援するための発話内容と、その発話を発するタイミングの判定基準とを格納する。支援処理部２０６は、この支援内容データベース２０８を参照することで、支援すべきタイミングで、ユーザに対して、第１対話モデル１００のコミュニケーション機能の向上を支援する発話を行う。詳しくは後述する。
【００６５】
次に、図７及び図８を用いて対話システム１の動作を説明する。図７及び図８は、対話システム１によって実行される対話方法を示すフローチャートである。図７は、第１対話モデル１００（育成キャラクタ９０２）の解放機能を向上させる（つまり解放機能を実行可能とする）ための方法を示す。
【００６６】
まず、支援処理部２０６は、連携部２０２によって取得された第１情報を参照して、第１対話モデル１００が、ある解放機能Ａを解放するための機能解放ゲーム（ミニゲーム）を実行可能な状態であるか否かを判定する（ステップＳ１００）。第１対話モデル１００が機能解放ゲームを実行可能な状態である場合（Ｓ１００のＹＥＳ）、支援処理部２０６は、機能解放ゲームをユーザに提案するための発話を出力するための処理を行う（ステップＳ１０２）。その後、成長処理部１０６は、解放機能Ａに関する機能解放ゲームを実行する（ステップＳ１０４）。その際、支援処理部２０６又は成長処理部１０６は、機能解放ゲームの説明を示す発話を出力する。なお、成長処理部１０６が機能解放ゲームを実行している間、連携部２０２は、第１対話モデル１００の第１情報を取得し続け、支援処理部２０６は、第１情報に基づいて、第１対話モデル１００において機能解放ゲームの進行状況を監視する。
【００６７】
支援処理部２０６は、機能解放ゲームの進行が停滞しているか否かを判定する（ステップＳ１０６）。例えば、支援処理部２０６は、第１対話モデル１００から取得された、ゲームの進行を示す第１情報であるゲーム進行情報を用いて、ゲームの開始からの経過時間を算出する。そして、経過時間が予め定められた一定時間を経過した場合に、支援処理部２０６は、機能解放ゲームの進行が停滞していると判定してもよい。あるいは、第１対話モデル１００又は第２対話モデル２００が、ゲームの進行方法が分からない旨のユーザ発話（「どうやってゲームをしたらいいの？」等）を受け付けた場合に、支援処理部２０６は、機能解放ゲームの進行が停滞していると判定してもよい。
【００６８】
機能解放ゲームの進行が停滞していると判定された場合（Ｓ１０６のＹＥＳ）、支援処理部２０６は、機能解放ゲームを進行するためのヒントを、発話によって提示する（ステップＳ１０８）。このように、支援処理部２０６は、コミュニケーション機能の向上が停滞していると判定された場合に、支援を行う。
【００６９】
一方、機能解放ゲームの進行が停滞していないと判定された場合（Ｓ１０６のＮＯ）、支援処理部２０６は、第１対話モデル１００から取得されたゲーム進行情報を用いて、ゲームがクリアされたか否かを判定する（ステップＳ１１０）。ゲームがクリアされていない場合（Ｓ１１０のＮＯ）、処理はＳ１０６に戻る。一方、ゲームがクリアされた場合（Ｓ１１０のＹＥＳ）、支援処理部２０６は、解放機能Ａの利用方法をユーザに提示するための発話を出力する（ステップＳ１１２）。また、成長処理部１０６は、解放機能Ａを解放し、実行可能とする（ステップＳ１１４）。
【００７０】
例えば、ロボット動作機能が実行可能とされる場合、支援処理部２０６は、例えば、育成キャラクタ９０２のパーツが分解されている状態が表示されている場合に、ロボット動作機能を解放するためのゲームを実行可能と判定してもよい（Ｓ１００）。また、ロボット動作機能の機能解放ゲームは、例えば、表示部８に表示された仮想空間上で、ユーザが育成キャラクタ９０２のパーツを探索するようなゲームであってもよい（Ｓ１０２，Ｓ１０４）。そして、ゲームの進行が停滞していると判定された場合に、支援処理部２０６は、探索されていないパーツの仮想空間上のありかを示唆する発話（「ロボットのアームはＸＸにありそうだよ」等）を出力してもよい（Ｓ１０８）。そして、ユーザが育成キャラクタ９０２の全てのパーツを探索したときに、ゲームがクリアされたと判定してもよい（Ｓ１１０）。
【００７１】
なお、図３に例示するように育成キャラクタ９０２が実機コミュニケーションロボット３０で実現される場合、仮想空間上におけるゲームを行うことによってロボット動作機能を解放することに限られない。実際に実機コミュニケーションロボット３０が分解された状態から、ユーザが実機コミュニケーションロボット３０を手作業で組み立てることで、ロボット動作機能を解放するようにしてもよい。
【００７２】
また、天気予報機能が実行可能とされる場合、支援処理部２０６は、例えば、ロボット動作機能が実行可能となっている場合に、天気予報機能を解放するためのゲームを実行可能と判定してもよい（Ｓ１００）。あるいは、支援処理部２０６は、例えば、単語情報の蓄積量が予め定められた閾値以上となっている場合に、天気予報機能を解放するためのゲームを実行可能と判定してもよい（Ｓ１００）。また、天気予報機能の機能解放ゲームは、例えば、表示部８に表示された仮想空間上で、ユーザが、天気を示すアイコン（例えば「晴れ」であれば太陽の絵）と天気を示す文字列とを繋ぐような配線ゲームであってもよい（Ｓ１０２，Ｓ１０４）。そして、ユーザが、天気を示すアイコンと天気を示す文字列とを全て正しく繋いだときに、ゲームがクリアされたと判定してもよい（Ｓ１１０）。
【００７３】
また、乗換案内機能が実行可能とされる場合、支援処理部２０６は、例えば、ロボット動作機能が実行可能となっている場合に、乗換案内機能を解放するためのゲームを実行可能と判定してもよい（Ｓ１００）。あるいは、支援処理部２０６は、例えば、単語情報の蓄積量が予め定められた閾値以上となっている場合に、乗換案内機能を解放するためのゲームを実行可能と判定してもよい（Ｓ１００）。また、乗換案内機能の機能解放ゲームは、例えば、表示部８に表示された仮想空間上で、ユーザが、乗り物を示す２つの同じアイコン（例えば「バス」の絵）を繋ぐような配線ゲームであってもよい（Ｓ１０２，Ｓ１０４）。そして、ユーザが、全ての乗り物の２つのアイコンを正しく繋いだときに、ゲームがクリアされたと判定してもよい（Ｓ１１０）。
【００７４】
また、感情表現機能が実行可能とされる場合、支援処理部２０６は、例えば、ロボット動作機能が実行可能となっている場合に、感情表現機能を解放するためのゲームを実行可能と判定してもよい（Ｓ１００）。あるいは、支援処理部２０６は、例えば、単語情報の蓄積量が予め定められた閾値以上となっている場合に、感情表現機能を解放するためのゲームを実行可能と判定してもよい（Ｓ１００）。また、感情表現機能の機能解放ゲームは、例えば、表示部８に表示された仮想空間上で、ユーザが、感情を示すアイコン（例えば「喜び」であれば笑顔の絵）と感情を示す文字列とを繋ぐような配線ゲームであってもよい（Ｓ１０２，Ｓ１０４）。そして、ユーザが、感情を示すアイコンと感情を示す文字列とを全て繋いだときに、ゲームがクリアされたと判定してもよい（Ｓ１１０）。
【００７５】
図８は、第１対話モデル１００（育成キャラクタ９０２）の学習機能を向上させるための方法を示す。まず、支援処理部２０６は、学習機能の存在をユーザに説明するための発話を行う（ステップＳ１２２）。そして、成長処理部１０６は、上述した学習機能を実行する（ステップＳ１２４）。なお、成長処理部１０６が学習機能を実行している間、連携部２０２は、第１対話モデル１００の第１情報を取得し続け、支援処理部２０６は、第１情報に基づいて、第１対話モデル１００において学習の進行状況を監視する。
【００７６】
支援処理部２０６は、学習の進行が停滞しているか否かを判定する（ステップＳ１０６）。例えば、学習の開始から予め定められた時間が経過したときに学習情報の蓄積量が予め定められた閾値を超えていない場合に、支援処理部２０６は、学習の進行が停滞していると判定してもよい。あるいは、第１対話モデル１００における顔認識が適切になされていない場合に、支援処理部２０６は、学習の進行が停滞していると判定してもよい。あるいは、第１対話モデル１００又は第２対話モデル２００が、学習が進行していない旨のユーザ発話（「ロボットの学習が進んでいないみたいだよ」等）を受け付けた場合に、支援処理部２０６は、学習の進行が停滞していると判定してもよい。
【００７７】
学習の進行が停滞していると判定された場合（Ｓ１２６のＹＥＳ）、支援処理部２０６は、学習がスムーズに進行するためのコツを、発話によって提示する（ステップＳ１２８）。このように、支援処理部２０６は、コミュニケーション機能の向上が停滞していると判定された場合に、支援を行う。一方、学習の進行が停滞していないと判定された場合（Ｓ１２６のＮＯ）、ユーザが煩わしく感じることを抑制するため、支援処理部２０６は、学習がスムーズに進行するためのコツを提示しない。そして、Ｓ１２４〜Ｓ１２８の処理が繰り返される。
【００７８】
例えば、ユーザ学習機能が実行される場合、支援処理部２０６は、例えば、ユーザが撮像部５の前にいるのに顔認識がなされないと判定したときに、学習の進行が停滞していると判定してもよい（Ｓ１２６のＹＥＳ）。この場合、支援処理部２０６は、顔認識のコツを説明する発話（「帽子を取ってね」等）を出力してもよい（Ｓ１２８）。また、支援処理部２０６は、ユーザ情報に登録されているユーザ数が予め定められた閾値よりも少ない場合に、学習の進行が停滞していると判定してもよい（Ｓ１２６のＹＥＳ）。この場合、支援処理部２０６は、ユーザ情報に登録されていないユーザに対し、第１対話モデル１００（育成キャラクタ９０２）に積極的に話しかけるように促すための発話を行ってもよい（Ｓ１２８）。また、支援処理部２０６は、ユーザ情報に登録されているが接触回数が予め定められた閾値よりも少ないユーザが存在する場合に、学習の進行が停滞していると判定してもよい（Ｓ１２６のＹＥＳ）。この場合、支援処理部２０６は、そのユーザ（例えばＹさん）に対し、第１対話モデル１００（育成キャラクタ９０２）に積極的に話しかけるように促すための発話を行ってもよい（Ｓ１２８）。
【００７９】
また、単語習得機能が実行される場合、支援処理部２０６は、例えば、単語情報に登録されている単語数が予め定められた閾値よりも少ない場合に、学習の進行が停滞していると判定してもよい（Ｓ１２６のＹＥＳ）。この場合、支援処理部２０６は、任意のユーザに対し、第１対話モデル１００（育成キャラクタ９０２）に積極的に話しかけて言葉を教えるように促すための発話を行ってもよい（Ｓ１２８）。
【００８０】
また、空間把握機能が実行される場合、支援処理部２０６は、例えば、空間情報に蓄積されたデータ量が予め定められた閾値よりも小さい場合に、学習の進行が停滞していると判定してもよい（Ｓ１２６のＹＥＳ）。この場合、支援処理部２０６は、任意のユーザに対し、第１対話モデル１００（実機コミュニケーションロボット３０）の移動を妨げないようにする旨の発話を行ってもよい（Ｓ１２８）。
【００８１】
以上説明したように、実施の形態１にかかる対話システム１において、第１対話モデル１００は、ユーザとのコミュニケーションを通して、ユーザに対して表出されるコミュニケーション機能が初期状態から向上していくように構成されている。また、第２対話モデル２００は、第１対話モデル１００の初期状態よりも良好なコミュニケーション機能によりユーザと対話を行って、ユーザに対し、第１対話モデル１００のコミュニケーション機能の向上を支援する発話を行うように構成されている。
【００８２】
第１対話モデル１００が上記のように構成されていることで、ユーザは、ある程度苦労して第１対話モデル１００を成長させることを体験し得る。この体験により、ユーザは、第１対話モデル１００（育成キャラクタ９０２）を手塩にかけて成長させたと感じ得る。これにより、ユーザは、第１対話モデル１００（育成キャラクタ９０２）に対して愛着を形成し得る。
【００８３】
また、第２対話モデル２００が上記のように構成されていることで、コミュニケーション機能が貧弱な状態であっても、ユーザが第１対話モデル１００（育成キャラクタ９０２）を成長させるに際して、ユーザが、何をすればよいか分からない、又は飽きてしまうといったことを抑制することができる。したがって、ユーザがスムーズに第１対話モデル１００を成長させる体験を積むことができるので、ユーザは、第１対話モデル１００（育成キャラクタ９０２）に対して、スムーズに愛着を形成することができる。
【００８４】
つまり、ユーザは、第２対話モデル２００の支援を受けることで、第１対話モデル１００の状態によらないで第１対話モデル１００を成長させることができる。したがって、ユーザは、確実に、第１対話モデル１００がユーザとの対話を通じて成長していくような体験をすることができる。これにより、ユーザは、第１対話モデル１００に対して愛着を形成することが可能となる。
【００８５】
また、上述したように、実施の形態１にかかる第２対話モデル２００は、第１対話モデル１００の状態を取得し、状態に応じた支援を行うように構成されている。これにより、第２対話モデル２００は、より適切な支援を行うことが可能となる。したがって、ユーザが第１対話モデル１００をより確実に成長させることが、可能となる。また、上述したように、実施の形態１にかかる第２対話モデル２００は、第１対話モデル１００のコミュニケーション機能の向上が停滞していると判定された場合に、支援を行うように構成されている。これにより、第２対話モデル２００は、適切なタイミングで支援を行うことができる。したがって、ユーザが第１対話モデル１００をさらに確実に成長させることが、可能となる。
【００８６】
また、上述したように、実施の形態１にかかる第２対話モデル２００は、ユーザに対して、第１対話モデル１００のコミュニケーション機能が向上するためにユーザがすべき動作を提示するための発話を行うように構成されている。これにより、ユーザは、第１対話モデル１００を成長させるために何をすべきかを、容易に把握することが可能となる。
【００８７】
また、実施の形態１にかかる第２対話モデル２００は、第１対話モデル１００と異なり、コミュニケーション機能が向上する必要はない。つまり、実施の形態１にかかる第２対話モデル２００のコミュニケーション機能の向上度合は、第１対話モデル１００のコミュニケーション機能の向上度合よりも小さい。仮に、第２対話モデル２００が成長するような構成とすると、ユーザは、第２対話モデル２００に対して愛着を形成してしまう可能性がある。したがって、上記のように、第２対話モデル２００のコミュニケーション機能の向上度合を第１対話モデル１００よりも小さくする（あるいは全く向上させない）ことで、ユーザが第２対話モデル２００に対して愛着を形成することを抑制することができる。したがって、ユーザが第１対話モデル１００に対して確実に愛着を形成することが、可能となる。
【００８８】
図９は、実施の形態１にかかる支援キャラクタ９０４とユーザとの対話を例示する図である。図９の例では、表示部８に、パーツが分解された育成キャラクタ９０２ｘが表示されている。そして、表示部８は、ユーザアイコン９１０の近傍の吹き出し９１０ａに、ユーザ発話「何をすればよいですか？」を表示している。その応答として、表示部８は、支援キャラクタ９０４の近傍の吹き出し９０４ａに、システム発話「パーツ集めゲームをしてロボットを組み立ててあげて」を表示している。この場合、ユーザは、入力部６を操作して、ユーザ発話を入力してもよい。
【００８９】
このように、実施の形態１にかかる第２対話モデル２００は、文字列を用いて、ユーザに対してユーザがすべき動作を提示するための発話を行うように構成されている。これにより、第２対話モデル２００は、より確実に、ユーザと対話を行うことができる。したがって、第２対話モデル２００とユーザとが円滑なコミュニケーションを行うことが可能となる。
【００９０】
図１０は、実施の形態１にかかる情報送信部７０の処理を説明するための図である。ここでは、対話システム１が、図２に示すように実現されるとする。上述したように、第２対話モデル２００の支援によって、第１対話モデル１００のコミュニケーション機能は向上し得る。この場合、第１対話モデル１００の機能データベース１０８及び学習情報格納部１１０には、向上したコミュニケーション機能に関する第１情報が蓄積されている。情報送信部７０は、この第１情報を、有線、無線又はネットワーク経由で、実機コミュニケーションロボット３０に送信する。これにより、実機コミュニケーションロボット３０は、成長した育成キャラクタ９０２と同じコミュニケーション機能を有することとなる。
【００９１】
したがって、例えば、育成キャラクタ９０２について乗換案内機能が解放されていた場合は、実機コミュニケーションロボット３０は、乗換案内を行うことができる。一方、育成キャラクタ９０２について天気予報機能が解放されていなかった場合は、実機コミュニケーションロボット３０は、天気予報を行わない。また、育成キャラクタ９０２についてＸさんのユーザ情報が顔画像と名前とを対応付けて格納され、単語「こんにちは」が格納されていた場合、実機コミュニケーションロボット３０は、Ｘさんを認識して「Ｘさんこんにちは」などと発話することができる。このように、実機コミュニケーションロボット３０は、第１対話モデル１００の向上されたコミュニケーション機能によって、ユーザとコミュニケーションを行う。
【００９２】
ここで、図１０に例示するケースが適用されるユーザ体験の一例を説明する。ユーザは自宅で対話システム１が搭載されたユーザ端末を操作し、実機コミュニケーションロボット３０はスポーツ競技場等のイベント会場に配置されている。ユーザは、対話システム１が搭載されたユーザ端末を用いて、育成キャラクタ９０２のコミュニケーション機能を向上させて、育成キャラクタ９０２を成長させる。その後、ユーザ端末の情報送信部７０は、実機コミュニケーションロボット３０に第１情報を送信する。この状態で、ユーザ（Ｘさん）がイベント会場で実機コミュニケーションロボット３０に接触したときに、実機コミュニケーションロボット３０は、「Ｘさんこんにちは」と発話する。そして、イベント会場でユーザの行動をサポートする。そして、例えば、イベント会場でスポーツが行われ、ユーザが応援しているチームが勝っているときに、実機コミュニケーションロボット３０は、感情表現機能を用いて、喜びの感情表現を表出する。これは、実機コミュニケーションロボット３０が、ユーザの表情等からユーザの感情を認識することによって、実行できる。また、第１対話モデル１００がユーザの自宅の地名を学習していた場合は、実機コミュニケーションロボット３０は、試合が終わったときに、自律的に、乗換案内機能を用いて、帰りの乗換案内を発話する。
【００９３】
このように、情報送信部７０は、向上したコミュニケーション機能に関する第１情報を、実機コミュニケーションロボット３０に送信するように構成されている。これにより、ユーザは、自分が育てた仮想的なキャラクタが実体として物理的に具現化された実機コミュニケーションロボット３０とコミュニケーションを行う、という体験を得ることができる。したがって、ユーザが実機コミュニケーションロボット３０に対して強い愛着を形成することが、可能となる。
【００９４】
（変形例）
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。例えば、上述したフローチャートにおいて、複数の処理の順序は、適宜、変更可能である。また、上述したフローチャートにおいて、複数の処理のうちの１つは、省略されてもよい。
【００９５】
また、上述した実施の形態において、図２において、第１対話モデル１００（育成キャラクタ９０２）及び第２対話モデル２００（支援キャラクタ９０４）の両方がユーザ端末で実現される場合の例を示した。また、図３において、第１対話モデル１００（育成キャラクタ９０２）が実機コミュニケーションロボットで実現され、第２対話モデル２００（支援キャラクタ９０４）がユーザ端末で実現される場合の例を示した。しかしながら、第１対話モデル１００及び第２対話モデル２００の実現方法は、上記の例に限られない。例えば、第１対話モデル１００（育成キャラクタ９０２）及び第２対話モデル２００（支援キャラクタ９０４）の両方が実機コミュニケーションロボットで実現されてもよい。また、第１対話モデル１００（育成キャラクタ９０２）がユーザ端末で実現され、第２対話モデル２００（支援キャラクタ９０４）が実機コミュニケーションロボットで実現されてもよい。
【００９６】
また、上述した実施の形態においては、対話システム１は、第１対話モデル１００及び第２対話モデル２００をそれぞれ１つずつ有するとしたが、このような構成に限られない。第１対話モデル１００が２つ以上あってもよい。同様に、第２対話モデル２００が２つ以上あってもよい。
【００９７】
また、支援キャラクタ９０４は、常に対話システム１においてユーザに表出されている必要はない。例えば、育成キャラクタ９０２（第１対話モデル）が十分に成長した（機能が向上した）場合に、対話システム１は、支援キャラクタ９０４を表出させないようにしてもよい。例えば、機能情報（図５）に登録されている全ての解放機能の実行レベルが「実行可」となり、全ての学習機能の実行レベルが「高」となったときに、対話システム１（例えば支援処理部２０６）は、これ以上の支援は必要ないと判定してもよい。
【００９８】
また、上述の例において、プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ）を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【符号の説明】
【００９９】
１・・・対話システム、２・・・マイク、４・・・スピーカ、５・・・撮像部、６・・・入力部、８・・・表示部、１０・・・制御装置、３０・・・実機コミュニケーションロボット、４０・・・ユーザ端末、５２・・・キャラクタデータベース、５４・・・履歴格納部、５６・・・発話データベース、５８・・・発話解析部、６０・・・調停部、７０・・・情報送信部、１００・・・第１対話モデル、１０２・・・連携部、１０４・・・第１対話部、１０６・・・成長処理部、１０８・・・機能データベース、１１０・・・学習情報格納部、２００・・・第２対話モデル、２０２・・・連携部、２０４・・・第２対話部、２０６・・・支援処理部、２０８・・・支援内容データベース、９０２・・・育成キャラクタ、９０４・・・支援キャラクタ
【図１】
2020134905.tif 000003
【図２】
2020134905.tif 000004
【図３】
2020134905.tif 000005
【図４】
2020134905.tif 000006
【図５】
2020134905.tif 000007
【図６】
2020134905.tif 000008
【図７】
2020134905.tif 000009
【図８】
2020134905.tif 000010
【図９】
2020134905.tif 000011
【図１０】
2020134905.tif 000012