(57)【要約】【課題】より適切な応答結果を提供することができるエージェント装置、エージェント装置の制御方法、およびプログラムを提供すること。【解決手段】エージェント装置は、それぞれが車両の乗員の発話に応じて、音声による応答を含むサービスを提供する複数のエージェント機能部と、乗員の発話内容に対して前記複数のエージェント機能部のそれぞれが実行したサービスの品質の履歴を示す履歴情報を参照し、前記車両の乗員の発話に対して応答するエージェント機能部を、前記複数のエージェント機能部から選択する選択部と、を備える。【選択図】図２
2020160108.tif 000002
【特許請求の範囲】
【請求項１】
それぞれが車両の乗員の発話に応じて、音声による応答を含むサービスを提供する複数のエージェント機能部と、
乗員の発話内容に対して前記複数のエージェント機能部のそれぞれが実行したサービスの品質の履歴を示す履歴情報を参照し、前記車両の乗員の発話に対して応答するエージェント機能部を、前記複数のエージェント機能部から選択する選択部と、
を備えるエージェント装置。
【請求項２】
前記履歴情報には、実行されたサービスの内容、提供元のエージェント機能部、及びサービスの品質を示す情報を含むレコードが含まれ、
前記選択部は、前記乗員の発話を示す情報と実行されたサービスが合致するレコードの中で、前記サービスの品質が良いレコードに対応する前記エージェント機能部を、前記車両の乗員の発話に対して応答するエージェント機能部として選択する、
請求項１に記載のエージェント装置。
【請求項３】
出力部を用いて前記乗員に各種情報を通知する通知制御部を更に備え、
前記選択部は、前記履歴情報に基づいて、ある発話に対してサービスを提供する前記エージェント機能部を動的に選択する状態から固定的に選択する状態に移行し、
前記通知制御部は、前記選択部が固定的に選択すると確定した前記エージェント機能部に関して、前記出力部を用いて前記乗員に通知する、
請求項１又は請求項２に記載のエージェント装置。
【請求項４】
前記通知制御部は、前記乗員の発話と、前記サービスの提供との間に、前記選択部が固定的に選択すると確定した前記エージェント機能部に関して、前記出力部を用いて前記乗員に通知する、
請求項３に記載のエージェント装置。
【請求項５】
前記通知制御部は、前記サービスの提供の後に、前記選択部が固定的に選択すると確定した前記エージェント機能部に関して、前記出力部を用いて前記乗員に通知する、
請求項３又は請求項４に記載のエージェント装置。
【請求項６】
前記複数のエージェント機能部には、起動に用いられるフレーズがそれぞれ設定され、
前記選択部は、前記乗員の発話に前記フレーズが含まれていても、前記乗員の発話のうちフレーズ以外の部分が要求するサービスを提供する前記エージェント機能部が確定している場合、当該確定している前記エージェント機能部を、前記車両の乗員の発話に対して応答するエージェント機能部として選択する、
請求項３から請求項５のうちいずれか一項に記載のエージェント装置。
【請求項７】
前記複数のエージェント機能部には、起動に用いられるフレーズがそれぞれ設定され、
前記選択部は、前記乗員の発話に前記フレーズが含まれていない場合に、前記エージェント機能部を選択する、
請求項１から請求項５のうちいずれか一項に記載のエージェント装置。
【請求項８】
コンピュータが、
それぞれが車両の乗員の発話に応じて、音声による応答を含むサービスを提供する複数のエージェント機能部を起動し、
乗員の発話内容に対して前記複数のエージェント機能部のそれぞれが実行したサービスの品質の履歴を示す履歴情報を参照し、
前記車両の乗員の発話に対して応答するエージェント機能部を、前記複数のエージェント機能部から選択する、
エージェント装置の制御方法。
【請求項９】
コンピュータに、
それぞれが車両の乗員の発話に応じて、音声による応答を含むサービスを提供する複数のエージェント機能部を起動させ、
乗員の発話内容に対して前記複数のエージェント機能部のそれぞれが実行したサービスの品質の履歴を示す履歴情報を参照させ、
前記車両の乗員の発話に対して応答するエージェント機能部を、前記複数のエージェント機能部から選択させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エージェント装置、エージェント装置の制御方法、およびプログラムに関する。
【背景技術】
【０００２】
従来、車両の乗員と対話を行いながら、乗員の要求に応じた運転支援に関する情報や車両の制御、その他のアプリケーション等を提供するエージェント機能に関する技術が開示されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−３３５２３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
近年では、複数のエージェント機能を車両に搭載することについて実用化が進められているが、複数のエージェントを用いた場合であっても、乗員が一つのエージェントを呼び出して要求を伝える必要がある。そのため、乗員は、エージェントごとの特徴を把握していないと、要求に対する処理を実行させるのに最適なエージェントを呼び出すことができず、適切な結果が得られない場合があった。
【０００５】
本発明は、このような事情を考慮してなされたものであり、より適切な応答結果を提供することができるエージェント装置、エージェント装置の制御方法、およびプログラムを提供することを目的の一つとする。
【課題を解決するための手段】
【０００６】
この発明に係るエージェント装置、エージェント装置の制御方法、およびプログラムは、以下の構成を採用した。
（１）：この発明の一態様に係るエージェント装置は、それぞれが車両の乗員の発話に応じて、音声による応答を含むサービスを提供する複数のエージェント機能部と、乗員の発話内容に対して前記複数のエージェント機能部のそれぞれが実行したサービスの品質の履歴を示す履歴情報を参照し、前記車両の乗員の発話に対して応答するエージェント機能部を、前記複数のエージェント機能部から選択する選択部と、を備える、エージェント装置である。
【０００７】
（２）：上記（１）の態様において、前記履歴情報には、実行されたサービスの内容、提供元のエージェント機能部、及びサービスの品質を示す情報を含むレコードが含まれ、前記選択部は、前記乗員の発話を示す情報と実行されたサービスが合致するレコードの中で、前記サービスの品質が良いレコードに対応する前記エージェント機能部を、前記車両の乗員の発話に対して応答するエージェント機能部として選択するものである。
【０００８】
（３）：上記（１）又は（２）の態様において、エージェント装置は、出力部を用いて前記乗員に各種情報を通知する通知制御部を更に備え、前記選択部は、前記履歴情報に基づいて、ある発話に対してサービスを提供する前記エージェント機能部を動的に選択する状態から固定的に選択する状態に移行し、前記通知制御部は、前記選択部が固定的に選択すると確定した前記エージェント機能部に関して、前記出力部を用いて前記乗員に通知するものである。
【０００９】
（４）：上記（３）の態様において前記通知制御部は、前記乗員の発話と、前記サービスの提供との間に、前記選択部が固定的に選択すると確定した前記エージェント機能部に関して、前記出力部を用いて前記乗員に通知するものである。
【００１０】
（５）：上記（３）又は（４）の態様において、前記通知制御部は、前記サービスの提供の後に、前記選択部が固定的に選択すると確定した前記エージェント機能部に関して、前記出力部を用いて前記乗員に通知するものである。
【００１１】
（６）：上記（３）〜（５）のうち何れか１つの態様において、前記複数のエージェント機能部には、起動に用いられるフレーズがそれぞれ設定され、前記選択部は、前記乗員の発話に前記フレーズが含まれていても、前記乗員の発話のうちフレーズ以外の部分が要求するサービスを提供する前記エージェント機能部が確定している場合、当該確定している前記エージェント機能部を、前記車両の乗員の発話に対して応答するエージェント機能部として選択するものである。
【００１２】
（７）：上記（１）〜（５）のうち何れか１つの態様において、前記複数のエージェント機能部には、起動に用いられるフレーズがそれぞれ設定され、前記選択部は、前記乗員の発話に前記フレーズが含まれていない場合に、前記エージェント機能部を選択するものである。
（８）：本発明の他の態様に係るエージェント装置の制御方法は、コンピュータが、それぞれが車両の乗員の発話に応じて、音声による応答を含むサービスを提供する複数のエージェント機能部を起動し、乗員の発話内容に対して前記複数のエージェント機能部のそれぞれが実行したサービスの品質の履歴を示す履歴情報を参照し、前記車両の乗員の発話に対して応答するエージェント機能部を、前記複数のエージェント機能部から選択するものである。
【００１３】
（９）：本発明の他の態様に係るプログラムは、コンピュータに、それぞれが車両の乗員の発話に応じて、音声による応答を含むサービスを提供する複数のエージェント機能部を起動させ、乗員の発話内容に対して前記複数のエージェント機能部のそれぞれが実行したサービスの品質の履歴を示す履歴情報を参照させ、前記車両の乗員の発話に対して応答するエージェント機能部を、前記複数のエージェント機能部から選択させるものである。
【発明の効果】
【００１４】
上記（１）〜（９）の態様によれば、より適切な応答結果を提供することができる。
【図面の簡単な説明】
【００１５】
【図１】第１実施形態に係るエージェント装置１００を含むエージェントシステム１の構成図である。
【図２】第１実施形態に係るエージェント装置１００の構成と、車両Ｍに搭載された機器とを示す図である。
【図３】表示・操作装置２０およびスピーカユニット３０の配置例を示す図である。
【図４】スピーカユニット３０の配置例を示す図である。
【図５】エージェントサーバ２００の構成と、エージェント装置１００の構成の一部とを示す図である。
【図６】履歴情報１６４の内容の一例を示す図である。
【図７】履歴情報生成部１２４が応答時間、及び情報量の評価指標を取得する処理を概念的に示す図である。
【図８】履歴情報生成部１２４が確信度の評価指標を取得する処理を概念的に示す図である。
【図９】第１実施形態に係るエージェント装置１００の動作の一連の流れを示すフローチャートである。
【図１０】第２実施形態に係るエージェント装置１００Ａの構成と、車両Ｍに搭載された機器とを示す図である。
【図１１】確定エージェント情報１６６の内容の一例を示す図である。
【図１２】乗員の発話とサービスの提供との間に、確定したエージェントを紹介する対話の一例を示す図である。
【図１３】サービスの提供後に、確定したエージェントを紹介する対話の一例を示す図である。
【図１４】選択部１２６が確定エージェント情報１６６を生成する処理の一連の流れを示すフローチャートである。
【図１５】第２実施形態に係るエージェント装置１００Ａの動作の一連の流れを示すフローチャートである。
【発明を実施するための形態】
【００１６】
以下、図面を参照し、本発明のエージェント装置、エージェント装置の制御方法、およびプログラムの実施形態について説明する。エージェント装置は、エージェントシステムの一部または全部を実現する装置である。以下では、エージェント装置の一例として、車両（以下、車両Ｍ）に搭載され、複数種類のエージェント機能を備えたエージェント装置について説明する。エージェント機能とは、例えば、車両Ｍの乗員と対話をしながら、乗員の発話の中に含まれる要求（コマンド）に基づく各種の情報提供を行ったり、ネットワークサービスを仲介したりする機能である。複数種類のエージェントは、それぞれに果たす機能、処理手順、制御、出力態様・内容がそれぞれ異なってもよい。また、エージェント機能の中には、車両内の機器（例えば運転制御や車体制御に関わる機器）の制御等を行う機能を有するものがあってよい。
【００１７】
エージェント機能は、例えば、乗員の音声を認識する音声認識機能（音声をテキスト化する機能）に加え、自然言語処理機能（テキストの構造や意味を理解する機能）、対話管理機能、ネットワークを介して他装置を検索し、或いは自装置が保有する所定のデータベースを検索するネットワーク検索機能等を統合的に利用して実現される。これらの機能の一部または全部は、ＡＩ（Artificial Intelligence）技術によって実現されてよい。また、これらの機能を行うための構成の一部（特に、音声認識機能や自然言語処理解釈機能）は、車両Ｍの車載通信装置または車両Ｍに持ち込まれた汎用通信装置と通信可能なエージェントサーバ（外部装置）に搭載されてもよい。以下の説明では、構成の一部がエージェントサーバに搭載されており、エージェント装置とエージェントサーバが協働してエージェントシステムを実現することを前提とする。また、エージェント装置とエージェントサーバが協働して仮想的に出現させるサービス提供主体（サービス・エンティティ）をエージェントと称する。
【００１８】
＜第１実施形態＞
＜全体構成＞
図１は、第１実施形態に係るエージェント装置１００を含むエージェントシステム１の構成図である。エージェントシステム１は、例えば、エージェント装置１００と、複数のエージェントサーバ２００−１、２００−２、２００−３、…とを備える。符号の末尾のハイフン以下数字は、エージェントを区別するための識別子であるものとする。何れのエージェントサーバであるかを区別しない場合、単にエージェントサーバ２００と称する場合がある。図１では３つのエージェントサーバ２００を示しているが、エージェントサーバ２００の数は２つであってもよいし、４つ以上であってもよい。それぞれのエージェントサーバ２００は、例えば、互いに異なるエージェントシステムの提供者が運営するものである。したがって、本実施形態におけるエージェントは、互いに異なる提供者により実現されるエージェントである。提供者としては、例えば、自動車メーカー、ネットワークサービス事業者、電子商取引事業者、携帯端末の販売者や製造者が挙げられ、任意の主体（法人、団体、個人等）がエージェントシステムの提供者となり得る。
【００１９】
エージェント装置１００は、ネットワークＮＷを介してエージェントサーバ２００と通信する。ネットワークＮＷは、例えば、インターネット、セルラー網、Ｗｉ−Ｆｉ網、ＷＡＮ（Wide Area Network）、ＬＡＮ（Local Area Network）、公衆回線、電話回線、無線基地局等のうち一部または全部を含む。ネットワークＮＷには、各種ウェブサーバ３００が接続されており、エージェントサーバ２００またはエージェント装置１００は、ネットワークＮＷを介して各種ウェブサーバ３００からウェブページを取得することができる。
【００２０】
エージェント装置１００は、車両Ｍの乗員と対話を行い、乗員からの音声をエージェントサーバ２００に送信し、エージェントサーバ２００から得られた回答を、音声出力や画像表示の形で乗員に提示する。
【００２１】
＜第１実施形態＞
［車両］
図２は、第１実施形態に係るエージェント装置１００の構成と、車両Ｍに搭載された機器とを示す図である。車両Ｍには、例えば、一以上のマイク１０と、表示・操作装置２０と、スピーカユニット３０と、ナビゲーション装置４０と、車両機器５０と、車載通信装置６０と、乗員認識装置８０と、エージェント装置１００とが搭載される。また、スマートフォン等の汎用通信装置７０が車室内に持ち込まれ、通信装置として使用される場合がある。これらの装置は、ＣＡＮ（Controller Area Network）通信線等の多重通信線やシリアル通信線、無線通信網等によって互いに接続される。なお、図２に示す構成はあくまで一例であり、構成の一部が省略されてもよいし、更に別の構成が追加されてもよい。
【００２２】
マイク１０は、車室内で発せられた音を収集する収音部である。表示・操作装置２０は、画像を表示すると共に、入力操作を受付可能な装置（或いは装置群）である。表示・操作装置２０は、例えば、タッチパネルとして構成されたディスプレイ装置を含む。表示・操作装置２０は、更に、ＨＵＤ（Head Up Display）や機械式の入力装置を含んでもよい。スピーカユニット３０は、例えば、車室内の互いに異なる位置に配設された複数のスピーカ（音出力部）を含む。表示・操作装置２０は、エージェント装置１００とナビゲーション装置４０とで共用されてもよい。これらの詳細については後述する。
【００２３】
ナビゲーション装置４０は、ナビＨＭＩ（Human Machine Interface）と、ＧＰＳ（Global Positioning System）等の位置測位装置と、地図情報を記憶した記憶装置と、経路探索等を行う制御装置（ナビゲーションコントローラ）とを備える。マイク１０、表示・操作装置２０、およびスピーカユニット３０のうち一部または全部がナビＨＭＩとして用いられてもよい。ナビゲーション装置４０は、位置測位装置によって特定された車両Ｍの位置から、乗員によって入力された目的地まで移動するための経路（ナビ経路）を探索し、経路に沿って車両Ｍが走行できるように、ナビＨＭＩを用いて案内情報を出力する。経路探索機能は、ネットワークＮＷを介してアクセス可能なナビゲーションサーバにあってもよい。この場合、ナビゲーション装置４０は、ナビゲーションサーバから経路を取得して案内情報を出力する。なお、エージェント装置１００は、ナビゲーションコントローラを基盤として構築されてもよく、その場合、ナビゲーションコントローラとエージェント装置１００は、ハードウェア上は一体に構成される。
【００２４】
車両機器５０は、例えば、エンジンや走行用モータ等の駆動力出力装置、エンジンの始動モータ、ドアロック装置、ドア開閉装置、窓、窓の開閉装置及び窓の開閉制御装置、シート、シート位置の制御装置、ルームミラー及びその角度位置制御装置、車両内外の照明装置及びその制御装置、ワイパーやデフォッガー及びそれぞれの制御装置、方向指示灯及びその制御装置、空調装置、走行距離やタイヤの空気圧の情報や燃料の残量情報などの車両情報装置などを含む。
【００２５】
車載通信装置６０は、例えば、セルラー網やＷｉ−Ｆｉ網を利用してネットワークＮＷにアクセス可能な無線通信装置である。
【００２６】
乗員認識装置８０は、例えば、着座センサ、車室内カメラ、画像認識装置等を含む。着座センサは座席の下部に設けられた圧力センサ、シートベルトに取り付けられた張力センサ等を含む。車室内カメラは、車室内に設けられたＣＣＤ（Charge Coupled Device）カメラやＣＭＯＳ（Complementary Metal Oxide Semiconductor）カメラである。画像認識装置は、車室内カメラの画像を解析し、座席ごとの乗員の有無、顔向き等を認識する。
【００２７】
図３は、表示・操作装置２０およびスピーカユニット３０の配置例を示す図である。表示・操作装置２０は、例えば、第１ディスプレイ２２と、第２ディスプレイ２４と、操作スイッチＡＳＳＹ２６とを含む。表示・操作装置２０は、更に、ＨＵＤ２８を含んでもよい。また、表示・操作装置２０は、更に、インストルメントパネルのうち運転席ＤＳに対面する部分に設けられるメーターディスプレイ２９を含んでもよい。第１ディスプレイ２２と、第２ディスプレイ２４と、ＨＵＤ２８と、メーターディスプレイ２９とを合わせたものが「表示部」の一例である。
【００２８】
車両Ｍには、例えば、ステアリングホイールＳＷが設けられた運転席ＤＳと、運転席ＤＳに対して車幅方向（図中Ｙ方向）に設けられた助手席ＡＳとが存在する。第１ディスプレイ２２は、インストルメントパネルにおける運転席ＤＳと助手席ＡＳとの中間辺りから、助手席ＡＳの左端部に対向する位置まで延在する横長形状のディスプレイ装置である。第２ディスプレイ２４は、運転席ＤＳと助手席ＡＳとの車幅方向に関する中間あたり、且つ第１ディスプレイの下方に設置されている。例えば、第１ディスプレイ２２と第２ディスプレイ２４は、共にタッチパネルとして構成され、表示部としてＬＣＤ（Liquid Crystal Display）や有機ＥＬ（Electroluminescence）、プラズマディスプレイ等を備えるものである。操作スイッチＡＳＳＹ２６は、ダイヤルスイッチやボタン式スイッチ等が集積されたものである。表示・操作装置２０は、乗員によってなされた操作の内容をエージェント装置１００に出力する。第１ディスプレイ２２または第２ディスプレイ２４が表示する内容は、エージェント装置１００によって決定されてよい。
【００２９】
図４は、スピーカユニット３０の配置例を示す図である。スピーカユニット３０は、例えば、スピーカ３０Ａ〜３０Ｆを含む。スピーカ３０Ａは、運転席ＤＳ側の窓柱（いわゆるＡピラー）に設置されている。スピーカ３０Ｂは、運転席ＤＳに近いドアの下部に設置されている。スピーカ３０Ｃは、助手席ＡＳ側の窓柱に設置されている。スピーカ３０Ｄは、助手席ＡＳに近いドアの下部に設置されている。スピーカ３０Ｅは、第２ディスプレイ２４の近傍に設置されている。スピーカ３０Ｆは、車室の天井（ルーフ）に設置されている。また、スピーカユニット３０は、右側後部座席や左側後部座席に近いドアの下部に設置されてもよい。
【００３０】
係る配置において、例えば、専らスピーカ３０Ａおよび３０Ｂに音を出力させた場合、音像は運転席ＤＳ付近に定位することになる。「音像が定位する」とは、例えば、乗員の左右の耳に伝達される音の大きさを調節することにより、乗員が感じる音源の空間的な位置を定めることである。また、専らスピーカ３０Ｃおよび３０Ｄに音を出力させた場合、音像は助手席ＡＳ付近に定位することになる。また、専らスピーカ３０Ｅに音を出力させた場合、音像は車室の前方付近に定位することになり、専らスピーカ３０Ｆに音を出力させた場合、音像は車室の上方付近に定位することになる。これに限らず、スピーカユニット３０は、ミキサーやアンプを用いて各スピーカの出力する音の配分を調整することで、車室内の任意の位置に音像を定位させることができる。
【００３１】
［エージェント装置］
図２に戻り、エージェント装置１００は、管理部１１０と、エージェント機能部１５０−１、１５０−２、１５０−３と、ペアリングアプリ実行部１５２とを備える。管理部１１０は、例えば、音響処理部１１２と、エージェントごとＷＵ（Wake Up）判定部１１４と、表示制御部１１６と、音声制御部１１８と、音声認識部１２０と、自然言語処理部１２２と、履歴情報生成部１２４と、選択部１２６とを備える。何れのエージェント機能部であるか区別しない場合、単にエージェント機能部１５０と称する。３つのエージェント機能部１５０を示しているのは、図１におけるエージェントサーバ２００の数に対応させた一例に過ぎず、エージェント機能部１５０の数は、２つであってもよいし、４つ以上であってもよい。図２に示すソフトウェア配置は説明のために簡易に示しており、実際には、例えば、エージェント機能部１５０と車載通信装置６０の間に管理部１１０が介在してもよいように、任意に改変することができる。
【００３２】
エージェント装置１００の各構成要素は、例えば、ＣＰＵ（Central Processing Unit）等のハードウェアプロセッサがプログラム（ソフトウェア）を実行することにより実現される。これらの構成要素のうち一部または全部は、ＬＳＩ（Large Scale Integration）やＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field-Programmable Gate Array）、ＧＰＵ（Graphics Processing Unit）等のハードウェア（回路部；circuitryを含む）によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予めＨＤＤ（Hard Disk Drive）やフラッシュメモリ等の記憶装置（非一過性の記憶媒体を備える記憶装置）に格納されていてもよいし、ＤＶＤやＣＤ−ＲＯＭ等の着脱可能な記憶媒体（非一過性の記憶媒体）に格納されており、記憶媒体がドライブ装置に装着されることでインストールされてもよい。
【００３３】
エージェント装置１００は、記憶部１６０を備える。記憶部１６０は、上記の各種記憶装置により実現される。記憶部１６０には、例えば、辞書ＤＢ（データベース）１６２と、及び履歴情報１６４等のデータやプログラムが格納される。辞書ＤＢ１６２、及び履歴情報１６４の詳細については、後述する。
【００３４】
管理部１１０は、ＯＳ（Operating System）やミドルウェア等のプログラムが実行されることで機能する。
【００３５】
管理部１１０の音響処理部１１２は、マイク１０から収集される音を受け付け、受け付けた音に対して、自然言語処理部１２２で音の認識をするのに適した状態となるように音響処理を行う。音響処理とは、例えば、バンドパスフィルタ等のフィルタリングによるノイズ除去や音の増幅等である。
【００３６】
エージェントごとＷＵ判定部１１４は、エージェント機能部１５０−１、１５０−２、１５０−３のそれぞれに対応して存在し、エージェントごとに予め定められているウエイクアップワードを認識する。エージェントごとＷＵ判定部１１４は、音響処理が行われた音声（音声ストリーム）から音声の意味を認識する。まず、エージェントごとＷＵ判定部１１４は、音声ストリームにおける音声波形の振幅と零交差に基づいて音声区間を検出する。エージェントごとＷＵ判定部１１４は、混合ガウス分布モデル（ＧＭＭ；Gaussian mixture model) に基づくフレーム単位の音声識別および非音声識別に基づく区間検出を行ってもよい。
【００３７】
次に、エージェントごとＷＵ判定部１１４は、検出した音声区間における音声をテキスト化し、文字情報とする。そして、エージェントごとＷＵ判定部１１４は、テキスト化した文字情報がウエイクアップワード（フレーズ）に該当するか否かを判定する。ウエイクアップワードであると判定した場合。エージェントごとＷＵ判定部１１４は、対応するエージェント機能部１５０を示す情報を選択部に通知する。なお、エージェントごとＷＵ判定部１１４に相当する機能がエージェントサーバ２００に搭載されてもよい。この場合、管理部１１０は、音声認識部１２０によって音響処理が行われた音声ストリームをエージェントサーバ２００に送信し、エージェントサーバ２００がウエイクアップワードであると判定した場合、エージェントサーバ２００からの指示に従ってエージェント機能部１５０が起動する。なお、各エージェント機能部１５０は、常時起動しており且つウエイクアップワードの判定を自ら行うものであってよい。この場合、管理部１１０がエージェントごとＷＵ判定部１１４を備える必要はない。
【００３８】
表示制御部１１６は、選択部１２６またはエージェント機能部１５０からの指示に応じて表示部の少なくとも一部の領域に画像を表示させる。以下では、エージェントに関する画像を第１ディスプレイ２２に表示させるものとして説明する。表示制御部１１６は、選択部１２６またはエージェント機能部１５０の制御により、例えば、車室内で乗員とのコミュニケーションを行う擬人化されたエージェントの画像（以下、エージェント画像と称する）を生成し、生成したエージェント画像を第１ディスプレイ２２に表示させる。エージェント画像は、例えば、乗員に対して話しかける態様の画像である。エージェント画像は、例えば、少なくとも観者（乗員）によって表情や顔向きが認識される程度の顔画像を含んでよい。例えば、エージェント画像は、顔領域の中に目や鼻に擬したパーツが表されており、顔領域の中のパーツの位置に基づいて表情や顔向きが認識されるものであってよい。また、エージェント画像は、立体的に感じられ、観者によって三次元空間における頭部画像を含むことでエージェントの顔向きが認識されたり、本体（胴体や手足）の画像を含むことで、エージェントの動作や振る舞い、姿勢等が認識されるものであってもよい。また、エージェント画像は、アニメーション画像であってもよい。例えば、表示制御部１１６は、乗員認識装置８０により認識された乗員の位置に近い表示領域にエージェント画像を表示させたり、乗員の位置に顔を向けたエージェント画像を生成して表示させてもよい。
【００３９】
音声制御部１１８は、選択部１２６またはエージェント機能部１５０からの指示に応じて、スピーカユニット３０に含まれるスピーカのうち一部または全部に音声を出力させる。音声制御部１１８は、複数のスピーカユニット３０を用いて、エージェント画像の表示位置に対応する位置にエージェント音声の音像を定位させる制御を行ってもよい。エージェント画像の表示位置に対応する位置とは、例えば、エージェント画像がエージェント音声を喋っていると乗員が感じると予測される位置であり、具体的には、エージェント画像の表示位置付近（例えば、２〜３［ｃｍ］以内）の位置である。
【００４０】
音声認識部１２０は、音響処理が行われた音声（音声ストリーム）から音声の意味を認識する。まず、音声認識部１２０は、音声ストリームにおける音声波形の振幅と零交差に基づいて音声区間を検出する。また、音声認識部１２０は、混合ガウス分布モデル（ＧＭＭ；Gaussian mixture model) に基づくフレーム単位の音声識別および非音声識別に基づく区間検出を行ってもよい。次に、音声認識部１２０は、検出した音声区間における音声をテキスト化し、テキスト化された文字情報を自然言語処理部１２２に出力する。
【００４１】
自然言語処理部１２２は、音声認識部１２０から入力された文字情報に対して辞書ＤＢ１６２を参照しながら意味解釈を行う。辞書ＤＢ１６２は、文字情報に対して抽象化された意味情報が対応付けられたものである。辞書ＤＢ１６２は、同義語や類義語の一覧情報を含んでもよい。音声認識部１２０の処理と、自然言語処理部１２２の処理とは、段階が明確に分かれるものではなく、自然言語処理部１２２の処理結果を受けて音声認識部１２０が認識結果を修正する等、相互に影響し合って行われてよい。
【００４２】
自然言語処理部１２２は、例えば、認識結果として、「今日の天気は」、「天気はどうですか」等の意味（要求）が認識された場合、標準文字情報「今日の天気」に置き換えたコマンドを生成する。コマンドとは、例えば、エージェント機能部１５０−１〜１５０−３のそれぞれが備える機能を実行させるための命令である。これにより、リクエストの音声に文字揺らぎがあった場合にも要求にあった対話をし易くすることができる。また、自然言語処理部１２２は、例えば、確率を利用した機械学習処理等の人工知能処理を用いて文字情報の意味を認識したり、認識結果に基づくコマンドを生成してもよい。また、それぞれのエージェント機能部１５０で機能を実行させるためのコマンドのフォーマットやパラメータが異なる場合、自然言語処理部１２２は、エージェント機能部１５０ごとに認識可能なコマンドを生成してもよい。
【００４３】
自然言語処理部１２２は、生成したコマンドを、エージェント機能部１５０−１〜１５０−３に出力する。また、音声認識部１２０は、エージェント機能部１５０−１〜１５０−３のうち、音声ストリームの入力が必要であるエージェント機能部については、音声コマンドに加えて音声ストリームを出力してもよい。
【００４４】
履歴情報生成部１２４は、エージェント機能部１５０がコマンドをエージェントサーバ２００に送信し、エージェントサーバ２００から応答結果を取得するまでの処理に係る情報に基づいて、履歴情報１６４を生成する。履歴情報生成部１２４の処理の詳細については、後述する。
【００４５】
選択部１２６は、エージェントごとＷＵ判定部１１４によってウエイクアップワードが認識されたエージェント機能部１５０を、乗員の発話に対する応答を行うエージェント機能部１５０として選択する。また、選択部１２６は、エージェントごとＷＵ判定部１１４によってウエイクアップワードが認識されなかった場合には、履歴情報１６４を参照し、自然言語処理部１２２によって特定された機能を実現する（つまり、乗員の発話に対応する）エージェント機能部１５０を選択する。選択部１２６がエージェント機能部１５０を選択する処理の詳細については、後述する。選択部１２６は、選択したエージェント機能部１５０に音声ストリームを送信し、エージェント機能部１５０を起動させる。
【００４６】
エージェント機能部１５０は、対応するエージェントサーバ２００と協働してエージェントを出現させ、車両の乗員の発話に応じて、音声による応答を含むサービスを提供する。エージェント機能部１５０には、車両機器５０を制御する権限が付与されたものが含まれてよい。また、エージェント機能部１５０には、ペアリングアプリ実行部１５２を介して汎用通信装置７０と連携し、エージェントサーバ２００と通信するものがあってよい。例えば、エージェント機能部１５０−１には、車両機器５０を制御する権限が付与されている。エージェント機能部１５０−１は、車載通信装置６０を介してエージェントサーバ２００−１と通信する。エージェント機能部１５０−２は、車載通信装置６０を介してエージェントサーバ２００−２と通信する。エージェント機能部１５０−３は、ペアリングアプリ実行部１５２を介して汎用通信装置７０と連携し、エージェントサーバ２００−３と通信する。
【００４７】
ペアリングアプリ実行部１５２は、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）によって汎用通信装置７０とペアリングを行い、エージェント機能部１５０−３と汎用通信装置７０とを接続させる。なお、エージェント機能部１５０−３は、ＵＳＢ（Universal Serial Bus）等を利用した有線通信によって汎用通信装置７０に接続されるようにしてもよい。以下、エージェント機能部１５０−１とエージェントサーバ２００−１が協働して出現させるエージェントをエージェント１、エージェント機能部１５０−２とエージェントサーバ２００−２が協働して出現させるエージェントをエージェント２、エージェント機能部１５０−３とエージェントサーバ２００−３が協働して出現させるエージェントをエージェント３と称する場合がある。エージェント機能部１５０−１〜１５０−３のそれぞれは、管理部１１０から入力された音声コマンドに基づく処理を実行し、実行結果を管理部１１０に出力する。
【００４８】
［エージェントサーバ］
図５は、エージェントサーバ２００の構成と、エージェント装置１００の構成の一部とを示す図である。以下、エージェントサーバ２００の構成と共にエージェント機能部１５０等の動作について説明する。ここでは、エージェント装置１００からネットワークＮＷまでの物理的な通信についての説明を省略する。また、以下では、主にエージェント機能部１５０−１およびエージェントサーバ２００−１を中心として説明するが、他のエージェント機能部やエージェントサーバの組についても、それぞれの詳細な機能が異なる場合はあるものの、ほぼ同様の動作を行う。
【００４９】
エージェントサーバ２００−１は、通信部２１０を備える。通信部２１０は、例えば、ＮＩＣ（Network Interface Card）等のネットワークインターフェースである。更に、エージェントサーバ２００−１は、例えば、対話管理部２２０と、ネットワーク検索部２２２と、応答文生成部２２４とを備える。これらの構成要素は、例えば、ＣＰＵ等のハードウェアプロセッサがプログラム（ソフトウェア）を実行することにより実現される。これらの構成要素のうち一部または全部は、ＬＳＩやＡＳＩＣ、ＦＰＧＡ、ＧＰＵ等のハードウェア（回路部；circuitryを含む）によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予めＨＤＤやフラッシュメモリ等の記憶装置（非一過性の記憶媒体を備える記憶装置）に格納されていてもよいし、ＤＶＤやＣＤ−ＲＯＭ等の着脱可能な記憶媒体（非一過性の記憶媒体）に格納されており、記憶媒体がドライブ装置に装着されることでインストールされてもよい。
【００５０】
エージェントサーバ２００は、記憶部２５０を備える。記憶部２５０は、上記の各種記憶装置により実現される。記憶部２５０には、例えば、パーソナルプロファイル２５２、知識ベースＤＢ２５４、応答規則ＤＢ２５６等のデータやプログラムが格納される。
【００５１】
エージェント装置１００において、エージェント機能部１５０−１は、コマンド（或いは圧縮や符号化等の処理を行ったコマンド）を、エージェントサーバ２００−１に送信する。エージェント機能部１５０−１は、ローカル処理（エージェントサーバ２００−１を介さない処理）が可能なコマンドを認識した場合は、コマンドで要求された処理を実行してもよい。ローカル処理が可能なコマンドとは、例えば、エージェント装置１００が備える記憶部１６０を参照することで回答可能なコマンドである。より具体的には、ローカル処理が可能なコマンドとは、例えば、電話帳から特定者の名前を検索し、合致した名前に対応付けられた電話番号に電話をかける（相手を呼び出す）コマンドである。したがって、エージェント機能部１５０−１は、エージェントサーバ２００−１が備える機能の一部を有してもよい。
【００５２】
対話管理部２２０は、入力されたコマンドに基づいて、パーソナルプロファイル２５２や知識ベースＤＢ２５４、応答規則ＤＢ２５６を参照しながら車両Ｍの乗員に対する応答内容（例えば、乗員への発話内容や出力する画像）を決定する。パーソナルプロファイル２５２は、乗員ごとに保存されている乗員の個人情報、趣味嗜好、過去の対話の履歴等を含む。知識ベースＤＢ２５４は、物事の関係性を規定した情報である。応答規則ＤＢ２５６は、コマンドに対してエージェントが行うべき動作（回答や機器制御の内容等）を規定した情報である。
【００５３】
また、対話管理部２２０は、音声ストリームから得られる特徴情報を用いて、パーソナルプロファイル２５２と照合を行うことで、乗員を特定してもよい。この場合、パーソナルプロファイル２５２には、例えば、音声の特徴情報に、個人情報が対応付けられている。音声の特徴情報とは、例えば、声の高さ、イントネーション、リズム（音の高低のパターン）等の喋り方の特徴や、メル周波数ケプストラム係数（Mel Frequency Cepstrum Coefficients）等による特徴量に関する情報である。音声の特徴情報は、例えば、乗員の初期登録時に所定の単語や文章等を乗員に発声させ、発声させた音声を認識することで得られる情報である。
【００５４】
対話管理部２２０は、コマンドが、ネットワークＮＷを介して検索可能な情報を要求するものである場合、ネットワーク検索部２２２に検索を行わせる。ネットワーク検索部２２２は、ネットワークＮＷを介して各種ウェブサーバ３００にアクセスし、所望の情報を取得する。「ネットワークＮＷを介して検索可能な情報」とは、例えば、車両Ｍの周辺にあるレストランの一般ユーザによる評価結果であったり、その日の車両Ｍの位置に応じた天気予報であったりする。
【００５５】
応答文生成部２２４は、対話管理部２２０により決定された発話の内容が車両Ｍの乗員に伝わるように、応答文を生成し、エージェント装置１００に送信する。また、応答文生成部２２４は、乗員認識装置８０による認識結果をエージェント装置１００から取得し、取得した認識結果によりコマンドを含む発話を行った乗員がパーソナルプロファイル２５２に登録された乗員であることが特定されている場合に、乗員の名前を呼んだり、乗員の話し方に似せた話し方にした応答文を生成してもよい。
【００５６】
エージェント機能部１５０は、応答文を取得すると、音声合成を行って音声を出力するように音声制御部１１８に指示する。また、エージェント機能部１５０は、音声出力に合わせてエージェント画像を表示するように表示制御部１１６に指示する。このようにして、仮想的に出現したエージェントが車両Ｍの乗員に応答するエージェント機能が実現される。
【００５７】
［履歴情報生成部１２４の処理について］
以下、履歴情報生成部１２４が履歴情報１６４を生成する処理の詳細について説明する。図６は、履歴情報１６４の内容の一例を示す図である。履歴情報１６４には、例えば、エージェントが提供可能なサービス（つまり、実行可能な機能）と、当該サービスの品質を示す情報とが、サービスの提供元のエージェント毎にそれぞれ対応付けられたレコードＲが含まれるである。サービスの品質には、例えば、コマンドをエージェントサーバ２００に送信してから回答が得られるまでに係る時間の程度（以下、応答時間）と、乗員の問合せに対してエージェントサーバ２００から得られた回答の情報量と、当該回答の確信度とが含まれる。確信度とは、例えば、コマンドに対する応答結果が、正しい答えであると推定される度合（指標値）である。また、確信度とは、乗員の発話に対する応答が、乗員の要求に合致している、または乗員が期待していた答えであると推定される度合である。なお、サービスの品質を示す情報は、一例であってこれに限らず、上述した以外の情報が含まれてもよい。
【００５８】
以下、履歴情報１６４のサービスの品質が、それぞれ３段階の評価指標で示される場合を一例に説明する。この一例において、応答時間は、「短い」、「普通」、及び「長い」のいずれかによって示され、情報量は、「多い」、「普通」、及び「少ない」のいずれかによって示され、確信度は、「高い」、「普通」、及び「低い」いずれかによって示される。なお、サービスの品質は、２段階の評価指標によって示されてもよく、４段階以上の評価指標によって示されてもよく、無段階の値によって示されてもよい。
【００５９】
図６に示す履歴情報１６４において、エージェント１〜３は、それぞれが「地図検索機能」、「天気予報機能」、及び「情報検索機能」を実行可能である。また、図６に示す履歴情報１６４において、エージェント１が実行可能な機能には、いずれも、応答時間が「短い」ことを示す情報と、情報量が「多い」ことを示す情報と、確信度が「高い」ことを示す情報とが対応付けられる。エージェント２が実行可能な機能には、いずれも、応答時間が「普通」であることを示す情報と、情報量が「普通」であることを示す情報と、確信度が「普通」であることを示す情報とが対応付けられる。また、エージェント２は、「天気予報機能」が用いられたことがないため、エージェント２の「天気予報機能」には、サービスの品質を示す情報が対応付けられていない。エージェント３が実行可能な機能には、いずれも、応答時間が「長い」ことを示す情報と、情報量が「少ない」ことを示す情報と、確信度が「低い」ことを示す情報とが対応付けられる。また、エージェント３は、「天気予報機能」が用いられたことがないため、エージェント２の「情報検索機能」には、サービスの品質を示す情報が対応付けられていない。
【００６０】
まず、履歴情報生成部１２４は、履歴情報１６４を生成するに際して、エージェント機能部１５０−１〜１５０−３のそれぞれが、自然言語処理部１２２により認識されたサービスに係るコマンドをエージェントサーバ２００−１〜２００−３に出力し、コマンドが出力されてから、エージェントサーバ２００−１〜２００−３から応答結果Ａ〜Ｃを取得するまでの応答時間をそれぞれカウントする。そして、履歴情報生成部１２４は、応答時間に係る所定のしきい値に基づいて、カウントした応答時間を「短い」、「普通」、及び「長い」のうち、いずれかに分類し、分類した情報を、履歴情報１６４の当該コマンドによって提供されるサービスにそれぞれ対応付ける。
【００６１】
なお、履歴情報生成部１２４は、エージェント機能部１５０−１〜１５０−３の各応答時間のカウントを、同一のタイミングで行ってもよく、異なるタイミングによって行ってもよい。同一のコマンドについて応答時間をカウントする場合、履歴情報生成部１２４は、自然言語処理部１２２が、乗員の発話に基づいてコマンドを生成し、生成したコマンドをエージェント機能部１５０−１〜１５０−３の全てに同時に出力した際の応答時間を、それぞれカウントする。この場合、コマンドの出力タイミングが一致するため、各応答時間のカウントのスタートタイミングを統一でき、履歴情報生成部１２４は、カウントに係る処理負荷を低減することができる。異なるコマンドについて応答時間をカウントする場合、履歴情報生成部１２４は、自然言語処理部１２２が、乗員の発話に基づいてコマンドを生成し、生成したコマンドをエージェント機能部１５０−１〜１５０−３のいずれか（例えば、ウエイクアップワードで指定されたエージェントに対応するエージェント機能部１５０）に出力した際の応答時間をカウントする。この場合、あるコマンドに対する応答結果を一意に取得することができるため、選択部１２６は、複数の応答結果から乗員に提供する応答結果を選択する処理、又は複数の応答結果を統合する処理を省略することができる。
【００６２】
図７は、履歴情報生成部１２４が応答時間、及び情報量の評価指標を取得する処理を概念的に示す図である。図７の例において、エージェント機能部１５０−１〜１５０−３が「地図検索機能」に係るコマンドに対する応答結果Ａ〜Ｃを管理部１１０に出力した場合に、それぞれの応答時間が２．０［秒］、３．５［秒］、５．８［秒］であったとする。応答時間に係る所定のしきい値によって、２．５［秒］未満を「短い」、２．５［秒］以上〜５［秒］未満を「普通」、５［秒］以上を［長い］と分類する場合、履歴情報生成部１２４は、応答結果Ａの応答時間を「短い」と分類し、応答結果Ｂの応答時間を「普通」と分類し、応答結果Ｃの応答時間を「長い」と分類して、履歴情報１６４の対応する機能にそれぞれ対応付ける。
【００６３】
また、履歴情報生成部１２４は、エージェントサーバ２００−１〜２００−３から取得した応答結果Ａ〜Ｃの情報量をそれぞれ取得する。そして、履歴情報生成部１２４は、情報量にかかる所定のしきい値に基づいて、取得した情報量を「多い」、「普通」、及び「少ない」のうち、いずれかに分類し、分類した情報を履歴情報１６４の当該コマンドによって提供されるサービスに対応付ける。
【００６４】
図７の例において、例えば、エージェントサーバ２００−１〜２００−３の対話管理部２２０は、乗員から「〇〇レストランまで道順は？」というコマンドを受け付けた場合、ネットワーク検索部２２２によりコマンドに対応する情報として各種ウェブサーバ３００から「〇〇レストラン」までの道順に係る情報を取得する。エージェント機能部１５０−１〜１５０−３は、エージェントサーバ２００−１〜２００−３から取得した応答結果Ａ〜Ｃのそれぞれの情報量が、５１２［ＫＢ］、１４３［ＫＢ］、２７［ＫＢ］であったとする。情報量に係る所定のしきい値によって、５００［ＫＢ］以上を情報量が「多い」とし、５００［ＫＢ］未満〜１００［ＫＢ］以上を情報量が「普通」とし、１００［ＫＢ］未満を情報量が「少ない」として分類する場合、履歴情報生成部１２４は、応答結果Ａの情報量を「多い」と分類し、応答結果Ｂの情報量を「普通」と分類し、応答結果Ｃの情報量を「少ない」と分類して、履歴情報１６４の対応する機能にそれぞれ対応付ける。
【００６５】
なお、応答時間に係る所定のしきい値、及び情報量に係る所定のしきい値は、サービスの種類によってそれぞれ異なる値であってもよい。ここで、サービスの種類によっては、応答結果の情報量が異なり、情報量によっては応答時間が異なる場合がある。履歴情報生成部１２４は、情報量が多く、応答時間が長くなる機能については、応答時間に係る所定のしきい値を比較的長く設定し、情報量に係る所定のしきい値を比較的多く設定する。また、履歴情報生成部１２４は、情報量が少なく、応答時間が短くなる機能については、応答時間に係る所定のしきい値を比較的短く設定し、情報量に係る所定のしきい値を比較的少なく設定する。
【００６６】
図８は、履歴情報生成部１２４が確信度の評価指標を取得する処理を概念的に示す図である。複数のエージェント機能部１５０−１〜１５０−３のそれぞれは、例えば、個々の記憶部２５０に設けられたパーソナルプロファイル２５２や知識ベースＤＢ２５４、応答規則ＤＢ２５６に基づいて応答内容を決定すると共に、応答内容に対する確信度を決定する。
【００６７】
例えば、対話管理部２２０は、乗員から「最近流行っているお店は？」というコマンドを受け付けた場合、ネットワーク検索部２２２によりコマンドに対応する情報として各種ウェブサーバ３００から「洋服のお店」、「靴のお店」、「イタリアンレストランのお店」の情報を取得したとする。ここで、対話管理部２２０は、パーソナルプロファイル２５２を参照し、乗員の趣味との合致度が高い応答結果の確信度を高く設定する。例えば、乗員の趣味が「食事」である場合、対話管理部２２０は、「イタリアンレストランのお店」の確信度を他の情報よりも高く設定する。また、対話管理部２２０は、各種ウェブサーバ３００から取得したそれぞれの店に対する一般ユーザの評価結果（お勧め度合）が高いほど確信度を高く設定してもよい。
【００６８】
また、対話管理部２２０は、コマンドに対する検索結果として得られた応答候補の数に基づいて確信度を決定してもよい。例えば、対話管理部２２０は、応答候補の数が１つである場合、他の候補が存在しないため、確信度を最も高く設定する。また、対話管理部２２０は、応答候補の数が多くなるほど、それぞれの確信度を低くなるように設定する。
【００６９】
また、対話管理部２２０は、コマンドに対する検索結果として得られた応答内容の充実度に基づいて確信度を決定してもよい。例えば、対話管理部２２０は、検索結果として文字情報だけでなく画像情報も取得できた場合には、画像が取得できていない場合よりも充実度が高いため確信度を高く設定する。
【００７０】
また、対話管理部２２０は、コマンドと応答内容の情報を用いて知識ベースＤＢ２５４を参照し、両者の関係性に基づいて確信度を設定してもよい。また、対話管理部２２０は、パーソナルプロファイル２５２を参照し、最近（例えば、１か月以内）の対話の履歴で同様の質問があったか否かを参照し、同様の質問があった場合に、その回答と同様の応答内容の確信度を高く設定してもよい。対話の履歴は、発話した乗員との対話の履歴でもよく、乗員以外のパーソナルプロファイル２５２に含まれる対話の履歴でもよい。また、対話管理部２２０は、上述した複数の確信度の設定条件のそれぞれを組み合わせて確信度を設定してもよい。
【００７１】
また、対話管理部２２０は、確信度に対する正規化を行ってもよい。例えば、対話管理部２２０は、上述したそれぞれの設定条件ごとに確信度が０〜１の範囲となる正規化を行う。これにより、複数の設定条件によって設定された確信度で比較を行う場合であっても均一に定量化されるため、何れかの設定条件の確信度だけが大きくなることがない。その結果、確信度に基づいて、より適切な応答結果を選択することができる。
【００７２】
図８の例において、エージェント機能部１５０−１が決定した応答結果Ａの確信度が０．８、エージェント機能部１５０−２が決定した応答結果Ｂの確信度が０．５、エージェント機能部１５０−３が決定した応答結果Ｃの確信度が０．２であったとする。確信度に係る所定のしきい値によって、０．８以上を確信度が「高い」とし、０．８未満〜０．５以上を確信度が「普通」とし、０．５未満を確信度が「低い」として分類する場合、履歴情報生成部１２４は、応答結果Ａの確信度を「高い」と分類し、応答結果Ｂの確信度を「普通」と分類し、応答結果Ｃの確信度を「低い」と分類して、履歴情報１６４の対応する機能にそれぞれ対応付ける。
【００７３】
履歴情報生成部１２４は、例えば、上述した処理によって、乗員が発話する度、又は対応するエージェントの機能が用いられる度に、サービスの品質に係る情報を取得し、履歴情報１６４を生成（更新）する。
【００７４】
なお、上述では、エージェント装置１００が履歴情報生成部１２４を備え、履歴情報１６４を生成する場合について説明したが、これに限られない。エージェント装置１００の記憶部１６０には、予め生成された履歴情報１６４が記憶されていてもよい。この場合、エージェント装置１００以外の装置が履歴情報１６４を生成するものであり、エージェント装置１００は、履歴情報生成部１２４を備えていなくてもよい。
【００７５】
［選択部１２６の処理について］
以下、選択部１２６が、履歴情報１６４に基づいて乗員の発話に対する応答を行うエージェント機能部１５０を選択する処理の詳細について説明する。選択部１２６は、乗員の発話よりも前に生成された履歴情報１６４を参照し、エージェント機能部１５０−１〜１５０−３のそれぞれのサービスの品質を比較し、品質が良いエージェント機能部１５０を、乗員の発話に対する応答を行うエージェント機能部１５０（エージェント）として選択する。まず、選択部１２６は、自然言語処理部１２２によって特定された機能を検索キーとして履歴情報１６４を検索し、当該機能を実行可能なエージェントを特定する。そして、選択部１２６は、特定されたエージェントのうち、最もサービス品質が良い機能を提供するエージェント機能部１５０を、乗員の発話に対する応答を行うエージェント機能部１５０として選択する。選択部１２６は、例えば、サービスの品質を示す評価指標が複数存在する場合、全ての評価指標を総合してエージェント機能部１５０を選択してもよく、複数の評価指標のうち、一以上の（任意の）評価指標に基づいて、エージェント機能部１５０を選択してもよい。
【００７６】
選択部１２６は、例えば、３段階によって示される評価指標を、サービスの品質が低い順に「１」、「２」、及び「３」の数値に変換し、最も評価指標の合計値が高いエージェント機能部１５０を、乗員の発話に対する応答を行うエージェント機能部１５０として選択する。
【００７７】
なお、上述では、履歴情報１６４には、サービスの品質を示す情報として３段階によって表される評価指標が含まれる場合について説明したが、これに限られない。例えば、履歴情報１６４には、履歴情報生成部１２４によって取得されたサービスの品質を取得する際に用いられた直値（応答時間、情報量、確信度等）が含まれていてもよい。この場合、選択部１２６は、履歴情報１６４に示される直値に基づいて、サービスの品質が良いエージェント機能部１５０を選択する。選択部１２６は、例えば、応答速度が最も速いエージェント、情報量が最も多いエージェント、及び確信度が最も高いエージェント等を、サービスの品質が良いエージェント機能部１５０として選択する。また、選択部１２６は、複数の評価指標を総合してエージェント機能部１５０を選択する場合、サービスの品質を取得する際に用いられた各種直値（応答時間、情報量、確信度等）に対して符号変換や標準化等のデータ変換を行うことにより、同一のスケールによって評価できるようにした後、その値の合計値に基づいてエージェント機能部１５０を選択してもよい。例えば、選択部１２６は、値が大きい方がサービスの品質が良く、値が小さいほうがサービスの品質が悪いように、それぞれの直値に対してデータ変換を行う。選択部１２６は、データ変換後の値の合計値が最も大きいエージェントを特定し、特定したエージェントを実現するエージェント機能部１５０を選択する。
【００７８】
［動作フロー］
図９は、第１実施形態に係るエージェント装置１００の動作の一連の流れを示すフローチャートである。本フローチャートの処理は、例えば、所定時間間隔毎、又は所定のタイミングによって繰り返し実行される。
【００７９】
まず、音声認識部１２０は、マイク１０によって乗員の発話が受け付けられたか否かを判定する（ステップＳ１００）。音声認識部１２０は、マイク１０によって乗員の発話が受け付けられたと判定した場合、乗員の発話の音声に対する音響処理を行う（ステップＳ１０２）。次に、音声認識部１２０は、音響処理が行われた音声（音声ストリーム）の認識を行い、音声をテキスト化する（ステップＳ１０４）。次に、自然言語処理部１２２は、テキスト化された文字情報に対する自然言語処理を実行し、文字情報の意味解析を行う（ステップＳ１０６）。
【００８０】
次に、自然言語処理部１２２は、意味解析によって得らえた乗員の発話内容にコマンドが含まれるか否かを判定する（ステップＳ１０８）。自然言語処理部１２２は、乗員の発話内容にコマンドが含まれない場合、処理を終了する。選択部１２６は、自然言語処理部１２２によって乗員の発話内容にコマンドが含まれると判定された場合、自然言語処理部１２２によって特定されたコマンド（機能）を検索キーとして履歴情報１６４を検索し、最もサービスの品質が良いエージェントを実現するエージェント機能部１５０を、乗員の発話に対する応答を行うエージェント機能部１５０として選択する（ステップＳ１１０）。
【００８１】
選択部１２６は、自然言語処理部１２２によって特定されたコマンドを、選択したエージェント機能部１５０に対して出力する（ステップＳ１１２）。コマンドを受け付けたエージェント機能部１５０は、コマンドに対する処理を実行する（ステップＳ１１４）。選択部１２６は、選択したエージェント機能部１５０から応答結果を取得し、乗員の発話に対する応答を実行する（ステップＳ１１６）。これにより、本フローチャートの処理は、終了する。
【００８２】
［第１実施形態のまとめ］
以上説明したように、本実施形態のエージェント装置１００によれば、車両Ｍの乗員の発話に応じて、音声による応答を含むサービスを提供する複数のエージェント機能部１５０と、乗員の発話に含まれる音声コマンドを認識する認識部（音声認識部１２０、自然言語処理部１２２）と、認識部により認識された音声コマンドを実行して乗員の発話に対応するエージェント機能部１５０であり、サービスの品質が良いエージェント機能部１５０を、複数のエージェント機能部１５０から選択する選択部１２６と、を備えることにより、より適切な応答結果を提供することができる。
【００８３】
＜第２実施形態＞
以下、第２実施形態について説明する。第２実施形態では、サービスの品質が良いことが既に確定しているエージェントが存在する場合について説明する。なお、上述した実施形態と同様の構成については、同一の符号を付して説明を省略する。
【００８４】
図１０は、第２実施形態に係るエージェント装置１００Ａの構成と、車両Ｍに搭載された機器とを示す図である。車両Ｍには、例えば、一以上のマイク１０と、表示・操作装置２０と、スピーカユニット３０と、ナビゲーション装置４０と、車両機器５０と、車載通信装置６０と、乗員認識装置８０と、エージェント装置１００Ａとが搭載される。また、汎用通信装置７０が車室内に持ち込まれ、通信装置として使用される場合がある。これらの装置は、ＣＡＮ通信線等の多重通信線やシリアル通信線、無線通信網等によって互いに接続される。
【００８５】
また、エージェント装置１００Ａは、エージェント装置１００が備える記憶部１６０に変えて（或いは、加えて）、記憶部１６０Ａを備える。記憶部１６０Ａには、例えば、辞書ＤＢ１６２と、履歴情報１６４と、確定エージェント情報１６６等のデータやプログラムが格納される。確定エージェント情報１６６は、サービスの品質が良いことが確定しているエージェントを示す情報である。
【００８６】
図１１は、確定エージェント情報１６６の内容の一例を示す図である。確定エージェント情報１６６には、例えば、エージェントが提供可能なサービス（つまり、実行可能な機能）と、当該機能を最もサービスの品質が良く提供できるエージェントとが互いに対応付けられた情報である。本実施形態の選択部１２６は、例えば、確定エージェント情報１６６を生成する処理を実行する。選択部１２６は、例えば、例えば、あるエージェントの機能について、サービスの品質に係る情報が所定のしきい値以上で（つまり、サービスの品質が良く）、且つ当該機能が所定回数以上乗員に提供されたことがある場合、当該エージェントを、最もサービスの品質が良く当該機能を提供することができるエージェントと判定し、当該機能と、当該エージェントとを互いに対応付けて確定エージェント情報１６６を生成（更新）する。
【００８７】
また、本実施形態の選択部１２６は、履歴情報１６４に基づいて、最もサービスの品質が良いエージェントを動的に選択する状態から、確定エージェント情報１６６に基づいて、最もサービスの品質が良く提供できるエージェントを実現するエージェント機能部１５０を固定的に選択する状態に移行する。まず、自然言語処理部１２２によって特定された機能を検索キーとして確定エージェント情報１６６を検索し、当該機能が確定エージェント情報１６６に含まれるか否かを判定する。選択部１２６は、当該機能が確定エージェント情報１６６に含まれる場合、当該機能に対応付けられたエージェントを、最もサービスの品質が良いエージェントとして特定する。そして、選択部１２６は、特定されたエージェントを実現するエージェント機能部１５０を、乗員の発話に対する応答を行うエージェント機能部１５０として固定的に選択する。選択部１２６によってエージェント機能部１５０が選択された後の処理、及び確定エージェント情報１６６に自然言語処理部１２２によって特定された機能が含まれない場合の処理は、上述した実施形態と同様であるため、説明を省略する。
【００８８】
なお、選択部１２６は、最もサービスの品質が良いエージェントを確定する処理を、判定対象の機能がいずれのエージェントにも使用されている場合に行ってもよい。例えば、図６の履歴情報１６４において、エージェント２の「天気予報機能」には、サービスの品質を示す情報が対応付けられていないため、選択部１２６は、「天気予報機能」を最もサービスの品質が良く提供できるエージェントを確定する処理を行わない。これにより、選択部１２６は、まだ機能が使用されていないエージェントが最もサービスの品質が良く提供できるエージェントである場合に、他のエージェントがサービスの品質が良く提供できるエージェントとして確定されることを抑制することができる。
【００８９】
ここで、確定エージェント情報１６６にある機能が含まれた後に、初めて当該機能が乗員に提供される場合、エージェント機能部１５０は、乗員の発話とサービスの提供との間に、当該ある機能について、最もサービスの品質が良く提供できるエージェントが確定し、固定的に選択されることとなったことを、乗員に通知してもよい。図１２は、乗員の発話とサービスの提供との間に、確定したエージェントを紹介する対話の一例を示す図である。まず、乗員は、エージェントに対して、地図検索機能の提供を要求する旨を含む発話ＣＶ１を行う。発話ＣＶ１は、例えば、「〇〇レストランまでの道順は？」等の言葉である。これを受けて、選択部１２６は、例えば、上述した処理によって自然言語処理部１２２が特定した機能（この一例では、地図検索機能）を検索キーとして、確定エージェント情報１６６を検索する。図１１に示す確定エージェント情報１６６において、「地図検索機能」は、エージェント１が最もサービスの品質が良く提供できるエージェントとして確定している。このため、選択部１２６は、エージェント機能部１５０−１を乗員の発話に対する応答を行うエージェント機能部１５０として固定的に選択する。
【００９０】
選択部１２６によって固定的に選択されたエージェント機能部１５０（この一例では、エージェント機能部１５０−１）は、発話ＣＶ１に対する応答結果ＲＰ１を、対応するエージェントサーバ２００（この一例では、エージェントサーバ２００−１）から取得し、当該応答結果ＲＰ１に音声合成を行って音声を出力するように音声制御部１１８に指示する。
【００９１】
応答結果ＲＰ１には、例えば、発話ＣＶ１において、要求されている機能を実現するエージェント機能部１５０のエージェントを紹介する言葉が含まれる。また、応答結果ＲＰ１には、例えば、最もサービスの品質が良いエージェントが確定していることを乗員に伝える言葉が含まれる。また、応答結果ＲＰ１には、最もサービスの品質が良いエージェントを伝えた後に、サービスの提供に係る言葉（つまり、乗員の発話の回答を示す言葉）が含まれる。応答結果ＲＰ１には、例えば、「こんにちは、△△（エージェント１）です。今後は、私が地図検索機能を提供します。〇〇レストランまでは…」等の言葉である。
【００９２】
また、応答結果は、サービスの提供に係る言葉の後に、最もサービスの品質が良いエージェントを伝えるものであってもよい。図１３は、サービスの提供後に、確定したエージェントを紹介する対話の一例を示す図である。応答結果ＲＰ２には、例えば、発話ＣＶ１において、要求されている機能を実現するエージェント機能部１５０のエージェントを紹介する言葉が含まれる。また、応答結果ＲＰ２には、サービスの提供に係る言葉が含まれる。また、応答結果ＲＰ２には、例えば、サービスを提供した後に、最もサービスの品質が良いエージェントが確定していることを乗員に伝える言葉が含まれる。この場合、応答結果ＲＰ２には、例えば、「こんにちは、△△（エージェント１）です。〇〇レストランまでは、…、今後は、私が地図検索機能を提供します。」等の言葉である。
【００９３】
図１２の応答結果ＲＰ１、又は図１３の応答結果ＲＰ２のように回答することにより、エージェント機能部１５０は、乗員に対して自然に最もサービスの品質が良いエージェントを知らせることができる。また、選択部１２６は、最もサービスの品質が良いエージェントが確定している場合、乗員の発話において、サービスの要求さえ受け付ければエージェント（エージェント機能部１５０）を選択することができるため、サービスの要求に際してウエイクアップワードを省略することができる。
【００９４】
なお、エージェント機能部１５０は、最もサービスの品質が良いエージェントに係る情報は、サービスの提供に係る言葉の前にしてほしい旨、乗員から指定があった場合には、図１２の応答結果ＲＰ１のように通知し、サービスの提供に係る言葉の後にしてほしい旨、乗員から指定があった場合には、図１３の応答結果ＲＰ２のように通知するように、通知の態様を制御してもよい。また、エージェント機能部１５０は、最もサービスの品質が良いエージェントに係る情報を、サービスの提供に係る言葉の前と後との両方に通知してもよい。
【００９５】
また、選択部１２６は、確定エージェント情報１６６を参照し、乗員の発話にウエイクアップワードと、コマンドとが認識された場合であっても、当該ウエイクアップワードにより指定されたエージェントが、自然言語処理部１２２により認識されたサービスを最も良い品質によって提供できるエージェントではない場合には、確定エージェント情報１６６に示されるサービスを最も良い品質によって提供できるエージェントを、乗員の発話に対する応答を行うエージェント（エージェント機能部１５０）として選択してもよい。また、選択部１２６は、確定エージェント情報１６６を参照し、乗員の発話にウエイクアップワードと、コマンドとが認識された場合であっても、当該ウエイクアップワードにより指定されたエージェントが、自然言語処理部１２２により認識されたサービスを最も良い品質によって提供できるエージェントではない場合には、最も良い品質によってサービスを提供できるエージェントを乗員に通知してもよい。この場合、選択部１２６は、例えば、最も良い品質によってサービスを提供できるエージェントを紹介する音声を音声制御部１１８によって出力させる。エージェントを紹介する処理において、音声制御部１１８は、「通知制御部」の一例である。なお、表示制御部１１６は、エージェントを紹介する画像を第１ディスプレイ２２、第２ディスプレイ２４、及びメーターディスプレイ２９党に表示してもよい。この場合、表示制御部１１６は、「通知制御部」の一例である。
【００９６】
［動作フロー］
図１４は、選択部１２６が確定エージェント情報１６６を生成する処理の一連の流れを示すフローチャートである。本フローチャートの処理は、例えば、所定時間間隔毎、又は所定のタイミングによって繰り返し実行させる。
【００９７】
まず、選択部１２６は、履歴情報１６４に示される機能のうち、最もサービスの品質が良いエージェントであるか否かを判定する判定対象の機能を特定する（ステップＳ２００）。選択部１２６は、履歴情報１６４に基づいて、特定した機能を実現可能なエージェントのうち、当該機能を未実行のエージェントが存在するか否かを判定する（ステップＳ２０２）。選択部１２６は、当該機能を未実行のエージェントが存在する場合、最もサービスの品質が良いエージェントを確定する段階にないものとして、処理をステップＳ２１０に進める。選択部１２６は、特定した機能を実現するエージェントのうち、当該機能の提供が乗員の発話によって要求された際に、最もサービスの品質が良いエージェントとして、所定回数以上選択したエージェントが存在するか否かを判定する（ステップＳ２０４）。選択部１２６は、所定回数以上選択したエージェントが存在しない場合、最もサービスの品質が良いエージェントを確定する段階にないものとして、処理をステップＳ２１０に進める。
【００９８】
選択部１２６は、所定回数以上選択したエージェントが存在する場合、ステップＳ２００において特定された機能に係る当該エージェントのサービスの品質を示す情報が、所定のしきい値以上（例えば、応答速度が所定のしきい値以上に速い、情報量が所定のしきい値以上に多い、或いは、確信度が所定のしきい値以上に高い等）であるか否かを判定する（ステップＳ２０６）。選択部１２６は、サービスの品質を示す情報が所定のしきい値以上ではない場合、最もサービスの品質が良いエージェントとして確定せずに、処理をステップＳ２０８に進める。
【００９９】
選択部１２６は、サービスの品質を示す情報が所定のしきい値以上である場合、当該エージェントを最もサービスの品質が良く提供するエージェントとして確定し、当該エージェントと、ステップＳ２００において特定された機能とを対応付けて確定エージェント情報１６６を生成（更新）する（ステップＳ２０８）。選択部１２６は、履歴情報１６４に示される全ての機能に対して、上述した処理を行うまでの間、ステップＳ２００〜Ｓ２０８の処理を繰り返す（ステップＳ２１０）。
【０１００】
図１５は、第２実施形態に係るエージェント装置１００Ａの動作の一連の流れを示すフローチャートである。本フローチャートの処理は、例えば、所定時間間隔毎、又は所定のタイミングによって繰り返し実行される。図１５に示すフローチャートは、上述した図１０の第１実施形態におけるフローチャートと比較して、ステップＳ１００〜Ｓ１１６の処理に代えて、ステップＳ３００〜Ｓ３０６の処理を備える点で相違する。したがって、以下では、主にステップＳ３００〜Ｓ３０６の処理を中心として説明する。
【０１０１】
選択部１２６は、ステップＳ１０８において、自然言語処理部１２２が意味解析によって得らえた乗員の発話内容にコマンドが含まれると判定した場合、確定エージェント情報１６６を参照し、当該コマンドに係る機能を提供する最もサービス品質の良いエージェントが確定しているか否かを判定する（ステップＳ３００）。選択部１２６は、最もサービス品質の良いエージェントが確定していない場合、処理をステップＳ１１０に進める。選択部１２６は、最もサービス品質の良いエージェントが確定していると判定した場合、当該確定しているエージェント（エージェント機能部１５０）を固定的に選択し、自然言語処理部１２２によって特定されたコマンドを、選択したエージェント機能部１５０に対して出力する（ステップＳ３０２）。コマンドを受け付けたエージェント機能部１５０は、コマンドに対する処理を実行する（ステップＳ３０４）。選択部１２６は、選択したエージェント機能部１５０から応答結果を取得し、乗員の発話に対する応答を実行する（ステップＳ３０６）。これにより、本フローチャートの処理は、終了する。
【０１０２】
［第２実施形態のまとめ］
以上説明したように、本実施形態のエージェント装置１００Ａによれば、車両Ｍの乗員の発話に応じて、音声による応答を含むサービスを提供する複数のエージェント機能部１５０と、乗員の発話に含まれる音声コマンドを認識する認識部（音声認識部１２０、自然言語処理部１２２）と、認識部により認識された音声コマンドを実行して乗員の発話に対応するエージェント機能部１５０であり、サービスの品質が良いエージェント機能部１５０を、複数のエージェント機能部１５０から選択する選択部１２６と、を備え、選択部１２６が確定エージェント情報１６６に基づいて、最もサービスの品質が良いことが既に確定しているエージェントを選択することにより、より適切な応答結果を提供することができる。
【０１０３】
［音声認識部、及び自然言語処理部の機能について］
なお、上述した実施形態では、音声認識部１２０、及び自然言語処理部１２２をエージェント装置１００、及び１００Ａが備える場合について説明したが、これに限られない。音声認識部１２０、及び自然言語処理部１２２に相当する機能は、エージェントサーバ２００に供えられるものであってもよい。この場合、エージェント装置１００、及び１００Ａは、音響処理部１１２によって音響処理が行われた音声ストリームをエージェントサーバ２００に供給し、音声認識部１２０、及び自然言語処理部１２２に相当する機能によって、乗員の発話中（つまり、音声ストリーム）に含まれるコマンド（機能）を特定し、選択部１２６に供給する。選択部１２６は、エージェントサーバ２００によって供給された機能に係る情報に基づいて、処理を実行する。
【０１０４】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【符号の説明】
【０１０５】
１…エージェントシステム、１０…マイク、２０…表示・操作装置、２２…第１ディスプレイ、２４…第２ディスプレイ、２９…メーターディスプレイ、３０…スピーカユニット、３０Ａ、３０Ｂ、３０Ｃ、３０Ｄ、３０Ｅ、３０Ｆ…スピーカ、４０…ナビゲーション装置、５０…車両機器、６０…車載通信装置、７０…汎用通信装置、８０…乗員認識装置、１００、１００Ａ…エージェント装置、１１０…管理部、１１２…音響処理部、１１４…エージェントごとＷＵ判定部、１１６…表示制御部、１１８…音声制御部、１２０…音声認識部、１２２…自然言語処理部、１２４…履歴情報生成部、１２６…選択部、１５０、１５０−１、１５０−２、１５０−３…エージェント機能部、１５２…ペアリングアプリ実行部、１６０、１６０Ａ…記憶部、１６４…履歴情報、１６６…確定エージェント情報、２００、２００−１、２００−２、２００−３…エージェントサーバ、２１０…通信部、２２０…対話管理部、２２２…ネットワーク検索部、２２４…応答文生成部、２５０…記憶部、２５２…パーソナルプロファイル、３００…ウェブサーバ、１６２…辞書ＤＢ１６２、２５４…知識ベースＤＢ、２５６…応答規則ＤＢ、Ｍ…車両
【図１】
2020160108.tif 000003
【図２】
2020160108.tif 000004
【図３】
2020160108.tif 000005
【図４】
2020160108.tif 000006
【図５】
2020160108.tif 000007
【図６】
2020160108.tif 000008
【図７】
2020160108.tif 000009
【図８】
2020160108.tif 000010
【図９】
2020160108.tif 000011
【図１０】
2020160108.tif 000012
【図１１】
2020160108.tif 000013
【図１２】
2020160108.tif 000014
【図１３】
2020160108.tif 000015
【図１４】
2020160108.tif 000016
【図１５】
2020160108.tif 000017