JP2005118372A - ゲーム機、ゲームの実行方法、並びにこれらのためのプログラム - Google Patents

ゲーム機、ゲームの実行方法、並びにこれらのためのプログラム Download PDF

Info

Publication number
JP2005118372A
JP2005118372A JP2003358075A JP2003358075A JP2005118372A JP 2005118372 A JP2005118372 A JP 2005118372A JP 2003358075 A JP2003358075 A JP 2003358075A JP 2003358075 A JP2003358075 A JP 2003358075A JP 2005118372 A JP2005118372 A JP 2005118372A
Authority
JP
Japan
Prior art keywords
information
character
game
unit
topic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003358075A
Other languages
English (en)
Other versions
JP4204044B2 (ja
Inventor
Nobukatsu Hiranoya
信勝 平野谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Universal Entertainment Corp
Original Assignee
Aruze Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Aruze Corp filed Critical Aruze Corp
Priority to JP2003358075A priority Critical patent/JP4204044B2/ja
Publication of JP2005118372A publication Critical patent/JP2005118372A/ja
Application granted granted Critical
Publication of JP4204044B2 publication Critical patent/JP4204044B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

【課題】 駆け引き(ブラフ、はったり)を仕掛けられたゲーム機がその駆け引き(ブラフ、はったり、など)に応じて自然人のような感情変化を起こすことが可能な技術を提供する。
【解決手段】 ユーザからの発話に応答する回答文を出力する会話処理部と、ユーザとキャラクタとの対戦ゲームを実行するゲーム処理部とを有するゲーム機において、会話処理部は、複数の話題特定情報を記憶する会話データベース手段と、従前の会話及び従前の回答文により定まる談話履歴を記憶し、この談話履歴により定まる話題特定情報と発話情報とを照合して、キャラクタの感情を示す感情状態情報に応じた回答文を選択するとともに、キャラクタの行動を決定するための情報を出力する会話制御手段とを有し、ゲーム処理部は、キャラクタの行動を決定するための情報に基づいてゲームを実行する。
【選択図】 図1

Description

本発明は、ゲーム機、ゲームの実行方法、並びにこれらのためのプログラムに関し、より詳しくはユーザの発話内容に応じたゲーム進行を行うことが可能であって、ユーザがいわゆるブラフをかけた場合にはそのブラフに応じてゲーム進行するゲーム機に関する。
近年の音声分析技術・音声認識技術の発展に伴い、ユーザの自然音声を入力として受け付け、この入力に対して所定の応答をなすマン−マシン・インターフェイスを用いた会話システムが普及しつつある。このような会話システムの例として、単なるキーワードマッチングではなく、会話の履歴、話題の推移などが加味された自然な会話に近い対話を人間対機械の間で成立させる会話システムが提案されている(例えば、特許文献1)。
このような会話システムを用いビジネス・応用技術としては会話システムを用いたエンターテイメント(例えば、家庭用・業務用ゲーム)が考えられる。一例としては、モニターに表示されるキャラクタ(仮想人格)と会話し、会話に基づいてゲームを進めるゲームソフトや、或いはゲームを行いつつキャラクタと会話をおこなう(会話の内容がゲームの勝敗・進行に影響を与えない)ゲームソフトなど、主体となるゲームに副次的構成要素として会話システムを組み込むことが考えられている。
特開2002−358304号公報
一般的に、ゲームにおいては、プレーヤがゲームの進行に必要な行動をとる(カードを取る/捨てる、駒を動かす、牌を捨てる、ターンを消費する、など)こととは別に、対戦者間でさまざまな駆け引きが行われることが多い。駆け引きの方法としては、表情の変化、仕草の他に、発言/発話による方法がある。プレーヤは、対戦相手の発言があると、その発言が本当なのか嘘なのか迷いつつも、その発言内容を参考にして、自分の戦況がさらに有利になるような次の行動を取ろうとする。このような駆け引きは、ゲームの進行・勝敗などに少なからぬ影響を与える心理戦の側面を有しており、この駆け引きが行われることでゲームの面白み、スリリングさがさらに増大することは衆人に明らかなところである。
従来の会話システムを有するゲームにおいては、ゲーム機(CPU)との対戦において、ゲーム機(CPU)が次の行動を取るための評価対象は、主にプレーヤがゲーム中に選択した操作である。従来の会話システムを有するゲームは、プレーヤの発言/発話に対する応答・回答は行うが、プレーヤの発言/発話に応じて次にゲーム機(CPU)が取る行動が左右される処理は行われておらず、プレーヤがゲーム機(CPU)との対戦において発言/発話による駆け引きを行うことはできなかった。
また、駆け引きの結果、プレーヤの発言/発話がいわゆるブラフ(はったり、かまし)であった場合、対戦相手はこのブラフ(はったり、かまし)に対する感情変化(怒り、驚き、など)を起こすのであるが、従来のゲームでは、このような感情変化を再現することは行われていなかった。
本発明の目的は、会話機能を利用してプレーヤがゲーム機(CPU)に駆け引き(ブラフ、はったり、など)を仕掛けることが可能な技術を提供することにある。
本発明の別の目的は、駆け引き(ブラフ、はったり)を仕掛けられたゲーム機がその駆け引き(ブラフ、はったり、など)に応じて自然人のような感情変化を起こすことが可能な技術を提供することにある。
上記課題を解決するための手段として、本発明は以下のような特徴を有する。
本発明の第1の態様は、ユーザ(プレイヤ)からの発話に応答する回答を出力する会話処理部(会話制御装置)と、ユーザとキャラクタとの対戦ゲームを実行するゲーム処理部(ゲーム装置)とを有するゲーム機(ゲームシステム)として提案される。
このゲーム機において、会話処理部は、複数の話題特定情報を記憶する会話データベース手段(会話データベース)と、従前の会話及び従前の回答文により定まる談話履歴を記憶し、この談話履歴により定まる話題特定情報と発話情報とを照合して、キャラクタの感情を示す感情状態情報に応じた回答文を選択するとともに、キャラクタの行動を決定するための情報(対応行動フラグ)を出力する会話制御手段(会話制御部)とを有し、ゲーム処理部は、キャラクタの行動を決定するための情報に基づいてゲームを実行することを特徴としている。
このゲーム機によれば、ユーザがいわゆるブラフをかけてキャラクタとの駆け引きを行うことが可能となり、よりゲームの戦術・戦略と取りうる幅が広くなるとともに、ユーザが実際の人間と対戦する場合と同様の楽しみを与えることが可能となる。
ここで、「発話」は必ずしも音声でなくともよく、キーボードなどの文字入力手段により生成された文字列データであってもよい。「回答」は、音声、画面表示された文字列のいずれでなされるものでもかまわない。また、本発明では「ゲーム」とは、娯楽目的のもののみならず、教育目的、研究目的などの娯楽以外の目的を有するゲームを含む。「対戦」は必ずしも一対一の対戦形式に限られない。一対多、多対多の形式であってもユーザとキャラクタとの間で利害が対立する状態でゲームが進行するものであれば、ここにいう「対戦」に含まれる。また、「発話情報」とは、ユーザが発した、一つのまとまりを有する言葉の集合をいい、例えば、一つの文(一部が省略された省略文を含む)である。「話題特定情報」とは、ユーザとゲーム機が演じるキャラクタ間の会話のテーマを把握するための情報である。上記各様語の意味は、以下の第2,第3の態様においても同様である。
また、このゲーム機において、感情状態情報を管理する感情状態情報管理手段と、会話処理部に入力されたユーザの発話内容とゲーム処理部に入力されたユーザの行動命令情報とを比較し、比較結果に基づいて感情状態情報の変更を行わせるユーザ行動評価手段とをさらに有するようにしてもよい。
ここで、「ユーザの行動命令情報」とは、ユーザがゲームシステムが有する入力手段により、ゲームシステムに自己がゲーム上取る行動を伝達するための情報をいい、たとえば麻雀ゲームにかかるゲームシステムにおいては、捨牌の選択、ポン、チー、カン、リーチ、ロン、ツモなどの行動を取る命令である。
このようなゲーム機によれば、キャラクタはユーザがいわゆるブラフをかけていた場合、ユーザの発言がブラフであったことに対する感情の変化を示し、よりリアルなキャラクタの反応を実現することが可能となる。
また、このゲーム機において、ゲーム処理部は感情状態情報に基づいてキャラクタの表示を制御するようにしてもよい。
このゲーム機によれば、ブラフに対して表情や動作を変化させるキャラクタを演出することができる。
本発明の第2の態様は、ユーザとキャラクタとの対戦ゲームを実行するゲームの実行方法として提案される。
このゲームの実行方法は、ユーザとキャラクタとの間の会話での話題を特定するための話題特定情報と、回答文と、キャラクタの行動を決定するための情報(対応行動フラグ)を予め記憶させるステップと、従前の会話及び従前の回答文により定まる談話履歴を記憶させ、この談話履歴により定まる話題特定情報と発話情報とを照合して、キャラクタの感情を示す感情状態情報に応じた回答文と、キャラクタの行動を決定するための情報とを取得するステップと、キャラクタの行動を決定するための情報に基づいて、キャラクタの取る行動を決定するステップとを有することを特徴としている。
このゲーム実行方法によれば、ユーザがいわゆるブラフをかけてキャラクタとの駆け引きを行うことが可能となり、よりゲームの戦術・戦略と取りうる幅が広くなるとともに、ユーザが実際の人間と対戦する場合と同様の楽しみを与えることが可能となる。
本発明の第3の態様は、ユーザとキャラクタとの対戦ゲームを実行するゲームの実行方法として提案される。
この方法は、ユーザとキャラクタとの間の会話での話題を特定するための話題特定情報と、回答文と、キャラクタの感情変化を示す感情変数(感情フラグ)と、キャラクタの行動を決定するための情報(対応行動フラグ)とを予め記憶させるステップと、従前の会話及び従前の回答文により定まる談話履歴を記憶させ、この談話履歴により定まる話題特定情報と発話情報とを照合して、照合結果に基づいて回答文と、感情変数と、キャラクタの行動を決定するための情報とを取得するステップと、感情変数に基づいてキャラクタの感情を示す感情状態情報を更新するステップと、キャラクタの行動を決定するための情報に基づいて、キャラクタの取る行動を決定するステップと、ユーザの発話を受け付けるステップと、ユーザが入力する行動命令情報を受け付けるステップと、ユーザの発話内容とユーザの行動命令情報とを比較して、比較結果に基づいて感情状態情報の変更を行うステップとを有することを特徴としている。
このようなゲームの実行方法によれば、キャラクタはユーザがいわゆるブラフをかけていた場合、ユーザの発言がブラフであったことに対する感情の変化を示し、よりリアルなキャラクタの反応を実現することが可能となる。
また、このゲームの実行方法において、ゲーム処理部は感情状態情報に基づいてキャラクタの表示を制御するようにしてもよい。
このゲームの実行方法によれば、ブラフに対して表情や動作を変化させるキャラクタを演出することができる。
なお、第1の実施の態様は、第1の実施の態様にかかるゲーム機としてコンピュータを機能させるためのプログラムとしても成立する。また、第2,第3の態様はそれぞれゲームの実行方法をコンピュータに実行させるためのプログラムとしても成立する。
本発明によれば、いわゆるブラフ(はったり)のようにユーザの発言内容が実際にユーザが取った行動と一致しない場合に、そのような行動に対してキャラクタが反応するゲーム機、ゲームの実行方法、並びにこれらのためのプログラムを提供することができる。
以下、図面を参照しながら本発明の実施の形態について説明する。本実施の形態は、ユーザの音声を受け付け可能なゲームシステムに関するものである。以下、このゲームシステムについて説明する。
[ゲームシステムの構成例]
図1は、ゲームシステムの構成例を示すブロック図である。ゲームシステムGSは、会話制御装置1と、ゲーム装置2とを有している。ゲームシステムGSは、さらに会話制御装置1及びゲーム装置2に接続された音声入力手段3と、ゲーム装置2に接続された非音声入力手段4と、ゲーム装置2に接続された画像出力手段5と、会話制御装置1及びゲーム装置2に接続された音声出力手段6とを有している。
会話制御装置1は、ユーザと会話制御装置1との間での会話が成立するように、ユーザの発話に応じて回答を返す機能を有する。
ゲーム装置2は、ユーザの入力に応答して所定のゲーム処理を実行し、実行結果を利用者(ユーザ)に提示する機能を有する。なお、ゲームシステムGSが扱うゲームの種類はどのようなものでもよいが、本実施の形態では対戦型ゲームである麻雀ゲームを扱うゲーム装置2について説明する。
会話制御装置1及びゲーム装置2はそれぞれ、たとえばコンピュータ、ワークステーションなどの情報処理装置であって、演算処理装置(CPU)、主メモリ(RAM)、読出し専用メモリ(ROM)、入出力装置(I/O)、ハードディスク装置等の外部記憶装置を具備している装置で構成されている。前記ROM、もしくは外部記憶装置などに情報処理装置を会話制御装置1及び/又はゲーム装置2として機能させるためのプログラム、もしくは会話制御方法及び/又はゲームの実行方法をコンピュータに実行させるためのプログラムが記憶されており、該プログラムを主メモリ上に載せ、CPUがこれを実行することにより会話制御装置1及び/又はゲーム装置2が実現される。また、上記プログラムは必ずしも当該装置内の記憶装置に記憶されていなくともよく、磁気ディスク、光ディスク、光磁気ディスク、CD(Compact Disc)、DVD(Digital Video Disc)などのコンピュータ読み取り可能なプログラム記録媒体や、外部の装置(例えば、ASP(アプリケーション・サービス・プロバイダのサーバなど)から提供され、これを主メモリに乗せる構成であっても良い。
また、図1では、会話制御装置1とゲーム装置2とを互いに独立した装置として表示しているが、会話制御装置1とゲーム装置2とを互いに独立した装置である必要はなく、演算処理装置(CPU)、主メモリ(RAM)、読出し専用メモリ(ROM)、入出力装置(I/O)、ハードディスク装置等の外部記憶装置を共通に使用して、同一ハードウエアによって会話制御装置1とゲーム装置2を実現する構成としてもかまわない。
音声入力手段3は、ユーザの音声信号を電気信号、光信号など所定の信号に変換して会話制御装置1及びゲーム装置2に供給する機能を有し、たとえば音声入力用マイクである。音声入力手段3は、会話制御装置1がプログラム等によって実現する疑似人格(キャラクタ)に対する発話の入力とともに、ゲームに関する入力(例えば、ポンをする、リーチをかける、ロンをする)を受け付ける。
非音声入力手段4は、音声入力以外のユーザによる入力をゲーム装置2に提供する機能を有し、例えば、キーボード、ジョイスティック、コントローラ、ポインティングデバイスなどである。これにより、ユーザはゲームに必要な入力、たとえば牌をつもる、牌を捨てる、ポンをする、リーチをかける、ロンをするなどをゲーム装置2に伝えることができる。
画像出力手段5は、ゲーム装置2がゲームの進行に従って生成するゲーム画面をユーザに表示する機能を有し、例えば、液晶ディスプレイ装置などである。
音声出力手段6は、会話制御装置1がキャラクタ(疑似人格)の回答文として出力した内容を音声信号として出力し、またゲームに関する音声/音響(効果音、BGMなど)を出力する機能を有し、たとえばサウンドボード、スピーカなどである。
[ゲーム装置]
次に、図2を参照しながらゲーム装置2の構成例について説明する。
ゲーム装置2は、前述のように、演算処理装置(CPU)、主メモリ(RAM)、読出し専用メモリ(ROM)、入出力装置(I/O)、ハードディスク装置等の外部記憶装置を具備している情報処理装置であって、所定のプログラムを情報処理装置で実行することにより、ゲーム装置2およびゲーム装置2を構成する以下の構成要素が実現される。
図2は、ゲーム装置2の構成例を示すブロック図である。ゲーム装置2は、文字列/命令変換部201と、ゲーム進行制御部202と、画像処理部203と、音声処理部204とを有している。
文字列/命令変換部201は、会話制御装置1から送られる、ユーザの発話を文字列情報を所定のコマンドに変換する機能を有し、たとえばユーザが「ポン!」と発話した場合、文字列/命令変換部201は、会話制御装置1から送られる文字列情報「ポン」を「ポン」の実行コマンドに変更してゲーム進行制御部202に渡す。なお、ユーザの発話の内、ゲームの進行に関係ないもの(「こんにちは」「名前は?」)については、文字列/命令変換部201は何らの出力をしない。
ゲーム進行制御部202は、ユーザの入力に応じてゲームを進行させ、かつ進行に従って、画面表示のためのデータ、音声出力のためのデータを指定する機能を有する。
図3は、ゲーム進行制御部202の構成例を示すブロック図である。
図に示すように、ゲーム進行制御部202は、キャラクタ行動決定部202Aと、ゲーム進行管理部202Bと、キャラクタ制御部202Cとを有している。
キャラクタ行動決定部202Bは、会話制御装置1からの思考ルーチン指定命令を受け取り、この思考ルーチン指定命令に応じて、ゲームシステムGSが演じるキャラクタが取る、ゲームを進行させるための行動(例えば、麻雀ゲームにおける、手牌の中から捨牌を選択して捨てる、プレーヤの捨て牌に対してポンする、チーする、カンする、ロンする、自模を宣言する、リーチを宣言する、などの行動)を決定する機能を有する。
キャラクタ行動決定部202Aは、複数の思考ルーチン202A〜202Aを有している。思考ルーチン202A〜202Aはそれぞれ異なるルーチンであって、異なる戦略/戦術に基づいて、ゲームを進行させるための行動を決定する。たとえば思考ルーチン202Aは、手作りのスピードを重視し、得点の多寡は重視しない戦略/戦術に基づく思考ルーチンであり、思考ルーチン202Aは、点数の高い役作りを重視し、聴牌のスピードは重視しない戦略/戦術に基づく思考ルーチンであり、…、思考ルーチン202Aは、守り重視で、聴牌を捨てても振り込みをしないという戦略/戦術に基づく思考ルーチンである。
ゲームを進行させるための行動は、これら複数の思考ルーチン202A〜202Aのいずれか一によって決定される。なお、どの思考ルーチンを選択するかは、ユーザ(プレーヤ)の発話内容によって会話制御装置1が発する思考ルーチン指定命令によって定まるようになっている。
また、キャラクタ行動決定部202Aは、思考ルーチン指定命令によらずとも、ゲームに関する状況(持ち点、ゲーム終了までの残り時間)に基づいてどの思考ルーチンを用いるかを決定することができる。
ゲーム進行管理部202Bは、ゲームの進行を管理する機能を有する。例えば、麻雀ゲームを例とすれば、ゲーム進行管理部202Bは、ヤマに積まれる牌の配列、配牌の決定、ユーザ、キャラクタの手牌の把握、上がりの判定、得点の計算などゲームの開始からゲームの終了までのすべての管理を行い、管理しているゲームの状態に応じてどのような画像を表示させるか、どのような音声を出力させるかを決定し、画像処理部203、音声処理部204に決定した画像、音声の出力を命令する。
キャラクタ制御部202Cは、キャラクタの感情を示す感情状態情報を参照して、どのようなキャラクタの画像を表示するかを決定し、ゲーム進行管理部202Bに通知する。例えば、感情状態情報が「喜び」を示しているときには、キャラクタ制御部202Cは笑顔のキャラクタ画像を表示するよう、ゲーム進行管理部202Bに通知する。
図2に戻り、ゲーム装置2の構成例について説明を続ける。
画像処理部203は、ゲーム進行制御部202から指定された画面表示のためのデータを予めゲームに必要な画像データを記憶している記憶部(図略)から読み出し、これを画像出力手段5に提供する。
音声処理部204は、ゲーム進行制御部202から指定された画面表示のためのデータを予めゲームに必要な音声データ・音響データを記憶している記憶部(図略)から読み出し、これを音声出力手段6に提供する。
[会話制御装置の構成例]
次に、ゲームシステムGSの構成要素である会話制御装置1の構成例について説明する。
[全体構成]
図4は、本実施の形態に係る会話制御装置1の概略構成を示す機能ブロック図である。会話制御装置1は、前述のように、演算処理装置(CPU)、主メモリ(RAM)、読出し専用メモリ(ROM)、入出力装置(I/O)、ハードディスク装置等の外部記憶装置を具備している情報処理装置であって、所定のプログラムを情報処理装置で実行することにより、会話制御装置1および会話制御装置1を構成する以下の構成要素が実現される。
図3に示すように、会話制御装置1は、音声認識部200と、会話制御部300と、文解析部400と、会話データベース500と、音声認識辞書記憶部600と、感情状態情報管理部700と、ユーザ行動評価部800とを備えている。
[音声認識部]
音声認識部200は、音声入力手段3から提供される、発話に応じた信号に基づいて、発話内容に対応する文字列を特定するものである。具体的には、音声入力手段3から音声信号が入力された音声認識部200は、この音声信号を、音声認識辞書記憶部600に格納されている辞書および会話データベース500と照合して、音声信号から推測される音声認識結果を出力する。なお、図4に示す構成例では、音声認識部200は、会話制御部300に会話データベース500の記憶内容の取得を要求し、会話制御部300が要求に応じて取得した会話データベース500の記憶内容を受け取るようになっているが、音声認識部200が直接会話データベース500の記憶内容を取得して音声信号との比較を行う構成であってもかまわない。
[音声認識部の構成例]
図5に、音声認識部200の構成例を示す機能ブロック図を示す。音声認識部200は、特徴抽出部200Aと、バッファメモリ(BM)200Bと、単語照合部200Cと、バッファメモリ(BM)200Dと、候補決定部200Eと、単語仮説絞込部200Fを有している。単語照合部200C及び単語仮説絞込部200Fは音声認識辞書記憶部600に接続されており、候補決定部200Eは会話制御部300に接続されている。
単語照合部200Cに接続された音声認識辞書記憶部600は、音素隠れマルコフモデルを(以下、隠れマルコフモデルをHMMという。)を記憶している。音素HMMは、各状態を含んで表され、各状態はそれぞれ以下の情報を有する。(a)状態番号、(b)受理可能なコンテキストクラス、(c)先行状態、及び後続状態のリスト、(d)出力確率密度分布のパラメータ、及び(e)自己遷移確率及び後続状態への遷移確率から構成されている。なお、本実施形態において用いる音素HMMは、各分布がどの話者に由来するかを特定する必要があるため、所定の話者混合HMMを変換して生成する。ここで、出力確率密度関数は34次元の対角共分散行列をもつ混合ガウス分布である。また、単語照合部200Cに接続された音声認識辞書記憶部600は単語辞書を記憶している。単語辞書は、音素HMMの各単語毎にシンボルで表した読みを示すシンボル列を格納する。
話者の発声音声はマイクロホンなどに入力されて音声信号に変換された後、特徴抽出部200Aに入力される。特徴抽出部200Aは、入力された音声信号をA/D変換した後、特徴パラメータを抽出し、これを出力する。特徴パラメータを抽出し、これを出力する方法としては様々なものが考えられるが、例えば一例としては、LPC分析を実行し、対数パワー、16次ケプストラム係数、Δ対数パワー及び16次Δケプストラム係数を含む34次元の特徴パラメータを抽出する方法などが挙げられる。抽出された特徴パラメータの時系列はバッファメモリ(BM)200Bを介して単語照合部200Cに入力される。
単語照合部200Cは、ワン−パス・ビタビ復号化法を用いて、バッファメモリ200Bを介して入力される特徴パラメータのデータに基づいて、音声認識辞書記憶部600に記憶された音素HMMと単語辞書とを用いて単語仮説を検出し、尤度を計算して出力する。ここで、単語照合部200Cは、各時刻の各HMMの状態毎に、単語内の尤度と発声開始からの尤度を計算する。尤度は、単語の識別番号、単語の開始時刻、先行単語の違い毎に個別にもつ。また、計算処理量の削減のために、音素HMM及び単語辞書とに基づいて計算される総尤度のうちの低い尤度のグリッド仮説を削減するようにしてもよい。単語照合部200Cは、検出した単語仮説とその尤度の情報を発声開始時刻からの時間情報(具体的には、例えばフレーム番号)とともにバッファメモリ200Dを介して候補決定部200E及び単語仮説絞込部200Fに出力する。
候補決定部200Eは、会話制御部300を参照して、検出した単語仮説と所定の談話空間内の話題特定情報とを比較し、検出した単語仮説の内、所定の談話空間内の話題特定情報と一致するものがあるか否かを判定し、一致するものがある場合は、その一致する単語仮説を認識結果として出力し、一方一致するものがない場合は、単語仮説絞込部200Fに単語仮説の絞込を行うよう要求する。
候補決定部200Eの動作例を説明する。今、単語照合部200Cが複数の単語仮説「カンタク」「カタク」「カントク」およびその尤度(認識率)を出力し、所定の談話空間は「映画」に関するものでありその話題特定情報には「カントク(監督)」は含まれているが、「カンタク(干拓)」及び「カタク(仮託)」は含まれていないとする。また「カンタク」「カタク」「カントク」の尤度(認識率)は「カンタク」が最も高く「カントク」は最も低く、「カタク」は両者の中間であったとする。
上記の状況において、候補決定部200Eは、検出した単語仮説と所定の談話空間内の話題特定情報とを比較して、単語仮説「カントク」が、所定の談話空間内の話題特定情報と一致するものであると判定し、単語仮説「カントク」を認識結果として出力し、会話制御部に渡す。このように処理することにより、現在扱われている話題「映画」に関連した「カントク(監督)」が、より上位の尤度(認識率)を有する単語仮説「カンタク」「カタク」に優先されて選択され、その結果会話の文脈に即した音声認識結果を出力することが可能となる。
一方、一致するものがない場合は、候補決定部200Eからの単語仮説の絞込を行う要求に応じて単語仮説絞込部200Fが認識結果を出力するよう動作する。単語仮説絞込部200Fは、単語照合部200Cからバッファメモリ200Dを介して出力される複数個の単語仮説に基づいて、音声認識辞書記憶部600に記憶された統計的言語モデルを参照して、終了時刻が等しく開始時刻が異なる同一の単語の単語仮説に対して、当該単語の先頭音素環境毎に、発声開始時刻から当該単語の終了時刻に至る計算された総尤度のうちの最も高い尤度を有する1つの単語仮説で代表させるように単語仮説の絞り込みを行った後、絞り込み後のすべての単語仮説の単語列のうち、最大の総尤度を有する仮説の単語列を認識結果として出力する。本実施形態においては、好ましくは、処理すべき当該単語の先頭音素環境とは、当該単語より先行する単語仮説の最終音素と、当該単語の単語仮説の最初の2つの音素とを含む3つの音素並びをいう。
単語仮説絞込部200Fによる単語絞込処理の例を図6を参照しながら説明する。図6は、単語仮説絞込部200Fの処理の一例を示すタイミングチャートである。
例えば(i−1)番目の単語Wi-1の次に、音素列a1、a2、…、anからなるi番目の単語Wiがくるときに、単語Wi-1の単語仮説として6つの仮説Wa、Wb、Wc、Wd、We、Wfが存在しているとする。ここで、前者3つの単語仮説Wa、Wb、Wcの最終音素は/x/であるとし、後者3つの単語仮説Wd、We、Wfの最終音素は/y/であるとする。終了時刻teにおいて単語仮説Wa、Wb、Wcを前提とする3つの仮説と、単語仮説Wd、We、Wfを前提とする1の仮説が残っているものとすると、先頭音素環境が等しい前者3つ仮説のうち、総尤度が最も高い仮説一つを残し、その他を削除する。
なお、単語仮説Wd、We、Wfを前提とする仮説は先頭音素環境が他の3つの仮説と違うため、すなわち、先行する単語仮説の最終音素がxではなくyであるため、この単語仮説Wd、We、Wfを前提とする仮説は削除しない。すなわち、先行する単語仮説の最終音素毎に1つのみ仮説を残す。
以上の実施形態においては、当該単語の先頭音素環境とは、当該単語より先行する単語仮説の最終音素と、当該単語の単語仮説の最初の2つの音素とを含む3つの音素並びとして定義されているが、本発明はこれに限らず、先行する単語仮説の最終音素と、最終音素と連続する先行する単語仮説の少なくとも1つの音素とを含む先行単語仮説の音素列と、当該単語の単語仮説の最初の音素を含む音素列とを含む音素並びとしてもよい。
以上の実施の形態において、特徴抽出部200Aと、単語照合部200Cと、候補決定部200Eと、単語仮説絞込部200Fとは、例えば、デジタル電子計算機などのコンピュータで構成され、バッファメモリ200B、200Dと、音声認識辞書記憶部600とは、例えばハードディスク、メモリなどの記憶装置で構成される。
また、以上の実施形態においては、単語照合部200C、単語仮説絞込部200Fとを用いて音声認識を行っているが、本発明はこれに限らず、例えば、音素HMMを参照する音素照合部と、例えばOne
Pass DPアルゴリズムを用いて統計的言語モデルを参照して単語の音声認識を行う音声認識部とで構成してもよい。
また、本実施の形態では、音声認識部200は会話制御装置1の一部分として説明するが、音声認識部200、音声認識辞書記憶部600、及び会話データベース500より構成される、独立した音声認識装置とすることも可能である。
[音声認識部の動作例]
つぎに図7を参照しながら音声認識部200の動作について説明する。図7は、音声認識部200の動作例を示すフロー図である。音声入力手段3より音声信号を受け取ると、音声認識部200は入力された音声の特徴分析を行い、特徴パラメータを生成する(ステップS701)。次に、この特徴パラメータと音声認識辞書記憶部600に記憶された音素HMM及び言語モデルとを比較して、所定個数の単語仮説及びその尤度を取得する(ステップS702)。次に、音声認識部200は、取得した所定個数の単語仮説と検出した単語仮説と所定の談話空間内の話題特定情報とを比較し、検出した単語仮説の内、所定の談話空間内の話題特定情報と一致するものがあるか否かを判定する(ステップS703、S704)。一致するものがある場合は、音声認識部200はその一致する単語仮説を認識結果として出力する(ステップS705)。一方、一致するものがない場合は、音声認識部200は取得した単語仮説の尤度に従って、最大尤度を有する単語仮説を認識結果として出力する(ステップS706)。
[音声認識辞書記憶部]
再び、図4に戻って、会話制御装置1の構成例の説明を続ける。
音声認識辞書記憶部600は、標準的な音声信号に対応する文字列を格納するものである。この照合をした音声認識部200は、その音声信号に対応する単語仮説に対応する文字列を特定し、その特定した文字列を文字列信号として会話制御部300に出力する。
[文解析部]
次に、図4及び図8を参照しながら文解析部400の構成例について説明する。図8は、会話制御装置1の部分拡大ブロック図であって、会話制御部300及び文解析部400の具体的構成例を示すブロック図である。なお、図8においては、会話制御部300、文解析部400、および会話データベース500を図示しており、その他の構成要素の表示は省略されている。
前記文解析部400は、音声認識部200で特定された文字列を解析するものである。この文解析部400は、本実施の形態では、図8に示すように、文字列特定部410と、形態素抽出部420と、形態素データベース430と、入力種類判定部440と、発話種類データベース450とを有している。文字列特定部410は、音声入力手段3及び音声認識部200で特定された一連の文字列を一文節毎に区切るものである。この一文節とは、文法の意味を崩さない程度に文字列をできるだけ細かく区切った一区切り文を意味する。具体的に、文字列特定部410は、一連の文字列の中に、ある一定以上の時間間隔があるときは、その部分で文字列を区切る。文字列特定部410は、その区切った各文字列を形態素抽出部420及び入力種類判定部440に出力する。尚、以下で説明する「文字列」は、一文節毎の文字列を意味するものとする。
[形態素抽出部]
形態素抽出部420は、文字列特定部410で区切られた一文節の文字列に基づいて、その一文節の文字列の中から、文字列の最小単位を構成する各形態素を第一形態素情報として抽出するものである。ここで、形態素とは、本実施の形態では、文字列に現された語構成の最小単位を意味するものとする。この語構成の最小単位としては、例えば、名詞、形容詞、動詞などの品詞が挙げられる。
図9は、文字列とこの文字列から抽出される形態素との関係を示す図である。各形態素は、図9に示すように、本実施の形態ではm1、m2、m3…、と表現することができる。図9に示すように、文字列特定部410から文字列が入力された形態素抽出部420は、入力された文字列と、形態素データベース430に予め格納されている形態素群(この形態素群は、それぞれの品詞分類に属する各形態素についてその形態素の見出し語・読み・品詞・活用形などを記述した形態素辞書として用意されている)とを照合する。その照合をした形態素抽出部420は、その文字列の中から、予め記憶された形態素群のいずれかと一致する各形態素(m1、m2、…)を抽出する。この抽出された各形態素を除いた要素(n1、n2、n3…)は、例えば助動詞等が挙げられる。
この形態素抽出部420は、抽出した各形態素を第一形態素情報として話題特定情報検索蔀320に出力する。なお、第一形態素情報は構造化されている必要はない。ここで「構造化」とは、文字列の中に含まれる形態素を品詞等に基づいて分類し配列することをいい、たとえば発話文である文字列を、「主語+目的語+述語」などの様に、所定の順番で形態素を配列してなるデータに変換することを言う。もちろん、構造化した第一形態素情報を用いたとしても、それが本実施の形態の実現をさまたげることはない。
[入力種類判定部]
入力種類判定部440は、文字列特定部410で特定された文字列に基づいて、発話内容の種類(発話種類)を判定し、判定結果に従って発話種類を示す情報を出力する機能を有する。この発話種類は、発話内容の種類を特定する情報であって、本実施の形態では、例えば図10に示す「発話文のタイプ」を意味する。図10は、「発話文のタイプ」と、その発話文のタイプを表す二文字のアルファベット、及びその発話文のタイプに該当する発話文の例を示す図である。
ここで、「発話文のタイプ」は、本実施の形態では、図10に示すように、陳述文(D ; Declaration)、時間文(T ; Time)、場所文(L ; Location)、反発文(N ; Negation)などから構成され、この発話文のタイプに従って回答文を決定するために用いられる。この各タイプから構成される文は、肯定文又は質問文で構成される。「陳述文」とは、利用者の意見又は考えを示す文を意味するものである。この陳述文は本実施の形態では、図10に示すように、例えば「私は佐藤が好きです」のような文である。「場所文」とは、場所的な概念を伴う文を意味するものである。「時間文」とは、時間的な概念を伴う文を意味するものである。「反発文」とは、陳述文を否定するときの文を意味する。「発話文のタイプ」についての例文は図9に示す通りである。
「発話文のタイプ」を判定する場合、入力種類判定部440は、本実施の形態では、陳述文であることを判定するための定義表現辞書、反発文であることを判定するための反発表現辞書等の表現と発話文のタイプの対応関係を記述した辞書群を用いる。図11は、使用する辞書と、その辞書に該当する表現が含まれている場合になされる判定の種類を示す。具体例を挙げると、文字列特定部410から文字列が入力された入力種類判定部440は、入力された文字列に基づいて、その文字列と発話種類データベース450に格納されている各辞書とを照合する。その照合をした入力種類判定部440は、その文字列の中から、各辞書に関係する要素(D、Nなどの判定の種類を示すデータ)を抽出する。
この入力種類判定部440は、抽出した要素に基づいて、「発話文のタイプ」を判定する。例えば、入力種類判定部440は、ある事象について陳述している要素が文字列の中に含まれる場合には、その要素が含まれている文字列を陳述文として判定する。入力種類判定部440は、判定した「発話文のタイプ」を回答取得部350に出力する。
[会話データベース]
次に、会話データベース500が記憶するデータのデータ構成例について図12を参照しながら説明する。図12は、会話データベース500が記憶するデータの構成例を示す概念図である。
[話題特定情報]
前記会話データベース500は、図12に示すように、話題を特定するための話題特定情報(810)A〜Fを予め複数記憶する。又、話題特定情報(810)A〜Fのそれぞれは、他の話題特定情報と関連づけられていてもよく、例えば、図12に示す例では、話題特定情報(810)Cが特定されると、この話題特定情報(810)Cに関連づけられている他の話題特定情報(810)A、B、Dが定まるように記憶されている。
具体的には、話題特定情報810は、本実施の形態では、利用者から入力されると予想される入力内容又は利用者への回答文に関連性のある「キーワード」を意味する。
話題特定情報810には、一又は複数の話題タイトル820が対応付けられて記憶されている。話題タイトル820は、一つの文字、複数の文字列又はこれらの組み合わせからなる形態素により構成されている。各話題タイトル820には、利用者への回答文830が対応付けられて記憶されている。また、回答文830の種類を示す複数の回答種類は、回答文に対応付けられている。
回答文830には、感情条件パラメータ840が対応付けられている。感情条件パラメータ840は、感情状態情報の条件を示す情報である。例えば、感情状態情報が「怒り」の感情フラグの累積値「10」を示しているとき、ある回答文Aの感情条件パラメータ840が「怒り」の感情フラグの累積値5以下を記述しており、一方別の回答文Bの感情条件パラメータ840が「怒り」の感情フラグの累積値8以上を記述している場合は、回答文Aは選択されず、回答文Bが会話制御装置1がユーザへの回答として選択されることとなる。
更に、回答文830には会話制御装置1が提供する疑似人格の感情を示すデータである感情フラグ850が対応付けされて記憶されている。感情フラグ850は感情を区別できる情報であればどのようなデータであってもよく、例えば、「平常」の感情を示す感情フラグとして文字データ「A」を割り当て、「激怒」の感情を示す感情フラグ850として文字データ「B」を割り当て、「怒り」の感情を示す感情フラグとして文字データ「C」を割り当て、「喜び」の感情を示す感情フラグとして文字データ「D」を割り当てるなどのようにする。本実施の形態にかかる会話制御装置1は、この感情フラグ850を参照して、会話制御装置1が提供する疑似人格の感情を制御することとなる。
さらに、回答文830には、ゲーム装置1がキャラクタの行動を決定するための思考ルーチンを指定するための対応行動フラグ860が対応付けされて記憶されている。対応行動フラグ860は、思考ルーチンを指定することができるデータであればどのようなものでもよく、例えば、思考ルーチンの番号、IDなどである。
次に、ある話題特定情報と他の話題特定情報との関連づけについて説明する。図13は、ある話題特定情報810Aと他の話題特定情報810B、810C〜810C、810D〜810D…との関連付けを示す図である。なお、以下の説明において「関連づけされて記憶される」とは、ある情報Xを読み取るとその情報Xに関連づけられている情報Yを読み取りできることをいい、例えば、情報Xのデータの中に情報Yを読み出すための情報(例えば、情報Yの格納先アドレスを示すポインタ、情報Yの格納先物理メモリアドレス、論理アドレスなど)が格納されている状態を、「情報Yが情報Xに『関連づけされて記憶され』ている」というものとする。
図13に示す例では、話題特定情報は他の話題特定情報との間で上位概念、下位概念、同義語、対義語(本図の例では省略)が関連づけされて記憶させることができる。本図に示す例では、話題特定情報810A(=「映画」)に対する上位概念の話題特定情報として話題特定情報810B(=「娯楽」)が話題特定情報810Aに関連づけされて記憶されており、たとえば話題特定情報(「映画」)に対して上の階層に記憶される。
また、話題特定情報810A(=「映画」)に対する下位概念の話題特定情報810C(=「監督」)、話題特定情報810C(=「主演」)、話題特定情報810C(=「配給会社」)、話題特定情報810C(=「上映時間」)、および話題特定情報810D(=「七人の侍」)、話題特定情報810D(=「乱」)、話題特定情報810D(=「用心棒」)、…、が話題特定情報810Aに関連づけされて記憶されている。
又、話題特定情報810Aには、同義語900が関連づけられている。この例では、話題特定情報810Aであるキーワード「映画」の同義語として「作品」、「内容」、「シネマ」が記憶されている様子を示している。このような同意語を定めることにより、発話にはキーワード「映画」は含まれていないが「作品」、「内容」、「シネマ」が発話文等に含まれている場合に、話題特定情報810Aが発話文等に含まれているものとして取り扱うことを可能とする。
本実施の形態にかかる会話制御装置1は、会話データベース500の記憶内容を参照することにより、ある話題特定情報810を特定するとその話題特定情報810に関連づけられて記憶されている他の話題特定情報810及びその話題特定情報801に対応漬けされた話題タイトル820、回答文830、回答文830に対応付けされた感情権パラメータ840、感情フラグ850,対応行動フラグ860などを高速で検索・抽出することが可能となる。
[話題タイトル]
次に、話題タイトル820(「第二形態素情報」ともいう)のデータ構成例について、図14を参照しながら説明する。図14は、話題タイトル820のデータ構成例を示す図である。
話題特定情報810D、810D、810D、…はそれぞれ複数の異なる話題タイトル820、820、…、話題タイトル820、820、…、話題タイトル820、820、…を有している。
本実施の形態では、図14に示すように、それぞれの話題タイトル820は、第一特定情報1301と、第二特定情報及1302と、第三特定情報1303によって構成される情報である。ここで、第一特定情報1301は、本実施の形態では、話題を構成する主要な形態素を意味するものである。第一特定情報の例としては、例えば文を構成する主語が挙げられる。また、第二特定情報1302は、本実施の形態では、第一特定情報1301と密接な関連性を有する形態素を意味するものである。この第二特定情報1302は、例えば目的語が挙げられる。更に、第三特定情報1303は、本実施の形態では、ある対象についての動きを示す形態素、又は名詞等を修飾する形態素を意味するものである。この第三特定情報1303は、例えば動詞、副詞又は形容詞が挙げられる。なお、第一特定情報1301、第二特定情報1302、第三特定情報1303それぞれの意味は上述の内容に限定される必要はなく、別の意味を第一特定情報1301、第二特定情報1302、第三特定情報1303に与えても、これらから文の内容を把握可能な限り、本実施の形態は成立する。
例えば、主語が「七人の侍」、形容詞が「面白い」である場合には、図14に示すように、話題タイトル(第二形態素情報)820は、第一特定情報1301である形態素「七人の侍」と、第三特定情報1303である形態素「面白い」とから構成されることになる。なお、この話題タイトル820には第二特定情報である形態素は含まれておらず、該当する形態素がないことを示すための記号「*」が第二特定情報1302として格納されている。
なお、この話題タイトル820(七人の侍;*;面白い)は、「七人の侍は面白い」の意味を有する。なお、本明細書中、この話題タイトル820を構成する括弧内は、以下では左から第一特定情報1301、第二特定情報1302、第三特定情報1303の順番となっている。また、話題タイトル820のうち、第一から第三特定情報に含まれる形態素がない場合には、その部分については、「*」を示すことにする。
なお、上記話題タイトル820を構成する特定情報は、上記のような第一から第三特定情報のように三つに限定されるものではなく、更に他の特定情報(第四特定情報、およびそれ以上)を有するようにしてもよい。
[回答文]
次に、回答文830について説明する。回答文830は、図15に示すように、本実施の形態では、利用者から発話された発話文のタイプに対応した回答をするために、陳述(D ; Declaration)、時間(T ; Time)、場所(L ; Location)、否定(N ; Negation)などのタイプ(回答種類)に分類されている。また肯定文は「A」とし、質問文は「Q」とする。
例えば、話題タイトル(820)1−1が(佐藤;*;好き){これは、「佐藤が好きです」に含まれる形態素を抽出したもの}である場合には、その話題タイトル(820)1-1に対応する回答文(830)1−1は、(DA;陳述肯定文「私も佐藤が好きです」)、(TA;時間肯定文「私は打席に立ったときの佐藤が好きです」)などが挙げられる。後述する回答取得部350は、その話題タイトル820に対応付けられた一の回答文830を取得する。
[会話制御部]
次に図8に戻り、会話制御部300の構成例を説明する。
会話制御部300は、会話制御装置1内の各構成要素(音声認識部200,文解析部400、会話データベース500,感情状態情報管理部700音声認識辞書記憶部600、感情状態情報管理部700,ユーザ行動評価部800)間のデータの受け渡しを制御するとともに、発話に応答する回答文の決定、出力、思考ルーチン指定命令の出力を行う機能を有する。
前記会話制御部300は、本実施の形態では、図8に示すように、管理部310と、話題特定情報検索部320と、省略文補完部330と、話題検索部340と、回答取得部350とを有している。前記管理部310は、会話制御部300の全体を制御するとともに、対応行動フラグ860をユーザ行動評価部800へ渡す機能を有している。。
また、管理部310は談話履歴を記憶し、且つ必要に応じて更新する機能を有する。管理部310は話題特定情報検索部320と、省略文補完部330と、話題検索部340と、回答取得部350からの要求に応じて、記憶している談話履歴の全部又は一部をこれら各部に渡す機能を有する。
「談話履歴」とは、ユーザと会話制御装置1間の会話の話題や主題を特定する情報であって、後述する談話履歴は「着目話題特定情報」「着目話題タイトル」「利用者入力文話題特定情報」「回答文話題特定情報」の少なくともいずれか一つを含む情報である。また、談話履歴に含まれる「着目話題特定情報」「着目話題タイトル」「回答文話題特定情報」は直前の会話によって定められたものに限定されず、過去の所定期間の間に着目話題特定情報」「着目話題タイトル」「回答文話題特定情報」となったもの、若しくはそれらの累積的記録であってもよい。
以下、会話制御部300を構成する各部について説明する。
[話題特定情報検索部]
話題特定情報検索部320は、形態素抽出部420で抽出された第一形態素情報と各話題特定情報とを照合し、各話題特定情報の中から、第一形態素情報を構成する形態素と一致する話題特定情報を検索するものである。具体的に、話題特定情報検索部320は、形態素抽出部420から入力された第一形態素情報が「佐藤」及び「好き」の二つの形態素で構成される場合には、入力された第一形態素情報と話題特定情報群とを照合する。
この照合をした話題特定情報検索部320は、着目話題タイトル820focus(前回までに検索された話題タイトル)に第一形態素情報を構成する形態素(例えば「佐藤」)が含まれているときは、その着目話題タイトル820focusを回答取得部350に出力する。一方、着目話題タイトル820focusに第一形態素情報を構成する形態素が含まれていないときは、話題特定情報検索部320は、第一形態素情報に基づいて利用者入力文話題特定情報を決定し、入力された第一形態素情報及び利用者入力文話題特定情報を省略文補完部330に出力する。なお、「利用者入力文話題特定情報」は、第一形態素情報に含まれる形態素の内、利用者が話題としている内容に該当する形態素に相当する話題特定情報、若しくは第一形態素情報に含まれる形態素の内、利用者が話題としている内容に該当する可能性がある形態素に相当する話題特定情報をいう。
[省略文補完部]
省略文補完部330は、前記第一形態素情報を、前回までに検索された話題特定情報810(以下、「着目話題特定情報」)及び前回の回答文に含まれる話題特定情報810(以下、「回答文話題特定情報」という)を利用して、補完することにより複数種類の補完された第一形態素情報を生成する。例えば発話文が「好きだ」という文であった場合、省略文補完部330は、着目話題特定情報「佐藤」を、第一形態素情報「好き」に含めて、補完された第一形態素情報「佐藤、好き」を生成する。
すなわち、第一形態素情報を「W」、着目話題特定情報や回答文話題特定情報の集合を「D」とすると、省略文補完部330は、第一形態素情報「W」に集合「D」の要素を含めて、補完された第一形態素情報を生成する。
これにより、第一形態素情報を用いて構成される文が、省略文であって日本語として明解でない場合などにおいて、省略文補完部330は、集合「D」を用いて、その集合「D」の要素(例えば、"佐藤")を第一形態素情報「W」に含めることができる。この結果、省略文補完部330は、第一形態素情報「好き」を補完された第一形態素情報「佐藤、好き」にすることができる。なお、補完された第一形態素情報「佐藤、好き」は、「佐藤が好きだ」という発話内容に対応する。
すなわち、省略文補完部330は、利用者の発話内容が省略文である場合などであっても、集合「D」を用いて省略文を補完することができる。この結果、省略文補完部330は、第一形態素情報から構成される文が省略文であっても、その文が適正な日本語となるようにすることができる。
また、省略文補完部330が、前記集合「D」に基づいて、補完後の第一形態素情報に一致する話題タイトル820を検索する。補完後の第一形態素情報に一致する話題タイトル820を発見した場合は、省略文補完部330はこの話題タイトル820を回答取得部350に出力する。回答取得部350は、省略文補完部330で検索された適切な話題タイトル820に基づいて、利用者の発話内容に最も適した回答文830を出力することができる。
尚、省略文補完部330は、集合「D」の要素を第一形態素情報に含めるだけに限定されるものではない。この省略文補完部330は、着目話題タイトルに基づいて、その話題タイトル820を構成する第一特定情報、第二特定情報又は第三特定情報のいずれかに含まれる形態素を、抽出された第一形態素情報に含めても良い。
[話題検索部]
話題検索部340は、省略文補完部330で話題タイトル820が決まらなかったとき、第一形態素情報と、利用者入力文話題特定情報に対応する各話題タイトル820とを照合し、各話題タイトル820の中から、第一形態素情報に最も適する話題タイトル820を検索するものである。
具体的に、省略文補完部330から検索命令信号が入力された話題検索部340は、入力された検索命令信号に含まれる利用者入力文話題特定情報及び第一形態素情報に基づいて、その利用者入力文話題特定情報に対応付けられた各話題タイトルの中から、その第一形態素情報に最も適した話題タイトル820を検索する。話題検索部340は、その検索した話題タイトル820を検索結果信号として回答取得部350に出力する。
図16は、ある話題特定情報810(=「佐藤」)に対応付けされた、話題タイトル820、回答文830、感情条件パラメータ840、感情フラグ850、及び対応行動フラグ860の具体例を示す図である。図16に示すように、例えば、話題検索部340は、入力された第一形態素情報「佐藤、好き」に話題特定情報810(=「佐藤」)が含まれるので、その話題特定情報810(=「佐藤」)を特定し、次に、その話題特定情報810(=「佐藤」)に対応付けられた各話題タイトル(820)1-1、1-2、…と入力された第一形態素情報「佐藤、好き」とを照合する。
また、図17に別の話題特定情報810(=「上がれない」)、話題タイトル820、回答文830、感情条件パラメータ840、感情フラグ850、及び対応行動フラグ860の例を示す。会話制御部300が話題特定情報810(=「上がれない」)、及び話題タイトル(820)1−1((私;*;上がれない)を選択し、発話文のタイプが「DA」であるとすると、会話制御部300はその時点で記憶されている感情状態情報に応じて「弱気だね。手加減はしないよ。」、或いは「じゃあ一気に攻めちゃおうかなぁ?」という回答文830を選択し、感情フラグ850として「A」を感情状態情報管理部700に出力し、対応行動フラグ860として「思考ルーチン2」を指定する思考ルーチン指定命令をゲーム装置2に出力することとなる。
図8に戻り、会話制御部300の構成例について説明を続ける。
話題検索部340は、その照合結果に基づいて、各話題タイトル(820)1-1〜1-2の中から、入力された第一形態素情報「佐藤、好き」と一致する話題タイトル(820)1-1(佐藤;*;好き)を特定する。話題検索部340は、検索した話題タイトル(820)1-1(佐藤;*;好き)を検索結果信号として回答取得部350に出力する。
[回答取得部]
回答取得部350は、話題検索部340で検索された話題タイトル820に基づいて、その話題タイトル820に対応付けられた回答文830、感情条件パラメータ840、感情フラグ850、及び対応行動フラグ860を取得する。また、回答取得部350は、話題検索部340で検索された話題タイトル820に基づいて、その話題タイトル820に対応付けられた各回答種類と、入力種類判定部440で判定された発話種類とを照合する。その照合をした回答取得部350は、各回答種類の中から、判定された発話種類と一致する回答種類を検索する。
図16に示すように、例えば、回答取得部350は、話題検索部340で検索された話題タイトル820が話題タイトル1-1(佐藤;*;好き)である場合には、その話題タイトル1-1に対応付けられている回答文(830)1-1(DA、TAなど)の中から、入力種類判定部440で判定された「発話文のタイプ」(例えばDA)と一致する回答種類(DA)を特定する。この回答種類(DA)を特定した回答取得部350は、特定した回答種類(DA)に基づいて、その回答種類(DA)に対応付けられた回答文(830)1-1(「私も佐藤が好きです。」)を取得する。
ここで、上記"DA"、"TA"等のうち、"A"は、肯定形式を意味する。従って、発話種類及び回答種類に"A"が含まれているときは、ある事柄について肯定することを示している。また、発話種類及び回答種類には、"DQ"、"TQ"等の種類を含めることもできる。この"DQ"、"TQ"等のうち"Q"は、ある事柄についての質問を意味する。
回答種類が上記質問形式(Q)からなるときは、この回答種類に対応付けられる回答文は、肯定形式(A)で構成される。この肯定形式(A)で作成された回答文としては、質問事項に対して回答する文等が挙げられる。例えば、発話文が「あなたはスロットマシンを操作したことがありますか?」である場合には、この発話文についての発話種類は、質問形式(Q)となる。この質問形式(Q)に対応付けられる回答文830は、例えば「私はスロットマシンを操作したことがあります」(肯定形式(A))が挙げられる。
一方、発話種類が肯定形式(A)からなるときは、この回答種類に対応付けられる回答文830は、質問形式(Q)で構成される。この質問形式(Q)で作成された回答文830としては、発話内容に対して聞き返す質問文、又は特定の事柄を聞き出す質問文等が挙げられる。例えば、発話文が「私はスロットマシンで遊ぶのが趣味です」である場合には、この発話文についての発話種類は、肯定形式(A)となる。この肯定形式(A)に対応付けられる回答文830は、例えば"パチンコで遊ぶのは趣味ではないのですか?"(特定の事柄を聞き出す質問文(Q))が挙げられる。
回答取得部350は、取得した回答文830を回答文信号として管理部310に出力するとともに、回答文830に対応した感情フラグ850を感情状態情報管理部700に出力する。
さらにまた、回答取得部350は、取得した対応行動フラグ860をゲーム装置2(ゲーム進行制御部202)に出力する。これにより、ユーザの発話に応じたキャラクタのゲームの進行に関する行動を取るように、思考ルーチンの指定が可能となる。
以上で、会話制御部300の説明を終了する。
[感情状態情報管理部]
図4に戻り、会話制御装置1の感情状態情報管理部700について説明する。
感情状態情報管理部700は、会話制御部300から感情フラグ850を受け取り、この感情フラグ850に基づいて感情状態情報の更新を行う機能を有する。感情状態情報管理部700は、会話制御部300から感情フラグ850を受け取ると、これを記憶し、記憶した感情フラグに基づいて感情状態情報を生成し、ゲーム装置2に所定のタイミングで感情状態情報を通知する。感情状態情報は、たとえば各感情(喜怒哀楽)ごとの値やフラグ成立の有無より構成される。感情状態情報は、ゲームシステムGSによって演じられる、ユーザに対する対戦者(疑似人格、キャラクタ)の感情を定める情報であり、ゲームシステムGSは、この感情状態情報によってキャラクタデータの表示の制御等を行う。
感情状態情報管理部700は、感情フラグ850を受け取ると、その感情フラグ850のカウント値を所定の値(例えば+1)だけ変化させるように、感情状態情報を書き換える。また、感情状態情報管理部700は、後述するユーザ行動評価部800からユーザ行動評価情報を受け取ると、所定の内容で感情状態情報を書き換える(例えば、「怒り」の感情フラグ850のカウント値を10増加させる、或いは、「哀しみ」「怒り」の感情フラグ850それぞれのカウント値を現在の値の2倍とする、など)。
感情状態情報記憶部7Bが記憶する感情状態情報のデータ構成例を図18に示す。感情状態情報1800は、感情フラグ種類1801ごとに、累積値1802を有している。累積値1802は、各感情フラグごとに増減が可能である。例えば、感情状態情報管理部700が「喜び」を示す感情フラグを受け取るごとに、累積値1802の値がインクリメントされる。また、ユーザ行動評価部800からのユーザ行動評価情報に応じても、これら累積値1802の増減が行われる。どのように増減されるかは、予め感情状態情報管理部700がプログラムとして記憶しており、このプログラムに従って所定の増減処理が実行される。
[ユーザ行動評価部]
次に、ユーザ行動評価部800について説明する。ユーザ行動評価部800は、ユーザの発話内容とユーザの取った行動とが一致するかどうかを判定し、判定結果に応じて感情状態情報の更新を行わせる機能を有する。
本実施の形態において、ユーザ行動評価部800は、会話制御部300より対応行動フラグ860を受け取り、その後ゲーム装置2からユーザの取った行動(捨て牌、ポン、ロン、ツモなど)の通知を受け、この行動と対応行動フラグ860とに基づいてユーザ行動評価情報を生成し、感情状態情報管理部700に渡す。
例えば、ユーザが「まだ聴牌していない」という発話をなし、その発話に応じて高い役つくりを目指す思考ルーチンを指定する対応行動フラグ860が選択されたとする。ユーザ行動評価部800は、対応行動フラグ860に対応付けたユーザ行動評価テーブルを有しており、このテーブルには高い役つくりを目指す思考ルーチンを指定する対応行動フラグ860対応して、「3手以内に上がらない」という条件が記載されている。ユーザ行動評価部800は、ユーザの行動がこの条件に違反しないかどうかを監視する。
ここで、ユーザがこの条件に違反して前記発話から3手以内にアガリを宣言した場合は、ユーザ行動評価部800は感情状態情報管理部700に対して、感情状態情報をキャラクタのユーザに対する親密度、信頼度を低下させる更新を要求する旨のユーザ行動評価情報を送る。感情状態情報管理部700はこのユーザ行動評価情報に応じて、感情状態情報の更新を行い、以降キャラクタの回答、キャラクタ画像(表情、動作)はこの親密度、信頼度が低下した感情状態情報に基づいてなされることとなる。このようなユーザ行動評価部800の動作によって、ユーザから見るとユーザのかけたブラフにキャラクタが引っかかり、キャラクタが気分を害しているように見えるように演出がなされる。
一方、ユーザがこの条件に違反せず前記発話から3手以内にアガリを宣言しなかった場合は、感情状態情報をキャラクタのユーザに対する親密度、信頼度を上昇させる更新を要求する旨のユーザ行動評価情報を送るようにしてもよい。
以上で、ゲームシステムGSの説明を終了する。
[ゲームシステムの動作例]
次に、上記ゲームシステムGSの動作例について説明する。
図19は、本実施の形態にかかるゲームシステムGSの主要な処理を示すフローチャートである。ゲームシステムGSのゲーム装置2側では、ゲームに関する処理が並行して行われているがここでは説明は省略する。
まず、会話制御装置1は、ユーザからの発話を音声認識部200にて受け付け、会話制御部300にて処理できるデータに変化するユーザ発話受付処理を行う(ステップS1901)。
次に、会話制御装置1は、受け付けたユーザ発話に応答する回答文830を返す会話制御処理を行う(ステップS1902)。
[会話制御方法]
上記構成を有する会話制御装置1による会話制御処理(ステップS1902)は、図20に示す手順により実施することができる。図20は、本実施の形態に係る会話制御方法の手順を示すフロー図である。
先ず、音声入力手段3が、利用者からの発話内容を取得するステップを行う(ステップS2001)。具体的には、音声入力手段3は、利用者の発話内容を構成する音声を取得する。音声入力手段3は、取得した音声を音声信号として音声認識部200に出力する。
次いで、音声認識部200が、音声入力手段3で取得した発話内容に基づいて、発話内容に対応する文字列を特定するステップを行う(ステップS2002)。具体的には、音声入力手段3から音声信号が入力された音声認識部200は、入力された音声信号に基づいて、その音声信号に対応する単語仮説(候補)を特定する。音声認識部200は、特定した単語仮説(候補)に対応付けられた文字列を取得し、取得した文字列を文字列信号として会話制御部300に出力する。
そして、文字列特定部410が、音声認識部200で特定された一連の文字列を一文毎に区切るステップを行う(ステップS2003)。具体的には、管理部310から文字列信号(あるいは形態素信号)が入力された文字列特定部410は、その入力された一連の文字列の中に、ある一定以上の時間間隔があるときは、その部分で文字列を区切る。文字列特定部410は、その区切った各文字列を形態素抽出部420及び入力種類判定部440に出力する。なお、文字列特定部410は、入力された文字列がキーボードから入力された文字列である場合には、句読点又はスペース等のある部分で文字列を区切るのが好ましい。
その後、形態素抽出部420が、文字列特定部410で特定された文字列に基づいて、文字列の最小単位を構成する各形態素を第一形態素情報として抽出するステップを行う(ステップS2004)。具体的に、文字列特定部410から文字列が入力された形態素抽出部420は、入力された文字列と、形態素データベース430に予め格納されている形態素群とを照合する。なお、その形態素群は、本実施の形態では、それぞれの品詞分類に属する各形態素について、その形態素の見出し語・読み・品詞・活用形などを記述した形態素辞書として準備されている。
この照合をした形態素抽出部420は、入力された文字列の中から、予め記憶された形態素群に含まれる各形態素と一致する各形態素(m1、m2、…)を抽出する。形態素抽出部420は、抽出した各形態素を第一形態素情報として話題特定情報検索部320に出力する。
次いで、入力種類判定部440が、文字列特定部410で特定された一文を構成する各形態素に基づいて、「発話文のタイプ」を判定するステップを行う(ステップS2005)。具体的には、文字列特定部410から文字列が入力された入力種類判定部440は、入力された文字列に基づいて、その文字列と発話種類データベース450に格納されている各辞書とを照合し、その文字列の中から、各辞書に関係する要素を抽出する。この要素を抽出した入力種類判定部440は、抽出した要素に基づいて、その要素がどの「発話文のタイプ」に属するのかを判定する。入力種類判定部440は、判定した「発話文のタイプ」(発話種類)を回答取得部350に出力する。
そして、話題特定情報検索部320が、形態素抽出部420で抽出された第一形態素情報と着目話題タイトル820focusとを比較するステップを行う(ステップS2006)。
第一形態素情報を構成する形態素と着目話題タイトル820focusとが一致する場合、話題特定情報検索部320は、その話題タイトル820を回答取得部350に出力する。一方、話題特定情報検索部320は、第一形態素情報を構成する形態素と話題タイトルと820が一致しなかった場合には、入力された第一形態素情報及び利用者入力文話題特定情報810を検索命令信号として省略文補完部330に出力する。
その後、省略文補完部330が、話題特定情報検索部320から入力された第一形態素情報に基づいて、着目話題特定情報及び回答文話題特定情報を、入力された第一形態素情報に含めるステップを行う(ステップS2007)。具体的には、第一形態素情報を「W」、着目話題特定情報及び回答文話題特定情報の集合を「D」とすると、省略文補完部330は、第一形態素情報「W」に話題特定情報「D」の要素を含めて、補完された第一形態素情報を生成し、この補完された第一形態素情報と集合「D」に関連づけされたすべての話題タイトル820とを照合し、補完された第一形態素情報と一致する話題タイトル820があるか検索する。補完された第一形態素情報と一致する話題タイトル820がある場合は、省略文補完部330は、その話題タイトル820を回答取得部350に出力する。一方、補完された第一形態素情報と一致する話題タイトル820を発見しなかった場合は、省略文補完部330は、第一形態素情報と利用者入力文話題特定情報とを話題検索部340に渡す。
次いで、話題検索部340は、第一形態素情報と、利用者入力文話題特定情報とを照合し、各話題タイトル820の中から、第一形態素情報に適した話題タイトル820を検索するステップを行う(ステップS2008)。具体的には、省略文補完部330から検索命令信号が入力された話題検索部340は、入力された検索命令信号に含まれる利用者入力文話題特定情報及び第一形態素情報に基づいて、その利用者入力文話題特定情報に対応付けられた各話題タイトル820の中から、その第一形態素情報に適した話題タイトル820を検索する。話題検索部340は、その検索の結果得られた話題タイトル820を検索結果信号として回答取得部350に出力する。
次いで、回答取得部350が、話題特定情報検索部320、省略文補完部330、あるいは話題検索部340で検索された話題タイトル820に基づいて、判定された利用者の発話種類と話題タイトル820に対応付けられた各回答種類とを照合する。この照合をした回答取得部350は、各回答種類の中から、判定された発話種類と一致する回答種類を検索する(ステップS2009)。
具体的に、話題検索部340から検索結果信号と、入力種類判定部440から「発話文のタイプ」とが入力された回答取得部350は、入力された検索結果信号に対応する「話題タイトル」と、入力された「発話文のタイプ」とに基づいて、その「話題タイトル」に対応付けられている回答種類群の中から、「発話文のタイプ」(DAなど)と一致する回答種類を特定する。
この回答取得部350は、会話データベース500から、特定した回答種類に対応付けられた回答文830を取得する。回答取得部350は、管理部310を介して、取得した回答文830を管理部310に、その回答文830に対応する感情フラグ850を感情状態情報管理部700に、その回答文830に対応する対応行動フラグ860をゲーム装置2にそれぞれ出力する。(ステップS2010)。
以上で会話制御処理(ステップS1902)が終了する。
図19に戻り、ゲームシステムGSの動作例の説明を続ける。
ステップS1902に続き、会話制御装置1は、会話制御処理において定まった回答文830に対応する感情フラグ850に基づいて、感情状態情報の更新処理を行う(ステップS1903)。会話制御部300は回答文830が定まると、この回答文830に対応する感情フラグ850を感情状態情報管理部700に渡す。感情状態情報管理部700は、この感情フラグ850を感情状態情報に反映させるように、所定の処理を行い感情状態情報の書き換えを行う。
次に、会話制御装置1は、会話制御処理において定まった回答文830に対応する対応行動フラグ860をゲーム装置2に渡し、ゲーム装置2に思考ルーチン選択処理を行わせる(ステップS1904)。会話制御部300は回答文830が定まると、この回答文830に対応する対応行動フラグ860をゲーム装置2に渡す。
ゲーム装置2は、キャラクタ行動決定部202Aによって上記対応行動フラグ860によって指定された思考ルーチンを選択し、この思考ルーチンに基づいてキャラクタの行動を決定し、実行する行動決定処理が行われる(ステップS1905)。例えば麻雀ゲームでは、上記選択された思考ルーチンにより、次にキャラクタが切る牌が決定され、キャラクタその牌を捨てたものとしてゲームが進行することとなる。
続いて、ゲームシステムGSは、ユーザの行動を受け取ると、この行動と従前の発話内容を比較して評価する、ユーザ行動評価処理を行う(ステップS1906)。図21に、ユーザ行動評価処理の処理例を示す。まず、ゲームシステムGSは、音声入力手段3又は非音声入力手段4からユーザの行動を示す命令を受け取るユーザ行動受付処理を行う(ステップS2101)。ここにいうユーザの行動を示す命令は、麻雀ゲームにおいては、捨て牌の選択と決定、ポン、チー、カン、ロン、リーチなどである。
ユーザの行動を示す命令を受け付けると、ゲームシステムGSは、従前の発話内容とこのユーザ行動とを比較する(ステップS2102)。
従前の発話内容とこのユーザ行動とを比較した結果、両者に矛盾がない場合(ステップS2103,NO)は、そのままユーザ高評価処理(ステップS1906)を終了する。一方、両者に矛盾がある場合(ステップS2103、YES)は、ユーザ行動評価部800は、感情状態情報変更の命令を感情状態情報管理部700に渡す(ステップS2104)。
図19に戻り、ゲームシステムGSの動作例の説明を続ける。
感情状態情報変更の命令を感情状態情報管理部700が受け取ると、感情状態情報管理部700は、感情状態情報変更処理を実行する(ステップS1907)。この感情状態情報変更処理は、ユーザの従前の発言内容に添わない行動をユーザが取ったことに対するキャラクタの感情変化(ブラフをかけられたことに対する驚き、怒り、くやしさ、など)を感情状態情報に反映させる処理である。この感情状態情報変更処理後の発言は、キャラクタの感情変化に応じたものとなり、より自然なキャラクタの応答を実現することに役立つ。
つづいて、ゲームシステムGSは、ゲーム終了条件の成立の判定を行う(ステップS1908)。ゲーム終了条件が成立している場合(例えば遊技時間の終了)は、ゲームシステムGSは、ゲームを終了させる。一方、ゲーム終了条件が成立していない場合は、再度ステップS1901に戻り、ユーザ発話の受付を待つ。以降ゲーム終了条件の成立までステップS1901からステップS1907が繰り返されつつ、ゲームの進行が行われる。
なお、ステップS1906のユーザ行動評価処理に続いて、ユーザ行動評価部800は、両者に矛盾がある場合(ステップS2103、YES)において会話制御部300にユーザの従前の発言内容に添わない行動をユーザが取ったことに対するキャラクタの回答文830を出すよう、所定の話題特定情報810、話題タイトル820を渡す構成としてもよい。この場合の回答文830の例としては、ユーザの発話内容がブラフであったことに対する不満や驚きなどを示す文が設定されているとよい。
[ゲームシステムGSの動作の具体例]
次に、本実施の形態にかかるゲームシステムGSの動作の具体例を図22を参照しながら示す。図22は、ゲームシステムGSの動作の具体例を示すシーケンス図である。
このゲームシステムGSは、対戦型の麻雀ゲームを行うものであり、ゲームが進行してほほ終盤戦にかかっている状態である。ここで、ユーザは聴牌した状態で、キャラクタに対してブラフをかけようとし、「まだまだ上がれそうにないなぁ」という発話を音声入力手段3によりゲームシステムGSに伝える(ステップS2201)。
この発話に対して、ゲームシステムGSは、回答文830を返すための会話制御処理を行い(ステップS2202)、この会話文に対応する感情フラグ850に基づいて、感情状態情報の更新を行う(ステップS2203)。
また、ゲームシステムGSは、会話制御処理(ステップS2202)にて選択された回答文830に対応付けられた対応行動フラグ860に基づいて、思考ルーチン選択処理を行う(ステップS2204)。この例では、ユーザの手作りが聴牌までまだまだかかると推定して高得点となる手作りをする思考ルーチンが選択される。また、選択された思考ルーチン(又は対応行動フラグ)に基づいて、ユーザ行動評価部800は、ユーザ行動の評価条件をセットする。この例では「今から3巡以内にユーザは上がらない」という条件がユーザ行動の評価条件としてセットされたものとする。
ゲームシステムGSは、会話制御処理にて選択された回答文830として「ふふふっ、じゃあ一気に攻めちゃおうかなぁ」という出力を行い(ステップS2205)、また上記思考ルーチンにより、キャラクタ行動を決定する(ステップS2206)。この例では、ゲームシステムGSが演ずるキャラクタは、聴牌までのスピードは考慮せず、高得点となるように捨て牌を選択して、河(ホー)に牌を出す処理を行う。
このキャラクタが捨てた牌がユーザの当たり牌であった。ユーザは音声入力手段3によりゲームシステムGSに上がり宣言である発話「ロン!」を入力する(ステップS2207)。
このユーザの行動「ロン」について、ゲームシステムGSはユーザ行動評価処理を行う(ステップS2208)。ユーザ行動評価部800は、このユーザの行動ユーザの行動「ロン」が上述のユーザ行動の評価条件「今から3巡以内にユーザは上がらない」に反すると判定して、感情状態情報管理部700に感情状態情報をユーザに対するキャラクタの感情が悪化するように変更するよう、要求する。感情状態情報管理部700はこの要求に応じて、感情状態情報を変更する。例えば、キャラクタがユーザに対して激怒し、或いはユーザに対する信頼度が低下し、或いはユーザに対する親密度が低下するように、感情状態情報を変更することが考えられる。どのように感情状態情報を変更するかは、ゲームの設定、キャラクタの性格設定、キャラクタが行ったブラフの累積回数などに応じて適宜定めてよい。
また、ゲームシステムGSは、ユーザ発話「ロン!」に応じて回答文830を出力する(ステップS2210)。この回答文830により、キャラクタの感情が変更されたことをユーザに明示的に伝えるようにしているが、必ずしも明示的に伝えなくともよい。この回答文830に合わせてステップS2209において変更された感情状態情報に基づいてキャラクタ画像の表示制御(怒った表情のキャラクタを表示したり、キャラクタの取り乱している状態を示す動画を表示する、など)を行ってもよい。
以降のゲームにおけるユーザとキャラクタの会話はステップS2209において変更された感情状態情報に基づいて行われ、ユーザはブラフに対して感情を変化させたキャラクタの応答を受けることとなり、より自然な反応を示すキャラクタの演出を楽しむことができるようになる。
[その他、変形例など]
(1) ユーザ行動評価部800は、ユーザがブラフをかけた回数をカウントしておき、この回数が所定回数を超えた場合に、特別の感情状態情報の変更(例えば、激怒する、何の反応もしなくなる、など)を行ったり、以降ユーザに発話に基づく思考ルーチンの変更を停止する、などの処理を行うようにしてもよい。
ゲームシステムの構成例を示すブロック図 ゲーム装置の構成例を示すブロック図 ゲーム進行制御部の構成例を示すブロック図 会話制御装置の構成例を示すブロック図 音声認識部の構成例を示す機能ブロック図 単語仮説絞込部の処理の一例を示すタイミングチャート 音声認識部の動作例を示すフロー図 会話制御装置の部分拡大ブロック図 文字列とこの文字列から抽出される形態素との関係を示す図 「発話文のタイプ」と、その発話文のタイプを表す二文字のアルファベット、及びその発話文のタイプに該当する発話文の例を示す図 文のタイプとそのタイプを判定するための辞書の関係を示す図 会話データベースが記憶するデータのデータ構成の一例を示す概念図 ある話題特定情報と他の話題特定情報との関連付けを示す図 話題タイトルのデータ構成例を示す図 回答文のタイプを説明するための図 ある話題特定情報に対応付けされた話題タイトル、回答文、感情状態パラメータ、感情フラグ、対応行動フラグの具体例を示す図 別の話題特定情報対応付けされた話題タイトル、回答文、感情状態パラメータ、感情フラグ、対応行動フラグの具体例を示す図 感情状態情報のデータ構成例を示す図 ゲームシステムの主要な動作を示したフローチャート 会話制御処理の例を示したフローチャート ユーザ行動評価処理の例を示したフローチャート ゲームシステムの動作例を示すシーケンス図
符号の説明
GS … ゲームシステム
1 … 会話制御装置
2 … ゲーム装置
3 … 音声入力手段
4 … 非音声入力手段
5 … 画像出力手段
6 … 音声出力手段
200 … 音声認識部
300 … 会話制御部
400 … 文解析部
500 … 会話データベース
600 … 音声認識辞書記憶部
700 … 感情状態情報管理部
800 … ユーザ行動評価部

Claims (8)

  1. ユーザからの発話に応答する回答文を出力する会話処理部と、ユーザとキャラクタとの対戦ゲームを実行するゲーム処理部とを有するゲーム機において、
    前記会話処理部は、複数の話題特定情報を記憶する会話データベース手段と、従前の会話及び従前の回答文により定まる談話履歴を記憶し、この談話履歴により定まる話題特定情報と発話情報とを照合して、キャラクタの感情を示す感情状態情報に応じた回答文を選択するとともに、キャラクタの行動を決定するための情報を出力する会話制御手段とを有し、
    前記ゲーム処理部は、前記キャラクタの行動を決定するための情報に基づいてゲームを実行する
    ことを特徴とするゲーム機。
  2. 請求項1に記載のゲーム機において、前記ゲーム機は、感情状態情報を管理する感情状態情報管理手段と、会話処理部に入力されたユーザの発話内容とゲーム処理部に入力されたユーザの行動命令情報とを比較し、比較結果に基づいて前記感情状態情報の変更を行わせるユーザ行動評価手段とをさらに有することを特徴とするゲーム機。
  3. 請求項1又は請求項2に記載のゲーム機において、前記ゲーム処理部は、前記感情状態情報に基づいてキャラクタの表示を制御することを特徴とするゲーム機。
  4. ユーザとキャラクタとの間の会話での話題を特定するための話題特定情報と、回答文と、キャラクタの行動を決定するための情報を予め記憶させるステップと、
    従前の会話及び従前の回答文により定まる談話履歴を記憶させ、この談話履歴により定まる話題特定情報と発話情報とを照合して、キャラクタの感情を示す感情状態情報に応じた回答文と、キャラクタの行動を決定するための情報とを取得するステップと、
    前記キャラクタの行動を決定するための情報に基づいて、キャラクタの取る行動を決定するステップと
    を有することを特徴とするゲームの実行方法。
  5. ユーザとキャラクタとの間の会話での話題を特定するための話題特定情報と、回答文と、キャラクタの感情変化を示す感情変数と、キャラクタの行動を決定するための情報とを予め記憶させるステップと、
    従前の会話及び従前の回答文により定まる談話履歴を記憶させ、この談話履歴により定まる話題特定情報と発話情報とを照合して、照合結果に基づいて回答文と、感情変数と、キャラクタの行動を決定するための情報とを取得するステップと、
    前記感情変数に基づいてキャラクタの感情を示す感情状態情報を更新するステップと、
    前記キャラクタの行動を決定するための情報に基づいて、キャラクタの取る行動を決定するステップと、
    ユーザの発話を受け付けるステップと、
    ユーザが入力する行動命令情報を受け付けるステップと、
    ユーザの発話内容とユーザの行動命令情報とを比較して、比較結果に基づいて前記感情状態情報の変更を行うステップと
    を有することを特徴とするゲームの実行方法。
  6. 請求項4又は請求項5に記載の方法において、前記感情状態情報に基づいてキャラクタの表示を制御するステップをさらに有することを特徴とするゲームの実行方法。
  7. 請求項1から請求項3までのいずれかに記載のゲーム機としてコンピュータを機能させるためのプログラム。
  8. 請求項4から請求項6までのいずれかに記載のゲームの実行方法をコンピュータに実行させるためのプログラム。
JP2003358075A 2003-10-17 2003-10-17 ゲーム機、ゲームの実行方法、並びにこれらのためのプログラム Expired - Fee Related JP4204044B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003358075A JP4204044B2 (ja) 2003-10-17 2003-10-17 ゲーム機、ゲームの実行方法、並びにこれらのためのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003358075A JP4204044B2 (ja) 2003-10-17 2003-10-17 ゲーム機、ゲームの実行方法、並びにこれらのためのプログラム

Publications (2)

Publication Number Publication Date
JP2005118372A true JP2005118372A (ja) 2005-05-12
JP4204044B2 JP4204044B2 (ja) 2009-01-07

Family

ID=34614772

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003358075A Expired - Fee Related JP4204044B2 (ja) 2003-10-17 2003-10-17 ゲーム機、ゲームの実行方法、並びにこれらのためのプログラム

Country Status (1)

Country Link
JP (1) JP4204044B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009057186A1 (ja) * 2007-10-29 2009-05-07 Osaka Electro-Communication University チャットシステム、ゲームシステム、コンピュータプログラム、コンピュータプログラムが記録された記録媒体及びチャット処理方法
JP2019097978A (ja) * 2017-12-05 2019-06-24 株式会社バンダイナムコエンターテインメント ゲームシステム及びプログラム
CN112569606A (zh) * 2020-12-24 2021-03-30 厦门极致互动网络技术股份有限公司 一种网络游戏行为日志的管理系统
CN112742024A (zh) * 2020-08-20 2021-05-04 腾讯科技(深圳)有限公司 虚拟对象的控制方法、装置、设备及存储介质

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009057186A1 (ja) * 2007-10-29 2009-05-07 Osaka Electro-Communication University チャットシステム、ゲームシステム、コンピュータプログラム、コンピュータプログラムが記録された記録媒体及びチャット処理方法
JP2019097978A (ja) * 2017-12-05 2019-06-24 株式会社バンダイナムコエンターテインメント ゲームシステム及びプログラム
JP7242175B2 (ja) 2017-12-05 2023-03-20 株式会社バンダイナムコエンターテインメント ゲームシステム及びプログラム
CN112742024A (zh) * 2020-08-20 2021-05-04 腾讯科技(深圳)有限公司 虚拟对象的控制方法、装置、设备及存储介质
CN112742024B (zh) * 2020-08-20 2023-02-10 腾讯科技(深圳)有限公司 虚拟对象的控制方法、装置、设备及存储介质
CN112569606A (zh) * 2020-12-24 2021-03-30 厦门极致互动网络技术股份有限公司 一种网络游戏行为日志的管理系统

Also Published As

Publication number Publication date
JP4204044B2 (ja) 2009-01-07

Similar Documents

Publication Publication Date Title
JP4846336B2 (ja) 会話制御装置
JP4849663B2 (ja) 会話制御装置
JP4849662B2 (ja) 会話制御装置
JP4888996B2 (ja) 会話制御装置
CN1321401C (zh) 语音识别设备、语音识别方法、会话控制设备以及会话控制方法
JP5149737B2 (ja) 自動会話システム、並びに会話シナリオ編集装置
JP2007114621A (ja) 会話制御装置
JP2005157494A (ja) 会話制御装置及び会話制御方法
Papaioannou et al. Alana: Social dialogue using an ensemble model and a ranker trained on user feedback
Pichl et al. Alquist: The alexa prize socialbot
WO2003085550A1 (en) Conversation control system and conversation control method
JP2003210833A (ja) 対話ゲームシステム、対話ゲーム方法及びプログラム
JP4204044B2 (ja) ゲーム機、ゲームの実行方法、並びにこれらのためのプログラム
JP3996125B2 (ja) 文章生成装置及び生成方法
JP5281527B2 (ja) 対話型性格特徴判定装置とその方法と、プログラム
JP4475628B2 (ja) 会話制御装置、会話制御方法並びにこれらのプログラム
JP4204043B2 (ja) ゲーム機、ゲームの実行方法、並びにプログラム
JP4204041B2 (ja) ゲーム機、ゲームの実行方法、並びにプログラム
JP4204042B2 (ja) ゲーム機、ゲームの実行方法、並びにプログラム
JP2005122549A (ja) 会話制御装置及び会話制御方法
JP2005118371A (ja) ゲーム機
JP5378717B2 (ja) 会話制御システム、並びに端末装置
Song et al. Topic control in a free conversation system
JP2005099604A (ja) 会話制御装置、会話制御方法、およびゲームシステム
Lin Character modeling through dialogue for expressive Natural Language Generation

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060809

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060811

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080201

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081009

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081010

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111024

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4204044

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111024

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111024

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111024

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121024

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121024

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131024

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees