(57)【要約】【課題】ユーザとの対話を提供するコンピュータ実行方法を提供する。【解決手段】（ａ）対話を含む物語グラフ構造として対話プロットシナリオを作成する、（ｂ）物語グラフノードに対話切替マップ係数を割り当てる、（ｃ）認識される音声入力及び現在の物語グラフノードにおける対話段階を提供する、（ｄ）ユーザ音声等に基づき対話係数更新アルゴリズムを適用する、（ｅ）ユーザ音声及び切替マップにおける他の係数を用い他の物語グラフノードへの切替を決定又は切替マップの位置を更新して対話を同じ物語グラフノードで継続する少なくとも一つのファジイ論理アルゴリズムを適用する、（ｆ）物語グラフ係数に基づき応答を決定する、（ｇ）（ｅ）で切替決定される迄特定物語グラフノードで（ｃ）〜（ｆ）を繰り返す、（ｈ）（ｅ）の切替後、（ｃ）〜（ｆ）を、新たな物語グラフノードで新係数で繰り返し、対話グラフ構造における新位置及び係数で開始する。【選択図】図１
2015155932.tif 000002
【特許請求の範囲】
【請求項１】
ユーザとの対話を提供するコンピュータ実行方法であり、以下のステップを含む：
（ａ）対話を含む物語グラフ構造として対話のプロットシナリオを作成する（５０１）
（ｂ）物語グラフノードに対話の推移マップの係数を割り当てる（５０２）
（ｃ）所定のコンテクストにおいて認識される音声入力及び現在の物語のグラフノードに表される対話の段階を提供する（５０３）
（ｄ）ユーザの音声あるいはユーザの他の行動に基づいて対話の係数を更新するアルゴリズムを適用する（５０４）
（ｅ）ユーザの音声及び推移マップにおける他の係数を使って他の物語グラフノード（対話あるいはプロットの段階）への推移を決定するあるいは推移マップにおける位置を更新して対話を同じ物語グラフノードで継続する少なくとも一つのファジイ論理アルゴリズムを適用する（５０５）
（ｆ）物語グラフの係数に基づいて応答を決定する（５０７）
（ｇ）ステップ（ｅ）において推移が決定されるまで特定の物語グラフノードにおいてステップ（ｃ）から（ｆ）を繰り返す
（ｈ）ステップ（ｅ）の推移の後、ステップ（ｃ）からステップ（ｆ）を、新たな物語グラフノードにおいて新たな係数で繰り返し、対話グラフ構造における新しい位置及び新たな値の係数で開始する。
【請求項２】
ユーザの情動状態を決定するステップ（５０６）が応答を決定するステップの前に実行される、請求項１に記載の方法。
【請求項３】
情動状態はユーザの音声パラメータ及び/又は外部センサに基づいて態度又はジェスチャーに基づいて認識される。、請求項２に記載の方法。
【請求項４】
対話推移マップの係数は、自然言語処理方法に基づいて部分的に自動的に定義される、請求項１に記載の方法。
【請求項５】
少なくとも１つのファジイ論理アルゴリズムを適用するステップ（５０５）は、ユーザの行動を考慮に入れる、請求項１に記載の方法。
【請求項６】
応答は、所定の言語の単語の辞書、文の意味類似性のグラフ及びそれらの使用の一連のルールに基づいて作成される、請求項１に記載の方法。
【請求項７】
各グラフノードにおいて、マップのフィールドの数が所定のノードから可能な出口の数に基づいた１つのマップが生成される、請求項１に記載の方法。
【請求項８】
推移は所定の時間の後決定される、請求項１に記載の方法。
【請求項９】
推移の決定は、ストップテストによるものである、請求項１に記載の方法。
【請求項１０】
推移マップが推移に関して明確な答えを出さない場合、ノードのデフォルトの推移がある、請求項８に記載の方法。
【請求項１１】
推移が無作為に行われたかについて推移マップが明確な答えを出さない場合、ノードが推移される、請求項８に記載の方法。
【請求項１２】
音声生成モジュール（３０９）は、音声合成を使用する、請求項６に記載の方法。
【請求項１３】
音声生成モジュール（３０９）は、予め録音された音声を使用する、請求項６に記載の方法。
【請求項１４】
コンピュータで実行された場合、請求項１〜請求項１３のいずれかに記載のコンピュータ実行方法の全てのステップを実行するコンピュータで実行可能な指示を記憶する非一時的コンピュータ可読記憶媒体。
【請求項１５】
ユーザとの対話を提供するコンピュータ実行システムであり、同システムは、以下の手段を含む：
（ａ）対話を含む物語グラフ構造として対話のプロットシナリオを作成する（５０１）
（ｂ）物語グラフノードに対話の推移マップの係数を割り当てる（５０２）
（ｃ）所定のコンテクストにおいて認識される音声入力及び現在の物語のグラフノードに表される対話の段階を提供する（５０３）
（ｄ）ユーザの音声あるいはユーザの他の行動に基づいて対話の係数を更新するアルゴリズムを適用する（５０４）
（ｅ）ユーザの音声及び推移マップにおける他の係数を使って他の物語グラフノード（対話あるいはプロットの段階）への推移を決定するあるいは推移マップにおける位置を更新して対話を同じ物語グラフノードで継続する少なくとも一つのファジイ論理アルゴリズムを適用する（５０５）
（ｆ）物語グラフの係数に基づいて応答を決定する（５０７）
（ｇ）ステップ（ｅ）において推移が決定されるまで特定の物語グラフノードにおいてステップ（ｃ）から（ｆ）を繰り返す
（ｈ）ステップ（ｅ）の推移の後、ステップ（ｃ）からステップ（ｆ）は、新たな物語グラフノードにおいて新たな係数で繰り返され、対話グラフ構造における新しい位置及び新たな値の係数で開始される。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、概ねコンピュータと人間の対話システム及び方法に関するものであり、特にリアルタイムでそのような対話を実行し及び管理するものに関する。
【背景技術】
【０００２】
現在使用されている対話システムは時代遅れである。ゲームなどのコンピュータシステムにおける対話は、テキスト形式で提案される特定のキーワードあるいは文の一つあるいは情緒反応のモードの一つをプレイヤーが選択することでシミュレートされる。
【０００３】
従って、スピーチ形式で対話できる可能性があり、予め決められたフレーズの形式で対話を行うという制限が取り除かれたシミュレーション・ゲームの開発を可能にするコンピュータ実行対話システムの必要性が存在する。上記システムは、対話を実行し、その対話を対話設計者が作成したゲームのプロット（あるいはコールセンター、オンライン・ショッピング、オンライン・バンキング等の他の状況的コンテクスト）にリンクさせる制御プログラムの形式である。
【０００４】
「動的インターフェースを自動的に生成するシステム及び方法」と題する先行技術文献ＥＰ １０６１４５９ Ａ２号公報は、ユーザー（人間）と機械の間で相互対話セッション（以下、「対話」という）を行うためのカスタマイズされた方法あるいはアルゴリズムの作成を開示するものであり、その結果として生じた対話はユーザーの要求に有利的に応じ、その後、上記システムの機能（即ち、対話）は動的に変化する外部データベースに基づいて自動的に変更される。具体的には、コンピュータ・システムは、ユーザーの期待及びシステムの機能の組み合わせである形式にまとめられ提示されたサービスからなる上記カスタマイズされた対話を作成する対話ジェネレータ・エージェントとして機能する。特に、システムの機能は、データベース/サービスプロバイダーの情報内容（例えば、ウェブあるいは会社のファイルシステム等の分散情報源等）を有利的に含むものであり、対話ジェネレータは、動的に変化する外部環境に応じて有利に対話を定期的に変更する。
【０００５】
「複雑なアクティビティーをアプリケーション用に処理するための対話システムの拡張」と題する先行技術文献ＥＰ １９２７９４２ Ａ１号公報は、対話システムとユーザ間の会話を管理し、その会話を複雑なアクティビティーと関連付ける対話マネージャと、複雑なアクティビティーに関連してプラン・スクリプトを実行するプラン・エンジンとを含む対話システムを開示するものであり、上記プラン・スクリプトは、原子的な対話アクティビティーのデータ及び配列の流れを制御する一式の原子的対話アクティビティー及びロジックを含み、その一式の原子的対話アクティビティーは、複雑なアクティビティーの副アクティビティーであり、複雑なアクティビティーは、原子的対話アクティビティーとプロセスを繋げる宣言型アクティビティー仕様言語により特定されるものである。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】欧州特許第１０６１４５９ Ａ２号公開公報
【特許文献２】欧州特許第１９２７９４２ Ａ１号公開公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の目的は、機械よりも人間との実体験の対話としてユーザによって認識される対話をユーザに提供するためのシステム及びコンピュータ実行方法を提供することである。
【課題を解決するための手段】
【０００８】
本発明の目的は、ユーザに対話を提供するコンピュータ実行方法であり、以下のステップを含む：
（ａ）対話を含む物語グラフ構造として対話のプロットシナリオを作成する
（ｂ）物語グラフノードに対話推移マップの係数を割り当てる
（ｃ）所定のコンテクストにおいて認識される音声入力及び現在の物語グラフノードに表される対話の段階を提供する
（ｄ）ユーザのスピーチあるいはユーザの他の行動に基づいて対話の係数を更新するアルゴリズムを適用する
（ｅ）ユーザのスピーチ及び推移マップにおける他の係数を使って、他の物語グラフノード（対話あるいはプロットのフェーズ）への推移を決定する、あるいは同じ物語グラフノードの対話を継続する推移マップにおける位置を更新する、少なくとも一つのファジイ論理アルゴリズムを適用する
（ｆ）物語グラフの係数に基づいて応答を決定する
（ｇ）ステップ（ｅ）において推移が決定されるまで特定の物語グラフノードにおいてステップ（ｃ）から（ｆ）を繰り返す
（ｈ）ステップ（ｅ）の推移の後、ステップ（ｃ）からステップ（ｆ）を、新たな物語グラフノードにおいて新たな係数で繰り返し、対話グラフ構造における新しい位置及び新たな値の係数で開始する。
【０００９】
望ましくは、ユーザの情動状態を決定するステップは、応答を決定するステップの前に実行される。
【００１０】
望ましくは、情動状態は、ユーザの音声パラメータ及び/又は外部センサに基づいて態度又はジェスチャーに基づいて認識される。
【００１１】
望ましくは、対話推移マップの係数は、自然言語処理方法に基づいて部分的に自動的に定義される。
【００１２】
望ましくは、少なくとも１つのファジイ論理アルゴリズムを適用するステップは、ユーザの行動を考慮に入れる。
【００１３】
望ましくは、応答は、所定の言語の単語の辞書、文の意味類似性のグラフ及びそれらの使用の一連のルールに基づいて作成される。
【００１４】
望ましくは、各グラフノードにおいて、マップのフィールドの数が所定のノードから可能な出口の数に基づいた１つのマップが生成される。
【００１５】
望ましくは、推移は所定の時間の後決定される。
【００１６】
望ましくは、推移の決定は、ストップテストによるものである。
【００１７】
望ましくは、推移マップが推移に関して明確な答えを出さない場合、ノードのデフォルトの推移がある。
【００１８】
望ましくは、推移が無作為に行われたかについて推移マップが明確な答えを出さない場合、ノードの推移がある。
【００１９】
望ましくは、音声生成モジュールは、音声合成を使用する。
【００２０】
望ましくは、音声生成モジュールは、予め録音された音声を使用する。
【００２１】
本発明の他の目的は、コンピュータで実行された場合、本発明の請求項のいずれかのコンピュータ実行方法の全てのステップを実行するコンピュータで実行可能な指示を記憶する非一時的コンピュータ読取可能な記憶媒体を提供することにある。
【００２２】
本発明の他の目的は、ユーザとの対話を提供するコンピュータ実行システムであり、同システムは、以下の手段を含む：
（ａ）対話を含む物語グラフ構造として対話のプロットシナリオを作成する
（ｂ）物語グラフノードに対話の推移マップの係数を割り当てる
（ｃ）所定のコンテクストにおいて認識される音声入力及び現在の物語のグラフノードに表される対話の段階を提供する
（ｄ）ユーザの音声あるいはユーザの他の行動に基づいて対話の係数を更新するアルゴリズムを適用する
（ｅ）ユーザの音声及び推移マップにおける他の係数を使って他の物語グラフノード（対話あるいはプロットの段階）への推移を決定するあるいは推移マップにおける位置を更新して対話を同じ物語グラフノードで継続する少なくとも一つのファジイ論理アルゴリズムを適用する
（ｆ）物語グラフの係数に基づいて応答を決定する
（ｇ）ステップ（ｅ）において推移が決定されるまで特定の物語グラフノードにおいてステップ（ｃ）から（ｆ）を繰り返す
（ｈ）ステップ（ｅ）の推移の後、ステップ（ｃ）からステップ（ｆ）を、新たな物語グラフノードにおいて新たな係数で繰り返し、対話グラフ構造における新しい位置及び新たな値の係数で開始する。
【図面の簡単な説明】
【００２３】
本発明の目的は、以下の図面の例示的な実施形態において説明される。
【図１】図１は、ゲームの一部の単純なシナリオのグラフ構造の一例を示す図である。
【図２】図２は、図１における特定のグラフノードにおける可能な対話の推移の多次元マップの概略図である。
【図３】図３は、本発明に係るシステムのブロック図である。
【図４】図４は、応答の生成の例を示す図である。
【図５】図５は、本発明に係る方法を示す図である。
【発明を実施するための形態】
【００２４】
以下の詳細な説明の一部は、データ処理手順、ステップあるいはコンピュータ・メモリで実行することが可能なデータビットのオペレーションのほかの象徴的表象として示される。従って、コンピュータはそれらの論理的ステップを実行し、物理量の物理的操作が必要となる。
【００２５】
通常、それらの物理量は、コンピュータシステムで保存、転送、組み合わせ、比較及び操作することが可能な電気あるいは磁気信号という形をとる。一般的な使用法の理由で、これらの信号は、ビット、パケット、メッセージ、値、要素、記号、文字、用語、数字等と称する。
【００２６】
また、それら及び同様の用語の全ては、適当な物理量と関連付けられ、それらの物理量に適用される便利な呼び名にすぎない。「処理」、「作成」、「転送」、「実行」、「決定」、「検出」、「取得」、「選択」、「計算」、「生成」、あるいは同様の用語は、コンピュータのレジスタ及びメモリ内で物理（電子的）量として表されるデータを操作し、同様にメモリ、レジスタあるいは他の情報記憶内などで物理量として表される他のデータに変換するコンピュータシステムのアクションおよびプロセスのことを示す。
【００２７】
本発明は、対話の管理とユーザ（クライアントあるいはプレイヤー）の行動に関するスクリプト（コールセンター、ゲームプレイ等のスクリプト）を維持することに関するものである。ユーザは、対話における自身の影響を観察しなければならないが、システムは対話が主題からより離れることを許さないこともある。ゲームの場合、当然多数の物語の経路があり得る。
【００２８】
ユーザの観点からは、何を言ってもよく、対話の相手側は入力された表現に基づいていつも異なるように反応する印象が得られる対話マネージャが必要である。
【００２９】
しかしながら、実際には、物語の経路/主題を維持する必要性、事前に決められた発言を含むこと、及び対話システムを事前に決められたフレーズ及び文のデータベースに適応させる必要性があるため、対話の可能な展開のグラフは制限される。                               
【００３０】
対話のシナリオは、対話及び物語を含むグラフ構造に記憶されている。本件において、グラフ構造はシナリオの出来事の非線形性を記憶する容易さから選択された。シナリオの現在の状況は、グラフのノードにおいて配列された出来事の異なる物語の一式の係数に反映される。それらの係数は、例えば、プレイヤーに対するＮＰＣ(ノンプレイヤーキャラクター)の態度、天気、日中、以前の会話、プレイヤーのキャラクターの特徴である。
【００３１】
ユーザーは、音声の内容及びイントネーションの両方に基づいてコンピュータ（例えば、ゲームのノンプレイヤーキャラクター）と会話をすることで現在の物語に基づいて情報を受け取り、（ユーザに対する態度を含む）行動に影響を及ぼし、物語における現在の状態を変える。
【００３２】
上記の解決法を、データ処理の結果として確率的な単語ラティスを返す音声認識モジュールと一体化、及び非線形なシナリオ及び特定のキャラクターの行動のユニークさを達成する必要があるため、ある程度の自由度及び不正確さでシナリオにおける現在の位置を特定することを可能にするアルゴリズムを使用することが必要である。
【００３３】
データ処理の結果として確率的な単語ラティスを返す音声認識モジュールの一例は、「Sarmata」、「HTK」、及び「Dragon」である。
【００３４】
また、プレイヤー/ユーザは音声で、現在の一連の対話及び出来事に必ずしも関連しない話題の全ての範囲について話し合い、現在の主題のコメントを残し、以前の出来事に言及し、物語が非線形である印象が与えられるように物語の特定の点を省くことができる。本件において、発言の分析及びそれがどのように現在の物語に影響を与えるかを決定するアルゴリズムが考慮される。
【００３５】
ファジイ論理アルゴリズムを使うことによって、ユーザの音声（確率的な単語ラティスの形で音声分析モジュールから受けた）が物語グラフの係数の更新（例えば、ユーザの発言のＮＰＣの行動及びメイン・キャラクターへの態度を変え方）及び同じグラフで現在のノードから別のノードに推移する選択（出来事 に基づく対話の展開）に与える影響を図示することができる。
【００３６】
ファジイ論理アルゴリズムを使うことで、入力（ユーザの音声を表す単語ラティスは多数のエラーを含む）及び物語の現在の状態（出来事の発生の確実性をなしおよび可能性から確実までをモデル化する昨日）の両方で正確さが欠ける場合、不可避である出力におけるエラーを減らすこともできる。
【００３７】
ユーザが対話に満足する条件は、コンピュータあるいはＮＰＣの反応の巧みなシミュレーションおよびコンピュータ側のために対話の適当な経路を生成することによるユーザの行動に対するそれらの応答である。２つの変形例の可能性があるとみなされる。
【００３８】
変形例Ａ：コンピュータゲームの音声及びテキストを多数の言語に翻訳する必要があるため、既存のゲームの多くは、物語の所定の時点でプレイされる一式の所定の発言を有する。より低い線形性及び繰り返し性の印象を達成するため、交互にプレイされる同様の発言（例えば、挨拶で使われる「hi」、「hello」、「good morning」）も用意されている。この方法によりライターがゲームの物語を完全にコントロールすることが可能である。
【００３９】
変形例Ｂ：特定の言語モデル及びその文法、発言の各主題の用語、およびより長い発話の生成のルールなどの実行に関する。この方法では、より繰り返し性の低い発言を生成することができるが、特定の主題について生成される応答における多少の簡易化を回避することはできない。
【００４０】
本発明は、両方の方法の利点を組み合わせた複合型の方法である。準備された一群の発言にはその内容を説明する特性、それらが使われる感情的態度、物語においてそれらが使用される時、及びその表現を使うことができる一連のキャラクター（一連とは一人のキャラクターでもよい）が割り当てられている。
【００４１】
また、ＮＰＣの応答の一部は、所定の言語における単語の辞書、発言のグラフの意味的類似性及びそれらを使用するための一連のルール（簡易化した文法）に基づいて作成されていて所定の音声発言の別のバージョンを作成することが可能である。音声出力を生成するために本物の音声発言をより良く模倣するためＮ−gramも使用される。前記の方法は、D. Jurafsky及びJ.H. Martin氏による「音声及び言語処理」（Pearson, Prentice Hall, 2009）の引用に詳細に示されている。
【００４２】
発言の可能な主題は、物語の構想に関係のない質問（時間、場所、天気等に関する質問）も含む。コンピュータの可能な音声応答は、選択されたパラメータの値（物語のグラフの現在の状態、ＮＰＣの現在の状態、コンピュータのキャラクターのユーザに対する態度）に基づいて生成される。図４に例示されるように、システムの応答は、ＮＰＣの態度（図４右側と左側に見える）に基づいて生成される。発言は、各部分の断片を一つずつ選択することで準備される。
【００４３】
ゲームは、ユーザの情緒状態を考慮し影響を及ぼす場合がある。最初の状態は、交渉である。交渉においてユーザは、コミュニケートし、特定の問題を解決することに集中し、適当な解決法を探すように勧められる。ユーザは、目的に集中し、利益を最大にすることに関わる。２つ目の状態は、説得である。説得は、ユーザが問題を解決しようとする状態を作るのに使用される。３つ目の状態は服従である。服従は、ユーザが所定の利益を得るために少しの異議もなく従おうとする状態である。
【００４４】
これらのふるまいは、物語によって定義されるコンテクストにおいて分離できない一部である。ユーザの現在の情緒状態の探知及び適当な分類によりユーザの態度に関するフィードバックがシステムに提供される。それらの探知の例はキーワード、プレイヤーの音声に基づく感情認識（高音、より早く話す等）及び/又は外部センサーに基づくジェスチャー及び姿勢認識（例えば、Microsoft Kinect）である。
【００４５】
これによりコンテクストの物語を変更することが可能になり（例えば、コンピュータゲームあるいはオンラインショッピングセッション）、結果としてユーザの介入を増やしながらよりスムーズでバランスの取れた対話ができる。
【００４６】
物語における所定の時間において、それぞれのコンピュータキャラクター（ＮＰＣなど）は、ユーザ（例えば、プレイヤー）に対して所定の態度を取る。対話における次のせりふの定義及び選択において考慮される。対話のせりふを生成するのためのアルゴリズムの観点では、辞書における特定の限られた文及び単語の中から文を選択することを意味する。コンピュータキャラクターのシミュレートされた情緒状態に応じて、ユーザの発言を無視してコンピュータキャラクターが主題を変えて、ユーザを物語に重要な主題に導くことも可能である。
【００４７】
図１は、ゲームの一部の単純なシナリオのグラフ構造の例を示すものである。この場合は、プレイヤーがアイテムを購入するＮＰＣとの対話である（１）。会話が開始する時、プレイヤーに対するＮＰＣの態度は中立である（a）。会話の始めにおけるプレイヤーによる挨拶あるいは雑談などの発言（２）は、ＮＰＣの態度をプレイヤーに対して否定的な態度（ｃ）あるいは肯定的な態度（ｄ）に変更、あるいは中立的なままにし得る。
【００４８】
両方の出力は、対話の経路の別の部分に対話を否定的な挨拶の場合は（３）に、肯定的あるいは中立的な場合は（４）に続けさせる。（３）の状態から、おだてることで（２）の状態に戻る（ｂ）、あるいは否定的に会話を続け（ｆ）ＮＰＣがプレイヤーに対してとてもいらいらした状態に対話を導く（５）ことができる。イラつきが少なくとも部分的に減ることで、プレイヤーとの会話を終了に導く（i）一方で、いらつきが増すことはプレイヤーに対する攻撃の原因となる（ｊ）。
【００４９】
出会いの後に否定的な反応以外の役割を持つ対話システムの場合（４）、プレイヤーは値段の交渉に専念する対話を開始するかもしれない。安すぎる値段を指定すると、売り手は怒り（ｅ）対話システムのオプション（３）が可能になる。プレイヤーは、平均的な値段を提示して（ｇ）対話システム状態（６）あるいは高い値段を提示して（ｈ）対話システム状態（７）に導くことができる。
【００５０】
対話システム状態（６）においてはアイテムの購入を完了し（ｋ）、システム状態（７）においては購入を完了し、プレイヤーに刺激的な新しい役目が提供される（ｊ）。対話の異なる部分の間の推移は、異なるキーワード（及び同様の概念/用語のグラフに収集されたそれらの変形）の使用及びキャラクターの特徴及プレイヤーに対する態度あるいはゲームの全体的な状況など、現在の物語 の要因に左右される。
【００５１】
水平な点線は、前の断片に戻ることが不可能となる境界線を越えた別の物語の一部を示すものである。これらは、物語を作成するのに役立つが、本発明においては任意のものである。例えば、記述の値段を交渉する会話をする行為は、売り手がプレイヤーのこと及び最初の結果を覚えていて、同じ様に会話をまた開始することは不可能であることを意味する。
【００５２】
いずれの場合でも、例えば、プレイヤーが（４）において値段に関する会話を始めないなど、プレイヤーが特定のキーワードを使わない可能性があり、結果として対話システムの状態が変化する。その場合、しばらくの間、対話システムは会話を続け、最終的には無作為あるいは予め決められたデフォルトの経路に従って対話システムの別の部分に切り替わる。（４）の場合、購入なしで会話を終了させる（ｅ）でもよい。
【００５３】
対話の部分の間の推移に関する決定は、図２の概略図における推移の多次元マップに基づく。
【００５４】
図２は、問題の多次元性（現実的な応用においては数十及び数百の次元）のため単純化されている。各次元は、同様の概念/用語の集まりである特定の単語のグループ、あるいはプレイヤーのキャラクターの特徴、ゲームにおける以前の出来事、更に天気、時間、あるいはゲームの世界の状態など対話の経過に影響を及ぼす他の要因に相当する。図２において記されたフィールド１、２、３は、対話の部分の結果に影響を及ぼす。
【００５５】
図１の各ノード（１）から（７）には図２に示されるように１つのマップが生成される。フィールドの数は、所定のノード（対話システム）からの可能な出口の数による。従って、３つの出口がある図２の例は、図１のノード（４）を示す。フィールドの境界は、確定関数あるいはファジイ論理による確立によって決定される（L. Zadeh, 「ファジイセット」、Information and Control, vol 8, pp. 338-353, 1965.）。その結果、フィールドは重なる可能性がある。また、対話のスペースの断片がどのフィールドにも当てはまらない可能性もある。
【００５６】
プレイヤーとＮＰＣとの間で文の短いやりとりが行われた後、対話の断片で満たされる、特定のウエイトで特徴がカウントされる。そのようなウエイトに影響する要素は、例えば、キーワード、物語の特徴、天気、同じキャラクターとの以前の会話、及びプレイヤーのキャラクターの特徴である。ウエイトは、ＮＰＣのデザインに左右される。
【００５７】
言葉のウエイトは、音声認識のラティスから直接得られるされるため特定の確立で設定される。これは、音声認識システムの不完全性から直接 従う。最も可能性のありそうな仮説が正解であると仮定して特徴として使うことは、間違った判断につながる。
【００５８】
より良い解決法は、多数の仮説の確立を明示的に入力することである。これにより、他の要因により変更された対話の経過を測定する点がスペースに設定される。３つの状況が可能である：スペースにおける点は、どの部分とも重ならない、１つあるいはそれ以上と重なる。どれとも重ならない場合、物語の現在のノードを変更する決定は、ゲームのデザイナーの決定に従って行われ、会話は現在のノード（対話システム）で続けられるか、そのノードはデフォルトの出口により抜け出す。ぴったり１つの部分がマップにおいて選択された点と重なる場合、推移はその部分に相当する出口により行われる。その点が幾つかの部分と重なる場合、アフィリエーション関数（affiliation function）の値に基づいて所定の点における特定の部分への出口を１つ選択ために選択関数が実行される。
【００５９】
図２に示されるマップの次元である一連の言葉は如何なる単語クラスタリングの方法によって決定される。
【００６０】
例えば：
-J.R. Bellegarda, “A latent semantic analysis framework for large-span language modeling,” Proceedings of Eurospeech, vol. 3, pp. 1451-1454, 1997;
-J.R. Bellegarda, “Latent semantic mapping,” IEEE Signal Processing Magazine, vol. September, pp. 70-80, 70-80;
-Y. Deng and S. Khudanpur, “Latent semantic information in maximum entropy language models for conversational speech recognition,” Proceedings of the HLT-NAACl 03, pp. 56-63, 2003;
-D. Jurafsky, J.H. Martin, “Speech and Language Processing,” Pearson, Prentice Hall, 2009
-B. Ziolo, S. Manandhar, R. Wilson, “Bag-of-words Modelling for Speech Recognition”, 2009 International Conference on Future Computer and Communication;
-E. Agirre, E. Alfonseca, and O.L. de Lacalle, “Approximating hierarchy-based similarity for wordnet nominal synsets using topic signatures,” Proceedings of the 2nd Global WordNet Conference. Brno, Czech Republic, 2004;
-G. Gorrell and B. Webb, “Generalized Hebbian algorithm for incremental latent semantic analysis,” proceedings of Intespeech, 2005.
【００６１】
システムの全体が所定のノードにいた時間の経過を追うことが重要である。この時間は、ゲームの対象である人々に直接影響を与えるため、ゲームの物語のクリエータにより決定される。３０秒のデフォルト値を予め定めても良いし、例えばJohn E. Dennis氏及びRobert B. Schnabel氏による 「Numerical Methods for Unconstrained Optimization and Nonlinear Equations（制約なき最適化及び非線形方程式の数値解析法）」、SIAM、1983年において記載されている良く知られたストップテストの最適化法の一つを使用して部分のマップにおける値がどう変化するかに基づいて決定するアルゴリズムを指定してもよい。
【００６２】
マップの１つの部分において十分に高い値（適当な応答だという高信頼度）を得るためにノードから出ることを強制される場合がある。その値は、定期的に増加することが可能であり、会話は対話マップに比較的に大きな変化があるまで続けられもよい。ノードは、作動を終了し、点の位置が安定すると終了することができる。
【００６３】
例えば、特定の時間の間会話を強制してその後、時間と共に閾値は低下するが、１つのフィールドの閾値まで会話を続けるように上記の方法を統合してもよい。
【００６４】
図２においてa、b及びｃの点を繋げる線は、会話の異なる段階においてコンテクストがどこに置かれるかを決定する点が沿って移動する線である。それは、会話の主題及び前述の係数への固執性を定義する。
【００６５】
上記構成は特定の対話に関するものである。同様により大きなゲームのループに拡大することができる。その場合、ノードは、例えば個別のＮＰＣとの対話であり、マップは、個別の対話の結果、会話の後のＮＰＣのプレイヤーに対する態度、プレイヤーの特徴及びゲームのデザイナーが作成したユーザのキャラクターの運命に影響を与える他の如何なる要因を示す。
【００６６】
対話のせりふの生成は、例えばジュラフスキー（Jurafsky）氏による「音声及び言語処理（Speech and Language Processing）」に記載されている、技術分野において知られている標準方法で行われる。音声合成あるいは予め録音された人が話すサンプルを使用することで実行が可能になる。
【００６７】
図３は、本発明に係るシステムのブロック図である。音声認識を使用する対話システムは、一人あるいは複数の人３０１と対話する。人３０１は、マイクに話すことで質問あるいは一般的な発言を入力する。マイクが登録した音は、音声認識モジュール３０２により処理されその後、認識の仮説が自然言語を理解するモジュール３０３に届けられる。そのモジュールで処理された後、音声データは、プロット管理モジュール３０６及びプロットコンテクスト係数３０７と連携して領域知識データベースに問い合わせることによりユーザの発言に対する応答を決定する対話マネージャ３０４に転送される。応答が決定された後、自然言語を生成するモジュール３０８、続いて音声生成モジュール３０９において自然言語応答が生成される（音声合成あるいは予め録音されたフレーズを再生）。生成された応答音声は、システムにインストールされたスピーカーを通って人３０１に出力される。
【００６８】
上記のように本発明に係る方法は、図５に示されるように要約されている。プロセスは、対話を含む物語グラフ構造として対話のプロットシナリオを作成するステップ５０１から始まる。次に、ステップ５０２において、対話推移マップの係数が物語グラフノードに割り当てられる。ステップ５０１および５０２は、ゲームの製造中のものである。次のステップは、プレー中に行われる。そして、ステップ５０３において、所定のコンテクスト及び現在の物語グラフノードが示す対話の段階において認識される音声入力が提供される。更に、ステップ５０４において、ユーザの音声あるいはユーザの他の行動に基づいて対話の係数を更新するアルゴリズムが適用される。次にステップ５０５において、ユーザの音声及び推移マップにおけるほかの係数を使用して別の物語グラフノード（対話あるいはプロットのphase）への推移を決定、あるいは推移マップにおける位置を更新して対話を同じ物語グラフノードで続ける少なくとも１つのファジイ論理アルゴリズムが適用される。そして、ステップ５０６においてユーザの情緒状態が確定され、最後にステップ５０７において物語及びユーザの情緒状態の係数に基づく応答の決定が実行される。ステップ５０３から５０７は、ステップ５０５において推移が決定されるまで特定の物語グラフノードで繰り返される。ステップ５０５における推移の後、ステップ５０３から５０７は、新たな物語グラフノードにおいて新たな係数で繰り返され、対話グラフ構造における新しい位置及び新たな値の係数で開始される。
【００６９】
ユーザとの対話を提供する上記のコンピュータ実行方法は、１つあるいはそれ以上のコンピュータプログラムにより実行及び/又は制御可能であることは、当業者により容易に認識されるものである。そのようなコンピュータプログラムは、通常、パーソナル・コンピュータ、携帯情報端末、携帯電話、レシーバー及びデジタルテレビのデコーダーあるいは同様のものなどのコンピュータデバイスにおけるコンピューティング資源を利用することにより実行される。アプリケーションは、固定媒体に保存されている。固定媒体の例は、例えばフラッシュメモリあるいはＲＡＭ等の揮発性メモリなどの不揮発性メモリである。コンピュータの指示は、プロセッサにより実行される。これらのメモリは、本件において示される技術的概念に係るコンピュータ実行方法の全てのステップを実行するコンピュータ実行可能な指示を構成するコンピュータプログラムを記憶する例示的な記録媒体である。
【００７０】
上述の発明は、特定の好ましい実施例に関して記載、説明及び定義されたが、本明細書における実施の参考及び例は、本発明を制限するものではない。当該技術的概念のより幅広い範囲から逸脱しないように多様な修正及び変更を行うことが可能なことは明らかである。上記の好ましい実施例は、単に例示的なものであり、上記の技術的概念の範囲を完全に示すものではない。
【００７１】
従って、保護される範囲は、本明細書において説明される好ましい実施例に限られるものではないが、以下のクレームだけにより限られる。
【図１】
2015155932.tif 000003
【図２】
2015155932.tif 000004
【図３】
2015155932.tif 000005
【図４】
2015155932.tif 000006
【図５】
2015155932.tif 000007
【外国語明細書】
2015155932000001.pdf