(57)【要約】【課題】  対話処理に必要な各種情報の管理と対話処理を簡単化する。【解決手段】  ユーザに対し発話を行なう発話部20、ユーザの発話の音声認識を行なう音声認識部21、対話による操作対象機器である車載エアコン装置10a 、発話、音声認識、ユーザの対話入力に対する判断、機器操作を組み合わせた対話動作手順の各動作の機能と動作に用いる各種データ、対話動作手順に応じた遷移情報を対応付けて記憶したデータベース部22、データベース言語による要求に従い、データベース部に対するデータ操作を行うDBMS24、DBMS24へのSQL 言語を用いた要求により、データベース部22から遷移情報の示す順で次の動作に必要な情報を読み出させ、該読み出させた情報に応じてユーザの対話入力に対する判断、発話部20に対する発話指示、音声認識部21に対する音声認識指示、車載エアコン装置10a に対する操作指示を実行する対話制御部24とを備えた。【選択図】        図２
2009244815.tif 000002
【特許請求の範囲】
【請求項１】
ユーザに対し発話を行なう発話部と、
ユーザの発話の音声認識を行なう音声認識部と、
対話による１または複数の操作対象機器部と、
発話、音声認識、ユーザの対話入力に対する判断、機器操作を組み合わせた対話動作手順の各動作の機能と動作に用いる各種データ、対話動作手順に応じた遷移情報を対応付けて記憶したデータベース部と、
データベース言語による要求に従い、データベース部に対するデータ操作を行うデータベースマネジメントシステム部と、
データベースマネジメントシステム部へのデータベース言語を用いた要求により、データベース部から遷移情報の示す順で次の動作に必要な情報を読み出させ、該読み出させた情報に応じてユーザの対話入力に対する判断、発話部に対する発話指示、音声認識部に対する音声認識指示、操作対象機器部に対する操作指示を実行する対話制御部と、
を備えたことを特徴とする対話システム。
【請求項２】
データベース部は、
発話動作で用いるテキストと音声認識動作で用いる認識対象語彙を合わせた辞書テーブルを備えたこと、
を特徴とする請求項１記載の対話システム。
【請求項３】
データベース部は、
対話動作上、互いに関連する動作の情報をグループ分けして管理したこと、
を特徴とする請求項１または２記載の対話システム。
【請求項４】
データベース部は、
対話動作上、互いに関連する動作の情報をグループ分けし、かつ同じグループ内の同種の動作の情報をサブグループ分けして管理したこと、
を特徴とする請求項１または２または３記載の対話システム。
【請求項５】
互いに関連する動作は、同じ操作対象機器部に対する動作であること、
を特徴とする請求項３または４記載の対話システム。
【請求項６】
対話動作手順に、学習と学習内容に対する判断を含めたこと、
を特徴とする請求項１記載の対話システム。
【請求項７】
対話動作手順に、動作遷移情報の変更を含めたこと、
を特徴とする請求項１または６記載の対話システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は対話システムに係り、とくに１または複数の操作対象機器部に対する操作を対話で実行する対話システムに関する。
【背景技術】
【０００２】
カーナビゲーション装置、車載ＡＶ機器等の車載機器や家庭用電化製品などではユーザがエージェントと対話しながら機器操作できるようにするエージェントシステムの研究・開発が進められている。エージェントシステムはユーザと対話することで、学習、判断、機器操作を行ったり、ユーザに提案をしたりする。或る操作対象機器に関する対話（提案を含む）、学習、判断、機器操作の各動作は予め定められた手順（関連する動作の手順はシナリオと呼ばれる）に沿って進められる。なお、「対話」には音声のほか、スイッチ操作、画像表示による対話を含む。
従来の自動車用対話システムの一構成例を図１に示す。車載ナビゲーション装置や車載オーディオ装置等の複数の操作対象機器部１ａ、１ｂ、・・は対話制御部２により操作（制御）される。対話制御部２はシナリオ情報記憶部３に記憶された対話動作手順を示すシナリオ情報に従い、発話テキスト記憶部４から所望の発話テキストを読み出し音声合成式の発話部５に出力してユーザへ発話させる。また、音声認識語彙記憶部６から所望の音声認識対象語彙を読み出し音声認識部７にセットしてユーザの発話した語彙の音声認識をさせる。対話を通じてユーザ所望の機器操作の内容を判別したら、該当する操作対象機器部１ｉの操作（制御）を行う。
【０００３】
上記の対話システムでは、対話制御部２は発話テキスト辞書記憶部４、音声認識語彙辞書記憶部６、シナリオ情報記憶部３という複数の場所に異なる形式で対話処理に必要な情報が記憶されており、各情報の管理が面倒であるとともに、対話の為の情報の読み出し処理が複雑化する問題があった。特開２００６−４２７４号に開示された発明では、シナリオメモリにシナリオ記述言語で記載されたシナリオドキュメントが格納されており、スロット辞書メモリに音声認識語彙の属性が格納されており、音声応答出力部の内部に発話テキストが格納されており、データベースにシナリオ生成用の外部情報がデータベース部に記憶されており、各情報の管理、対話処理が非常に複雑な構成となっていた。
【０００４】
【特許文献１】特開２００６−４２７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は上記した従来技術の問題に鑑み、対話処理に必要な各種情報の管理と対話処理が簡単な対話システムを提供することを、その目的とする。
【課題を解決するための手段】
【０００６】
本発明の対話システムの１つは、ユーザに対し発話を行なう発話部と、ユーザの発話の音声認識を行なう音声認識部と、対話による１または複数の操作対象機器部と、発話、音声認識、ユーザの対話入力に対する判断、機器操作を組み合わせた対話動作手順の各動作の機能、動作に用いる各種データ、対話動作手順に応じた遷移情報を対応付けて記憶したデータベース部と、データベース言語による要求に従い、データベース部に対するデータ操作を行うデータベースマネジメントシステム部と、データベースマネジメントシステム部へのデータベース言語を用いた要求により、データベース部から遷移情報の示す順で次の動作に必要な情報を読み出させ、該読み出させた情報に応じてユーザの対話入力に対する判断、発話部に対する発話指示、音声認識部に対する音声認識指示、操作対象機器部に対する操作指示を実行する対話制御部と、を備えたことを特徴としている。
本発明の対話システムの他の１つは、データベース部は、発話動作で用いるテキストと音声認識動作で用いる認識対象語彙を合わせた辞書テーブルを備えたこと、を特徴としている。
本発明の対話システムのさらに他の１つは、データベース部は、対話動作上、互いに関連する動作の情報をグループ分けして管理したこと、を特徴としている。
本発明の対話システムの他の１つは、データベース部は、対話動作上、互いに関連する動作の情報をグループ分けし、かつ同じグループ内の同種の動作の情報をサブグループ分けして管理したこと、を特徴としている。
なお、互いに関連する動作は、同じ操作対象機器部に対する動作とすることができる。
対話動作手順に、学習と学習内容に対する判断を含めたり、動作遷移情報の変更を含めたりしても良い。
【発明の効果】
【０００７】
本発明によれば、発話、音声認識、ユーザの対話入力に対する判断、機器操作（機器制御）を組み合わせた対話動作手順の各動作の機能、動作に用いる各種データ、対話動作手順に応じた遷移情報を対応付けてデータベース部に記憶したので、対話処理に必要な情報の管理をデータベース部の上で行えるため、管理が容易となる。また、対話制御部もデータベースマネジメント部にデータベース言語でデータ操作を要求するだけで、必要な情報をできるため、処理が簡単化する。
【発明を実施するための最良の形態】
【０００８】
以下、本発明の最良の形態を実施例に基づき説明する。
【実施例１】
【０００９】
図２を参照して本発明の一実施例を説明する。図２は本発明に係る自動車用対話システムの構成を示すブロック図である。
図２の自動車用対話システムは、ユーザとエージェントが対話することで、学習、判断、提案、各種機器操作（機器制御）を可能としたシステムであり、対話は音声認識、音声合成を利用して入出力を繰り返すことで実現している。学習機能は車室温度データの更新、ＣＤ再生回数のカウント等、車載機器のアプリケーションプログラム（実行モジュール；ＡＰ）が管理するデータの更新などである。判断はユーザの対話入力と音声認識対象語彙との比較や、車室温度データ、ＣＤ再生回数などの学習データと設定条件の比較などであり、例えば音声認識対象語彙が＜はい＞、＜うん＞でユーザが「はい」と発話したとき肯定（ＴＲＵＥ）と判断したり、車室温度が２５℃以上になったときに温度が高いと判断したりする。提案は、温度が高いと判断したときに「エアコンをつけますか」と発話するシナリオの開始トリガを設定することで実現できる。
図２において、１０ａは車載エアコン装置であり、車室温度を検出する温度センサ１１が付属されている。１０ｂはＣＤ再生とラジオ受信が可能な車載オーディオ機器、１０ｃは地図上に自動車の現在位置を表示する車載ナビゲーション装置であり、ガソリンスタンド等の所望の目的地を検索し、経路案内する機能を有する。２０は発話テキストデータを入力して音声合成により発話を行う発話部、２１はユーザの発話を音声認識する音声認識部であり、音声認識対象語彙を入力してユーザの発話とマッチングして音声認識を行う。車載エアコン装置１０ａ、車載オーディオ機器１０ｂ、車載ナビゲーション装置１０ｃ、発話部２０、音声認識部２１は後述する対話制御部からの指示を受け付けるアプリケーションプログラム（ＡＰ）を有する。
【００１０】
２２はデータベース部であり、エージェントの発話、音声認識、学習（ここでは車室温度データ、ＣＤ再生回数等の所定の学習データの更新）、所定の学習データやユーザの対話（ここでは発話）入力に対する判断、機器操作の各機能単位の動作を組み合わせた対話動作手順の各動作のファンクション、動作に用いる各種データ、対話動作手順に応じた動作遷移情報を対応付けて階層化テーブル構成で記憶してある。データベース部２２には対話動作手順の情報のほか、発話に用いる発話テキスト、音声認識に用いる音声認識語彙も一緒に格納してあり、後述する対話制御部（符号２５参照）は、エージェントの各機能単位の動作を対話動作手順に従い実行するために必要な情報を全てデータベース部２２から入手可能になっている。また、対話制御部が直接データベース部２２の読み書きをせず、データベース言語（ここではＳＱＬ言語）による命令で後述するデータベースマネージメント部（符号２４参照）に情報検索、更新等のデータ操作を一括して処理させることで、データベース部２２の情報への形式的なアクセスを可能とし、対話処理の負担を軽減している。
ここでファンクションとは、エージェントの機能を指すもので、動作を分類する上位概念でオブジェクト指向のクラス（メソッド）に相当し、アプリケーションプログラム（ＡＰ）のアプリケーションプログラムインタフェース（ＡＰＩ）と解釈することもできる。対話制御部はアプリケーションプログラム（ＡＰ）にファンクションと処理内容データを与えることで、アプリケーションプログラム（ＡＰ）に動作指示を行なう。
【００１１】
データベース部２２の記憶内容を図３に示す。３０は発話テキストと音声認識語彙を合わせた辞書テーブル（テーブル名tbl-Text）であり、図４、図５に示す如くレコード単位で情報を識別する３種類の情報識別コードである主ＩＤ（Id）、発話ＩＤ（TTSId ）、音声認識ＩＤ（ASRId ）と、情報内容を示すスペル（Spell ）のほか、対話動作手順に従う次の動作先を示す動作遷移情報（Next) のフィールドを含む。３１は学習データテーブル（テーブル名tbl-Info）であり、ＩＤ（Id）とデータ値（State ）のフィールドを有する（図６参照）。なお、ＩＤ＝１のレコードのデータ値はエアコンのオン・オフに用いる車室温度データ、ＩＤ＝２は本日のＣＤ再生回数である。４０、５０、６０、７０は対話動作手順を、各々エアコンに関する対話動作手順（エアコンに関するシナリオ）、車載オーディオ機器に関する対話動作手順（オーディオに関するシナリオ）、車載ナビゲーション装置に関する対話動作手順（ナビゲーションに関するシナリオ）、他の全体的な対話動作手順という具合にしてシナリオ別にグループ分けし、各グループの対話動作手順の各動作の機能パーツとパーツ間の結合状態をテーブルにした第１乃至第４シナリオテーブル（テーブル名test1-Scenario、test2-Scenario、test3-Scenario、test４-Scenario ) である。
【００１２】
第１乃至第４シナリオテーブル４０〜７０は図７、図９、図１２、図１４に示す如く、レコード単位で情報を識別するＩＤ（Ｉｄ）、機能の分類であるファンクション名（Function; 発話＝TTS 、音声認識＝ASR 、学習＝UPDATE、判断＝JUDGE 、操作＝OPER) 、機能の属性であるパラメータ（Parameter)、動作遷移情報（Next) のフィールドを有する。パラメータは次に述べるファンクションテーブルのレコードＩＤを指定するものである。動作パーツはファンクション名とパラメータで構成される。ファンクションとパラメータはオブジェクト指向のクラスとインスタンスの関係に類似している。動作遷移情報が動作パーツ間の結合状態を指す。但し、場合分けなどのために、後述する他のテーブルに入れられることもある。
【００１３】
４１〜４５は各々車載エアコン装置１０ａに関連する対話動作を発話、音声認識、判断、操作、学習の種類別にグループ分けしたファンクションテーブル( 細分類テーブル、テーブル名test1-TTS 、test1-ASR 、test1-JUDGE 、test1-OPER、test1-UPDATE) であり（図７、図８参照）、ファンクションテーブル４１、４２、４３、４５はレコードを区別するＩＤ（Ｉｄ）、動作に使用するテーブル名（TTSTable、ASRTable、JUDGETable、UPTable ) とレコード指定情報（TTSWhere、ASRWhere、JUDGEWhere、UPWhere ) のフィールドを有する。５１〜５５は各々、車載オーディオ装置１０ｂに関連する対話動作を発話、音声認識、判断、操作、学習の別にグループ分けしたファンクションテーブル( 細分類テーブル、テーブル名test2-TTS 、test2-ASR 、test2-UPDATE、test2-JUDGE 、test2-OPER、test2-UPDATE )であり（図９〜図１１参照）、ファンクションテーブル５１、５２、５３、５５はレコードを区別するＩＤ（Ｉｄ）、動作に使用するテーブル名（TTSTable、ASRTable、JUDGETable、UPTable ) とレコード指定情報（TTSWhere、ASRWhere、JUDGEWhere、UPWhere ) のフィールドを有する。
６１〜６４は各々車載ナビゲーション装置１０ｃに関連する動作を発話、音声認識、判断、操作の別にグループ分けしたファンクションテーブル( 細分類テーブル、テーブル名test3-TTS 、test3-ASR 、test3-JUDGE 、test3-OPER )であり（図１２、図１３参照）、ファンクションテーブル６１、６２、６３はレコード単位で情報を区別するＩＤ（Ｉｄ）、動作に使用するテーブル名（TTSTable、ASRTable、JUDGETable) とレコード指定情報（TTSWhere、ASRWhere、JUDGEWhere)
のフィールドを有する。７１はシナリオテーブル７０に定義された対話システムの全体的な動作である音声認識のファンクションテーブル( 細分類テーブル、テーブル名test4-ASR ) であり、レコード単位で情報を区別するＩＤ（Ｉｄ）、動作に使用するテーブル名（ASRTable) とレコード指定情報（ASRWhere )のフィールドを有する。
【００１４】
学習のファンクションテーブル４５、５５では、レコード単位で情報を区別するＩＤ（Ｉｄ）と学習に使用するデータの格納されたテーブル名（UPTable)、レコード指定情報（UPWhere)、更新するデータフィールドを指定する対象フィールド情報（UPField)、更新に用いるデータを格納した更新用データ情報（UPData)
のフィルードを有する。判断のファンクションテーブル４３、５３、６３では、レコード単位で情報を区別するＩＤ（Ｉｄ）と判断に使用するデータの格納されたテーブル名（JUDGETable) とレコード指定情報（JUDGEWhere) 、判断に用いる条件を格納した判断条件情報（JUDGEDATA)、条件に合致した場合と合致しない場合の遷移先情報を格納するフィールド（TRUE、FALSE)を有する。操作のファンクションテーブル４４、５４、６４はレコードを区別するＩＤ（Ｉｄ）と操作内容フィルード（Operation)を有する。
【００１５】
図３に戻って、８０は各シナリオテーブルを管理するシナリオネットワークテーブル( テーブル名tbl-ScenarioNet)であり、レコード単位で情報を区別するＩＤ(Id)とシナリオテーブル名（Name) を格納するフィールドを有する。シナリオネットワークテーブル８０のＩＤ＝１〜４は各々シナリオテーブル４０、５０、６０、７０に対応付けられている。シナリオテーブル４０（５０、６０、７０）において、動作内容はファンクション名とパラメータの組み合わせにより指定されるファンクションテーブルとレコードで特定される。例えばシナリオテーブル４０の或る１つの動作がファンクション名ＴＴＳ、パラメータが１であれば、発話に関するファンクションテーブル４１のＩＤ＝１のレコードで指定された内容の発話を指す。ファンクションテーブル４１のＩＤ＝１のレコードは、使用テーブル名がtbl-text、レコード特定情報がTTSId=２２なので、辞書テーブル３０のTTSId=２２のレコードのスペルフィールドのテキスト「エアコンをつけますか」を発話させることになる。シナリオテーブル４０の他の或る１つの動作がファンクション名ＡＳＲ、パラメータが１であれば、ファンクションテーブル４２のＩＤ＝１のレコードで指定された内容の音声認識を指す。ファンクションテーブル４２のＩＤ＝１のレコードは、使用テーブル名がtbl-text、レコード指定情報がId= １なので、辞書テーブル３０の主ＩＤ＝１のスペルフィールドのテキスト「はい」、「うん」を認識対象語彙とした音声認識をさせることになる。
【００１６】
シナリオテーブル４０の１つの動作がファンクション名UPDATE、パラメータが１であれば、学習に関するファンクションテーブル４５のＩＤ＝１のレコードで指定されたデータ更新を指す。ファンクションテーブル４５のＩＤ＝１のレコードは、使用テーブル名がtbl-info、レコード指定情報がId＝１、対象フィールド情報がState 、更新用データ情報がTEMPなので、学習データテーブル３１のＩＤ＝１のレコードのState のデータをＴＥＭＰで書き換えることを指す。シナリオテーブル４０の１つの動作がファンクション名JUDGE 、パラメータが１であれば、判断に関するファンクションテーブル４３のＩＤ＝１のレコードで指定された判断を指す。ファンクションテーブル４３のＩＤ＝１のレコードは、使用テーブル名がtbl-info、レコード指定情報がId＝２、判断条件がState ＝５、条件に合致した場合と合致しない場合の動作遷移情報が（１，４）と（１，３）なので、該当する学習データState が５かの判断をし、かつ、判断結果に従い次の動作に遷移することを指す。シナリオテーブル４０の１つの動作がファンクション名OPER、パラメータが１であれば、車載エアコン装置１０ａの操作に関するファンクションテーブル４４のＩＤ＝１のレコードで指定された操作を指す。ファンクションテーブル４４のＩＤ＝１のレコードは、エアコンオン操作を指す。
他のシナリオテーブル５０、６０、７０についても同様に構成されている。
なお、動作遷移情報はシナリオネットワークテーブル８０のレコードを識別するＩＤとシナリオテーブル４０〜７０のレコードを識別するＩＤの組み合わせ（ａ、ｂ）で表現される。
【００１７】
図２に戻って、２３はユーザが対話を開始する際に操作するＰＴＴスイッチ、２４はデータベースマネジメントシステム部（ＤＢＭＳ）であり、外部からデータベース言語の１つであるＳＱＬ言語による命令により各種データ操作が要求されると、ＳＱＬ言語命令を解読して、データベース部２２に対し、情報検索、学習データテーブル３１のデータ更新等の各種データ操作をし、検索要求に対しては結果を要求元に返信する。
【００１８】
２５は対話制御部であり、ＤＢＳＭ２４にＳＱＬ言語の命令によりデータ操作を要求してデータベース部２２に記憶された遷移情報を参照しながら対話動作手順に従う動作の情報（ファンクション＋動作内容＋動作遷移情報）を逐次読み出す。そして、該読み出した動作の情報が提案、意思確認等の発話（ファンクション＝TTS)であれば発話部２０に発話を指示し、音声認識（ファンクション＝ASR)であれば音声認識部２１に音声認識を指示して、ユーザと対話を行う。音声認識を指示したときは、音声認識結果により場合分けされる動作、例えば再確認のための発話を指示したり、車載エアコン装置１０ａ、車載オーディオ装置１０ｂ、車載ナビゲーション装置１０ｃへの操作指示（制御指示; ファンクション＝OPER）をしたりする。また、読み出した動作の情報が学習（ファンクション＝UPDATE）であれば、ＤＢＭＳ２４に車室温度データの更新や本日のＣＤ再生回数データの更新を指示したりする。読み出した動作の情報が学習（ファンクション＝JUDGE ）であれば、対話制御部２５が車室温度データ、本日のＣＤ再生回数データ、ユーザの発話入力などに対する判断を行なう。
【００１９】
図１５は対話制御部２５の実行する対話処理の流れ図、図１６乃至図１９は対話動作手順の説明図であり、以下、これの図を参照して上記した実施例の動作を説明する。
なお、予め、学習データテーブル３１の２番目に登録された本日のＣＤ再生回数データは４になっているものとする。
（１）車室温度データの更新
車載エアコン装置１０ａに付属した温度センサ１１は車室温度データを定期的に対話制御部２５に出力している。対話制御部２５は、温度センサ１１から入力があったかとＰＴＴスイッチ２３が押されたかの判断を繰り返しており（図１５のステップＳ１０、Ｓ１６）、温度センサ１１から車室温度データ（ここでは２５（℃）とする）が入力されると、内蔵メモリ２５ＡにデータＴＥＭＰとして一時記憶し（図１６のステップＳ２０）、車室温度データの更新動作に対応する動作要求ＩＤ（１，１）を自己設定する（ステップＳ１１）。ここで、動作要求ＩＤ（Ａ，Ｂ）はシナリオネットワークテーブル８０のレコードを識別するＩＤ＝Ａとシナリオテーブル４０〜７０のレコードを識別するＩＤ＝Ｂの組み合わせである。
【００２０】
対話制御部２５はＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝１のレコードの示す動作情報（ファンクション＋処理内容データ＋動作遷移情報）を読み出す（図１５のステップＳ１２）。この際、ＤＢＭＳ２４により、シナリオネットワークテーブル、シナリオテーブル、ファンクションテーブル、学習データテーブルという具合に階層を上から下に辿って１つの動作の完全な情報を取得する。
具体的には、まず動作要求ＩＤ（Ａ，Ｂ）のＡ＝１からＤＢＳＭ２４に対し、シナリオネットワークテーブル８０のＩＤ＝１のレコードを読み出させるＳＱＬ言語の命令文を作成してＤＢＳＭ２４に出力する。ＤＢＳＭ２４は命令文を解読してデータベース部２２のシナリオネットワークテーブル８０からＩＤ＝１のレコードの情報を読み出し、対話制御部２５に返信し、対話制御部２５は返信情報中のシナリオテーブル名（test1-Scenario）を確保する。次に、動作要求ＩＤ（Ａ，Ｂ）のＢ＝１とシナリオテーブル名（test1-Scenario）から、シナリオテーブル４０のＩＤ＝１のレコードを読み出させるＳＱＬ言語の命令文を作成してＤＢＳＭ２４に出力する。ＤＢＳＭ２４は命令文を解読してデータベース部２２のシナリオテーブル４０からＩＤ＝１のレコードの情報を読み出し、対話制御部２５に返信し、対話制御部２５は返信情報中のファンクション名UPDATE、パラメータ１、動作遷移情報（１，２）を確保する。次に、シナリオテーブル４０のファンクション名UPDATEに対応付けられたファンクションテーブル名（test1-UPDATE）のファンクションテーブル４１の内、今回のパラメータ１に相当するＩＤ＝１のレコードを読み出させるＳＱＬ言語の命令文を作成してＤＢＳＭ２４に出力する。ＤＢＳＭ２４は命令文を解読してデータベース部２２のファンクションテーブル４１からＩＤ＝１のレコードの情報を読み出し、対話制御部２５に返信する。
【００２１】
結果はテーブル名test1-UPDATEのファンクションテーブル４５のＩＤ＝１のレコードの示すテーブル名tbl-Infoの学習データテーブル３１のＩＤ＝１のＳｔａｔｅのデータ（車室温度データ）を内蔵メモリ２５Ａに一時記憶したＴＥＭＰで書き換えることなので、対話制御部２５はＤＢＭＳ２４に対し学習データテーブル３１のＩＤ＝１のＳｔａｔｅのデータをＴＥＭＰ（＝２５）で書き換えるＳＱＬ言語命令により車室温度データの更新要求をし、ＤＳＢＭ２４はＳＱＬ言語による要求を解読して学習データテーブル３１中の車室温度データを更新する（図１５のステップＳ１３、図１６のステップＳ２１）。
【００２２】
（２）エアコンオンの提案（シナリオ開始のトリガ機能）
車室温度の更新が終ると、対話制御部２５は今回の動作の情報に動作遷移情報（１，２）があるので、それを次の動作要求ＩＤとし（図１５のステップＳ１４、Ｓ１５）、前述と同様にしてＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝２のレコードの示す動作情報を読み出す（図１５のステップＳ１２）。結果はテーブル名test1-JUDGE のファンクションテーブル４３のＩＤ＝１のレコードの示すテーブル名tbl-Infoの学習データテーブル３１のＩＤ＝１のＳｔａｔｅのデータが２５以上かの判断なので、更に学習データテーブル３１のＩＤ＝１のレコードを読み出させるＳＱＬ言語の命令文を作成してＤＢＳＭ２４に出力する。ＤＢＳＭ２４は命令文を解読してデータベース部２２の学習データテーブル３１からＩＤ＝１のレコードの情報を読み出し、対話制御部２５に返信する。対話制御部２５は入手したデータが２５か判断する（図１５のステップＳ１３、図１６のステップＳ２２）。判断に成功し、若しＮＯであればＦＡＬＳＥの動作遷移情報（１，３）を次の動作要求ＩＤとするが、ここではＹＥＳとなるのでＴＲＵＥの動作遷移情報（１，４）を次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝３のレコードの示す動作情報を読み出す（図１５のステップＳ１２）。結果はテーブル名test1-TTS のファンクションテーブル４１のＩＤ＝１のレコードの示すテーブル名tbl-Textの辞書テーブル３０のTTSId ＝２２の＜エアコンをつけますか＞の発話となるので、発話部２０のアプリケーションプログラム（ＡＰ）に対しファンクション＝TTS と処理内容データ＜エアコンをつけますか＞を含む発話指示をする。発話部２０のアプリケーションプログラム（ＡＰ）は音声合成により＜エアコンをつけますか＞の発話を実行する（図１５のステップＳ１３、図１６のステップＳ２３）。
【００２３】
（３）エアコンオン
発話指示後、対話制御部２５は今回の動作の情報に動作遷移情報（１，５）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝５のレコードの示す動作情報を読み出す（図１５のステップＳ１３）。結果はテーブル名test1-ASR のファンクションテーブル４２のＩＤ＝１のレコードの示すテーブル名tbl-Textの辞書テーブル３０のId＝１の＜はい＞、＜うん＞の音声認識となるので、音声認識部２１のアプリケーションプログラム（ＡＰ）に対しファンクション＝ASR と処理内容データ＜はい＞、＜うん＞を含む音声認識指示をする。音声認識部２１のアプリケーションプログラム（ＡＰ）これらの語彙を認識対象語彙として音声認識を実行する。ユーザが「はい」と発話し、音声認識部２１が認識対象語彙とマッチングを行なって＜はい＞と判別したとき、認識結果語彙を対話制御部２５に出力する。対話制御部２５は認識語彙を内蔵メモリ２５Ａの一時記憶テーブル２５Ｂ（テーブル名tbl-Inp ）のＩＤ＝１のレコードのデータフィルード(INPUT) に一時記憶する（図１５のステップＳ１３、図１６のステップＳ２４）。そして、今回の動作の情報に動作遷移情報（１，６）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝６のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test1-JUDGE のファンクションテーブル４３のＩＤ＝２のレコードの示すテーブル名tbl-Inp の一時記憶テーブル２５ＢのＩＤ＝１のＩＮＰＵＴの内容が＜はい＞または＜うん＞かの判断なので、一時記憶したテーブルデータを参照して判断する（図１５のステップＳ１３）。成功し、若しＮＯであればＦＡＬＳＥの動作遷移情報がＮＵＬＬで存在しないので、一旦対話動作を終るが、ここではＹＥＳとなるのでＴＲＵＥの動作遷移情報（１，７）を次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝７のレコードの示す動作情報の内容（動作遷移情報があるときは動作遷移情報を含む）を読み出す（図１５のステップＳ１２）。結果はテーブル名test1-OPERのファンクションテーブル４４のＩＤ＝１のレコードの示すエアコンオン操作なので、車載エアコン装置１０ａのアプリケーションプログラム（ＡＰ）に対しファンクション＝OPERと処理内容データ（エアコンオン）を与えてエアコンオンを指示する。該指示を受けた車載エアコン装置１０ａのアプリケーションプログラム（ＡＰ）はエアコンを稼働させる（図１５のステップＳ１３、図１６のステップＳ２５）。
【００２４】
エアコンオン指示後、対話制御部２５は今回の動作の情報に動作遷移情報（１，８）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝８のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test1-TTSTableのファンクションテーブル４３のＩＤ＝２のレコードの示すテーブル名tbl-Textの辞書テーブル３０のTTSId ＝２３の＜エアコンをオンしました＞の発話となるので、発話部２０に対し＜エアコンをオンしました＞の発話を指示する（図１５のステップＳ１３、図１６のステップＳ２６）。このあと対話制御部２５は今回の動作の情報の動作遷移情報がＮＵＬＬなので、一旦対話を終える。
【００２５】
（４）エアコンオフの提案
その後、エアコンのオンで車室温度が下がり、前記した車室温度データの更新動作で更新される学習データテーブル３１の車室温度データの値は小さくなる。更新動作に続く車室温度データが２５以上かの判断でＮＯとなると、ＦＡＬＳＥの動作遷移情報（１，３）を次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝３のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test1-JUDGE のファンクションテーブル４３のＩＤ＝２のレコードの示すテーブル名tbl-Infoの学習データテーブル３１のＩＤ＝１のＳｔａｔｅのデータが１８以下かの判断なので、更に学習データテーブル３１のＩＤ＝１のレコードを読み出させるＳＱＬ言語の命令文を作成してＤＢＳＭ２４に出力する。ＤＢＳＭ２４は命令文を解読してデータベース部２２の学習データテーブル３１からＩＤ＝１のレコードの情報を読み出し、対話制御部２５に返信する。対話制御部２５は入手したデータが１８か判断する（図１５のステップＳ１３）。判断が成功し、ＮＯであればＦＡＬＳＥの動作遷移情報がＮＵＬＬなので、メインの処理に戻る。若し、車室温度の低下でＹＥＳとなったとき、ＴＲＵＥの動作遷移情報（１，９）を次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝９のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test1-TTS のファンクションテーブル４３のＩＤ＝３のレコードの示すテーブル名tbl-Textの辞書テーブル３０のTTSId ＝２４の＜エアコンをとめますか＞の発話となるので、発話部２０に対し＜エアコンをとめますか＞の発話を指示する（図１５のステップＳ１３）。発話部２０は音声合成により＜エアコンをとめますか＞の発話をする。
【００２６】
（５）エアコンオフ
発話指示後、対話制御部２５は今回の動作の情報に動作遷移情報（１，１０）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝１０のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果は＜はい＞、＜うん＞の音声認識となるので、音声認識部２１に対しこれらを音声認識対象語彙とした音声認識を指示する（図１５のステップＳ１３）。ユーザが「はい」と発話し、音声認識部２１が＜はい＞の認識結果語彙を対話制御部２５に出力すると、対話制御部２５は認識結果語彙を内蔵メモリ２５Ａの一時記憶テーブル２５Ｂ（テーブル名tbl-Inp ）のＩＤ＝１のレコードに一時記憶する。そして、今回の動作の情報に動作遷移情報（１，１１）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝１１のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test1-JUDGE のファンクションテーブル４３のＩＤ＝４のレコードの示すテーブル名tbl-Inp の一時記憶テーブル２５ＢのＩＤ＝１のINPUT の内容が＜はい＞または＜うん＞かの判断なので、一時記憶したテーブルデータを参照して判断する（図１５のステップＳ１３）。若しＮＯであればＦＡＬＳＥの動作遷移情報がＮＵＬＬで存在しないので、一旦対話動作を終るが、ここではＹＥＳとなるのでＴＲＵＥの動作遷移情報（１，１２）を次の動作ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝１２のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test1-OPERのファンクションテーブル４４のＩＤ＝２のレコードの示すエアコンオフ操作なので、車載エアコン装置１０ａに対しファンクション＝OPERと処理内容データ（エアコンオフ）を与えてエアコンオフを指示する（図１５のステップＳ１３）。該指示を受けた車載エアコン装置１０ａはエアコンをエアコンを停止させる。
【００２７】
エアコンオフ指示後、対話制御部２５は今回の動作の情報に動作遷移情報（１，１３）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝１３のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test1-TTS のファンクションテーブル４１のＩＤ＝４のレコードの示すテーブル名tbl-Textの辞書テーブル３０のTTSId ＝２の＜エアコンをオフしました＞の発話となるので、発話部２０に対し＜エアコンをオフしました＞の発話を指示する（図１５のステップＳ１３）。発話を指示後、対話制御部２５は今回の動作の情報の動作遷移情報がＮＵＬＬなので、一旦対話を終える。
【００２８】
このようにして、対話制御部２５はＤＢＭＳ２４にＳＱＬ言語命令を繰り返してデータベース部２２に記憶された動作の情報を動作遷移情報の示す順に読み出してデータベース部２２に対する車室温度の学習指示、車室温度と設定温度の比較判断、発話部２０に対する発話指示、音声認識部２１に対する音声認識指示、車載エアコン装置１０ａに対するエアコンオン／オフの操作指示の組み合わせから成る対話動作をエアコンに関する所定のシナリオに沿って実行し、ユーザにエアコンオンまたはオフの提案をしたり、ユーザの回答に応じた制御をすることができる。
【００２９】
（６）ユーザの要求によるエアコンオン
ユーザからの発話でエアコンをオンしたい場合、まずＰＴＴスイッチ２３を押す。すると、対話制御部２５は動作要求ＩＤ＝（４，１）を自己設定し（図１５のステップＳ１６、Ｓ１７）、ＤＢＭＳ２４に対しＳＱＬ言語による命令を繰り返してシナリオテーブル７０のＩｄ＝１のレコードの示す動作の情報を読み出す（図１５のステップＳ１２）。結果はテーブル名test4-ASR のファンクションテーブル７１のＩＤ＝３のレコードの示すテーブル名tbl-Textの辞書テーブル３０のId＝１の＜暑い＞、＜エアコンをオンして＞、＜エアコンをつけて＞＜寒い＞、＜エアコンをオフして＞、＜エアコンをとめて＞、＜ＣＤを聞きたい＞、＜ＣＤを再生して＞、＜ＣＤを止めて＞、＜ＣＤを消して＞、＜ラジオを聞きたい＞、＜ラジオをオンして＞、＜ラジオをつけて＞、＜ガソリンスタンドを探して＞、＜ガソリンを入れたい＞、＜駐車場を探して＞、＜車を駐車場に入れたい＞などを認識語彙とする音声認識となり、各認識語彙には種々の動作遷移情報が対応している。対話制御部２５は音声認識部２１に対しこれらを音声認識対象語彙とする音声認識を指示する（図１５のステップＳ１３）。ユーザが「エアコンをつけて」と発話し音声認識部２１が＜エアコンをつけて＞を認識結果語彙として対話制御部２５に出力すると、対話制御部２５は認識結果語彙を内蔵メモリ２５Ａの一時記憶テーブル２５Ｂ（テーブル名tbl-Inp ）のＩＤ＝１のレコードのデータフィルード(INPUT) に一時記憶する（図１７のステップＳ３０）。そして、＜エアコンをつけて＞に動作遷移情報（１，４）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝２のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果は＜エアコンをつけますか＞の発話となるので、前述と同様にして発話部２０に発話を指示し（図１５のステップＳ１３、図１７のステップＳ３１）、ユーザが「はい」または「うん」と回答すると音声認識と判断後、エアコンのオン操作され、更に＜エアコンをつけました＞の発話がされる（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３の繰り返し、図１７のステップＳ３２、Ｓ３３、Ｓ２４）。
【００３０】
（７）ユーザの要求によるエアコンオフ
ユーザからの発話でエアコンをオフしたい場合、まずＰＴＴスイッチ２３を押すと、前述と同じ認識対象語彙群の音声認識が音声認識部２１に指示される（図１５のステップＳ１６、Ｓ１７、Ｓ１２、Ｓ１３）。ユーザが「エアコンをとめて」と発話し、音声認識部２１が＜エアコンをとめて＞を認識結果語彙として対話制御部２５に出力すると、対話制御部２５は認識結果語彙を内蔵メモリ２５Ａの一時記憶テーブル２５Ｂ（テーブル名tbl-Inp ）のＩＤ＝１のレコードのデータフィルード(INPUT) に一時記憶する。そして、今回の音声認識動作に動作遷移情報（１，９）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝２のレコードの示す動作情報を読み出す。結果は＜エアコンをとめますか＞の発話となるので、前述と同様にして発話部２０に発話を指示し（図１５のステップＳ１３、図１７のステップＳ３１）、ユーザが「はい」または「うん」と回答すると、音声認識と判断後、エアコンのオフ操作がされ、更に＜エアコンをとめました＞の発話がされる（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３の繰り返し）。
このようにして、ＰＴＴスイッチ２３押され、エアコンオン／オフが発話で要求されると、対話制御部２５はＤＢＭＳ２４にＳＱＬ言語命令を繰り返してデータベース部２２に記憶された動作の情報を動作遷移情報の示す順に読み出して音声認識部２１に対する音声認識指示、発話部２０に対する発話指示、車載エアコン装置１０ａに対するエアコンオン／オフの操作指示の組み合わせから成る対話動作をエアコンに関する所定のシナリオに沿って実行し、ユーザにエアコンオンまたはオフの意思確認をしながらユーザ所望の制御をする。
【００３１】
（８）ユーザの要求によるＣＤ再生
ＣＤを再生したい場合、ＰＴＴスイッチ２３を押すと、前述と同様にして前述と同じ認識対象語彙群の音声認識が音声認識部２１に指示される（図１５のステップＳ１６、Ｓ１７、Ｓ１２、Ｓ１３）。ユーザが「ＣＤを再生して」と発話したとき、音声認識部２１は＜ＣＤを再生して＞を認識結果語彙として対話制御部２５に出力し、対話制御部２５は認識結果語彙を内蔵メモリ２５Ａの一時記憶テーブル２５Ｂ（テーブル名tbl-Inp ）のＩＤ＝１のレコードのデータフィルード(INPUT) に一時記憶する（図１８のステップＳ４０）。そして、＜ＣＤを再生して＞に動作遷移情報（２，１）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル５０のＩＤ＝１のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test2-JUDGE のファンクションテーブル５３のＩＤ＝１のレコードの示すテーブル名tbl-Inf の学習データテーブル３１のＩＤ＝２のState の内容が５かの判断なので、ＳＱＬ言語による命令で学習データテーブル３１から該当するＣＤ再生回数データを読み出させて判断する（図１５のステップＳ１２、Ｓ１３、図１８のステップＳ４１）。
【００３２】
ＮＯなので、ＦＡＬＳＥの示す動作遷移情報（２，２）を次の動作要求ＩＤとし、前述と同様にしてＤＢＭＳ２４にＳＱＬ言語による検索命令を発してシナリオテーブル５０のＩＤ＝２のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test2-TTS のファンクションテーブル５１のＩＤ＝１のレコードの示すテーブル名tbl-Textの辞書テーブル３０のTTSId ＝２６の＜ＣＤを再生しますか＞の発話となるので、発話部２０に対し＜ＣＤの再生をしますか＞の発話を指示する（図１５のステップＳ１３、図１８のステップＳ４２）。この発話に対応する動作遷移情報が（２，３）なので、前述と同様にしてＤＢＭＳ２４にＳＱＬ言語による検索命令を発してシナリオテーブル５０のＩＤ＝３のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test2-ASR のファンクションテーブル５２のＩＤ＝１のレコードの示すテーブル名tbl-Textの辞書テーブル３０のId＝１の＜はい＞、＜うん＞音声認識なので、音声認識部２１に対し上記の各語彙を音声認識対象語彙とする音声認識を指示する（図１５のステップＳ１３）。
【００３３】
ユーザが「うん」と発話すると、音声認識部２１は音声認識した＜うん＞を対話制御部２５に出力し、対話制御部２５は認識結果語彙を内蔵メモリ２５Ａの一時記憶テーブル２５Ｂ（テーブル名tbl-Inp ）のＩＤ＝１のレコードのデータフィルード(INPUT) に一時記憶する（図１８のステップＳ４３）。そして、今回の音声認識動作に動作遷移情報（２，４）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝４のレコードの示す動作情報の内容を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test2-JUDGE のファンクションテーブル５３のＩＤ＝２のレコードの示すテーブル名tbl-Inp の一時記憶テーブル２５ＢのＩＤ＝１のINPUT の内容が＜はい＞または＜うん＞かの判断なので、一時記憶したテーブルデータを参照して判断する（図１５のステップＳ１３）。若しＮＯであればＦＡＬＳＥの動作遷移情報がＮＵＬＬで存在しないので、一旦対話動作を終るが、ここではＹＥＳとなるのでＴＲＵＥの動作遷移情報（２，５）を次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝５のレコードの示す動作情報の内容を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test2-OPERのファンクションテーブル５４のＩＤ＝１のレコードの示すＣＤ再生操作なので、車載オーディオ装置１０ｂのアプリケーションプログラム（ＡＰ）に対しファンクション＝OPERと処理内容データ（ＣＤ再生）を与えてＣＤ再生を指示する（図１５のステップＳ１３）。該指示を受けた車載オーディオ装置１０ｂのアプリケーションプログラム（ＡＰ）はＣＤを再生させる（図１８のステップＳ４４）。
そして、ＣＤ再生に対応付けられた動作遷移情報が（２，６）なので、対話制御部２５はＤＢＭＳ２４にＳＱＬ言語による検索命令を発してシナリオテーブル５０のＩＤ＝６のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test2-TTS のファンクションテーブル５２のＩＤ＝２のレコードの示すテーブル名tbl-Textの辞書テーブル３０のTTSId
＝２７の＜ＣＤを再生しました＞の発話となるので、発話部２０に対し＜ＣＤを再生しました＞の発話を指示する（図１５のステップＳ１３、図１８のステップＳ４５）。
【００３４】
（９）ＣＤ再生回数の学習
発話を指示後、対話制御部２５は今回の発話動作の情報の動作遷移情報が（２，７）なので、ＤＢＭＳ２４にＳＱＬ言語による検索命令を発してシナリオテーブル５０のＩＤ＝７のレコードの示す具体的な動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test2-UPDATEのファンクションテーブル５５のＩＤ＝１のレコードの示すテーブル名tbl-Infoの学習データテーブル３１のＩＤ＝２のＳｔａｔｅのデータ（本日のＣＤ再生回数データ）を＋１することなので、対話制御部２５はＤＢＭＳ２４に対し学習データテーブル３１のＩＤ＝２のＳＴＡＴＥのデータを＋１するＳＱＬ言語命令により本日のＣＤ再生回数データの更新要求をし、ＤＳＢＭ２４はＳＱＬ言語による要求を解読して学習データテーブル３１中の本日のＣＤ再生回数データを１増大させて５とする（図１５のステップＳ１３、図１８のステップＳ４６）。これにより、次に、ユーザがＣＤの再生を指示したとき、本日のＣＤ再生回数が５に達したかの判断でＹＥＳとなり、ＴＲＵＥの示す遷移情報が動作要求（２，２３）となり、＜ラジオにしませんか＞の提案に変わる。これにより、ユーザは飽きのこない対話を楽しむことができる。
【００３５】
（１０）ＣＤ再生の停止
ユーザがＣＤの再生を止めたい場合、ＰＴＴスイッチ２３を押すと、前述と同様にして前述と同じ認識対象語彙群の音声認識が音声認識部２１に指示される（図１５のステップＳ１６、Ｓ１７、Ｓ１２、Ｓ１３）。ユーザが「ＣＤをとめて」と発話したとき、音声認識部２１は＜ＣＤをとめて＞を認識結果語彙として対話制御部２５に出力し、対話制御部２５は認識結果語彙を内蔵メモリ２５Ａの一時記憶テーブル２５Ｂ（テーブル名tbl-Inp ）のＩＤ＝１のレコードのデータフィルード(INPUT) に一時記憶する。そして、＜ＣＤをとめて＞に動作遷移情報（２，８）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル５０のＩＤ＝８のレコードの示す動作情報を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果は＜ＣＤの再生を止めますか＞の発話なので、発話部２０に＜ＣＤの再生を止めますか＞の発話を指示する（図１５のステップＳ１３）。動作遷移情報が動作要求（２，９）なので、前述と同様にしてＤＢＭＳ２４にＳＱＬ言語による検索命令を発してシナリオテーブル５０のＩＤ＝９のレコードの示す動作の情報を読み出す。結果は＜はい＞、＜うん＞の音声認識なので、音声認識部２１に対し上記の各語彙を音声認識対象語彙として設定して音声認識を指示する（図１５のステップＳ１４、１５、Ｓ１２、Ｓ１３）。
【００３６】
ユーザが「うん」と発話すると、音声認識部２１は音声認識を行い、結果を対話制御部２５に出力し、対話制御部２５は認識結果語彙を内蔵メモリ２５Ａの一時記憶テーブル２５Ｂ（テーブル名tbl-Inp ）のＩＤ＝１のレコードのデータフィルード(INPUT) に一時記憶する。そして、今回の音声認識に動作遷移情報（２，１０）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル５０のＩＤ＝１０のレコードの示す動作情報の内容を読み出す。結果はテーブル名test2-JUDGE のファンクションテーブル５３のＩＤ＝３のレコードの示すテーブル名tbl-Inp の一時記憶テーブル２５ＢのＩＤ＝１のINPUT の内容が＜はい＞または＜うん＞かの判断なので、一時記憶したテーブルデータを参照して判断する（図１５のステップＳ１４、１５、Ｓ１２、Ｓ１３）。若しＮＯであればＦＡＬＳＥの動作遷移情報がＮＵＬＬで存在しないので、一旦対話動作を終るが、ここではＹＥＳとなるのでＴＲＵＥの動作遷移情報（２，１１）を次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル５０のＩＤ＝１１のレコードの示す動作情報の内容を読み出す。結果はテーブル名test2-OPERのファンクションテーブル５４のＩＤ＝２のレコードの示すＣＤ再生停止操作なので、車載オーディオ装置１０ｂのアプリケーションプログラム（ＡＰ）に対しファンクション＝OPERと処理内容データ（ＣＤ再生停止）を与えてＣＤ再生の停止を指示する（図１５のステップＳ１４、１５、Ｓ１２、ステップＳ１３）。該指示を受けた車載オーディオ装置１０ｂのアプリケーションプログラム（ＡＰ）はＣＤ再生を停止させる。
【００３７】
ＣＤ再生停止に対応付けられた動作遷移情報が（２，１２）なので、対話制御部２５はＤＢＭＳ２４にＳＱＬ言語による検索命令を発してシナリオテーブル５０のＩＤ＝１２のレコードの示す動作情報を読み出す。結果はテーブル名test2-TTS のファンクションテーブル５２のＩＤ＝４のレコードの示すテーブル名tbl-Textの辞書テーブル３０のTTSId ＝２９の＜ＣＤの再生をとめました＞の発話となるので、発話部２０に対し＜ＣＤの再生をとめました＞の発話を指示する（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３）。
このようにして、ＰＴＴスイッチ２３押され、ＣＤ再生／ＣＤ再生停止が発話で要求されると、対話制御部２５はＤＢＭＳ２４にＳＱＬ言語命令を繰り返してデータベース部２２に記憶された動作の情報を動作遷移情報の示す順に読み出して音声認識部２１に対する音声認識指示、発話部２０に対する発話指示、車載オーディオ装置１０ｃに対するＣＤ再生／ＣＤ再生停止の操作指示の組み合わせから成る対話動作をＣＤに関する所定のシナリオに沿って実行し、ユーザにＣＤ再生またはＣＤ再生停止の意思確認をしながらユーザ所望の制御をする。
【００３８】
（１１）ラジオのオンオフ
ＣＤの場合と同様にしてユーザがＰＴＴスイッチ２３を押して「ラジオをつけて」、「ラジオを聞きたい」などと発話するか、対話制御部２５の側から「ラジオを聞きませんか」の提案に対し「うん」、「はい」と回答することで車載オーディオ装置１０ｂに対しラジオのオン操作ができ、ＰＴＴスイッチ２３を押して「ラジオを消して」と発話することで車載オーディオ装置１０ｂに対しラジオのオフ操作ができる。
例えば、本日のＣＤ再生回数が５になったあと、ＰＴＴスイッチ２３を押して「ＣＤを再生して」と話したため、対話制御部２５から「ラジオを聞きませんか」の発話の提案がされたとき（図１８のステップＳ４７）、対話制御部２５は発話に対応付けられた動作遷移情報（２，２４）に基づき、音声認識部２１に＜はい＞、＜うん＞、＜いいえ＞、＜いや＞を認識対象語彙として音声認識させる（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３）。ユーザが「はい」と回答すると、音声認識部２１は音声認識した＜はい＞を対話制御部２５に出力し、対話制御部２５は認識結果語彙を内蔵メモリ２５Ａの一時記憶テーブル２５Ｂ（テーブル名tbl-Inp ）のＩＤ＝１のレコードのデータフィルード(INPUT) に一時記憶する（図１８のステップＳ４８）。そして、今回の音声認識に動作遷移情報（２，２５）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル５０のＩＤ＝２５のレコードの示す動作情報の内容を読み出す。結果はテーブル名test2-JUDGE のファンクションテーブル５３のＩＤ＝６のレコードの示すテーブル名tbl-Inp の一時記憶テーブル２５ＢのＩＤ＝１のINPUT の内容が＜はい＞または＜うん＞かの判断なので、一時記憶したテーブルデータを参照して判断する（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３）。若しＮＯであればＦＡＬＳＥの動作遷移情報が（２，２６）なので、更に、テーブル名tbl-Inp の一時記憶テーブル２５ＢのＩＤ＝１のINPUT の内容が＜いいえ＞または＜いや＞か判断し、ＹＥＳであればＣＤの再生指示に移行するが、ここではＹＥＳとなるのでＴＲＵＥの動作遷移情報（２，１７）を次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル４０のＩＤ＝１７のレコードの示す動作情報の内容を読み出す（図１５のステップＳ１４、Ｓ１５、Ｓ１２）。結果はテーブル名test2-OPERのファンクションテーブル５４のＩＤ＝３のレコードの示すラジオオンなので、車載オーディオ装置１０ｂのアプリケーションプログラム（ＡＰ）に対しファンクション＝OPERと処理内容データ（ラジオオン）を与えてラジオオンを指示し（図１５のステップＳ１３）、続いて「ラジオをつけました」を発話させる（図１８のステップＳ４９、Ｓ５０）。
【００３９】
（１２）目的地への経路案内
ユーザが近くのガソリンスタンドを探して経路案内をさせたい場合、ＰＴＴスイッチ２３を押すと、前述と同じ語彙群の音声認識が音声認識部２１に指示される（図１５のステップＳ１６、Ｓ１７、Ｓ１２、Ｓ１３）。ユーザが「ガソリンスタンドを探して」と発話し音声認識部２１から「ガソリンスタンドを探して」が入力されると、対話制御部２５は認識結果語彙を内蔵メモリ２５Ａの一時記憶テーブル２５Ｂ（テーブル名tbl-Inp ）のＩＤ＝１のレコードのデータフィルード(INPUT) に一時記憶する（図１９のステップＳ６０）。そして、＜ガソリンスタンドを探して＞に動作遷移情報（３，１）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル６０のＩＤ＝１のレコードの示す動作情報を読み出す。結果は＜ガソリンスタンドを探しますか＞の発話なので、発話部２０に＜ガソリンスタンドを探しますか＞の発話を指示する（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３、図１９のステップＳ６１）。発話に対応付けられた動作遷移情報が動作要求（３，２）なので、ＳＱＬ言語による検索命令を発してシナリオテーブル６０のＩＤ＝２のレコードの示す動作の情報を読み出す。結果は＜はい＞、＜うん＞の音声認識なので、音声認識部２１に対し上記の各語彙を音声認識対象語彙として設定して音声認識を指示する（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３）。
【００４０】
ユーザが「うん」と発話すると、音声認識部２１は音声認識を行い、結果を対話制御部２５に出力し、対話制御部２５は認識結果語彙を内蔵メモリ２５Ａの一時記憶テーブル２５Ｂ（テーブル名tbl-Inp ）のＩＤ＝１のレコードのデータフィルード(INPUT) に一時記憶する（図１９のステップＳ６２）。そして、今回の音声認識語彙に動作遷移情報（３，３）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル６０のＩＤ＝３のレコードの示す動作情報の内容を読み出す。結果はテーブル名test3-JUDGE のファンクションテーブル５３のＩＤ＝３のレコードの示すテーブル名tbl-Inp の一時記憶テーブル２５ＢのＩＤ＝１のINPUT の内容が＜はい＞または＜うん＞かの判断なので、一時記憶したテーブルデータを参照して判断する( 図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３）。若しＮＯであればＦＡＬＳＥの動作遷移情報がＮＵＬＬで存在しないので、一旦対話動作を終るが、ここではＹＥＳとなるのでＴＲＵＥの動作遷移情報（３，４）を次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル６０のＩＤ＝４のレコードの示す動作情報の内容を読み出す。結果はテーブル名test3-OPERのファンクションテーブル６４のＩＤ＝１のレコードの示すガソリンスタンド検索操作なので、車載ナビゲーション装置１０ｃのアプリケーションプログラム（ＡＰ）に対しファンクション＝OPERと処理内容データ（ガソリンスタンド検索）を与えてガソリンスタンドの検索を指示する（図１５のステップＳ１３、図１９のステップＳ６３）。
【００４１】
該指示を受けた車載ナビゲーション装置１０ｃのアプリケーションプログラム（ＡＰ）は地図情報に付属する索引情報から最寄のガソリンスタンドを１つ検索し、地図画像上にガソリンスタンドマークを表示するとともに、検索成功を対話制御部２５に通知する。対話制御部２５は、内蔵メモリ２５Ａの一時記憶テーブル２５ＢのＩＤ＝２のINPUT として一時記憶し、今回の操作指示に対応付けられた動作遷移情報が（３，５）なので、ＤＢＭＳ２４にＳＱＬ言語による検索命令を発してシナリオテーブル６０のＩＤ＝５のレコードの示す動作情報を読み出す。結果は検索成功かの判断なので、一時記憶したデータからＹＥＳと判断する（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３、図１８のステップＳ６４）。若し、検索失敗であれば、ＮＯと判断しＦＡＬＳＥの動作遷移情報（３，７）に従い、＜検索できませんでした＞の発話を指示する（図１８のステップＳ６５）。ＴＲＵＥの動作遷移情報が（３，６）なので、ＤＢＭＳ２４にＳＱＬ言語による検索命令を発してシナリオテーブル６０のＩＤ＝６のレコードの示す動作情報を読み出す。結果は＜ここでよろしいですか＞の発話なので、発話部２０に対し＜ここでよろしいですか＞の発話を指示する（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３、図１８のステップＳ６５）。発話の動作遷移情報が（３，８）なので、ＤＢＭＳ２４にＳＱＬ言語による検索命令を発してシナリオテーブル６０のＩＤ＝８のレコードの示す動作情報を読み出す。結果は＜はい＞、＜うん＞の音声認識なので、音声認識部２１に対し上記の各語彙の音声認識を指示する（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３）。
【００４２】
ユーザが「うん」と発話し、音声認識部２１から＜うん＞が対話制御部２５に入力されると、対話制御部２５は認識結果語彙を内蔵メモリ２５Ａの一時記憶テーブル２５Ｂ（テーブル名tbl-Inp ）のＩＤ＝１のレコードのデータフィルード(INPUT) に一時記憶する（図１８のステップＳ６７）。そして、今回の音声認識語彙に動作遷移情報（３，９）があるので、それを次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル６０のＩＤ＝９のレコードの示す動作情報の内容を読み出す。結果はテーブル名test3-JUDGE のファンクションテーブル５３のＩＤ＝３のレコードの示すテーブル名tbl-Inp の一時記憶テーブル２５ＢのＩＤ＝１のINPUT の内容が＜はい＞または＜うん＞かの判断なので、一時記憶したテーブルデータを参照して判断する（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３）。若しＮＯであればＦＡＬＳＥの動作遷移情報がＮＵＬＬで存在しないので、一旦対話動作を終るが、ここではＹＥＳとなるのでＴＲＵＥの動作遷移情報（３，１０）を次の動作要求ＩＤとし、ＤＢＭＳ２４に対しＳＱＬ言語による検索命令を繰り返してシナリオテーブル６０のＩＤ＝１０のレコードの示す動作情報の内容を読み出す。結果はテーブル名test3-OPERのファンクションテーブル５４のＩＤ＝２のレコードの示す＜経路探索・経路案内＞の操作指示なので、車載用ナビゲーション装置１０ｃのアプリケーションプログラム（ＡＰ）に対しファンクション＝OPERと処理内容データ（経路探索・経路案内）を与えて今回検索したガソリンスタンドを目的地とする経路探索・経路案内を指示する（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３、図１８のステップＳ６８）。車載用ナビゲーション装置１０ｃのアプリケーションプログラム（ＡＰ）は地図情報を用いて現在地から目的地までを結ぶ最適な経路を探索する。
【００４３】
探索に成功すれば地図画像上に自車位置マークとともに最適経路を表示し、検索成功を対話制御部２５に通知する。対話制御部２５は、内蔵メモリ２５Ａの一時記憶テーブル２５ＢのＩＤ＝２のINPUT として一時記憶し、今回の操作指示に対応付けられた動作遷移情報が（３，１１）なので、ＤＢＭＳ２４にＳＱＬ言語による検索命令を発してシナリオテーブル６０のＩＤ＝１１のレコードの示す動作情報を読み出す。結果は探索成功かの判断なので、一時記憶したデータからＹＥＳと判断する（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３、図１９のステップＳ６９）。ＴＲＵＥの動作遷移情報が（３，１２）なので、ＤＢＭＳ２４にＳＱＬ言語による検索命令を発してシナリオテーブル６０のＩＤ＝１２のレコードの示す動作情報を読み出す。結果は＜経路を案内します＞の発話なので、発話部２０に対し＜経路を案内します＞の発話を指示する（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３、図１９のステップＳ７０）。若し、探索失敗であれば、ＮＯと判断しＦＡＬＳＥの動作遷移情報（３，１３）に従い、＜経路探索をできません＞の発話を指示する（図１５のステップＳ１４、Ｓ１５、Ｓ１２、Ｓ１３、図１９のステップＳ７１）。
【００４４】
このようにして、ＰＴＴスイッチ２３押され、ガソリンスタンドの検索が発話で要求されると、対話制御部２５はＤＢＭＳ２４にＳＱＬ言語命令を繰り返してデータベース部２２に記憶された動作の情報を動作遷移情報の示す順に読み出して音声認識部２１に対する音声認識指示、発話部２０に対する発話指示、車載ナビゲーション装置１０ｃに対するガソリンスタンドの検索／経路探索・経路案内の操作指示の組み合わせから成る対話動作をナビゲーション装置に関する所定のシナリオに沿って実行し、ユーザにガソリンスタンド検索／経路探索・経路案内の意思確認をしながらユーザ所望の制御をする。
なお、シナリオテーブル６０、ファンクションテーブル６１〜６４では省略されているが、ユーザがＰＴＴスイッチ２３を押し、「駐車場を探して」と発話すれば、車載ナビゲーション装置１０ｃに最寄りの駐車場の検索と経路探索・経路案内をさせることもできる。
【００４５】
この実施例によれば、発話部２０による発話、音声認識部２１による音声認識、ＤＢＭＳ部２４による学習データの更新、対話制御部２５による所定の学習データまたはユーザ入力に対する判断と車載エアコン装置１０ａ、車載オーディオ装置１０ｂ、車載ナビゲーション装置１０ｃに対する機器操作（機器制御）を組み合わせた対話動作手順の各動作の機能、動作に用いる各種データ（発話テキスト、音声認識語彙、学習データ等）、対話動作手順に応じた動作遷移情報を対応付けてデータベース部２２に記憶したので、対話制御部２５の対話処理に必要な情報をデータベース部２２により一括して管理できる。
データベース部２２では、全体の対話動作手順の各動作の情報を、シナリオ毎（互いに関連する動作毎，ここでは操作対象機器毎）にグループ分けし、複数のシナリオテーブル４０、５０、６０、７０により管理したので、シナリオの追加、削除、変更等を簡単に行なえる。更に、各シナリオテーブルに含まれる動作情報を同種の機能毎にまとめたファンクションテーブル４１〜４５、５１〜５５、６１〜６４、７１により管理するので、機能単位での追加、変更、削除も容易に行なえる。
また、ＳＱＬ言語の命令を受けて、データベース部２２に対し検索、更新等のデータ操作を行なうＤＢＭＳ２４を備えたので、対話制御部２５はＳＱＬ言語による命令を作成してＤＢＭＳ２４に発行することで、データベース部２２の情報へのアクセスを形式的に実行でき、処理負担が軽減する。
また、データベース部２２に学習データテーブル３１を格納するとともに、ＤＢＭＳ２４により、学習データの更新を行なわせたことによっても、情報管理と処理の簡単化を実現できる。
【００４６】
なお、上記した実施例では、ＤＢＭＳ２４による更新動作として、学習データテーブル中のデータ更新を例に挙げたが、学習データまたはユーザ入力に対する判断の結果、シナリオテーブル等に格納された動作遷移情報を変更する動作を対話動作手順に含めても良い。これにより対話の流れによって、シナリオを変更することができ、対話する度に、会話の内容が変更するシナリオを実現できる。
また、データベース部２２では、１つのシナリオの対話動作手順の各動作について、シナリオテーブルとファンクションテーブルに分けて管理したが、分けずに１つのテーブルで管理するようにしても良い。
【産業上の利用可能性】
【００４７】
本発明は、自動車、家庭、オフィス等で各種の対話処理を行なう対話システムに適用できる。
【図面の簡単な説明】
【００４８】
【図１】従来の対話システムの構成例を示すブロック図である。
【図２】本発明の第１実施例に係る自動車用対話システムの構成を示すブロック図である（実施例１）。
【図３】データベース部に記憶された動作情報の説明図である。
【図４】辞書テーブルの記憶内容の説明図である。
【図５】辞書テーブルの記憶内容の説明図である。
【図６】学習データテーブルの記憶内容の説明図である。
【図７】車載エアコン装置に関する動作情報の説明図である。
【図８】車載エアコン装置に関する動作情報の説明図である。
【図９】車載オーディオ装置に関する動作情報の説明図である。
【図１０】車載オーディオ装置に関する動作情報の説明図である。
【図１１】車載ナビゲーション装置に関する動作情報の説明図である。
【図１２】車載ナビゲーション装置に関する動作情報の説明図である。
【図１３】車載ナビゲーション装置に関する動作情報の説明図である。
【図１４】システム全体に関する動作情報の説明図である。
【図１５】対話制御部による対話処理を示すフローチャートである。
【図１６】車室温度を更新する場合の対話動作手順の一例を示す説明図である。
【図１７】ユーザがエアコンオンを要求した場合の対話動作手順の一例を示す説明図である。
【図１８】ユーザがＣＤ再生を要求した場合の対話動作手順の一例を示す説明図である。
【図１９】ユーザがガソリンスタンドの検索を要求した場合の対話動作手順の一例を示す説明図である。
【符号の説明】
【００４９】
１０ａ  車載エアコン装置
１０ｂ  車載オーディオ装置
１０ｃ  車載ナビゲーション装置
１１    温度センサ
２０    発話部
２１    音声認識部
２２    データベース部
２３    ＰＴＴスイッチ
２４    データベースマネジメントシステム部（ＤＢＭＳ）
２５    対話制御部
２５Ａ  内蔵メモリ
２５Ｂ  一時記憶テーブル
３０    辞書テーブル
３１    学習データテーブル
４０、５０、６０、７０  シナリオテーブル
４１〜４５、５１〜５５、６１〜６４、７１  ファンクションテーブル
【図１】
2009244815.tif 000003
【図２】
2009244815.tif 000004
【図３】
2009244815.tif 000005
【図４】
2009244815.tif 000006
【図５】
2009244815.tif 000007
【図６】
2009244815.tif 000008
【図７】
2009244815.tif 000009
【図８】
2009244815.tif 000010
【図９】
2009244815.tif 000011
【図１０】
2009244815.tif 000012
【図１１】
2009244815.tif 000013
【図１２】
2009244815.tif 000014
【図１３】
2009244815.tif 000015
【図１４】
2009244815.tif 000016
【図１５】
2009244815.tif 000017
【図１６】
2009244815.tif 000018
【図１７】
2009244815.tif 000019
【図１８】
2009244815.tif 000020
【図１９】
2009244815.tif 000021