(57)【要約】【課題】チャットオペレータやチャットオペレータが使用するデータベース準備のためのコストの増大を押さえながら顧客に対してリアルタイムで応答して満足を与える。【解決手段】この顧客対応システムは、ユーザ発話を送信し、その回答文を受信する会話装置と、会話装置から送信されたユーザ発話に対して、会話シナリオに基づいて回答文を決定し、決定した回答文及びその回答文に対応付けされた動作制御情報を会話装置に送信し、前記ユーザ発話に対する回答文が前記会話シナリオから発見できない場合にそのユーザ発話に対する回答を専門家に回答させるように、ユーザ発話を送信し、これに応じた回答内容を受信し、受信した回答内容を会話装置に送信し、前記ユーザ発話、回答文、回答内容を記憶した会話ログを送信し、この会話ログに基づいて生成された会話シナリオを受信して記憶する会話サーバとを有する。【選択図】図１
2010073191.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ発話を送信し、その回答文を受信する第１の手段と、
前記第１の手段から送信されたユーザ発話に対して、会話シナリオに基づいて回答文を決定し、決定した回答文及びその回答文に対応付けされた動作制御情報を前記第１の手段に送信し、前記ユーザ発話に対する回答文が前記会話シナリオから発見できない場合にそのユーザ発話に対する回答を専門家に回答させるように、ユーザ発話を送信し、これに応じた回答内容を受信し、受信した回答内容を前記第１の手段に送信し、前記ユーザ発話、回答文、回答内容を記憶した会話ログを送信し、この会話ログに基づいて生成された会話シナリオを受信して記憶する第２の手段と
を有することを特徴とする顧客対応システム。
【請求項２】
前記ユーザ発話を受信し、これに対する専門家の回答を受け付け、回答内容を前記第２の手段に送信する第３の手段と、
前記第２の手段からユーザ発話及び前記第３の手段から送信された回答内容を含む会話ログを受信し、記憶する第４の手段と、
前記第４の手段に記憶された会話ログから、ユーザ発話及びこれに回答する回答内容に基づいた会話シナリオを生成し、生成した会話シナリオを前記第２の手段に送信する第５の手段と
をさらに有することを特徴とする請求項１に記載の顧客対応システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、顧客対応システムに関し、より詳しくはユーザの発話に応答する回答を自動的に出力して、ユーザとの会話を成立させることが可能な装置を用いた顧客対応システムに関する。
【背景技術】
【０００２】
通信ネットワーク及びネットワーク通信機器の普及発展に連れて、商品やサービスの流通もネットワークを介して行われることが拡大してゆく。これに伴い顧客対応サービス（顧客の要望に応じて回答やアドバイスを提供する役務、例えばサポートサービスなど）もネットワークを介して顧客とサービス提供者の間で行われるようになってきた。
【０００３】
ネットワークを介した顧客対応サービスの一形態としてはホームページに掲載するFAQ形式のサービスやオフライン方式のEメール対応によるサービスがあったが、リアルな対応が行えないという点で満足がいかない点があった。そこで、リアル性のあるチャット方式による顧客対応サービスが提供されるようになってきた（例えば、非特許文献１）。
これは、エージェントと呼ばれるオペレータがオンラインQ&A検索システム（Talisma Knowledge Management）と呼ばれるデータベースを利用してチャット方式により顧客からの質問に対する応答などを行うサービスである。
【先行技術文献】
【非特許文献】
【０００４】
ヴィタル・インフォメーション株式会社、表題"Talisma CIM Channels"、[online]、[平成２１年４月３０日検索]、インターネット〈URL:http://www.vitals.co.jp/solution/tcim.html〉
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、上記の従来の方式による顧客対応サービスは、業務毎にチャットオペレータ用のデータベースをデータベース専門家が準備し提供するコストが、従来の電話対応用のマニュアルと同程度に必要となり、ランニングコストにおける人件費の節約に関しては大きな優位性を発揮することが出来ない。
【０００６】
本発明の目的は、チャットオペレータやチャットオペレータが使用するデータベース準備のためのコストの増大を押さえながら顧客に対してリアルタイムで応答して満足を与えることが出来る顧客対応サービスを提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するための手段として、本発明は以下の特徴を備えている。  
本発明は、顧客対応システムとして提案される。
この顧客対応システムは、ユーザ発話を送信し、その回答文を受信する第１の手段（例えば、会話装置）と、前記第１の手段から送信されたユーザ発話に対して、会話シナリオに基づいて回答文を決定し、決定した回答文及びその回答文に対応付けされた動作制御情報を前記第１の手段に送信し、前記ユーザ発話に対する回答文が前記会話シナリオから発見できない場合にそのユーザ発話に対する回答を専門家に回答させるように、ユーザ発話を送信し、これに応じた回答内容を受信し、受信した回答内容を前記第１の手段に送信し、前記ユーザ発話、回答文、回答内容を記憶した会話ログを送信し、この会話ログに基づいて生成された会話シナリオを受信して記憶する第２の手段とを有することを特徴としている。
【０００８】
本発明によれば、チャットオペレータによらずとも顧客からの問い合わせや質問などに対応できるとともに、システムが回答できない未知の質問や複雑な質問などについても対応することが可能となる。
【０００９】
上記顧客対応システムはさらに以下の特徴を有していても良い。
前記ユーザ発話を受信し、これに対する専門家の回答を受け付け、回答内容を前記第２の手段に送信する第３の手段（例えば、専門家側端末装置）と、前記第２の手段からユーザ発話及び前記第３の手段から送信された回答内容を含む会話ログを受信し、記憶する第４の手段（例えば、会話ログＤＢ）と、前記第４の手段に記憶された会話ログから、ユーザ発話及びこれに回答する回答内容に基づいた会話シナリオを生成し、生成した会話シナリオを前記第２の手段に送信する第５の手段（例えば、会話シナリオ編集装置）とをさらに有するようにしても良い。
【００１０】
かかる発明によれば、システムが回答不能な顧客の質問などに対しても専門家の知識などを生かした回答をユーザに提供できるとともに、専門家の回答内容を会話シナリオとしてフィードバックすることにより、システムが回答できない状態の発生を暫時減少させることが可能となる。
【発明の効果】
【００１１】
本発明によれば、チャットオペレータやチャットオペレータが使用するデータベース準備のためのコストの増大を押さえながら顧客に対してリアルタイムで応答して満足を与えることが出来る顧客対応サービスを提供することができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態を、図面を参照しながら説明する。  
第１の実施の形態は、予め用意された会話シナリオに基づいて、ユーザの発話などに応答して回答を出力する自動会話システム、及び会話シナリオを生成、編集する会話シナリオ編集装置として提案される。
【００１３】
［１．自動会話システム、会話シナリオ編集装置の構成例］
以下、自動会話システム、会話シナリオ編集装置の構成例について説明する。図１は、自動会話システム１の構成例を示すブロック図である。自動会話システム１は、会話装置１０と、会話装置１０に接続された会話サーバ２０と、会話サーバ２０が使用する会話シナリオを生成、編集する会話シナリオ編集装置３０で構成される。
【００１４】
会話装置１０は、ユーザが発話を入力すると、その発話内容を会話サーバ２０に送信する。会話サーバ２０は、発話内容を受け取ると、会話シナリオに基づいて発話内容に対する返事である回答とこの回答に対応した動作であって会話装置１０に実行させる動作を記述した情報である動作制御情報を決定し、回答及び動作制御情報を会話装置１０に出力する。会話シナリオ編集装置３０は、会話シナリオ４０を生成、編集し、生成済み、若しくは編集済みの会話シナリオを出力する。出力された会話シナリオ４０は会話サーバ２０に記憶される。
【００１５】
以下に、上記装置のそれぞれについて詳述する。
［１．１．会話装置］
会話装置１０は、ユーザの発話（ユーザ発話）を入力として取得し、この入力内容（以下、入力文と呼ぶ）を会話サーバ２０に送信し、会話サーバ２０から返信されてくる回答及び動作制御情報を受信し、受信内容に基づいて、回答の出力及び動作制御情報に応じた動作を実行する機能を有する。
【００１６】
会話装置１０は、演算処理装置（ＣＰＵ）、主メモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、入出力装置（Ｉ／Ｏ）、必要な場合にはハードディスク装置等の外部記憶装置を具備している情報処理装置、或いはそのような情報処理装置を含む器具、おもちゃなどであって、例えばコンピュータ、携帯電話機、いわゆるインターネット家電、又はロボットなどの装置である。会話装置１０の前記ＲＯＭ、若しくはハードディスク装置などにプログラムが記憶されており、このプログラムを主メモリ上に載せ、ＣＰＵがこれを実行することにより会話装置が実現される。また、上記プログラムは必ずしも情報処理装置内の記憶装置に記憶されていなくともよく、外部の装置（例えば、ＡＳＰ（アプリケーション・サービス・プロバイダのサーバなど））から提供され、これを主メモリに乗せる構成であってもよい。
【００１７】
図２は、会話装置１０の一構成例を示すブロック図である。会話装置１０は、入力部１１と、入力部１１に接続された会話処理部１２と、会話処理部１２に接続された動作制御部１３と、会話処理部１２及び動作制御部１３に接続された出力部１４とを有している。また、会話処理部１２は会話サーバ２０と通信可能である。
【００１８】
入力部１１は、ユーザの発話内容（入力文）を受け取り、これを電気信号など会話処理部１２が処理可能な信号に変換して渡す機能を有する。入力部１１は、例えば、キーボード、ポインティングデバイス、タッチパネル、マイクのいずれか或いはこれらの組み合わせである。
【００１９】
会話処理部１２は、入力部１１から受け取った入力文を会話サーバ２０に送り、入力文に応じた回答文及びその回答文に対応する動作制御情報を送信するよう、会話サーバ２０に要求する。また、会話処理部１２は、会話サーバ２０から回答文及びその回答文に対応する動作制御情報を受信すると、回答文を出力部１４に渡して出力させるとともに、動作制御情報を動作制御部１３に渡す。
【００２０】
動作制御部１３は、会話処理部１２から渡された動作制御情報に基づいて、指定された動作を実行する。指定された動作が出力部１４による表示の実行（例えば、指定された動作の再生）であれば、これを出力部１４に実行させる。また、指定された動作が、会話サーバ２０から取得した回答文とは別の回答文の出力（例えば、会話サーバ２０から取得した回答文が「何について話しますか？」、別の回答文が「何か言ってくださいね！」）である場合には、そのような回答文を出力部１４に出力させる。
【００２１】
出力部１４は、回答文をユーザが了知可能な態様で出力する機能を有する。回答文をどのような態様で出力するかについては、本発明において制限はない。出力部１４は、例えば、回答文を文字情報としてユーザに提供する場合には、液晶ディスプレイ装置などであり、また回答文を音声情報としてユーザに提供する場合には、人工音声生成装置及びスピーカである。
【００２２】
［１．２．会話サーバ］
会話サーバ２０は、会話シナリオに基づいて発話内容に対する返事である回答とこの回答に対応した動作であって会話装置１０に実行させる動作を記述した情報である動作制御情報を決定し、回答及び動作制御情報を会話装置１０に出力する機能を有する装置である。
【００２３】
会話サーバ２０は、演算処理装置（ＣＰＵ）、主メモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、入出力装置（Ｉ／Ｏ）、必要な場合にはハードディスク装置等の外部記憶装置を具備している情報処理装置などであって、例えばコンピュータ、ワークステーション、サーバ装置などである。会話サーバ２０の前記ＲＯＭ、若しくはハードディスク装置などにプログラムが記憶されており、このプログラムを主メモリ上に載せ、ＣＰＵがこれを実行することにより会話サーバが実現される。また、上記プログラムは必ずしも情報処理装置内の記憶装置に記憶されていなくともよく、外部の装置（例えば、ＡＳＰ（アプリケーション・サービス・プロバイダのサーバなど））から提供され、これを主メモリに乗せる構成であってもよい。
【００２４】
会話装置１０と会話サーバ２０とは、有線又は無線により接続される構成でも良く、また、ＬＡＮ，無線ＬＡＮ，インターネットなどの通信網（複数の通信網を組み合わせても良い）を介して接続されていても良い。また、会話装置１０と会話サーバ２０とは、必ずしも個別独立の装置でなくとも良く、会話装置１０と会話サーバ２０とを同一の装置により実現する構成であっても本発明は成立する。
【００２５】
図３は、会話サーバ２０の一構成例を示すブロック図である。会話サーバ２０は、会話装置１０と通信可能な回答処理部２１と、回答処理部２１に接続された意味解釈辞書部２３及び会話シナリオ記憶部２２とを有している。
【００２６】
回答処理部２１は、会話装置１０から入力文を受け取り、この入力文に応じた回答文を会話シナリオ記憶部２２に記憶されている会話シナリオに基づいて選択若しくは決定し、決定した回答文とこの回答文に対応づけられた動作制御情報を会話装置１０に送信する。また、回答処理部２１は、意味解釈辞書部２３が記憶する意味解釈辞書を参照して、入力文の同意語又は同意文を取得し、この同意語又は同意文に基づいた回答文の選択若しくは決定を行う。
【００２７】
意味解釈辞書部２３は、入力文に対応する回答文の言い換え（同意語による拡張など）をおこなうための意味解釈辞書を記憶する機能を有する。意味解釈辞書はシソーラスのような機能を有するデータベースに相当する。
【００２８】
会話シナリオ記憶部２２は、会話シナリオ編集装置３０によって生成、又は編集された会話シナリオ４０を記憶する機能を有する。会話シナリオ４０の説明については後述する。
【００２９】
［１．３．会話シナリオ編集装置］  
会話シナリオ編集装置３０は、前述の会話サーバ２０が使用する会話シナリオを新たに生成し、又は生成済みの会話シナリオを変更し、内容を追加し、又は内容の一部削除を行って修正された会話シナリオを生成する機能を有する。
【００３０】
会話シナリオ編集装置３０は、演算処理装置（ＣＰＵ）、主メモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、入出力装置（Ｉ／Ｏ）、必要な場合にはハードディスク装置等の外部記憶装置を具備している情報処理装置などであって、例えばコンピュータ、ワークステーションなどである。会話シナリオ編集装置３０の前記ＲＯＭ、若しくはハードディスク装置などにプログラムが記憶されており、このプログラムを主メモリ上に載せ、ＣＰＵがこれを実行することにより会話シナリオ編集装置３０が実現される。また、上記プログラムは必ずしも情報処理装置内の記憶装置に記憶されていなくともよく、外部の装置（例えば、ＡＳＰ（アプリケーション・サービス・プロバイダのサーバなど））から提供され、これを主メモリに乗せる構成であってもよい。
【００３１】
図４は、会話シナリオ編集装置３０の一構成例を示すブロック図である。会話シナリオ編集装置３０は、入力部３１と、入力部３１に接続されたエディタ部３２と、エディタ部３２に接続された出力部３４及び会話シナリオ保持部３３とを有している。
【００３２】
入力部３１は、ユーザの入力を受け取り、これを電気信号などエディタ部３２が処理可能な信号に変換して渡す機能を有する。入力部３１は、例えば、キーボード、ポインティングデバイス、タッチパネル、マイクのいずれか或いはこれらの組み合わせである。
【００３３】
出力部３４は、編集中又は編集完了後の会話シナリオの内容を会話シナリオ編集装置３０の使用者（オペレータ）が認識可能な態様で出力する機能を有する。出力部３４は、例えば、液晶ディスプレイ装置などである。
【００３４】
エディタ部３２は、入力部３１から入力された内容に応じて、会話シナリオとしてのデータの生成、及びその編集（追加、変更、削除）を行う機能を有する。なお、編集中の会話シナリオの内容は出力部３４に表示させることにより、オペレータが会話シナリオの内容をリアルタイムで把握できるようにしている。また、エディタ部３２は、編集が完了した会話シナリオのデータを会話シナリオ保持部３３に出力する。
【００３５】
また、エディタ部３２は、生成されている会話シナリオにおいて適正な状態遷移関係が保たれているか否かをチェックし、違反が生じている場合にはオペレータに違反が生じていること、違反が生じている入力文又は回答文を知らせるメッセージ等を生成し、出力部に表示等させる機能を有していても良い。
【００３６】
また、エディタ部３２は会話サーバ２０の意味解釈辞書部２３に相当する意味解釈辞書部をさらに有していても良く、エディタ部３２はこの意味解釈辞書部を用いて、会話シナリオにおいて重複する意味内容の入力文又は回答文が存在する場合、これらを整理したり統合したりする、或いは整理、統合をオペレータに促す機能を有していても良い。
【００３７】
会話シナリオ保持部３３は、エディタ部３２から受け取った会話シナリオのデータを、後に読み取りできる態様で記憶又は保持する機能を有する。会話シナリオ保持部３３に記憶された会話シナリオのデータは、必要に応じて、又は、所定のタイミングなどで会話サーバ２０の会話シナリオ記憶部２２に送られる。会話シナリオ保持部３３から会話シナリオ記憶部２２への会話シナリオの転送は、記憶媒体を経由した態様で行われても良いし、通信網、通信ケーブルを経由して行われるものであってもよい。
【００３８】
［１．３．１．会話シナリオについて］
ここで、会話シナリオ４０について説明する。本発明における会話シナリオは下記の特徴を有する。
【００３９】
（１）回答文を「対象」とし、ユーザ発話（入力文）を「射」とする。
この特徴を備えることにより、会話シナリオが定める会話の流れを「状態遷移図」で表現することが可能となる。本発明の会話シナリオは、後述する「その他」機能を用いることにより、全ての入力文（ユーザ発話）に対応した回答文の出力が可能となる。また、後述する「タイマー」発話によりユーザの「無言」（入力無し）に対応できる（無言を射として扱える）。
【００４０】
図５は、会話シナリオの例を示す状態遷移図である。図中、楕円枠X1，X2，X3，X4はそれぞれ回答文であり、これらは「対象」に相当する。図中、矢印近傍に表示された文は、入力文であり、これらは「射」に相当する。図中＜その他＞はX1からの射「好きです」及び「嫌いです」以外の入力文を示す。図中、＜timer＞は、ユーザが無言のまま所定期間の経過させた状態を示す。また、「＜その他＞｜＜timer＞」という表記は、＜その他＞又は＜timer＞を意味する。
【００４１】
図５に示した例では、「何か食べたい」という「射」は回答文X1である「あなたはラーメンが好きですか」である「対象」に遷移させる。回答文X1の出力後、第１の射「嫌いです」が発生した場合には、回答文X4「残念！話題を変えましょう」に遷移する。一方、回答文X1の出力後、第２の射「好きです」が発生した場合には、回答文X3「じゃ、美味しい店を紹介してあげる」に遷移する。一方、回答文X1の出力後、第１及び第２の射以外の射が発生した場合又はユーザが無言のまま一定期間が経過した場合、回答文X2「ラーメンは好き？嫌い？」に遷移する。
【００４２】
上記図５の会話シナリオをデータとして表現すると、一例として図６のような内容となる。ここで、「X1（発話Ａ）X2」は回答列であり、X1の回答状態は発話ＡによりX2の回答状態に遷移することを記述している。
【００４３】
（２）射には合成が定義できる
この特徴により、主シナリオから分岐するような発話を受け付けることができるようになるとともに、分岐しても元（主シナリオ）に戻すことができる。従って、会話シナリオの作成者は自らが思い描く会話の流れ「ストーリー」が構築でき、このストーリーに沿った会話を会話システムに行わせることができる。
【００４４】
図７は、射の合成を含む会話シナリオの例を示した状態遷移図である。図中の記号及び表記については、図５に準じる。この例の会話シナリオでは、回答文X1「あなたはラーメンが好きですか？」の出力後、第１の射「嫌いです」が発生した場合には、回答文X3「そう？ラーメンは美味しいんだけどな」に遷移する。一方、第１の射以外の射が発生した場合又はユーザが無言のまま一定期間が経過した場合、回答文X2「本当に美味しい店を紹介してあげる」に遷移する。
【００４５】
上記の回答文X3「そう？ラーメンは美味しいんだけどな」の出力後は、一つの射＜その他＞｜＜timer＞のみが規定されており、いずれの入力文（ユーザ発話）又は一定期間の経過により回答文X2「本当に美味しい店を紹介してあげる」に遷移する。
【００４６】
このような射の合成を含む会話シナリオの例を使用することを可能としているため、本発明では、相手の発話を尊重しつつ、固執したい自分の発話に導くことが可能となる。
【００４７】
なお、上記図７の会話シナリオを回答列として表現すると、図８のような内容となる。ここにX2はX2の引用である。引用されたX2の引用元はX2であり、形式的には、対象X1とX2との間に射「(嫌いです) X3 (<その他>|<timer>)」が定められていることに相当する。この射は、射「嫌いです」と射「<その他>|<timer>」の合成である。
（３）単位元が定義できる
本発明の会話シナリオでは、単位元が定義できる。「単位元」とは対象を遷移させない射をいう。単位元が定義できることにより、以下のことが可能となる。
【００４８】
（イ）  ユーザ発話に対して「強制回答」をすることができる。
図９は、強制回答を行う会話シナリオの例を示した状態遷移図である。この例では、回答文X1「私はラーメンが好きです。ラーメンこそグルメの本質」の出力時において、NULLの付いた第１の射＜その他＞が規定されており、どのような入力文（ユーザ発話）であっても、入力文を無視して「私はラーメンが好きです。ラーメンこそグルメの本質」の強制出力がなされる。一方、回答文X1「私はラーメンが好きです。ラーメンこそグルメの本質」の出力後、第２の射＜timer＞により回答文X2「本当に美味しい店を紹介してあげる」に遷移する。
【００４９】
この例では、相手の発話を無視することを「NULL」と表記している。図９に示した例では、全ての発話を無視するために<その他>にNULLを付けているが、「嫌い」だけを無視するようにすることもできる。
なお、上記図９の会話シナリオを回答列として表現すると、図１０のような内容となる。ここにX1はX1の引用である。引用されたX1は引用元のX1と同じ遷移先を有する。このような意味でX1とX1は同形であり、この場合の射「（<その他>）」はX1からX1への射であり、単位元である。
【００５０】
（ロ）ユーザ発話に対して「固執回答」をすることができる。
図１１は、ユーザ発話に対して「固執回答」をする会話シナリオの例を示す状態遷移図である。図１１の例では、回答文X1「ラーメン好き？嫌い？」の出力後、第１の射「嫌いです」が発生した場合には、回答文X3「そう？ラーメンは美味しいんだけどな」に遷移する。一方、回答文X1の出力後、第２の射「好き」が発生した場合には、回答文X2「本当に美味しい店を紹介してあげる」に遷移する。一方、回答文X1の出力後、第１及び第２の射以外の射が発生した場合又はユーザが無言のまま一定期間が経過した場合、再び回答文X1「ラーメンは好き？嫌い？」に戻る。このようにして、ユーザに「好き」か「嫌い」かの二者択一を強制的に行わせることができるようになる。
【００５１】
なお、上記図１１の会話シナリオを回答列として表現すると、図１２のような内容となる。ここにX1はX1の引用である。引用されたX1は引用元のX1と同じ遷移先を有する。このような意味でX1とX1は同形であり、この場合の射「(<その他>|<timer>)」もX1からX1への射に相当するので単位元と呼ぶ。
【００５２】
（ハ）「合成により構成された単位元」により「閉ループ回答」が構築できる。
この特徴を備えることにより、閉じられたループの中で相手の発話を促すことが可能となる。図１３は、「合成により構成された単位元」により「閉ループ回答」が構築された会話シナリオの例を示した状態遷移図である。この例では、回答文X1、X2，X3，X4によって閉ループが構築されており、この閉ループにより会話の流れをコントロールすることが可能となる。上記図１３の会話シナリオを回答列として表現すると、図１４のような内容となる。この場合にもX1からX1の射に相当する
【００５３】
(<その他>|<timer>) X2 (<その他>|<timer>) 
X3 (<その他>|<timer>) X4 (<その他>|<timer>) 
を単位元と呼ぶ。この場合の単位元は「閉ループ」を構成している。
以上で、「項目（３）単位元が定義できる」の説明を終了する。
【００５４】
（４）射の合成には結合法則が成り立つ
この特徴により、ある射に対応する回答列Sに対して、異なる２つの経路に沿う回答列S1とS2の構築が可能であり、しかもそれらが等しいものとして扱うことができる。このとき、Sをある問題に関わる回答列とすると、S1とS2は、Sに対する異なる解釈を与える回答列であり、問題解決に関わる情報を提供している。この特徴を有するが故に、本発明にかかる会話シナリオでは、ロジカルなユーザ発話に対応することができる。
【００５５】
図１５に、射の合成に結合法則が成り立つ会話シナリオの例の状態遷移図を示す。なお、上記図１５の会話シナリオを回答列として表現すると、図１６のような内容となる。ここに、X2、X4はそれぞれX2、X4の引用である。形式的に次式が成立する。
（ヒントは）X3（××です）X4（<その他>|<timer>）
＝（××です）X4（<その他>|<timer>）
＝（ヒントは）X3（<その他>|<timer>）
【００５６】
（５）可換な図式が描ける
この特徴により、任意の対象に到着するための射が定義できる。このため、シナリオにゴールが設定できるとともに、シナリオ全体の把握ができることとなる。
【００５７】
（６）その他
本発明は、「入力文を対象とし、回答文を射として扱える談話の範囲」では「検索の仕組みが全く異なるため、「入力文を射とし、回答文を対象として扱える談話の範囲」と同様の扱いはできない。本件では、前者のような談話の範囲は扱わない。
【００５８】
［１．４．会話シナリオ編集装置の位置づけ］
ここで、本発明の会話シナリオ編集装置３０の位置づけについてまとめる。
（１）対象と射とを有する会話シナリオに関しては、以下の特徴をあげることができる。
・回答文を対象、入力文を射とする（状態遷移）
・入力文を尊重しつつ、固執したい回答文に導く（文脈維持：合成）
・入力文とは関係なく、回答文を言い切る（強制回答：単位元）
・相手に対して必要な発話を言うまで繰り返し催促する（固執回答：単位元）
・閉じられたループの中で入力文を促す（閉ループ：単位元）
・問題解決に繋がるような会話を行う（問題解決：結合法則）
・ゴールに向かうような会話を行う（ゴールのある会話：可換な図式）
【００５９】
なお、回答列によっても上記の特徴を整理することができる。会話シナリオ編集装置３０は、上記の会話シナリオの特徴を回答列で表現する機能を有したものである。
上記の会話シナリオを利用することにより、会話サーバ２０は、単なる検索を行えばよい。すなわち、会話サーバは、現在の状態を、会話シナリオの対象（回答文）として把握し、利用者発話が発生した場合には、会話サーバ２０は、意味解析を行いながら最適な射（入力文）を検索し、次の状態は、検索された射（入力文）に対応する対象（回答文）とする。
【００６０】
なお、上記の会話シナリオは状態遷移図やそれに基づいたデータ（図６，８，１０等）として表現するだけでなく、図１７に示すような、アウトラインエディタのようなＧＵＩを用いて生成、編集されるようにしてもかまわない。
【００６１】
［２．会話シナリオ生成装置の動作例］
次に、上記会話シナリオ編集装置３０の動作例について説明する。
本実施の形態にかかる会話シナリオ編集装置３０は、複数の異なる主題（会話のテーマ）についてユーザとの会話を成立させることが出来る。図１８は、会話シナリオ保持部３３及び会話シナリオ記憶部２２（以下、単に会話シナリオ保持部３３と略す）が記憶する会話シナリオのデータ構成例を示す図である。
【００６２】
会話シナリオ保持部３３は、談話の圏又は主題（会話テーマ）２０１に対応するドメイン２００ごとに個別の会話シナリオデータを持つことが出来る。例えば、「天候」ドメインと「コーヒー豆」ドメインそれぞれに関する会話シナリオデータを有することが出来、ユーザが天候に関する発話をした場合には、会話サーバ２０、より詳しくは回答処理部２１は、「天候」ドメインである会話シナリオデータを優先して入力文（ユーザ発話ともいう）に対応する回答文（システム発話ともいう）を探索し、ユーザ発話に応答するシステム発話を出力させる。一方、ユーザが「コーヒー豆」に関する発話をした場合には、回答処理部２１は、「コーヒー豆」ドメインである会話シナリオデータを優先してユーザ発話に対応するシステム発話を探索し、ユーザ発話に応答するシステム発話を出力させる。
【００６３】
各ドメイン２００は、ユーザ発話文２１０とユーザ発話文に対する自動会話システムの回答として用意されたシステム発話文２２０を有している。図１８に示した例では、ユーザ発話分２１０−１と、これに関連づけされたシステム発話２２０−１が記録されているともに、このシステム発話２２０−１に応答してユーザが発話すると想定されるユーザ発話文２１０−２が記録され、このユーザ発話文２１０−２に対する自動会話システムの回答として用意されたシステム発話文２２０―２が記録されている。
【００６４】
例えば、上記の会話シナリオは以下のようなユーザとシステムの会話となる。
ユーザ発話文２１０−１：「いい天気ですね」
システム発話文２２０―１：「いい天気は好きですか？」
ユーザ発話文２１０−１：「はい、好きですよ」
システム発話文２２０―１：「雨の日は嫌いですか？」
【００６５】
図１８に示した会話シナリオは最も単純な形態のものを示した。本自動会話システムが扱える会話シナリオでは、同一のシステム発話に対して、ユーザが異なる反応をしてユーザ発話を返した場合に対応できるよう、一つのシステム発話文に対して複数のユーザ発話文を用意することも可能である。
【００６６】
会話シナリオ編集装置３０は、会話シナリオ保持部３３に格納させる新たなドメイン２００と、そのドメイン２００ユーザ発話文２１０、システム発話文２２０からなる会話シナリオデータを生成し、会話シナリオ保持部３３に記憶させる機能を有する。
【００６７】
［３．会話シナリオの入力例］
次に、会話シナリオの入力例について説明する。図１９から図２３は、あるドメイン２００について会話シナリオを入力した場合の入力画面の遷移の一例を示した図である。
【００６８】
図１９は、会話シナリオ編集装置３０によって生成された入力インターフェイス画面の一例を示す。ここでは、ドメイン２００が「コーヒー豆」についてのものであるとして説明する。
【００６９】
会話シナリオ編集装置３０、より詳しくはエディタ部３２は、入力インターフェイスとなるウインドウ３００を生成し、出力部３４に表示させる。ウインドウ３００には表示領域３０１が設けられており、ユーザが入力部３１を操作することによって、ユーザ発話文及びシステム発話文がここに入力される。図１９の例では、ドメイン名３０２が表示されており、このドメイン２００に格納される会話シナリオの入力を待ち受けている状態である。
【００７０】
図２０は、このドメイン２００に格納される会話シナリオの開始であるユーザ発話文４０１が入力された状態の画面例である。
【００７１】
実際に自動会話が実行される場合には、会話サーバ２０の回答処理部２１は、ユーザ発話がここで記述されているユーザ発話文４０１「コーヒー豆について」と一致するか、或いはこれと同一視可能な発話内容である場合には、ユーザ発話に応答するシステム発話文を抽出するドメイン２００としてドメイン名３０２を「コーヒー豆」とするドメイン２００を会話シナリオ記憶部２２から選択し、このドメイン２００を優先してシステム発話文を選択することになる。
【００７２】
会話シナリオの入力者であるユーザは、上記ユーザ発話文４０１に対する回答であるシステム発話文の入力を行う。図２１は、ユーザ発話文４０１「コーヒー豆について」についてのシステム発話文５０１がユーザにより入力された状態のウインドウ３００の表示例を示す。この例では、「コーヒー豆について」というユーザ発話文４０１に対して、『味の特徴についてお答えします。「モカ」、「ブルーマウンテン」、「キリマンジャロ」のうち、どれが知りたいですか？』という問いかけであるシナリオ回答文５０１を自動会話システムが発する会話シナリオが記述されたものとする。
【００７３】
次に、会話シナリオの入力者であるユーザは、上記シナリオ回答文５０１に対して、予想されるユーザ発話文を入力する。図２２は、前記のシナリオ回答文５０１に対して、予想されるユーザ発話文６０１が入力された状態のウインドウ３００の表示例を示す。この例では、『味の特徴についてお答えします。「モカ」、「ブルーマウンテン」、「キリマンジャロ」のうち、どれがしりたいですか？』というシステム発話文５０１に対して、ユーザが「ブルーマウンテン」という回答をすると予想して、ユーザ発話文６０１「ブルーマウンテン」がユーザにより入力されたものとする。
【００７４】
次に、会話シナリオの入力者であるユーザは、上記ユーザ発話文６０１に対するシステム発話文を入力する。図２３は、前記のユーザ発話文６０１に対するシステム発話文７０１が入力された状態のウインドウ３００の表示例を示す。会話シナリオの入力者は、ユーザ発話文６０１の回答として、システム発話文７０１を入力する。
このような会話シナリオにより、自動会話システムはユーザがコーヒー豆のブルーマウンテンについて知りたい場合に、その回答を返すことが出来るようになる。なお、これ以降も会話シナリオの入力者は、ユーザと自動会話システムの会話が続くように、ユーザ発話文、システム発話文の入力を継続することが出来る。
【００７５】
上記のようにして入力された会話シナリオ（ユーザ発話文とシステム発話文の集合）は、エディタ部３２により会話シナリオ保持部３３へ書き込まれ、記憶される。この会話シナリオは会話サーバ２０の会話シナリオ記憶部２２に移される。なお、会話シナリオ記憶部２２に移される場合に、会話サーバ２０に適したものとするように会話シナリオの変換、移植を行うようにしてもよい。
【００７６】
会話サーバ２０の回答処理部２１は会話シナリオ記憶部２２に記憶された新たな会話シナリオをも参照して、ユーザ発話に対するシナリオ回答を出力できるようになる。
【００７７】
［４．変形例］
本実施の形態は、以下のように変形されても成立する。
（１）会話シナリオ編集装置の変形例
図２４に変形例にかかわる会話シナリオ編集装置３０Ｘの機能ブロック図である。会話シナリオ編集装置３０Ｘは、基本的に前述した会話シナリオ編集装置３０と同様の構成を有しており、会話シナリオ保持部３３に接続された動的知識生成部３５を有している点が異なっている。なお、同一の構成要素については同一の参照符号を付し、それらの説明については省略する。
【００７８】
動的知識生成部３５は、会話シナリオ保持部３３に記憶される会話シナリオ４０にもとづいて、動的知識４０Ｘを生成する機能を有する。動的知識４０Ｘは、回答列である会話シナリオ４０から、会話サーバ２０がより高速且つ高効率に射である入力文および、その対象である回答文を検索できるように再構成されたデータである。
【００７９】
かかる変形例によれば、会話サーバ２０の処理負荷を低減させ、高速な回答文の返信を可能とすることができる。
【００８０】
［５．会話サーバの構成の別の例］
本発明にかかる会話サーバ２０、回答処理部２１は下記のような構成を採用しても、本発明を実現可能である。、以下、会話サーバ２０，より詳しくは回答処理部２１の構成例について述べる。図２５は、回答処理部２１の拡大ブロック図であって、会話制御部３００及び文解析部４００の具体的構成例を示すブロック図である。回答処理部２１は、会話制御部３００と、文解析部４００と、会話データベース５００を有している。会話データベース５００は、会話シナリオ４０又は、動的知識４０Ｘを記憶する機能を有する。
【００８１】
［５．１．文解析部］
次に、図２５を参照しながら文解析部４００の構成例について説明する。
文解析部４００は、入力部１００又は音声認識部２００で特定された文字列を解析するものである。この文解析部４００は、本実施の形態では、図２５に示すように、文字列特定部４１０と、形態素抽出部４２０と、形態素データベース４３０と、入力種類判定部４４０と、発話種類データベース４５０とを有している。文字列特定部４１０は、入力部１００及び音声認識部２００で特定された一連の文字列を一文節毎に区切るものである。この一文節とは、文法の意味を崩さない程度に文字列をできるだけ細かく区切った一区切り文を意味する。具体的に、文字列特定部４１０は、一連の文字列の中に、ある一定以上の時間間隔があるときは、その部分で文字列を区切る。文字列特定部４１０は、その区切った各文字列を形態素抽出部４２０及び入力種類判定部４４０に出力する。尚、以下で説明する「文字列」は、一文節毎の文字列を意味するものとする。
【００８２】
［５．１．１．形態素抽出部］
形態素抽出部４２０は、文字列特定部４１０で区切られた一文節の文字列に基づいて、その一文節の文字列の中から、文字列の最小単位を構成する各形態素を第一形態素情報として抽出するものである。ここで、形態素とは、本実施の形態では、文字列に現された語構成の最小単位を意味するものとする。この語構成の最小単位としては、例えば、名詞、形容詞、動詞などの品詞が挙げられる。
【００８３】
各形態素は、図２６に示すように、本実施の形態ではm１、m２、m３…、と表現することができる。図２６は、文字列とこの文字列から抽出される形態素との関係を示す図である。図２６に示すように、文字列特定部４１０から文字列が入力された形態素抽出部４２０は、入力された文字列と、形態素データベース４３０に予め格納されている形態素群（この形態素群は、それぞれの品詞分類に属する各形態素についてその形態素の見出し語・読み・品詞・活用形などを記述した形態素辞書として用意されている）とを照合する。その照合をした形態素抽出部４２０は、その文字列の中から、予め記憶された形態素群のいずれかと一致する各形態素（m１、m２、…）を抽出する。この抽出された各形態素を除いた要素（n１、n２、n３…）は、例えば助動詞等が挙げられる。
【００８４】
この形態素抽出部４２０は、抽出した各形態素を第一形態素情報として話題特定情報検索蔀３２０に出力する。なお、第一形態素情報は構造化されている必要はない。ここで「構造化」とは、文字列の中に含まれる形態素を品詞等に基づいて分類し配列することをいい、たとえば発話文である文字列を、「主語＋目的語＋述語」などの様に、所定の順番で形態素を配列してなるデータに変換することを言う。もちろん、構造化した第一形態素情報を用いたとしても、それが本実施の形態を実現をさまたげることはない。
【００８５】
［５．１．２．入力種類判定部］
入力種類判定部４４０は、文字列特定部４１０で特定された文字列に基づいて、発話内容の種類（発話種類）を判定するものである。この発話種類は、発話内容の種類を特定する情報であって、本実施の形態では、例えば図２７に示す「発話文のタイプ」を意味する。図２７は、「発話文のタイプ」と、その発話文のタイプを表す二文字のアルファベット、及びその発話文のタイプに該当する発話文の例を示す図である。
【００８６】
ここで、「発話文のタイプ」は、本実施の形態では、図２７に示すように、陳述文（D ; Declaration）、時間文（T ; Time）、場所文（L ; Location）、反発文（N ; Negation）などから構成される。この各タイプから構成される文は、肯定文又は質問文で構成される。「陳述文」とは、利用者の意見又は考えを示す文を意味するものである。この陳述文は本実施の形態では、図２７に示すように、例えば"私は佐藤が好きです"などの文が挙げられる。「場所文」とは、場所的な概念を伴う文を意味するものである。「時間文」とは、時間的な概念を伴う文を意味するものである。「反発文」とは、陳述文を否定するときの文を意味する。「発話文のタイプ」についての例文は図２７に示す通りである。
【００８７】
入力種類判定部４４０が「発話文のタイプ」を判定するには、入力種類判定部４４０は、本実施の形態では、図２８に示すように、陳述文であることを判定するための定義表現辞書、反発文であることを判定するための反発表現辞書等を用いる。具体的に、文字列特定部４１０から文字列が入力された入力種類判定部４４０は、入力された文字列に基づいて、その文字列と発話種類データベース４５０に格納されている各辞書とを照合する。その照合をした入力種類判定部４４０は、その文字列の中から、各辞書に関係する要素を抽出する。
【００８８】
この入力種類判定部４４０は、抽出した要素に基づいて、「発話文のタイプ」を判定する。例えば、入力種類判定部４４０は、ある事象について陳述している要素が文字列の中に含まれる場合には、その要素が含まれている文字列を陳述文として判定する。入力種類判定部４４０は、判定した「発話文のタイプ」を回答取得部３８０に出力する。
【００８９】
［５．１．３．会話データベース］
次に、会話データベース５００が記憶するデータのデータ構成例について図２９を参照しながら説明する。図２９は、会話データベース５００が記憶するデータの構成例を示す概念図である。
【００９０】
会話データベース５００は、図２９に示すように、話題を特定するための話題特定情報８１０を予め複数記憶している。又、それぞれの話題特定情報８１０は、他の話題特定情報８１０と関連づけられていてもよく、例えば、図２９に示す例では、話題特定情報Ｃ（８１０）が特定されると、この話題特定情報Ｃ（８１０）に関連づけられている他の話題特定情報Ａ（８１０）、話題特定情報Ｂ（８１０），話題特定情報Ｄ（８１０）が定まるように記憶されている。
【００９１】
具体的には、話題特定情報８１０は、本実施の形態では、利用者から入力されると予想される入力内容、又は利用者への回答文に関連性のある「キーワード」を意味する。
【００９２】
話題特定情報８１０には、一又は複数の話題タイトル８２０が対応付けられて記憶されている。話題タイトル８２０は、一つの文字、複数の文字列又はこれらの組み合わせからなる形態素により構成されている。各話題タイトル８２０には、利用者への回答文８３０が対応付けられて記憶されている。また、回答文８３０の種類を示す複数の回答種類は、回答文８３０に対応付けられている。
【００９３】
次に、ある話題特定情報８１０と他の話題特定情報８１０との関連づけについて説明する。図３０は、ある話題特定情報８１０Ａと他の話題特定情報８１０Ｂ、８１０Ｃ１〜８１０Ｃ４、８１０Ｄ１〜８１０Ｄ３…との関連付けを示す図である。なお、以下の説明において「関連づけされて記憶される」とは、ある情報Ｘを読み取るとその情報Ｘに関連づけられている情報Ｙを読み取りできることをいい、例えば、情報Ｘのデータの中に情報Ｙを読み出すための情報（例えば、情報Ｙの格納先アドレスを示すポインタ、情報Ｙの格納先物理メモリアドレス、論理アドレスなど）が格納されている状態を、「情報Ｙが情報Ｘに『関連づけされて記憶され』ている」というものとする。
【００９４】
図３０に示す例では、話題特定情報は他の話題特定情報との間で上位概念、下位概念、同義語、対義語（本図の例では省略）が関連づけされて記憶させることができる。本図に示す例では、話題特定情報８１０Ａ（＝「映画」）に対する上位概念の話題特定情報として話題特定情報８１０Ｂ（＝「娯楽」）が話題特定情報８１０Ａに関連づけされて記憶されており、たとえば話題特定情報（「映画」）に対して上の階層に記憶される。
【００９５】
また、話題特定情報８１０Ａ（＝「映画」）に対する下位概念の話題特定情報８１０Ｃ１（＝「監督」）、話題特定情報８１０Ｃ２（＝「主演」）、話題特定情報８１０Ｃ３（＝「配給会社」）、話題特定情報８１０Ｃ４（＝「上映時間」）、および話題特定情報８１０Ｄ１（＝「七人の侍」）、話題特定情報８１０Ｄ２（＝「乱」）、話題特定情報８１０Ｄ３（＝「用心棒」）、…、が話題特定情報８１０Ａに関連づけされて記憶されている。
【００９６】
又、話題特定情報８１０Ａには、同義語９００が関連付けられている。この例では、話題特定情報８１０Ａであるキーワード「映画」の同義語として「作品」、「内容」、「シネマ」が記憶されている様子を示している。このような同意語を定めることにより、発話にはキーワード「映画」は含まれていないが「作品」、「内容」、「シネマ」が発話文等に含まれている場合に、話題特定情報８１０Ａが発話文等に含まれているものとして取り扱うことを可能とする。
【００９７】
回答処理部２１は、会話データベース５００の記憶内容を参照することにより、ある話題特定情報８１０を特定するとその話題特定情報８１０に関連づけられて記憶されている他の話題特定情報８１０及びその話題特定情報８１０の話題タイトル８２０、回答文８３０などを高速で検索・抽出することが可能となる。
【００９８】
次に、話題タイトル８２０（「第二形態素情報」ともいう）のデータ構成例について、図３１を参照しながら説明する。図３１は、話題タイトル８２０のデータ構成例を示す図である。
【００９９】
話題特定情報８１０Ｄ１、８１０Ｄ２、８１０Ｄ３、…はそれぞれ複数の異なる話題タイトル８２０１、８２０２、…、話題タイトル８２０３、８２０４、…、話題タイトル８２０５、８２０６、…を有している。本実施の形態では、図３１に示すように、それぞれの話題タイトル８２０は、第一特定情報１００１と、第二特定情報１００２と、第三特定情報１００３によって構成される情報である。ここで、第一特定情報１００１は、本実施の形態では、話題を構成する主要な形態素を意味するものである。第一特定情報１００１の例としては、例えば文を構成する主語が挙げられる。また、第二特定情報１００２は、本実施の形態では、第一特定情報１００１と密接な関連性を有する形態素を意味するものである。この第二特定情報１００２は、例えば目的語が挙げられる。更に、第三特定情報１００３は、本実施の形態では、ある対象についての動きを示す形態素、又は名詞等を修飾する形態素を意味するものである。この第三特定情報１００３は、例えば動詞、副詞又は形容詞が挙げられる。なお、第一特定情報１００１、第二特定情報１００２、第三特定情報１００３それぞれの意味は上述の内容に限定される必要はなく、別の意味（別の品詞）を第一特定情報１００１、第二特定情報１００２、第三特定情報１００３に与えても、これらから文の内容を把握可能な限り、本実施の形態は成立する。
【０１００】
例えば、主語が「七人の侍」、形容詞が「面白い」である場合には、図３１に示すように、話題タイトル（第二形態素情報）８２０２は、第一特定情報１００１である形態素「七人の侍」と、第三特定情報１００３である形態素「面白い」とから構成されることになる。なお、この話題タイトル８２０２には第二特定情報１００２に該当する形態素は含まれておらず、該当する形態素がないことを示すための記号「＊」が第二特定情報１００２として格納されている。
【０１０１】
なお、この話題タイトル８２０２（七人の侍；＊；面白い）は、「七人の侍は面白い」の意味を有する。この話題タイトル８２０を構成する括弧内は、以下では左から第一特定情報１００１、第二特定情報１００２、第三特定情報１００３の順番となっている。また、話題タイトル８２０のうち、第一から第三特定情報に含まれる形態素がない場合には、その部分については、「＊」を示すことにする。
【０１０２】
なお、上記話題タイトル８２０を構成する特定情報は、上記のような第一から第三特定情報のように三つに限定されるものではなく、例えば更に他の特定情報（第四特定情報、およびそれ以上）を有するようにしてもよい。
【０１０３】
次に、回答文８３０について図３２を参照して説明する。回答文８３０は、図３２に示すように、本実施の形態では、利用者から発話された発話文のタイプに対応した回答をするために、陳述（D ; Declaration）、時間（T ; Time）、場所（L ; Location）、否定（N ; Negation）などのタイプ（回答種類）に分類されて、各タイプごとに用意されている。また肯定文は「Ａ」とし、質問文は「Ｑ」とする。
【０１０４】
話題特定情報８１０のデータ構成例について、図３３を参照して説明する。図３３は、ある話題特定情報８１０「佐藤」に対応付けされた話題タイトル８２０，回答文８３０の具体例を示す。  
【０１０５】
話題特定情報８１０「佐藤」には、複数の話題タイトル（８２０）１−１、１−２、…が対応付けされている。それぞれの話題タイトル（８２０）１−１，１−２，…には回答文（８３０）１−１，１−２、…が対応付けされて記憶されている。回答文８３０は、回答種類８４０ごとに用意されている。
【０１０６】
話題タイトル（８２０）１−１が(佐藤；＊；好き){これは、「佐藤が好きです」に含まれる形態素を抽出したもの}である場合には、その話題タイトル（８２０）１-１に対応する回答文（８３０）１−１は、(DA；陳述肯定文「私も佐藤が好きです」)、(TA；時間肯定文「私は打席に立ったときの佐藤が好きです」)などが挙げられる。後述する回答取得部３８０は、入力種類判定部４４０の出力を参照しながらその話題タイトル８２０に対応付けられた一の回答文８３０を取得する。
【０１０７】
各回答文には、当該回答文に対応するように、ユーザ発話に対して優先的に出力される回答文（「次回答文」とよぶ）を指定する情報である次プラン指定情報８４０が定められている。次プラン指定情報８４０は、次回答文を特定できる情報であれば、どのような情報であってもよく、たとえば、会話データベース５００に格納されているすべての回答文から少なくとも一つの回答文を特定できる回答文ＩＤ、などである。
【０１０８】
なお、本実施の形態においては、次プラン指定情報８４０は、回答文単位で次回答文を特定する情報（例えば、回答文ＩＤ）として説明するが、次プラン指定情報８４０は、話題タイトル８２０、話題特定情報８１０単位で、次回答文（この場合には、複数の回答文が次回答文として指定されるので、次回答文群とよぶ。ただし、実際に回答文として出力されるのは、この回答文群に含まれるいずれかの回答文となる）を特定する情報であってもかまわない。たとえば、話題タイトルＩＤ、話題特定情報ＩＤを時プラン指定情報として使用しても本実施の形態は成立する。
【０１０９】
［５．１．４．会話制御部］
ここで図２５に戻り、会話制御部３００の構成例を説明する。  
会話制御部３００は、回答処理部２１内の各構成要素（音声認識部２００，文解析部４００、会話データベース５００，出力部６００，音声認識辞書記憶部７００）間のデータの受け渡しを制御するとともに、ユーザ発話に応答する回答文の決定、出力を行う機能を有する。
【０１１０】
会話制御部３００は、本実施の形態では、図２５に示すように、管理部３１０と、プラン会話処理部３２０と，談話空間会話制御処理部３３０と、CA会話処理部３４０とを有している。以下これらの構成要素について説明する。  
【０１１１】
［５．１．４．１．管理部］
管理部３１０は談話履歴を記憶し、且つ必要に応じて更新する機能を有する。管理部３１０は話題特定情報検索部３５０と、省略文補完部３６０と、話題検索部３７０と、回答取得部３８０からの要求に応じて、記憶している談話履歴の全部又は一部をこれら各部に渡す機能を有する。
【０１１２】
［５．１．４．２．プラン会話処理部］
プラン会話処理部３２０は、プランを実行し、プランに従った会話をユーザとの間で成立させる機能を有する。「プラン」とは、予め定めた順番に従って予め定めた回答をユーザに提供することをいう。以下、プラン会話処理部３２０について説明する。
【０１１３】
プラン会話処理部３２０は、ユーザ発話に応じて、予め定めた順番に従って予め定めた回答を出力する機能を有する。
【０１１４】
図３４は、プランを説明するための概念図である。図３４に示すように、プラン空間１４０１には複数のプラン１、プラン２，プラン３、プラン４など様々なプラン１４０２があらかじめ準備されている。プラン空間１４０１とは、会話データベース５００に格納された複数のプラン１４０２の集合をいう。回答処理部２１は、装置起動時若しくは会話開始時にあらかじめ開始用に定められたプランを選択し、若しくは各ユーザ発話の内容に応じて、プラン空間１４０１の中から適宜いずれかのプラン１４０２を選択し、選択したプラン１４０２を用いてユーザ発話に対する回答文の出力を行う。
【０１１５】
図３５は、プラン１４０２の構成例を示す図である。プラン１４０２は、回答文１５０１と、これに関連づけられた次プラン指定情報１５０２を有している。次プラン指定情報１５０２は、当該プラン１４０２に含まれる回答文１５０１の次に、ユーザに出力する予定の回答文（次候補回答文と呼ぶ）を含むプラン１４０２を特定する情報である。この例では、プラン１は、プラン１実行時に回答処理部２１が出力する回答文Ａ（１５０１）と、この回答文Ａ（１５０１）に関連づけられた次プラン指定情報１５０２とを有している。次プラン指定情報１５０２は、回答文Ａ（１５０１）についての次候補回答文である回答文Ｂ（１５０１）を有するプラン１４０２を特定する情報「ＩＤ：００２」である。同様に、回答文Ｂ（１５０１）についても、次プラン指定情報１５０２が定められており、回答文Ｂ（１５０１）が出力された場合に、次候補回答文を含むプラン２（１４０２）が指定される。このように、プラン１４０２は次プラン指定情報１５０２により連鎖的につながり、一連の連続した内容をユーザに出力するというプラン会話を実現する。すなわち、ユーザに伝えたい内容（説明文、案内文、アンケート、など）を複数の回答文に分割し、かつ各回答文の順番を予め定めてプランとして準備して置くことにより、ユーザの発話に応じてこれら回答文を順番にユーザに提供することが可能となる。なお、次プラン指定情報１５０２によって指定されたプラン１４０２に含まれる回答文１５０１は、直前の回答文の出力に応答するユーザ発話があれば、必ずしも直ちに出力される必要はなく、ユーザと回答処理部２１との間で、当該プラントは別の話題についての会話を挟んだ後に、次プラン指定情報１５０２によって指定されたプラン１４０２に含まれる回答文１５０１が出力されることもあり得る。
【０１１６】
なお、図３５に示す回答文１５０１は、図３３に示す回答文８３０の中のいずれか一の回答文文字列に対応し、また図３５に示す次プラン指定情報１５０２は、図３３に示す次プラン指定情報８４０に対応している。
【０１１７】
なお、プラン１４０２のつながりは、図３５に示すような一次元的配列に限られるものではない。図３６は、図３５とは別のつながり方を有するプラン１４０２の例を示す図である。図３６に示す例では、プラン１（１４０２）は次候補回答文となる２つの回答文１５０１，すなわちプラン１４０２を指定できるよう、２つの次プラン指定情報１５０２を有している。ある回答文Ａ（１５０１）を出力した場合の次候補回答文を有するプラン１４０２として、回答文Ｂ（１５０１）を有するプラン２（１４０２）、及び回答文Ｃ（１５０１）を有するプラン３（１４０２）の２つのプラン１４０２が定まるよう、次プラン指定情報１５０２が２つ設けられる。なお、回答文Ｂ、回答文Ｃは選択的・択一的であり、一方が出力された場合は他方は出力されず、当該プラン１（１４０２）は終了する。このように、プラン１４０２のつながりは一次元的順列の形態に限定されるものではなく、樹形図的な連結、網的な連結であってもかまわない。
【０１１８】
なお、各プランがいくつの次候補回答文を有するかは限定されるものではない。また、話の終了となるプラン１４０２については、次プラン指定情報１５０２が存在しないこともあり得る。
【０１１９】
図３７に、ある一連のプラン１４０２の具体例を示す。この一連のプラン１４０２１〜１４０２４は、危機管理に関する情報をユーザに知らせるための４つの回答文１５０１１〜１５０１４に対応している。４つの回答文１５０１１〜１５０１４は全部で一つのまとまりのある話（説明文章）を構成する。各プラン１４０２１〜１４０２４はそれぞれ「１０００−０１」「１０００−０２」「１０００−０３」「１０００−０４」というＩＤデータ１７０２１〜１７０２４を有している。なお、ＩＤデータ中のハイフン以下の番号は、出力の順番を示す情報である。また、各プラン１４０２１〜１４０２４はそれぞれ次プラン指定情報１５０２１〜１５０２４を有している。次プラン指定情報１５０２４の内容は、「１０００−０Ｆ」というデータであるが、このハイフン以下の番号「０Ｆ」は、次に出力する予定のプランは存在せず、当該回答文が一連の話（説明文章）の終わりであることを示す情報である。
【０１２０】
この例では、ユーザ発話が「大地震が発生したときの危機管理を教えて」である場合に、プラン会話処理部３２０がこの一連のプランを実行開始する。すなわち、ユーザ発話「大地震が発生したときの危機管理を教えて」をプラン会話処理部３２０が受け付けると、プラン会話処理部３２０はプラン空間１４０１を検索して、ユーザ発話「大地震が発生したときの危機管理を教えて」に対応する回答文１５０１１を有するプラン１４０２があるかどうかを調べる。この例では、「大地震が発生したときの危機管理を教えて」に対応するユーザ発話文字列１７０１１が、プラン１４０２１に対応するものとする。
【０１２１】
プラン会話処理部３２０はプラン１４０２１を発見すると、そのプラン１４０２１に含まれる回答文１５０１１を取得し、この回答文１５０１１をユーザ発話に対する回答として出力するとともに、次プラン指定情報１５０２１により次候補回答文を特定する。
【０１２２】
つぎに、回答文１５０１１の出力後に入力部１００や音声認識部２００などを介してユーザ発話を受け付けると、プラン会話処理部３２０は、プラン１４０２２の実行を行う。すなわち、プラン会話処理部３２０は、次プラン指定情報１５０２１により指定されたプラン１４０２２の実行、すなわち２番目の回答文１５０１２を出力するか否かを判定する。具体的には、プラン会話処理部３２０は当該回答文１５０１２に対応づけられたユーザ発話文字列（用例文ともいう）１７０１２、あるいは話題タイトル８２０（図３７において図略）と、受け付けたユーザ発話とを比較し、これらが一致するか否かを判定する。一致する場合には、２番目の回答文１５０１２を出力する。また、２番目の回答文１５０１２を含むプラン１４０２２には、次プラン指定情報１５０２２が記述されているので、次候補回答文が特定される。
【０１２３】
同様に、これ以降継続して成されるユーザ発話に応じて、プラン会話処理部３２０はプラン１４０２３、プラン１４０２４に順に移行して、３番目の回答文１５０１３、４番目の回答文１５０１３の出力を行うことができる。なお、４番目の回答文１５０１４は最終回答文であり、４番目の回答文１５０１４の出力が完了すると、プラン会話処理部３２０はプラン実行を終了する。
【０１２４】
このように、プラン１４０２１〜１４０２４を次々と実行することにより、あらかじめ用意した会話内容を定めた順番通りにユーザに提供することが可能となる。
【０１２５】
［５．１．４．３．談話空間会話制御処理部］
図２５に戻り、会話制御部３００の構成例の説明を続ける。  
談話空間会話制御処理部３３０は、話題特定情報検索部３５０と、省略文補完部３６０と、話題検索部３７０と、回答取得部３８０とを有している。前記管理部３１０は、会話制御部３００の全体を制御するものである。
【０１２６】
「談話履歴」とは、ユーザと回答処理部２１間の会話の話題や主題を特定する情報であって、談話履歴は後述する「着目話題特定情報」「着目話題タイトル」「利用者入力文話題特定情報」「回答文話題特定情報」の少なくともいずれか一つを含む情報である。また、談話履歴に含まれる「着目話題特定情報」「着目話題タイトル」「回答文話題特定情報」は直前の会話によって定められたものに限定されず、過去の所定期間の間に着目話題特定情報」「着目話題タイトル」「回答文話題特定情報」となったもの、若しくはそれらの累積的記録であってもよい。
以下、談話空間会話制御処理部３３０を構成するこれら各部について説明する。  
【０１２７】
［５．１．４．３．１．話題特定情報検索部］
話題特定情報検索部３５０は、形態素抽出部４２０で抽出された第一形態素情報と各話題特定情報とを照合し、各話題特定情報の中から、第一形態素情報を構成する形態素と一致する話題特定情報を検索するものである。具体的に、話題特定情報検索部３５０は、形態素抽出部４２０から入力された第一形態素情報が「佐藤」及び「好き」の二つの形態素で構成される場合には、入力された第一形態素情報と話題特定情報群とを照合する。
【０１２８】
この照合をした話題特定情報検索部３２０は、着目話題タイトル８２０focus（前回までに検索された話題タイトル、他の話題タイトルと区別するため８２０focusと表記する）に第一形態素情報を構成する形態素（例えば「佐藤」）が含まれているときは、その着目話題タイトル８２０focusを回答取得部３８０に出力する。一方、着目話題タイトル８２０focusに第一形態素情報を構成する形態素が含まれていないときは、話題特定情報検索部３５０は、第一形態素情報に基づいて利用者入力文話題特定情報を決定し、入力された第一形態素情報及び利用者入力文話題特定情報を省略文補完部３６０に出力する。なお、「利用者入力文話題特定情報」は、第一形態素情報に含まれる形態素の内、利用者が話題としている内容に該当する形態素に相当する話題特定情報、若しくは第一形態素情報に含まれる形態素の内、利用者が話題としている内容に該当する可能性がある形態素に相当する話題特定情報をいう。
【０１２９】
［５．１．４．３．２．省略文補完部］
省略文補完部３６０は、前記第一形態素情報を、前回までに検索された話題特定情報８１０（以下、「着目話題特定情報」と呼ぶ）及び前回の回答文に含まれる話題特定情報８１０（以下、「回答文話題特定情報」と呼ぶ）を利用して、補完することにより複数種類の補完された第一形態素情報を生成する。例えばユーザ発話が「好きだ」という文であった場合、省略文補完部３６０は、着目話題特定情報「佐藤」を、第一形態素情報「好き」に含めて、補完された第一形態素情報「佐藤、好き」を生成する。
【０１３０】
すなわち、第一形態素情報を「Ｗ」、着目話題特定情報や回答文話題特定情報の集合を「Ｄ」とすると、省略文補完部３６０は、第一形態素情報「Ｗ」に集合「Ｄ」の要素を含めて、補完された第一形態素情報を生成する。
【０１３１】
これにより、第一形態素情報を用いて構成される文が、省略文であって日本語として明解でない場合などにおいて、省略文補完部３６０は、集合「Ｄ」を用いて、その集合「Ｄ」の要素(例えば、"佐藤")を第一形態素情報「Ｗ」に含めることができる。この結果、省略文補完部３６０は、第一形態素情報「好き」を補完された第一形態素情報「佐藤、好き」にすることができる。なお、補完された第一形態素情報「佐藤、好き」は、「佐藤が好きだ」というユーザ発話に対応する。
【０１３２】
すなわち、省略文補完部３６０は、利用者の発話内容が省略文である場合などであっても、集合「Ｄ」を用いて省略文を補完することができる。この結果、省略文補完部３６０は、第一形態素情報から構成される文が省略文であっても、その文が適正な日本語となるようにすることができる。
【０１３３】
また、省略文補完部３６０が、前記集合「Ｄ」に基づいて、補完後の第一形態素情報に一致する話題タイトル８２０を検索する。補完後の第一形態素情報に一致する話題タイトル８２０を発見した場合は、省略文補完部３６０はこの話題タイトル８２０を回答取得部３８０に出力する。回答取得部３８０は、省略文補完部３６０で検索された適切な話題タイトル８２０に基づいて、利用者の発話内容に最も適した回答文８３０を出力することができる。
【０１３４】
尚、省略文補完部３６０は、集合「Ｄ」の要素を第一形態素情報に含めるだけに限定されるものではない。この省略文補完部３６０は、着目話題タイトルに基づいて、その話題タイトルを構成する第一特定情報、第二特定情報又は第三特定情報のいずれかに含まれる形態素を、抽出された第一形態素情報に含めても良い。
【０１３５】
［５．１．４．３．３．話題検索部］
話題検索部３７０は、省略文補完部３６０で話題タイトル８１０が決まらなかったとき、第一形態素情報と、利用者入力文話題特定情報に対応する各話題タイトル８１０とを照合し、各話題タイトル８１０の中から、第一形態素情報に最も適する話題タイトル８１０を検索するものである。  
【０１３６】
具体的に、省略文補完部３６０から検索命令信号が入力された話題検索部３７０は、入力された検索命令信号に含まれる利用者入力文話題特定情報及び第一形態素情報に基づいて、その利用者入力文話題特定情報に対応付けられた各話題タイトルの中から、その第一形態素情報に最も適した話題タイトル８１０を検索する。話題検索部３７０は、その検索した話題タイトル８１０を検索結果信号として回答取得部３８０に出力する。
【０１３７】
先に掲げた図３３は、ある話題特定情報８１０（＝「佐藤」）に対応付けされた話題タイトル８２０，回答文８３０の具体例を示す。図３３に示すように、例えば、話題検索部３７０は、入力された第一形態素情報「佐藤、好き」に話題特定情報８１０（＝「佐藤」）が含まれるので、その話題特定情報８１０（＝「佐藤」）を特定し、次に、その話題特定情報８１０（＝「佐藤」）に対応付けられた各話題タイトル（８２０）１-１,１-２,…と入力された第一形態素情報「佐藤、好き」とを照合する。  
【０１３８】
話題検索部３７０は、その照合結果に基づいて、各話題タイトル（８２０）１-１〜１-２の中から、入力された第一形態素情報「佐藤、好き」と一致する話題タイトル（８２０）１-１(佐藤；＊；好き)を特定する。話題検索部３４０は、検索した話題タイトル（８２０）１-１(佐藤；＊；好き)を検索結果信号として回答取得部３８０に出力する。
【０１３９】
［５．１．４．３．４．回答取得部］
回答取得部３８０は、省略文補完部３６０，或いは話題検索部３７０で検索された話題タイトル８２０に基づいて、その話題タイトル８２０に対応付けられた回答文８３０を取得する。また、回答取得部３８０は、話題検索部３７０で検索された話題タイトル８２０に基づいて、その話題タイトル８２０に対応付けられた各回答種類と、入力種類判定部４４０で判定された発話種類とを照合する。その照合をした回答取得部３８０は、各回答種類の中から、判定された発話種類と一致する回答種類を検索する。
【０１４０】
図３３に示す例においては、回答取得部３５０は、話題検索部３７０で検索された話題タイトルが話題タイトル１-１(佐藤；＊；好き)である場合には、その話題タイトル１-１に対応付けられている回答文１-１（DA,TAなど）の中から、入力種類判定部４４０で判定された「発話文のタイプ」(例えばDA)と一致する回答種類(DA)を特定する。この回答種類(DA)を特定した回答取得部３８０は、特定した回答種類(DA)に基づいて、その回答種類(DA)に対応付けられた回答文１-１（「私も佐藤が好きです。」）を取得する。  
【０１４１】
ここで、上記"DA"、"TA"等のうち、"A"は、肯定形式を意味する。従って、発話種類及び回答種類に"A"が含まれているときは、ある事柄について肯定することを示している。また、発話種類及び回答種類には、"DQ"、"TQ"等の種類を含めることもできる。この"DQ"、"TQ"等のうち"Q"は、ある事柄についての質問を意味する。
【０１４２】
回答種類が上記質問形式(Q)からなるときは、この回答種類に対応付けられる回答文は、肯定形式(A)で構成される。この肯定形式(A)で作成された回答文としては、質問事項に対して回答する文等が挙げられる。例えば、発話文が「あなたはスロットマシンを操作したことがありますか?」である場合には、この発話文についての発話種類は、質問形式(Q)となる。この質問形式(Q)に対応付けられる回答文は、例えば「私はスロットマシンを操作したことがあります」(肯定形式(A))が挙げられる。
【０１４３】
一方、発話種類が肯定形式(A)からなるときは、この回答種類に対応付けられる回答文は、質問形式(Q)で構成される。この質問形式(Q)で作成された回答文としては、発話内容に対して聞き返す質問文、又は特定の事柄を聞き出す質問文等が挙げられる。例えば、発話文が「私はスロットマシンで遊ぶのが趣味です」である場合には、この発話文についての発話種類は、肯定形式(A)となる。この肯定形式(A)に対応付けられる回答文は、例えば"パチンコで遊ぶのは趣味ではないのですか?"(特定の事柄を聞き出す質問文(Q))が挙げられる。
【０１４４】
回答取得部３８０は、取得した回答文８３０を回答文信号として管理部３１０に出力する。回答取得部３５０から回答文信号が入力された管理部３１０は、入力された回答文信号を出力部６００に出力する。
【０１４５】
［５．１．４．４．ＣＡ会話処理部］
ＣＡ会話処理部３４０は、ユーザ発話に対して、プラン会話処理部３２０および談話空間会話制御処理部３３０のいずれにおいても回答文が決定しない場合に、ユーザ発話の内容に応じて、ユーザとの会話を継続できるような回答文を出力する機能を有する。
以上で回答処理部２１の構成例の説明を終了する。
【０１４６】
［５．２．会話制御方法］
上記構成を有する回答処理部２１は、以下のように動作することにより会話制御方法を実行する。本実施の形態にかかる回答処理部２１，より詳しくは会話制御部３００の動作について説明する。
【０１４７】
図３８は、会話制御部３００のメイン処理の一例を示すフローチャートである。このメイン処理は、会話制御部３００がユーザ発話を受け付けるごとに実行される処理であり、このメイン処理が行われることによりユーザ発話に対する回答文の出力が行われ、会話装置１０と会話サーバ２０（回答処理部２１）間の会話（対話）が成立する。
【０１４８】
メイン処理にはいると、会話制御部３００、より詳しくはプラン会話処理部３２０はまずプラン会話制御処理（Ｓ１８０１）を実行する。プラン会話制御処理は、プランを実行する処理である。
【０１４９】
図３９、図４０はプラン会話制御処理の一例を示すフローチャートである。以下に図３９、図４０を参照しながら、プラン会話制御処理の例について説明する。
【０１５０】
プラン会話制御処理を開始すると、プラン会話処理部３２０はまず、基本制御状態情報チェックを行う（Ｓ１９０１）。基本制御状態情報は、プラン１４０２の実行の完了の有無が、基本制御状態情報として所定の記憶領域に格納される。  
基本制御状態情報は、プランの基本制御状態を記述する役割を有する。
【０１５１】
図４１は、シナリオと呼ばれるタイプのプランについて生じうる４つの基本制御状態を示す図である。以下、それぞれの状態について説明する。
【０１５２】
（１）結束
この基本制御状態は、ユーザ発話が実行中のプラン１４０２、より詳しくはプラン１４０２に対応する話題タイトル８２０や用例文１７０１に一致する場合である。この場合は、プラン会話処理部３２０は当該プラン１４０２を終了し、次プラン指定情報１５０２にて指定された回答文１５０１に対応するプラン１４０２に移行する。
【０１５３】
（２）破棄
この基本制御状態は、ユーザ発話内容がプラン１４０２の終了を要求していると判断される場合、またはユーザの関心が実行中のプラン以外の事項に移ったと判定される場合に、設定される基本制御状態である。基本制御状態情報が破棄を示している場合は、プラン会話処理部３２０は、破棄の対象となったプラン１４０２以外にユーザ発話に対応するプラン１４０２がないかどうかを検索し、存在する場合にはそのプラン１４０２の実行を開始し、存在しない場合には、プランの実行を終了する。
【０１５４】
（３）維持
この基本制御状態は、ユーザ発話が、実行中のプラン１４０２に対応するに対応する話題タイトル８２０（図３３参照）や用例文１７０１（図３７参照）に該当しない場合であって、かつユーザ発話が基本制御状態「破棄」に該当するものではないと判断される場合に、基本制御状態情報に記述される基本制御状態である。
【０１５５】
この基本制御状態である場合には、プラン会話処理部３２０は、ユーザ発話を受け付けると、まず保留・中止しているプラン１４０２を再開するか否かを検討し、ユーザ発話がプラン１４０２再開に適さない場合、例えばユーザ発話がプラン１４０２に対応する話題タイトル８０２や用例文１７０２に対応しない場合は、他のプラン１４０２の実行を開始したり、或いは後述の談話空間会話制御処理（Ｓ１９０２）などをおこなう。ユーザ発話がプラン１４０２再開に適している場合は、記憶している次プラン指定情報１５０２に基づいて、回答文１５０１の出力を行う。
【０１５６】
基本制御状態が「維持」である場合は、プラン会話処理部３２０は、当該プラン１４０２に対応する回答文１５０１以外の回答を出力できるように、他のプラン１４０２を検索し、あるいは後述の談話空間会話制御処理などをおこなうが、ユーザ発話が再びプラン１４０２に関するものとなった場合は、そのプラン１４０２の実行を再開する。
【０１５７】
（４）継続
この状態は、ユーザ発話が、実行中のプラン１４０２に含まれる回答文１５０１に対応しない場合であって、かつユーザ発話内容が基本制御状態「破棄」に該当するものではないと判断され、かつユーザ発話から解釈されるユーザの意図が明瞭でない場合に、設定される基本制御状態である。
【０１５８】
基本制御状態が「継続」である場合は、プラン会話処理部３２０は、ユーザ発話を受け付けるとまず保留・中止しているプラン１４０２を再開するか否かを検討し、ユーザ発話がプラン１４０２の再開に適さない場合は、ユーザからさらなる発話を引き出すための回答文を出力できるように、後述のＣＡ会話制御処理などをおこなう。  
【０１５９】
図３９に戻り、プラン会話制御処理の説明を続ける。  
【０１６０】
基本制御状態情報を参照したプラン会話処理部３２０は、基本制御状態情報が示す基本制御状態が「結束」であるか否かを判定する（Ｓ１９０２）。基本制御状態が「結束」であると判定した場合（Ｓ１９０２、Ｙｅｓ）は、プラン会話処理部３２０は、基本制御状態情報が示す実行中のプラン１４０２において、回答文１５０１が最終回答文であるかどうかを判定する（Ｓ１９０３）。
【０１６１】
最終回答文１５０１が出力済みであると判定した場合（Ｓ１９０３、Ｙｅｓ）、プラン会話処理部３２０は、すでにそのプラン１４０２においてユーザに回答すべき内容をすべて伝え終えているので、新たな別のプラン１４０２を開始するかいなかを判定するため、プラン空間内にユーザ発話に対応するプラン１４０２が存在するか検索を行う（Ｓ１９０４）。この検索の結果ユーザ発話に対応するプラン１４０２が発見できなかった場合（Ｓ１９０５、Ｎｏ）、ユーザに提供すべきプラン１４０２は存在していないので、プラン会話処理部３２０はそのままプラン会話制御処理終了する。
【０１６２】
一方、この検索の結果、ユーザ発話に対応するプラン１４０２を発見した場合（Ｓ１９０５、Ｙｅｓ）、プラン会話処理部３２０は当該プラン１４０２に移行する（Ｓ１９０６）。これは、ユーザに提供すべきプラン１４０２が存在しているため、当該プラン１４０２の実行（プラン１４０２に含まれる回答文１５０１の出力）を開始するためである。
【０１６３】
次に、プラン会話処理部３２０は当該プラン１４０２の回答文１５０１を出力する（Ｓ１９０８）。出力された回答文１５０１は、ユーザ発話に対する回答となり、プラン会話処理部３２０はユーザに伝えたい情報を提供することとなる。  
【０１６４】
回答文出力処理（Ｓ１９０８）後、プラン会話処理部３２０はプラン会話制御処理を終了する。
【０１６５】
一方、先に出力した回答文１５０１が最終の回答文１５０１であるか否かの判定（Ｓ１９０３）において、先に出力した回答文１５０１が最終の回答文１５０１でない場合（Ｓ１９０３，Ｎｏ）は、プラン会話処理部３２０は、先に出力した回答文１５０１に続く回答文１５０１、すなわち次プラン指定情報１５０２により特定されている回答文１５０１に対応するプラン１４０２に移行する（Ｓ１９０７）。
【０１６６】
この後、プラン会話処理部３２０は該当するプラン１４０２に含まれる回答文１５０１を出力し、ユーザ発話に対する回答を行う（Ｓ１９０８）。出力された回答文１５０１は、ユーザ発話に対する回答となり、プラン会話処理部３２０はユーザに伝えたい情報を提供することとなる。回答文出力処理（Ｓ１９０８）後、プラン会話処理部３２０はプラン会話制御処理を終了する。
【０１６７】
さて、Ｓ１９０２の判定処理において、基本制御状態情報が「結束」でない場合（Ｓ１９０２，Ｎｏ）は、プラン会話処理部３２０は基本制御状態情報が示す基本制御状態が「破棄」であるか否かを判定する（Ｓ１９０９）。基本制御状態が「破棄」であると判定した場合（Ｓ１９０９、Ｙｅｓ）は、継続すべきプラン１４０２が存在していないため、プラン会話処理部３２０は、開始すべき新たな別のプラン１４０２が存在するか判定すべく、プラン空間１４０１内にユーザ発話に対応するプラン１４０２が存在するか検索を行う（Ｓ１９０４）。この後、先に述べたＳ１９０３（Ｙｅｓ）における処理と同様に、Ｓ１９０５からＳ１９０８までの処理をプラン会話処理部３２０は実行する。
【０１６８】
一方、基本制御状態情報が示す基本制御状態が「破棄」であるか否かの判定（Ｓ１９０９）において、基本制御状態が「破棄」でないと判定した場合（Ｓ１９０９，Ｎｏ）は、プラン会話処理部３２０は、基本制御状態情報が示す基本制御状態が「維持」であるか否かの判定（Ｓ１９１０）をさらに行う。
【０１６９】
基本制御状態情報が示す基本制御状態が「維持」である場合（Ｓ１９１０、Ｙｅｓ）には、プラン会話処理部３２０は、保留・停止しているプラン１４０２についてユーザが再び関心を示したか否かを調べ、関心を示した場合には、一時保留・停止しているプラン１４０２を再開するように動作する。すなわち、プラン会話処理部３２０は、保留・停止中のプラン１４０２を検査（図４０；Ｓ２００１）し、ユーザ発話が保留・停止中の当該プラン１４０２が対応するか否かを判定する（Ｓ２００２）。
【０１７０】
ユーザ発話が当該プラン１４０２に対応すると判定された場合（Ｓ２００２、Ｙｅｓ）は、プラン会話処理部３２０はそのユーザ発話に対応するプラン１４０２に移行し（Ｓ２００３）、その後、そのプラン１４０２に含まれる回答文１５０１を出力するように、回答文出力処理（図３９；Ｓ１９０８）を実行する。このように動作することにより、プラン会話処理部３２０は、保留・中断していたプラン１４０２を、ユーザ発話に応じて、再開することが可能となり、あらかじめ用意していたプラン１４０２に含まれる内容をすべてユーザに伝達することが可能となる。
【０１７１】
一方、先のＳ２００２（図４０参照）において、保留・停止中のプラン１４０２がユーザ発話に対応しないと判定された場合（Ｓ２００２、Ｎｏ）は、プラン会話処理部３２０は、開始すべき新たな別のプラン１４０２が存在するか判定すべく、プラン空間１４０１内にユーザ発話に対応するプラン１４０２が存在するか検索を行う（図３９；Ｓ１９０４）。この後、先に述べたＳ１９０３（Ｙｅｓ）における処理と同様に、Ｓ１９０５からＳ１９０９までの処理をプラン会話処理部３２０は実行する。
【０１７２】
さて、Ｓ１９１０の判定において、基本制御状態情報が示す基本制御状態が「維持」でない場合（Ｓ１９１０、Ｎｏ）は、基本制御状態情報が示す基本制御状態が「継続」であることを意味する。この場合には、プラン会話処理部３２０は、回答文の出力を行うことなく、プラン会話制御処理を終了する。  
以上で、プラン会話制御処理の説明を終了する。
【０１７３】
図３８に戻り、メイン処理の説明を続ける。  
プラン会話制御処理（Ｓ１８０１）を終了すると、会話制御部３００は談話空間会話制御処理を開始する（Ｓ１８０２）。ただし、プラン会話制御処理（Ｓ１８０１）において回答文出力を行った場合は、会話制御部３００は談話空間会話制御処理（Ｓ１８０２）、および後に説明するＣＡ会話制御処理（Ｓ１８０３）のいずれも行わず、基本制御情報更新処理（Ｓ１９０４）を行ってメイン処理を終了する。
【０１７４】
図４２は、本実施の形態に係る談話空間会話制御処理の一例を示すフローチャートである。
先ず、入力部１００が、利用者からの発話内容を取得するステップを行う（ステップＳ２２０１）。具体的には、入力部１００は、利用者の発話内容を構成する音声を取得する。入力部１００は、取得した音声を音声信号として音声認識部２００に出力する。なお、入力部１００は、利用者からの音声ではなく、利用者から入力された文字列（例えば、テキスト形式で入力された文字データ）を取得してもよい。この場合、入力部１００はマイクではなく、キーボードやタッチパネルなどの文字入力装置となる。
【０１７５】
次いで、音声認識部２００が、入力部１００で取得した発話内容に基づいて、発話内容に対応する文字列を特定するステップを行う（ステップＳ２２０２）。具体的には、入力部１００から音声信号が入力された音声認識部２００は、入力された音声信号に基づいて、その音声信号に対応する単語仮説（候補）を特定する。音声認識部２００は、特定した単語仮説（候補）に対応付けられた文字列を取得し、取得した文字列を文字列信号として会話制御部３００、より詳しくは談話空間会話制御部３３０に出力する。
【０１７６】
そして、文字列特定部４１０が、音声認識部２００で特定された一連の文字列を一文毎に区切るステップを行う（ステップＳ２２０３）。具体的には、管理部３１０から文字列信号（あるいは形態素信号）が入力された文字列特定部４１０は、その入力された一連の文字列の中に、ある一定以上の時間間隔があるときは、その部分で文字列を区切る。文字列特定部４１０は、その区切った各文字列を形態素抽出部４２０及び入力種類判定部４４０に出力する。なお、文字列特定部４１０は、入力された文字列がキーボードから入力された文字列である場合には、句読点又はスペース等のある部分で文字列を区切るのが好ましい。
【０１７７】
その後、形態素抽出部４２０が、文字列特定部４１０で特定された文字列に基づいて、文字列の最小単位を構成する各形態素を第一形態素情報として抽出するステップを行う（ステップＳ２２０４）。具体的に、文字列特定部４１０から文字列が入力された形態素抽出部４２０は、入力された文字列と、形態素データベース４３０に予め格納されている形態素群とを照合する。なお、その形態素群は、本実施の形態では、それぞれの品詞分類に属する各形態素について、その形態素の見出し語・読み・品詞・活用形などを記述した形態素辞書として準備されている。  
【０１７８】
この照合をした形態素抽出部４２０は、入力された文字列の中から、予め記憶された形態素群に含まれる各形態素と一致する各形態素（m１、m２、…）を抽出する。形態素抽出部４２０は、抽出した各形態素を第一形態素情報として話題特定情報検索部３５０に出力する。
【０１７９】
次いで、入力種類判定部４４０が、文字列特定部４１０で特定された一文を構成する各形態素に基づいて、「発話文のタイプ」を判定するステップを行う（ステップＳ２２０５）。具体的には、文字列特定部４１０から文字列が入力された入力種類判定部４４０は、入力された文字列に基づいて、その文字列と発話種類データベース４５０に格納されている各辞書とを照合し、その文字列の中から、各辞書に関係する要素を抽出する。この要素を抽出した入力種類判定部４４０は、抽出した要素に基づいて、その要素がどの「発話文のタイプ」に属するのかを判定する。入力種類判定部４４０は、判定した「発話文のタイプ」（発話種類）を回答取得部３８０に出力する。
【０１８０】
そして、話題特定情報検索部３５０が、形態素抽出部４２０で抽出された第一形態素情報と着目話題タイトル８２０focusとを比較するステップを行う（ステップＳ２２０６）。  
【０１８１】
第一形態素情報を構成する形態素と着目話題タイトル８２０focusとが一致する場合、話題特定情報検索部３５０は、その話題タイトル８２０を回答取得部３８０に出力する。一方、話題特定情報検索部３５０は、第一形態素情報を構成する形態素と話題タイトル８２０とが一致しなかった場合には、入力された第一形態素情報及び利用者入力文話題特定情報を検索命令信号として省略文補完部３６０に出力する。
【０１８２】
その後、省略文補完部３６０が、話題特定情報検索部３５０から入力された第一形態素情報に基づいて、着目話題特定情報及び回答文話題特定情報を、入力された第一形態素情報に含めるステップを行う（ステップＳ２２０７）。具体的には、第一形態素情報を「Ｗ」、着目話題特定情報及び回答文話題特定情報の集合を「Ｄ」とすると、省略文補完部３６０は、第一形態素情報「Ｗ」に話題特定情報「Ｄ」の要素を含めて、補完された第一形態素情報を生成し、この補完された第一形態素情報と集合「Ｄ」に関連づけされたすべての話題タイトル８２０とを照合し、補完された第一形態素情報と一致する話題タイトル８２０があるか検索する。補完された第一形態素情報と一致する話題タイトル８２０がある場合は、省略文補完部３６０は、その話題タイトル８２０を回答取得部３８０に出力する。一方、補完された第一形態素情報と一致する話題タイトル８２０を発見しなかった場合は、省略文補完部３６０は、第一形態素情報と利用者入力文話題特定情報とを話題検索部３７０に渡す。
【０１８３】
次いで、話題検索部３７０は、第一形態素情報と、利用者入力文話題特定情報とを照合し、各話題タイトル８２０の中から、第一形態素情報に適した話題タイトル８２０を検索するステップを行う（ステップＳ２２０８）。具体的には、省略文補完部３６０から検索命令信号が入力された話題検索部３７０は、入力された検索命令信号に含まれる利用者入力文話題特定情報及び第一形態素情報に基づいて、その利用者入力文話題特定情報に対応付けられた各話題タイトル８２０の中から、その第一形態素情報に適した話題タイトル８２０を検索する。話題検索部３７０は、その検索の結果得られた話題タイトル８２０を検索結果信号として回答取得部３８０に出力する。
【０１８４】
次いで、回答取得部３８０が、話題特定情報検索部３５０、省略文補完部３６０，あるいは話題検索部３７０で検索された話題タイトル８２０に基づいて、文解析部４００により判定された利用者の発話種類と、話題タイトル８２０に対応付けられた各回答種類とを照合し、回答文８３０の選択を行う（ステップＳ２２０９）。
【０１８５】
具体的には、以下のようにして回答文８３０の選択が行われる。すなわち、話題検索部３７０から検索結果信号と、入力種類判定部４４０から「発話文のタイプ」とが入力された回答取得部３８０は、入力された検索結果信号に対応する「話題タイトル」と、入力された「発話文のタイプ」とに基づいて、その「話題タイトル」に対応付けられている回答種類群の中から、「発話文のタイプ」（DAなど）と一致する回答種類を特定する。
【０１８６】
続いて、回答取得部３８０は、管理部３１０を介して、ステップＳ２２０９において取得した回答文８３０を出力部６００に出力する（ステップＳ２２１０）。管理部３１０から回答文を受け取った出力部６００は、入力された回答文８３０を出力する。
【０１８７】
以上で、談話空間会話制御処理の説明を終了し、図３８に戻りメイン処理の説明を再開する。  
【０１８８】
会話制御部３００は談話空間会話制御処理を終了すると、ＣＡ会話制御処理を実行する（Ｓ１８０３）。ただし、プラン会話制御処理（Ｓ１８０１）および談話空間会話制御処理（Ｓ１８０１）において回答文出力を行った場合は、会話制御部３００はＣＡ会話制御処理（Ｓ１８０３）を行わず、基本制御情報更新処理（Ｓ１８０４）を行ってメイン処理を終了する。
【０１８９】
ＣＡ会話制御処理（Ｓ１８０３）は、ユーザ発話が、「何かを説明している」のか、「何かを確認している」のか、「非難や攻撃をしている」のか、「これら以外」なのかを判定し、ユーザ発話の内容および判定結果に応じた回答文を出力する処理である。このＣＡ会話制御処理を行うことにより、プラン会話制御処理、および談話空間会話制御処理のいずれにおいても、ユーザ発話に適した回答文が出力できなくとも、ユーザとの会話の流れをとぎれさせることなく継続できるような、いわば「つなぎ」の回答文を出力することが可能となる。
【０１９０】
つぎに、会話制御部３００は基本制御情報更新処理を行う（Ｓ１８０４）。この処理において、会話制御部３００，より詳しくは管理部３１０は、プラン会話処理部３２０が回答文出力を行った場合は基本制御情報を「結束」に設定し、プラン会話処理部３２０が回答文出力を停止した場合は基本制御情報を「破棄」に設定し、談話空間会話制御処理部３３０が回答文出力を行った場合は基本制御情報を「維持」に設定し、ＣＡ会話処理部３４０が回答文出力を行った場合は基本制御情報を「継続」に設定する。
【０１９１】
この基本制御情報更新処理で設定された基本制御情報は、前述のプラン会話制御処理（Ｓ１８０１）において参照され、プランの継続や再開に利用される。  
【０１９２】
以上、メイン処理をユーザ発話を受け付けるごとに実行することにより、回答処理部２１は、ユーザ発話に応じて、予め用意したプランを実行できるとともに、プランに含まれない話題についても適宜応答することができる。
【０１９３】
［６．第２の実施の形態］
次に、本発明の第２の実施の形態について説明する。第２の実施の形態は顧客対応システムとして提案される。
［６．１．構成例］
以下に、本発明の実施の形態の一つである顧客対応システムについて説明する。顧客対応システムは、ネットワークを介して受信した顧客からの質問や問い合わせに対して回答や情報をネットワークを介して送信するシステムである。
【０１９４】
図４３は、本実施の形態にかかる顧客対応システムの構成例を示したブロック図である。
顧客対応システム１００は、広域通信網（ＷＡＮ）１１０に接続可能なユーザ側端末機として機能する会話装置１０と、広域通信網に接続された会話サーバ２０Ａと、構内通信網（ＬＡＮ）１２０に接続された専門家側端末装置１３０、会話シナリオ編集装置３０、会話ログデータベース（ＤＢと略す）１４０、及び会話ログ分析装置１５０とで構成されている。なお、会話サーバ２０Ａは構内通信網１２０を介して専門家側端末装置１３０、会話シナリオ編集装置３０、会話ログＤＢ１４０、及び会話ログ分析装置１５０と通信可能である。
【０１９５】
また、上記構成例では、構内通信網１２０を介して会話サーバ２０Ａと、専門家側端末装置１３０、会話シナリオ編集装置３０、会話ログＤＢ１４０、及び会話ログ分析装置１５０とが通信する構成としたが、前記広域通信網１１０或いは他の広域通信網を介してこれら装置が通信する構成であっても本発明は成立する。
【０１９６】
なお、ここでいう「専門家」とはユーザからの質問や問い合わせに対して回答をなすことを役割として担う者をいい、必ずしも専門的知識を有する者であることまでは要しない。
【０１９７】
以下に、上記顧客対応システム１００の構成要素について説明する。
［６．１．１．会話装置］
１．本発明の第１の手段に相当する会話装置１０は、ユーザ（顧客）が質問や問い合わせなどをユーザ発話（入力文）として会話サーバ２０Ａに送信し、会話サーバ２０Ａからその回答文を受信する装置である。本顧客対応システムの会話装置１０は、第１の実施の形態の会話装置２０と同様の構成を有する装置であるので、その詳細な構成例の説明は省略することとする。
【０１９８】
［６．１．２．会話サーバ］
本発明の第２の手段に相当する会話サーバ２０Ａは、会話装置１０から送信されたユーザ発話に対して、会話シナリオ４０に基づいて回答文を決定し、決定した回答文及びその回答文に対応付けされた動作制御情報をその会話装置１０に送信する機能と、ユーザ発話に対する回答文が会話シナリオから発見できない場合にそのユーザ発話に対する回答を専門家に回答させるように、ユーザ発話の内容を専門家側端末装置１３０に送信し、これに応じて専門家側端末装置１３０から送信される回答内容を受信し、受信した回答内容を会話装置１０に送信する機能と、前記ユーザ発話、回答文、専門家側端末装置１３０からの回答内容をそれらの時系列に従って記憶し、記憶した内容（「会話ログ」とよぶ）を会話ログＤＢ１４０に送信する機能と、会話シナリオ編集装置３０から送信される会話シナリオ４０を受信し、その会話内容をすでに記憶済みの会話シナリオ４０に追加し、或いは置換する機能とを有する。
【０１９９】
会話サーバ２０Ａは、演算処理装置（ＣＰＵ）、主メモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、入出力装置（Ｉ／Ｏ）、及び必要な場合にはハードディスク装置等の外部記憶装置を具備している情報処理装置によって実現される。情報処理装置は、ＰＣ、ワークステーション、サーバなどである。会話サーバ２０Ａは、複数の情報処理装置をネットワークで接続して構成されるものであってもよい。
【０２００】
図４４は、会話サーバ２０Ａの構成例を示した機能ブロック図である。なお、本実施の形態における会話サーバ２０Ａは、前述した会話サーバ２０と共通の構成要素を有するので、それら共通の構成要素については同一の参照符号を付してそれらの詳細な説明は省略するものとする。
【０２０１】
会話サーバ２０Ａは、回答処理部２１と、回答処理部２１に接続された回答中継部２４及びログ収集部２５と、回答処理部２１に接続された意味解釈辞書部２３及び会話シナリオ記憶部２２と、会話シナリオ記憶部２２に接続された会話シナリオ更新部２６とを有する。
【０２０２】
回答処理部２１、意味解釈辞書部２３、及び会話シナリオ記憶部２２は、第１の実施の形態の会話サーバ２０のものと同様の機能を有する構成要素であるため、これらの説明は省略する。但し、回答処理部２１には、回答中継部２４及びログ収集部２５にユーザ発話、回答文、回答内容を渡し、或いは受け取る機能が付加されている。
【０２０３】
回答中継部２４は、専門家側端末装置１３０との通信して、回答処理部２１から受け取ったユーザ発話の内容を専門家側端末装置１３０に送信し、これに応じて専門家側端末装置から送信された回答内容を受信し、受信した回答内容を回答処理部２１に渡す機能を有する。
【０２０４】
ログ収集部２５は、回答処理部２１が受け取るユーザ発話及び専門家側端末装置１３０からの回答内容、及び回答処理部２１が会話装置１０に送信する回答文を回答処理部２１から取得し、これらのデータを会話ログとして会話ログＤＢ１４０に送信する機能を有する。なお、会話ログを送信するタイミングは、会話サーバ２０Ａが決定する任意のタイミングであっても良いし、会話ログＤＢ１４０から送信要求を受信したタイミングでも良いし、その他のタイミング（例えば、オペレータが会話ログ送信処理を実行したとき）でもよい。
【０２０５】
会話シナリオ更新部２６は、会話シナリオ記憶部２２に記憶された会話シナリオ４０に新たな会話シナリオ４０を追加したり、一部又は全部を置換したりする機能を有する。例えば、ユーザ発話である質問と、それに対する専門家の回答内容からなる新たな会話シナリオ（区別のため、「追加会話シナリオ」と呼ぶ）が会話シナリオ編集装置３０により生成され、その追加会話シナリオを会話シナリオ編集装置３０より会話シナリオ更新部２６が受信し、会話シナリオ記憶部２２にすでに記憶されている会話シナリオ４０に追加して記憶させる。この処理後に、会話サーバ２０Ａは前記ユーザ発話である質問を再び受け付けた場合、回答処理部２１が追加会話シナリオ部分に基づいて前記回答内容と同じ内容の回答文を会話装置１０に送信することが出来るようになる。
以上で会話サーバ２０Ａの構成例の説明を終了する。
【０２０６】
図４３に戻り、顧客対応システム１００の構成要素の説明を続ける。
［６．１．３．専門家側端末装置］
本発明の第３の手段に相当する専門家側端末装置１３０は、会話サーバ２０Ａから送信（転送）されてくるユーザ発話を受信して、ユーザ発話の内容を専門家側端末装置１３０の操作者である専門家に提示してその回答を入力すること促し、回答が入力された場合には回答内容であるデータを会話サーバ２０Ａに送信する機能を有する装置である。
【０２０７】
専門家側端末装置１３０は、ユーザ発話の受信、回答内容の送信が実行できる装置であればどのような装置であっても良い。例えば、専門家側端末装置１３０は、パーソナルコンピュータ、移動体通信機（携帯電話機）、専用端末装置などである。
【０２０８】
［６．１．４．会話シナリオ編集装置］
本発明の第５の手段に相当する会話シナリオ編集装置３０は、第１の実施の形態における会話シナリオ編集装置３０と同様の装置であるので、ここでは構成の詳細な説明は省略する。但し、本実施の形態における会話シナリオ編集装置３０は、会話ログＤＢ１４０より会話ログ、とりわけ専門家側端末装置１３０から送信された回答内容を含む会話ログを取得し、これを編集して会話シナリオ４０として出力し、会話サーバ２０Ａに送信して会話シナリオの追加・更新を行わせる機能をさらに備えている。
【０２０９】
［６．１．５．会話ログＤＢ］
本発明の第４の手段に相当する会話ログＤＢ１４０は、会話サーバ２０Ａから送信された会話ログを受信し、これを記憶する機能を有する装置である。会話ログＤＢ１４０は、演算処理装置（ＣＰＵ）、主メモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、入出力装置（Ｉ／Ｏ）、及び必要な場合にはハードディスク装置等の外部記憶装置を具備している情報処理装置によって実現される。情報処理装置は、ＰＣ、ワークステーション、サーバなどである。会話ログＤＢは、複数の情報処理装置をネットワークで接続して構成されるものであってもよい。
【０２１０】
［６．１．６．会話ログ分析装置］
会話ログ分析装置１５０は、会話ログＤＢ１４０から会話ログを受信し、会話ログを分析することにより会話傾向統計（例えば、質問ごとのアクセス数の統計データ）の生成を行う。
以上で、顧客対応システム１００の構成例の説明を終了する。
【０２１１】
［６．２．顧客対応システムの動作］
次に、上記顧客対応システム１００の動作について説明する。
［６．２．１．会話サーバが会話シナリオに基づいて回答可能な場合の動作］
図４５は、会話サーバ２０Ａが会話シナリオに基づいて回答可能な場合のユーザ発話を受け付けた場合の、顧客対応システム１００の動作例を示したシーケンス図である。
【０２１２】
まずユーザは会話装置１０から会話サーバにアクセスし、通信を確立させた後、会話装置１０にユーザ発話（この例ではある質問であるとする）を入力する。会話装置１０はユーザ発話を会話サーバ２０Ａに送信する（Ｓ３０１０）。ユーザ発話を受信した会話サーバ２０Ａは、会話シナリオ記憶部２２に記憶されている会話シナリオに基づいて、回答文及びその回答文に対応する動作制御情報を抽出する（Ｓ３０２０）。会話サーバ２０Ａは、抽出した回答文及び動作制御情報を会話装置１０に送信する（Ｓ３０３０）。会話装置１０は受信した回答文を表示して、ユーザに回答内容を提供する（Ｓ３０４０）。ユーザは回答内容から質問に対する回答を得る。
【０２１３】
一方、会話サーバ２０Ａは、前記ユーザ発話、回答文を会話ログとして取得し（Ｓ３０５０）、この会話ログを会話ログＤＢ１４０に送信する（Ｓ３０６０）。会話ログＤＢ１４０は受信した会話ログを記憶する（Ｓ３０７０）。
【０２１４】
［会話サーバが専門家側端末装置に回答を求める場合の動作］
図４６は、会話サーバ２０Ａが会話シナリオに適当な回答がないと判定し、専門家側端末装置１３０に回答を求める場合の、顧客対応システム１００の動作例を示したシーケンス図である。
【０２１５】
ユーザは会話装置１０から会話サーバ２０Ａにアクセスし、通信を確立させた後、会話装置１０にユーザ発話（この例でもある質問であるとする）を入力する。会話装置１０はユーザ発話を会話サーバ２０Ａに送信する（Ｓ３１１０）。ユーザ発話を受信した会話サーバ２０Ａは、会話シナリオ記憶部２２に記憶されている会話シナリオ４０に基づいて、回答文及びその回答文に対応する動作制御情報を検索する（Ｓ３１２０）が、記憶している会話シナリオ４０には適当な回答文はないと判断したものとする。会話サーバ２０Ａは、専門家側端末装置１３０と通信を確立し、先のステップＳ３１１０において会話装置１０から受信したユーザ発話を専門家側端末装置１３０に送信し（Ｓ３１３０）、専門家側端末装置１３０で待ち受けている専門家に当該ユーザ発話である質問に回答するよう求める。
【０２１６】
専門家側端末装置１３０は、ユーザ発話を受信するとその内容を表示（例えば、液晶ディスプレイ装置にユーザ発話の内容であるテキストを表示する）する（Ｓ３１４０）。専門家はユーザ発話の内容に対して、自己の知識や或いは別途用意されているデータベースを参照することにより質問に対する回答を用意し、回答を専門家側端末装置１３０に入力する（Ｓ３１５０）。回答の入力が行われると、専門家側端末装置１３０は回答をデータとして会話サーバ２０Ａに送信する（Ｓ３１６０）。
【０２１７】
専門家側端末装置１３０から回答であるデータを受信した会話サーバ２０Ａは、受信した回答を会話装置１０に送信する（Ｓ３１７０）。会話装置１０は受信した回答文を表示して、ユーザに回答内容を提供する（Ｓ３１８０）。ユーザは回答内容から質問に対する回答を得る。
【０２１８】
一方、会話サーバ２０Ａは、前記ユーザ発話、回答を会話ログとして取得し（Ｓ３１９０）、この会話ログを会話ログＤＢ１４０に送信する（Ｓ３２００）。会話ログＤＢ１４０は受信した会話ログを記憶する（Ｓ３２１０）。
【０２１９】
その後会話ログＤＢ１４０はステップＳ３２００において送信された会話ログ、すなわち専門家側端末装置１３０から送信された回答とそれと対となるユーザ発話（質問）を内容とする会話ログを会話シナリオ編集装置３０に送信する（Ｓ３２２０）。会話ログを受信した会話シナリオ編集装置３０は、その会話ログに基づいて会話シナリオ４０を生成する（Ｓ３２３０）。なお、この会話シナリオ４０の生成は会話シナリオ編集装置３０のオペレータにより行われるようにしても良いし、別途自動編集プログラムを会話シナリオ編集装置３０にインストールしておき、この自動編集プログラムにより会話シナリオの生成を行わせるようにしても良い。
【０２２０】
会話シナリオ編集装置３０は、先のステップＳ３２３０において生成された会話シナリオ４０を会話サーバに送信する（Ｓ３２４０）。会話シナリオ４０を受信した会話サーバ２０Ａは、受信した会話シナリオ４０を自己の会話シナリオ記憶部２２に記憶させ、会話シナリオの更新を行う（Ｓ３２５０）。これにより、再びステップＳ３１１０において送信されたユーザ発話と同様の質問を受け付けた場合には、会話サーバ２０Ａが会話シナリオ４０から回答文及び動作制御情報を抽出して、専門家による回答を求めることなく、ユーザに回答を提供することが可能になる。
【０２２１】
［６．２．２．会話ログ解析］
次に、会話ログの解析の動作例について説明する。
図４７は、顧客対応システム１００が会話ログの分析を行う場合の動作例を示したシーケンス図である。
【０２２２】
まず、会話ログ分析装置１５０は、会話ログＤＢ１４０に会話ログの送信要求を送る（Ｓ３３１０）。会話ログＤＢ１４０は会話ログ分析装置１５０に会話ログを送信する（Ｓ３３２０）。会話ログ分析装置１５０は受信した会話ログを分析処理し（Ｓ３３３０）、その分析結果を出力する（Ｓ３３４０）。分析結果はユーザの関心事項や、ユーザの属性毎の反応など、マーケティングに利用可能な情報として利用される。
【０２２３】
以上で、顧客対応システム１００の動作の説明を終了する。
【図面の簡単な説明】
【０２２４】
【図１】自動会話システムの構成例を示すブロック図
【図２】会話装置の一構成例を示すブロック図
【図３】会話サーバの一構成例を示すブロック図
【図４】会話シナリオ編集装置の一構成例を示すブロック図
【図５】談話の圏に相当する会話シナリオの例を示す状態遷移図
【図６】図５の会話シナリオをデータとして表現した例を示す図
【図７】射の合成を含む会話シナリオの例を示した状態遷移図
【図８】図７の会話シナリオをデータとして表現した例を示す図
【図９】NULL機能による強制回答を行う会話シナリオの例を示した状態遷移図
【図１０】図９の会話シナリオをデータとして表現した例を示す図
【図１１】引用機能により、ユーザ発話に対して「固執回答」をする会話シナリオの例を示す状態遷移図
【図１２】図１１の会話シナリオをデータとして表現した例を示す図
【図１３】「合成により構成された単位元」により「閉ループ回答」が構築された会話シナリオの例を示した状態遷移図
【図１４】図１３の会話シナリオをデータとして表現した例を示す図
【図１５】射の合成に結合法則が成り立つ会話シナリオの例の状態遷移図
【図１６】図１５の会話シナリオをデータとして表現した例を示す図
【図１７】会話シナリオ編集装置の編集画面例を示す図
【図１８】会話シナリオ保持部のデータ構成例を示す図
【図１９】会話シナリオ編集装置による会話シナリオデータ生成のための入力画面例を示す図
【図２０】図１９に続く、会話シナリオ編集装置による会話シナリオデータ生成のための入力画面例を示す図
【図２１】図２０に続く、会話シナリオ編集装置による会話シナリオデータ生成のための入力画面例を示す図
【図２２】図２１に続く、会話シナリオ編集装置による会話シナリオデータ生成のための入力画面例を示す図
【図２３】図２２に続く、会話シナリオ編集装置による会話シナリオデータ生成のための入力画面例を示す図
【図２４】会話シナリオ編集装置の変形構成例を示す機能ブロック図
【図２５】回答処理部の機能ブロック図
【図２６】文字列とこの文字列から抽出される形態素との関係を示す図
【図２７】「発話文のタイプ」と、その発話文のタイプを表す二文字のアルファベット、及びその発話文のタイプに該当する発話文の例を示す図
【図２８】文のタイプとそのタイプを判定するための辞書の関係を示す図
【図２９】会話データベースが記憶するデータのデータ構成の一例を示す概念図
【図３０】ある話題特定情報と他の話題特定情報との関連付けを示す図
【図３１】話題タイトル（「第二形態素情報」ともいう）のデータ構成例を示す図
【図３２】回答文のデータ構成例を説明するための図
【図３３】ある話題特定情報に対応付けされた話題タイトル，回答文、次プラン指定情報の具体例を示す図
【図３４】プラン空間を説明するための概念図
【図３５】プランの例を示す図
【図３６】別のプランの例を示す図
【図３７】プラン会話処理の具体例を示す図
【図３８】会話制御部のメイン処理の一例を示すフローチャート
【図３９】プラン会話制御処理の一例を示すフローチャート
【図４０】図３９に続く、プラン会話制御処理の一例を示すフローチャート
【図４１】基本制御状態を示す図
【図４２】談話空間会話制御処理の一例を示すフローチャート
【図４３】顧客対応システムの構成例を示したブロック図
【図４４】第２の実施の形態にかかる会話サーバの構成例を示した機能ブロック図
【図４５】会話サーバが会話シナリオに基づいて回答可能な場合のユーザ発話を受け付けた場合の、顧客対応システムの動作例を示したシーケンス図
【図４６】会話サーバが会話シナリオに適当な回答がないと判定し、専門家側端末装置に回答を求める場合の、顧客対応システムの動作例を示したシーケンス図
【図４７】顧客対応システムが会話ログの分析を行う場合の動作例を示したシーケンス図
【符号の説明】
【０２２５】
１      …  自動会話装置
１０    …  会話装置
２０、２０Ａ…  会話サーバ
３０    …会話シナリオ編集装置
４０    …会話シナリオ
１００  …顧客対応システム
１３０  …専門家側端末装置
１４０  …会話ログＤＢ
１５０  …会話ログ分析装置
【図１】
2010073191.tif 000003
【図２】
2010073191.tif 000004
【図３】
2010073191.tif 000005
【図４】
2010073191.tif 000006
【図５】
2010073191.tif 000007
【図６】
2010073191.tif 000008
【図７】
2010073191.tif 000009
【図８】
2010073191.tif 000010
【図９】
2010073191.tif 000011
【図１０】
2010073191.tif 000012
【図１１】
2010073191.tif 000013
【図１２】
2010073191.tif 000014
【図１３】
2010073191.tif 000015
【図１４】
2010073191.tif 000016
【図１５】
2010073191.tif 000017
【図１６】
2010073191.tif 000018
【図１７】
2010073191.tif 000019
【図１８】
2010073191.tif 000020
【図１９】
2010073191.tif 000021
【図２０】
2010073191.tif 000022
【図２１】
2010073191.tif 000023
【図２２】
2010073191.tif 000024
【図２３】
2010073191.tif 000025
【図２４】
2010073191.tif 000026
【図２５】
2010073191.tif 000027
【図２６】
2010073191.tif 000028
【図２７】
2010073191.tif 000029
【図２８】
2010073191.tif 000030
【図２９】
2010073191.tif 000031
【図３０】
2010073191.tif 000032
【図３１】
2010073191.tif 000033
【図３２】
2010073191.tif 000034
【図３３】
2010073191.tif 000035
【図３４】
2010073191.tif 000036
【図３５】
2010073191.tif 000037
【図３６】
2010073191.tif 000038
【図３７】
2010073191.tif 000039
【図３８】
2010073191.tif 000040
【図３９】
2010073191.tif 000041
【図４０】
2010073191.tif 000042
【図４１】
2010073191.tif 000043
【図４２】
2010073191.tif 000044
【図４３】
2010073191.tif 000045
【図４４】
2010073191.tif 000046
【図４５】
2010073191.tif 000047
【図４６】
2010073191.tif 000048
【図４７】
2010073191.tif 000049