(57)【要約】【課題】ロボット同士の自然な対話を可能にする。【解決手段】ロボット同士が相互に対話を行う対話システムを構成するロボットであって、他のロボットとの間で無線通信を行う通信手段と、前記他のロボットに対する発話文を取得する発話文取得手段と、合成音声によって前記発話文を出力する音声出力手段と、前記音声出力手段が出力する発話文に関連するデータである発話データを、無線通信によって他のロボットに送信する発話送信手段と、対話相手のロボットが送信した発話データを受信することで、当該ロボットが発した発話の内容を取得する発話受信手段と、を有する。【選択図】図１
2018017764.tif 000002
【特許請求の範囲】
【請求項１】
ロボット同士が相互に対話を行う対話システムを構成するロボットであって、
他のロボットとの間で無線通信を行う通信手段と、
前記他のロボットに対する発話文を取得する発話文取得手段と、
合成音声によって前記発話文を出力する音声出力手段と、
前記音声出力手段が出力する発話文に関連するデータである発話データを、無線通信によって他のロボットに送信する発話送信手段と、
対話相手のロボットが送信した発話データを受信することで、当該ロボットが発した発話の内容を取得する発話受信手段と、
を有するロボット。
【請求項２】
前記発話文取得手段は、前記対話相手のロボットが送信した発話データを用いて、当該ロボットに対する返答となる発話文を取得する、
請求項１に記載のロボット。
【請求項３】
前記発話データは、発話を行うロボットを識別する情報を含む、
請求項１または２に記載のロボット。
【請求項４】
前記発話データは、対話相手のロボットを識別する情報を含む、
請求項３に記載のロボット。
【請求項５】
前記発話データは、発話を行うロボットのオーナーと、対話相手のロボットのオーナーをそれぞれ識別する情報を含み、
前記発話文取得手段は、前記オーナーに関する情報をさらに用いて前記発話文を取得する、
請求項１から４のいずれかに記載のロボット。
【請求項６】
ロボット同士が相互に対話を行う対話システムを構成するロボットが行う音声対話方法であって、
他のロボットに対する発話文を取得する発話文取得ステップと、
合成音声によって前記発話文を出力する音声出力ステップと、
前記発話文に関連するデータである発話データを、無線通信によって他のロボットに送信する発話送信ステップと、
他のロボットから発話データを受信する発話受信ステップと、
を含み、
対話相手のロボットが送信した発話データを用いて、当該ロボットが発した発話の内容を取得する、
音声対話方法。
【請求項７】
請求項６に記載の音声対話方法をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声によって対話するロボットに関する。
【背景技術】
【０００２】
近年、人と対話をすることによって様々な情報を提供するロボットが開発されている。例えば、特許文献１には、マイクによって入力された音声をネットワーク上で処理し、入力に対する応答を音声で返すコミュニケーションロボットが開示されている。
【０００３】
また、音声による対話が可能なロボットを複数用いると、ロボット同士による会話が可能になる。例えば、複数のユーザがロボットを持ち寄って互いに会話を行わせるといった楽しみ方ができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−０１３３５１号公報
【特許文献２】特開２０１０−１６６３７７号公報
【特許文献３】特開２００２−３０７３５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、音声認識が可能な複数のロボットを互いに対話させようとした場合、いくつかの問題が発生する。一つは、音声認識の精度の問題である。一般的な音声認識モデルは、人の肉声を対象としているため、合成された音声に対して十分な認識精度が得られないことがある。もう一つの問題は、どのロボットがどのロボットに話しかけているかが判別しづらいという問題である。合成された音声は特徴が似通っているため、判別が難しく、話者が増えると正しく会話が成立しないことがある。
【０００６】
本発明は上記の課題を考慮してなされたものであり、ロボット同士の自然な対話を可能にする技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係るロボットは、ロボット同士が相互に対話を行う対話システムを構成するロボットである。
具体的には、他のロボットとの間で無線通信を行う通信手段と、前記他のロボットに対する発話文を取得する発話文取得手段と、合成音声によって前記発話文を出力する音声出力手段と、前記音声出力手段が出力する発話文に関連するデータである発話データを、無線通信によって他のロボットに送信する発話送信手段と、対話相手のロボットが送信した発話データを受信することで、当該ロボットが発した発話の内容を取得する発話受信手段と、を有することを特徴とする。
【０００８】
本発明に係るロボットは、発話文を音声によって出力するとともに、当該発話文に関連するデータである発話データを無線通信によって送信する。発話データとは、例えば、発話文を含んだテキストデータであってもよいし、発話の内容を要約したデータであってもよい。また、発話の種別や、ロボットの感情などを含んだデータであってもよい。また、発話元であるロボットと対話相手であるロボットを識別する情報が含まれたデータであってもよい。
かかる構成によると、ロボットが実際に音声によって会話をしているような効果を演出
しつつ、対話を成立させるために必要なデータを相手側のロボットに伝送することができる。すなわち、音声認識の精度にかかわらず、ロボット間の会話を正しく成立させることができる。
【０００９】
また、前記発話文取得手段は、前記対話相手のロボットが送信した発話データを用いて、当該ロボットに対する返答となる発話文を取得することを特徴としてもよい。
【００１０】
対話相手のロボットから送信された発話データを用いることで、的確な内容の返答を取得することができる。
【００１１】
また、前記発話データは、発話を行うロボットを識別する情報を含むことを特徴としてもよい。また、前記発話データは、対話相手のロボットを識別する情報を含むことを特徴としてもよい。
【００１２】
ロボットが発話する際に、「誰が発話したか」および「誰に対して発話したか」を識別する情報を同時に伝送することで、対話相手のロボットが正しく反応できるようになる。特に、三台以上のロボットを対話させる場合に、相手を正しく識別できるようになる。このように、対話相手のロボットは二台以上であってもよい。
【００１３】
また、前記発話データは、発話を行うロボットのオーナーと、対話相手のロボットのオーナーをそれぞれ識別する情報を含み、前記発話文取得手段は、前記オーナーに関する情報をさらに用いて前記発話文を取得することを特徴としてもよい。
【００１４】
ユーザが所有するロボットを持ち寄って会話させる場合がある。このような場合、ロボットがオーナーに関する情報を取得し、当該情報を用いて発話文を生成することで、ロボットの会話内容がバラエティ豊かなものとなる。
【００１５】
なお、本発明は、上記手段の少なくとも一部を含むロボットとして特定することができる。また、前記ロボットが行う音声対話方法として特定することもできる。上記処理や手段は、技術的な矛盾が生じない限りにおいて、自由に組み合わせて実施することができる。
【発明の効果】
【００１６】
本発明によれば、ロボット同士の自然な対話を可能にする技術を提供することができる。
【図面の簡単な説明】
【００１７】
【図１】実施形態に係る音声対話システムのシステム構成図である。
【図２】実施形態におけるデータフロー図である。
【図３】実施形態におけるデータフロー図である。
【発明を実施するための形態】
【００１８】
以下、本発明の好ましい実施形態について図面を参照しながら説明する。
本実施形態に係る音声対話システムは、ロボットが、ユーザおよび他のロボットと自然言語による対話を行うシステムである。
【００１９】
<システム構成>
図１は、本実施形態に係る音声対話システムのシステム構成図である。本実施形態に係る音声対話システムは、ロボット１０と対話サーバ２０から構成される。なお、図１には示していないが、本実施形態に係る音声対話システムは、複数のロボット１０を含んで構
成することができる。
【００２０】
まず、ロボット１０について説明する。ロボット１０は、外部から音声を取得する機能と、対話サーバ２０と通信することで発話内容の文章（以下、発話文）を取得する機能と、当該発話文を音声によって出力する機能を有するロボットである。ロボット１０は、例えば、コミュニケーションロボットであるが、必ずしもキャラクターの形をしている必要はない。例えば、ロボットに組み込むことができる汎用のコンピュータであってもよい。
【００２１】
ロボット１０は、通信部１１、音声入力部１２、音声出力部１３、近距離通信部１４、制御部１５から構成される。
【００２２】
通信部１１は、通信回線（例えば携帯電話網）を介してネットワークにアクセスすることで、対話サーバ２０との通信を行う手段である。
音声入力部１２は、音声を取得する手段である。具体的には、不図示のマイクを用いて、音声を電気信号（以下、音声データ）に変換する。取得した音声データは制御部１５へ送信される。音声入力部１２は、主にユーザが発した音声を取得するために用いられる。
音声出力部１３は、音声を出力する手段である。具体的には、不図示のスピーカを用いて、制御部１５から送信された音声データを音声に変換する。
【００２３】
近距離通信部１４は、ロボット１０同士で無線通信を行う手段である。本実施形態では、近距離通信部１４は、Ｂｌｕｅｔｏｏｔｈ（登録商標）接続を利用した通信を行う。本実施形態では、「対話相手となる他のロボットの検出」と、「ロボット間における情報交換」という二つの機能を、近距離通信部１４を用いて実現する。
【００２４】
制御部１５は、ロボット１０が行う音声対話全般を制御する手段である。
具体的には、対話相手（例えば、ユーザや他のロボット）が存在することを検出して対話を開始する機能、対話サーバ２０から発話文を取得する機能、取得した発話文を音声データに変換し音声出力部１３を介して出力する機能などを実行する。
【００２５】
また、本実施形態では、制御部１５は、対話相手が他のロボットである場合に、発話文を音声データに変換して出力するのと同時に、当該発話文の内容を表すテキスト（以下、発話データ）を、自ロボットの識別子とともに近距離通信部１４を介して対話相手のロボットに送信する。また、制御部１５は、発話データが他のロボットから送信された場合に、当該発話データに基づいて、当該他のロボットが行った発話の内容を取得する。詳細な処理内容については後述する。
【００２６】
対話サーバ２０は、ロボット１０から送信されたデータに基づいて発話文を生成するサーバ装置である。対話サーバ２０は、ロボット１０から、音声データ、発話データ、あるいは、対話相手であるロボットに関する情報を取得し、発話文を生成する。対話サーバ２０は、通信部２１、音声認識部２２、発話生成部２３から構成される。
【００２７】
通信部２１が有する機能は、前述した通信部１１と同様であるため、詳細な説明は省略する。
音声認識部２２は、ロボット１０から送信された音声データに対して音声認識を行い、テキストに変換する手段である。音声認識は、既知の技術によって行うことができる。例えば、音声認識部２２には、音響モデルと認識辞書が記憶されており、取得した音声データと音響モデルとを比較して特徴を抽出し、抽出した特徴を認識辞書とをマッチングさせることで音声認識を行う。
【００２８】
発話生成部２３は、ロボット１０から取得したデータ、または、音声認識部２２が出力
したテキストに基づいて、発話文を生成する手段である。具体的には、（１）ロボット１０から取得した発話データ、（２）ロボット１０から取得した、対話相手に関する情報、（３）音声認識を行った結果得られたテキスト、のいずれかに基づいて、発話文の生成を行う。ロボット１０の対話相手が他のロボット１０である場合、前述した（１）および（２）によって発話文が生成され、ロボット１０の対話相手が人間である場合、前述した（３）によって発話文が生成される。それぞれの具体的な処理例については、データフロー図を参照しながら後ほど説明する。
【００２９】
発話文は、例えば、対話シナリオ（対話辞書）によって生成されてもよい。また、データベースを検索して得られた情報であってもよいし、ウェブ検索によって得られた情報であってもよい。
発話生成部２３が取得した情報は、ロボット１０へテキスト形式で送信され、その後、合成音声によって出力される。
【００３０】
ロボット１０および対話サーバ２０は、いずれもＣＰＵ、主記憶装置、補助記憶装置を有する情報処理装置として構成することができる。補助記憶装置に記憶されたプログラムが主記憶装置にロードされ、ＣＰＵによって実行されることで、図１に図示した各手段が機能する。なお、図示した機能の全部または一部は、専用に設計された回路を用いて実行されてもよい。
【００３１】
<処理フローチャート>
次に、ロボット１０が行う具体的な処理の内容について説明する。
まず、ロボット１０とユーザが音声によって対話する処理について、装置間のデータフロー図である図２を参照しながら説明する。
【００３２】
まず、ステップＳ１１で、音声入力部１２が、不図示のマイクを通して装置のユーザから音声を取得する。取得した音声は音声データに変換され、対話サーバ２０（音声認識部２２）へ送信される。
【００３３】
次に、対話サーバ２０が有する音声認識部２２が、ロボット１０から送信された音声データに対して音声認識を実行する（ステップＳ１２）。音声を認識した結果のテキストは、発話生成部２３へ送信される。
【００３４】
次に、対話サーバ２０が有する発話生成部２３が、音声認識部２２が出力したテキストに基づいて発話文を生成する（ステップＳ１３）。生成された発話文はロボット１０（制御部１５）へ送信される。
そして、ステップＳ１４で、ロボット１０が有する制御部１５が、発話文に基づいて音声合成を行い、音声出力部１３を介して出力する。
【００３５】
次に、ロボット１０同士が対話する場合の処理について、図３を参照しながら説明する。
なお、ここでは、一台目のロボットをロボット１０、ロボット１０と対話する二台目のロボットをロボット１０’と称し、両者を区別する。また、ロボット１０’が有している各手段については、符号にアポストロフィを付加することで区別する。
【００３６】
まず、ステップＳ２１で、制御部１５が、ロボット同士の対話を開始するためのトリガ（対話開始トリガ）を生成する。本例では、ロボット１０が、近距離通信部１４を介して、自らの近傍に他のロボットの存在を検出した場合に、対話開始トリガを生成するものとする。例えば、各ロボットが、自己の識別子を無線によって周期的にブロードキャストするように構成し、所定の距離以内に他のロボットを検出した場合に、対話開始トリガを生
成してもよい。この際、制御部１５は、検出した他のロボット（すなわち、対話相手となるロボット）の識別子をさらに取得する。
【００３７】
次に、発話文を生成するための情報を対話サーバ２０（発話生成部２３）に送信する。ここで送信される情報は、対話相手のロボットに関する情報である。例えば、ステップＳ２１で検出した他のロボットに関する情報（例えば、対話相手の台数や識別子など）を送信してもよいし、対話相手を検出したという情報のみを送信してもよい。
【００３８】
次に、対話サーバ２０が有する発話生成部２３が、ロボット１０から取得した情報に基づいて発話文を生成する（ステップＳ２２）。生成された発話文はロボット１０（制御部１５）へ送信される。
ステップＳ２３では、ロボット１０が有する制御部１５が、発話文に基づいて音声合成を行い、音声出力部１３を介して出力する。また、同時に、（１）発話データに加えて、（２）発話を行ったロボットの識別子と、（３）相手先ロボットの識別子を、対話先のロボット１０’へ無線通信によって送信する。以降、これら三つのデータを発話データセットと称する。
【００３９】
ステップＳ２４において、ロボット１０’が発話データを受信すると、上記（３）を参照し、当該発話データセットが自分宛のものであるか否かを判定する。ここで、受信した発話データセットが自分宛のものであった場合、対話開始トリガを生成する。
そして、発話文を生成するための情報を対話サーバ２０（発話生成部２３）に送信する。ここで送信される情報は、ロボット１０から送信された発話データセットそのものである。
なお、本例では発話データセットそのものを対話サーバ２０に送信するものとしたが、対話相手に関する情報であれば、他の情報を追加で対話サーバ２０に送信してもよい。例えば、発話内容の要約、発話文の種別、相手側ロボットの感情などを送信してもよい。
【００４０】
次に、対話サーバ２０が有する発話生成部２３が、ロボット１０’から取得した情報に基づいて発話文を生成する（ステップＳ２５）。生成された発話文はロボット１０’（制御部１５’）へ送信される。
なお、発話文の生成においては、発話を行ったロボットの識別子と、相手先ロボットの識別子を加味してもよい。例えば、対話サーバ２０に、ロボットのプロフィールや、当該ロボットのオーナーのプロフィール、当該ロボットと行った過去の会話の内容などを、ロボットの識別子と関連付けて記憶させておき、発話文の生成に利用してもよい。
【００４１】
ステップＳ２６では、ロボット１０’が有する制御部１５’が、対話サーバ２０から取得した発話文に基づいて音声合成を行い、音声出力部１３’を介して出力する。また、この際、新たな発話データセットを生成し、音声の出力と平行してロボット１０へ送信する。
以降は、前述した処理を繰り返すことでロボット同士の対話が進行する。
【００４２】
以上説明したように、本実施形態では、ロボットが発話を行う際に、無線通信によって当該発話の内容を相手側のロボットに伝送する。すなわち、ロボットが行う音声出力は、ユーザに対する演出であり、実際の情報の伝達は無線通信によって行う。
ロボット同士が実際に音声を介して対話を行う場合、当該ロボットが置かれた環境によっては、音声の認識精度が確保できず、正しい応答を生成できなくなることがあるが、本実施形態によると、精度の高い対話を行うことができる。
【００４３】
（変形例）
上記の実施形態はあくまでも一例であって、本発明はその要旨を逸脱しない範囲内で適
宜変更して実施しうる。
【００４４】
例えば、実施形態の説明では、対話サーバ２０が音声認識を行ったが、音声認識を行う手段をロボット１０に持たせてもよい。また、実施形態の説明では、応答文の生成を対話サーバ２０で行ったが、応答文の生成をロボット１０が行うようにしてもよい。
また、実施形態の説明では、ロボット１０がユーザとの対話を行ったが、外部との入出力を行う手段をロボット１０から分離してもよい。例えば、音声出力部１３や音声入力部１２を独立させてもよい。
【００４５】
また、実施形態の説明では、近距離無線通信を用いて他のロボットの存在を検出したが、無線通信以外の手段を用いて他のロボットを検出してもよい。例えば、内蔵されたカメラを用いて画像を撮像し、当該画像を解析することで、対話相手である他のロボットを検出してもよい。また、パターンマッチングやバーコードの読み取りといった既知の技術を用いて、検出したロボットの個体を識別してもよい。
【００４６】
また、実施形態の説明では、発話データセットに、発話データとロボットの識別子を含ませたが、付加的な他のデータを追加してもよい。例えば、「現在時刻」、「会話の種別」、「ロボットの擬似的感情」などを付加し、発話生成部２３が、これらの情報にさらに基づいて発話文を生成するようにしてもよい。
また、実施形態の説明では、発話データセットにロボットの識別子を含ませたが、例えば、対話を行うロボットが一対一である場合など、対話相手となるロボットが一意に特定できる場合、省略してもよい。
【符号の説明】
【００４７】
１０・・・ロボット
１１，２１・・・通信部
１２・・・音声出力部
１３・・・音声入力部
１４・・・音声認識部
１５・・・近距離通信部
１６・・・制御部
２０・・・対話サーバ
２２・・・発話生成部
【図１】
2018017764.tif 000003
【図２】
2018017764.tif 000004
【図３】
2018017764.tif 000005