(57)【要約】【課題】車載装置で実行されることでキャラクタが行うコミュニケーションの展開が豊富な画面要素推移体を容易に作成する。【解決手段】シーンとシーンを展開させる移行条件（展開条件）と分岐シーンを複数組み合わせる。例えば、挨拶をするシナリオを作成する場合、日付によって分岐するようにし、特殊な挨拶（１月１日ならあけましておめでとう）が有る場合は、特別な挨拶をする。ない場合、前回の挨拶実行からの間隔が１週間以上空いていたら「ひさしぶりですね」と挨拶する。間隔が１週間以内であれば、実行された時間によって「おはよう」「こんにちは」「こんばんは」と挨拶を変える。さらに朝の場合は友好度が低かったら「おはようございます」と丁寧な口調にする等のように、豊富な展開のシナリオを作成することができる。【選択図】      図３９
2004302904.tif 000002
【特許請求の範囲】
【請求項１】
キャラクタの表示内容、処理内容の少なくとも１つが定義された画面要素を作成する画面要素作成手段と、
前記１つの画面要素から複数の画面要素に分岐させる分岐要素を作成する分岐要素作成手段と、
前記画面要素により定義された処理内容の変化、車両状態の変化のうちいずれか１つの変化を条件として、前記画面要素間又は画面要素から分岐要素への移行条件を設定する移行条件設定手段と、
時間、場所、道路種別、車両状態、ナビゲーション装置の稼動状態及び使用者データの少なくとも１つの状態を条件として、前記分岐要素間又は分岐要素から画面要素への分岐条件を設定する分岐条件設定手段と、
前記画面要素、移行条件、分岐要素及び分岐条件とを組み合わせて画面要素推移体を作成する画面要素推移体作成手段と、
を具備することを特徴とするデータ作成装置。
【請求項２】
前記分岐条件は、前記特定の画面要素により定義された処理が実行されたか否かを条件として設定する
ことを特徴とする請求項１に記載のデータ作成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ作成装置に係り、例えば、車両の搭乗者とのコミュニケーションにより会話をしたり機器操作等を自律的に行うエージェント機能を備えた車載装置で実行される画面要素推移体を作成するデータ作成装置に関する。
【０００２】
【従来の技術】
例えば、犬などのペット型のロボットや、車室内においてナビゲーション装置等の機器操作の案内をしたり状況に応じた質問や提案等を行うことで搭乗者との対話や対応をするエージェント装置が開発され、車載装置として車両に搭載されている（例えば、特許文献１参照）。そして、装置に対して考えられる種々の状態を想定すると共に、想定した各状態を検出した場合にとるべき対応が、所定のデータやプログラムに従って規定されている。
【０００３】
【特許文献１】
特開平１１−３７７６６号公報
【０００４】
この従来のエージェント装置では、例えば、燃料検出センサ４１５の検出値Ｇ１が、全５回分の給油残量の平均値Ｇ２以下（Ｇ１≦Ｇ２）になった場合に、エージェントＥが表示装置２７に現れて給油を促す行動が表示装置２７に表示され、「おなかが減ったなあ！ガソリンがほしいな！」等の音声が音声出力装置２５から出力される。
【０００５】
【発明が解決しようとする課題】
しかし従来のエージェント装置では、多くの状況に対応できるようになっているほどユーザの満足度が高くなるため、できるだけ多くの状況を想定し、できるだけ多種類の対応が可能なようにプログラミングする必要がある。このような状況設定と対応は、全て装置の開発者側が行っているため、開発時間もかかり、コストも多く必要であった。
また、開発するプログラムは、できるだけ多くのユーザが受け入れられるような状況を想定して作成されるが、ユーザによっては自律的な対応の内容を受け入れられない場合がある。このような場合、ユーザの使い方や好みに合わせて、ハードウエアやソフトウエアの設定や機能を変更するカスタマイズ機能を使用することになるが、カスタマイズ可能な内容自体が装置の開発者側が提供するものに限定されている。
ユーザにとって最も好ましい判断や対応を自律型制御装置にさせるためには、各ユーザが自分の好みに合わせてプログラミングすることが望ましいが、アセンブリ言語やＣ言語等のプログラミングに関する専門の知識や環境が必要であった。
このため、一般のユーザは自己の好みに合った対応を自律的にさせることはできず、たとえプログラミングの知識があったとしても、プログラムの書き換えができるようには構成されていない装置が多かった。
【０００６】
本発明は、車載装置で実行されることでキャラクタがコミュニケーションを行う画面要素推移体と、その起動条件を容易に作成可能にすることを第１の目的とする。
また、コミュニケーションの展開が豊富な画面要素推移体を容易に作成すること可能にすることを第２の目的とする。
【０００７】
【課題を解決するための手段】
請求項１に記載した発明では、キャラクタの表示内容、処理内容の少なくとも１つが定義された画面要素を作成する画面要素作成手段と、前記１つの画面要素から複数の画面要素に分岐させる分岐要素を作成する分岐要素作成手段と、前記画面要素により定義された処理内容の変化、車両状態の変化のうちいずれか１つの変化を条件として、前記画面要素間又は画面要素から分岐要素への移行条件を設定する移行条件設定手段と、時間、場所、道路種別、車両状態、ナビゲーション装置の稼動状態及び使用者データの少なくとも１つの状態を条件として、前記分岐要素間又は分岐要素から画面要素への分岐条件を設定する分岐条件設定手段と、前記画面要素、移行条件、分岐要素及び分岐条件とを組み合わせて画面要素推移体を作成する画面要素推移体作成手段と、をデータ作成装置に具備させて前記目的を達成する。
請求項２に記載の発明では、請求項１に記載のデータ作成装置において、前記分岐条件は、前記特定の画面要素により定義された処理が実行されたか否かを条件として設定することを特徴とする。
【０００８】
【発明の実施の形態】
以下、本発明の車載装置の好適な実施形態であるエージェント装置、データ作成装置の好適な実施形態であるシナリオ作成装置、及びデータ作成プログラムの好適な実施形態であるシナリオエディタについて、図１から図４２を参照して詳細に説明する。
【０００９】
（１）実施形態の概要
本実施形態のエージェント装置では、所定の容姿からなるエージェント（キャラクタ）の画像（平面的画像、ホログラフィ等の立体的画像等）を車両内に表示する。そして、エージェント装置の機能である、センサ等の検出結果から周囲の状態（人の動きや音声を含む）を認識、判断し、その結果に応じた動作や音声を出力するという機能を、このエージェントの容姿の動きや音声と連動して実行する。例えば、「どのジャンルの食事がすきですか」等の回答（和食、洋食等）を要求する問かけを行い、この問いかけに対するユーザの回答内容を判別（回答音声の認識や、回答選択ボタン５４ａの選択から判別）して、次のシーン（画面要素）に応じた処理を実行する。このように、装置からの回答を要求する問いかけと、その回答に応じて、所定の操作の実行を開始するので、ユーザは、あたかも擬似人格を備えたエージェントが車両内に存在しているような体感をするようになる。以下の説明では、このようなエージェント装置の一連の機能の実行を、エージェントの行為や動作として説明する。
【００１０】
本実施形態のエージェント装置では、このエージェントに運転者との各種コミュニケーションや、操作の代行を行わせる。そしてエージェントが自律的に行う様々な行為（各行為）を複数のシナリオ（画面要素推移体）で構成する。そして、エージェントによる一連の連続した行為の内容を規定した複数のシナリオと、各シナリオの展開を自律的に開始（起動）するための自律起動条件（起動条件）とにより規格化したシナリオデータを保存する。
さらに、エージェント装置では、エージェント（キャラクタ）の心理状態を表す複数の感情要素の各感情要素値を記憶し、この感情要素値を、実行したシナリオの指示や車両センサの検出値やナビゲーション装置による検出データに応じて変更する。
【００１１】
シナリオは、シナリオ作成装置で作成され、シーン（画面要素）を最小単位として、１又は連続する複数のシーンと、シーン間に配置される分岐シーン（分岐要素）とで構成される。自律的に行う処理内容とエージェントの画像及び音声の少なくとも１つから構成される場面が１シーンである。
シナリオは、所定のシーンから次のシーンに展開することで各シーンの展開構成が規定されるが、シーンの展開を豊富にするために、各シーン間に分岐シーンが配置される。分岐シーンはキャラクタの画像や処理を備えていない。
各シーン及び分岐シーンと、他のシーン又は分岐シーンに移行するための１の移行条件と、各移行条件に対応して移行先のシーン又は分岐シーンを特定する移行先データとから、シーンの展開構成が規定される。
このように、シーンに規定された移行条件を以下展開条件、分岐シーンに規定された分岐条件を以下追加条件という。
展開条件としては、エージェント装置や車両及びナビゲーション装置において検出（取得）可能な状態の状態変化、例えば、運転者等からの応答が有無（無い場合は、応答がないまま所定時間の経過という状態変化）、シナリオの起動、キャラクタのセリフ（音声出力）の終了、キャラクタの動作終了など、各種規定されている。
また、追加条件としては、検出（取得）可能な対象の対象状態（状態の変化ではなくそのときの状態自体）、例えば、キャラクタの心理状態、ユーザの性別や年齢等のユーザ情報、日付、日時、気温、天候、シナリオの終了の仕方など、各種規定されている。
【００１２】
そしてシーンとシーンの展開を展開条件と分岐シーンを複数組み合わせることで、移行条件を論理演算させることが可能となる。
例えば、挨拶をするシナリオを作成する場合、日付によって分岐するようにし、特殊な挨拶（１月１日ならあけましておめでとう）が有る場合は、特別な挨拶をする。特集な挨拶がない場合、前回の挨拶実行からの間隔が１週間以上空いていたら「ひさしぶりですね」と挨拶する。間隔が１週間以内であれば、実行された時間によって「おはよう」「こんにちは」「こんばんは」と挨拶を変える。さらに朝の場合は友好度が低かったら「おはようございます」と丁寧な口調にする等のように、豊富な展開のシナリオを作成することができる。
一方、エージェント装置では、シーンが分岐シーンだった場合、追加条件として指定された条件の状態を取得し、その結果によって展開判断処理を行ない次のシーンに展開するようにする。
このように、時間や場所等の条件によってエージェントの対応の変化が可能な展開をするシナリオの作成が可能となる。つまり、これまでよりもユーザの好みに合わせた多彩なコミュニケーションの展開をするシナリオの作成が可能になる。効果として、ユーザが飽きにくくすると同時に、エージェントがより人間に近い対応を取ることができるようになる。つまり、エージェントは状況に応じた対応が可能になるため、従来よりもインテリジェンスに（賢く）することができる。
【００１３】
エージェント装置のユーザ等は、規定された規格に従って、独自のシナリオをシナリオ作成装置を使用して作成する。シナリオ作成装置は、シナリオ編集プログラムやデータをパーソナルコンピュータにインストールすることで構成することができる。
作成したシナリオは、インターネット等のネットワークを介してエージェント装置に送信し、又はダウンロードしてもらうことにより、また、所定の半導体メモリを介してエージェント装置に格納することで、自己（第三者）の希望通りの行為（コミュニケーションや処理）をエージェントに行わせることが可能になる。更に、作成したシナリオをメールに添付してエージェント装置に送信することも可能である。
このように、ユーザは自分の思い通りにエージェントを機能させるシナリオを独自にまた、容易に作成することが可能になるので、エージェント装置の自律的な動作に対する抵抗がなくなる。
【００１４】
さらに、エージェント装置では、シナリオ作成装置で作成されたシナリオデータに基づいてエージェントを自律的に起動させる（自動で登場させる）条件を満たしたかを判断する処理を定期的に、もしくは特定の状態を満たしたときに実行し、条件を満たした場合にエージェントを自動で登場させることができるシステムを備えさせる。
これによりシナリオ作成装置では、作成するデータが規格化されているので、プログラムの知識の有無に関係無く、シナリオエディタを持つことで特定の条件を満たしたときに自動で登場して対応してくれるエージェントのシナリオデータを作成及び編集することができる。
【００１５】
（２）実施形態の詳細
まず、開発者やユーザによって作成されたシナリオに従ってエージェントが自律的に機能するエージェント装置１について、その構成と動作を説明する。
図１は、本実施形態におけるエージェント装置１の構成を表したブロック図である。
本実施形態におけるエージェント装置１は、車両に搭載されおり、車両内のユーザとの間でコミュニケーションを行う機能や車両に対して所定の処理を行う車両制御機能等のエージェント機能の他、ユーザに走行経路の案内等を行うナビゲーション機能も備えている。
本実施形態のエージェント装置１では、エージェント機能及び、ナビゲーション機能を実現するための中央処理装置（１）、表示装置（２）、音声出力装置（３）、音声入力装置（４）、入力装置（５）、各種状況検出装置（６）、各種車載装置（７）、通信制御装置（８）、通信装置（９）、外部記憶装置（１０）を備えている。
【００１６】
中央処理装置（１）は、種々の演算処理を実行するＣＰＵ（１−１）、外部記憶装置（１０）からプログラムを読み込んで格納するフラッシュメモリ（１−２）、フラッシュメモリ（１−２）のプログラムチェック、更新処理を行なうプログラム（プログラム読み込み手段）を格納したＲＯＭ（１−３）、ＣＰＵ（１−１）がワーキングメモリとして演算処理中のデータを一時的に格納するＲＡＭ（１−４）、短期感情要素の要素値を経時的に減少させるための時間経過を測定するためやその他の時間や時刻の計測に使用される時計（１−５）、表示装置（２）への画面表示に使用する画像データが記憶された画像メモリ（１−７）、ＣＰＵ（１−１）からの表示出力制御信号に基づいて画像メモリ（１−７）から画像データを取り出し、画像処理を施して表示装置（２）に出力する画像プロセッサ（１−６）、ＣＰＵ（１−１）からの音声出力制御信号をアナログ信号に変換して音声出力装置（３）に出力する処理と、音声入力装置（４）から入力されたアナログ信号をデジタルの音声入力信号に変換する処理を行なう音声プロセッサ（１−８）、入力装置（５）による入力内容を受け取る入力装置Ｉ／Ｆ部（１−９）、各種状況を検出するための検出器類から情報を受け取るための各種入力Ｉ／Ｆ部（１−１０）、他の装置と情報のやり取りを行なう通信Ｉ／Ｆ部（１−１１）、ＣＤ−ＲＯＭやＩＣカード類、ハードディスク等といった外部記憶媒体（１０−２）からデータ及びプログラムを読み込んだりデータを書き込んだりする外部記憶装置（１０）を制御するための外部記憶装置制御部（１−１２）を備えている。
【００１７】
この中央処理装置（１）は、経路探索処理や、経路案内に必要な表示案内処理や、その他システム全体において必要な処理、本実施形態におけるエージェント処理（エージェントと運転者との各種コミュニケーションや操作代行、状況判断を行ないその結果に応じて自律的に行なう処理）を行うようになっている。
更新処理を行なうプログラム（プログラム読み込み手段）は、ＲＯＭ（１−３）以外にもフラッシュメモリ（１−２）に格納するようにしてもよい。
本実施形態におけるプログラムを含め、ＣＰＵ（１−１）で実行される全てのプログラムは、外部記憶媒体（１０−２）であるＣＤ−ＲＯＭ等に格納されてもよいし、それらプログラムの一部または全てが本体側のＲＯＭ（１−３）またはフラッシュメモリ（１−２）に格納するようにしてもよい。
この外部記憶媒体（１０−２）に記憶されたデータやプログラムが外部信号として中央処理装置（１）に入力されて演算処理されることにより、種々のエージェント機能及びナビゲーション機能が実現されるようになっている。
また、本実施形態の中央処理装置（１）は、起動条件（自律起動条件）を満たしていると判断された場合、画面要素推移体（シナリオ）を実行する、画面要素推移体実行手段を形成している。
【００１８】
表示装置（２）は、中央処理装置（１）の処理による経路案内用の道路地図や各種画像情報が表示されたり、キャラクタの各種行動（動画）及び画面構成のパーツで構成された画面要素推移体（シナリオ）が表示されたりするようになっている。表示装置（２）には、液晶表示装置、ＣＲＴ等の各種表示装置が使用される。なお、この表示装置（２）は、例えばタッチパネル等の、入力装置（５）としての機能を兼ね備えたものとすることができる。
音声出力装置（３）は、中央処理装置（１）の処理によって声による経路案内を行なう場合の案内音声や、エージェントによる運転者との通常のコミュニケーション用の会話や運転者情報取得のための質問による音声や音が出力されるようになっている。音声出力装置（３）は、車内に配置された複数のスピーカで構成されている。これらは、オーディオ用のスピーカと兼用するようにしてもよい。
【００１９】
音声入力装置（４）は、運転者の音声を的確に収集するために指向性のある専用のマイクが使用されたりする。この音声入力装置（４）から入力されたアナログ信号を変換したデジタルの音声入力信号を使ってＣＰＵ（１−１）で音声認識処理が実行されるようになっている。
音声認識の対象となる音声としては、例えば、ナビゲーション処理における目的地等の入力音声や、エージェントとの運転者の会話（運転者による応答を含む）等があげられ、音声入力装置はこれらの音声を入力する音声入力手段として機能する。
なお、音声認識が必要なシーンか否かについては各シーンデータにおいて、音声認識の指示が設定されている。そして、音声認識の指示が設定されているシーンのシーンデータには、音声認識の対象となる音声を認識するための辞書が指定されている。
シナリオには、この音声認識の結果（運転者の応答結果）に応じて、エージェントの感情要素の要素値の変更指示が規定されている場合がある。
【００２０】
入力装置（５）は、目的地を設定する際に電話番号や地図上の座標などにて入力したり、目的地までの経路探索や経路案内を要求（リクエスト）するために使用される。また、入力装置（５）は、運転者情報を運転者が入力する場合や、エージェント機能の使用を開始する場合のトリガとしてとして使用される。さらに入力装置（５）は、エージェント機能による、エージェントとのコミュニケーションにおいて、エージェントからの問い合わせ等に対して運転者が応答するための１つの応答手段としても機能するようになっている。
入力装置（５）には、タッチパネル（スイッチとして機能）、キーボード、マウス、ライトペン、ジョイスティックなどの各種の装置が使用可能である。
また、赤外線等を利用したリモコンと、リモコンから送信される各種信号を受信する受信部を備えてもよい。
また、上記の音声入力装置（４）を使った音声認識を入力装置の代わりに使用しても良い。
【００２１】
図２は、各種状況検出装置（６）の構成を表したブロック図である。
この各種状況検出装置により、車載の各種状況を検出する状況検出手段が構成される。
各種状況検出装置（６）は、現在位置検出装置（６−１）と、交通状況情報受信装置（６−２）と、運転操作等の状況を検出するためにブレーキ検出器（６−３）と、サイドブレーキ（パーキングブレーキ）検出器（６−４）と、アクセル開度検出器（６−５）と、Ａ／Ｔのシフト位置検出器（６−６）と、ワイパ検出器（６−７）と、方向指示器検出器（６−８）と、ハザード検出器（６−９）と、イグニッション検出器（６−１０）を備えている。上記構成により、各種状況及び条件を検出することにより、検出手段が形成される。
また、各種状況検出装置（６）は、車両の速度（車速情報）を検出する車速センサ（６−１１）を備えており、該車速センサが検出した車速が０か否によって走行中であるか否かを判断することにより、走行判断手段が形成される。
【００２２】
現在位置検出装置（６−１）は、車両の絶対位置（緯度、経度による）を検出するためのものであり、人工衛星を利用して車両の位置を測定するＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）受信装置（６−１−１）と、ＧＰＳの補正信号を受信するデータ送受信装置（６−１−２）と、方位センサ（６−１−３）と、舵角センサ（６−１−４）と、距離センサ（６−１−５）等が使用される。
距離センサ（６−１−５）と舵角センサ（６−１−４）は運転操作状況検出手段としても機能する。
【００２３】
交通状況情報受信装置（６−２）は、道路の混雑状況等を検出するためのものである。
交通情報受信装置（６−２）は、路上に配置されたビーコンから情報を受信するビーコン受信装置（６−２−１）と、ＦＭ放送電波を用いて情報を受信する装置（６−２−２）等が使用され、これらを用いて交通情報センターから渋滞情報や、交通規制情報等を受信する。
また、ビーコン受信装置（６−２−１）を現在位置検出手段として、現在位置検出装置（６−１）と併用してもよいものとする。
【００２４】
ブレーキ検出器（６−３）は、フットブレーキが踏み込み状態か否かを検出する。
サイドブレーキ（パーキングブレーキ）検出器（６−４）は、運転者がサイドブレーキを操作中か否か、及びサイドブレーキの状態（ＯＮかＯＦＦか）を検出する。
アクセル開度検出器（６−５）は、運転者がアクセルペダルをどれぐらい踏み込んでいるかを検出する。
シフト位置検出器（６−６）は、運転者がＡ／Ｔのシフトレバーを操作中か否か、及びシフトレバー位置を検出する。
ワイパ検出器（６−７）は、運転者がワイパを使用しているか否かを検出する。
【００２５】
方向指示器検出器（６−８）は、運転者が方向指示器の操作中であるか否か、及び方向指示器が点滅中か否かを検出する。
ハザード検出器（６−９）は、運転者がハザードを使用している状態か否かを検出する。
イグニッション検出器（６−１０）は、イグニッションスイッチがＯＮになっているか否かを検出する。
車速の検出には距離センサ（６−１−５）を使用することもできる。
各種状況検出装置（６）は、機器操作状況検出手段としてこれらの他にも、ヘッドランプやルームランプ等のランプ類の操作状況を検出するライト検出センサ、運転者のシートベルト着脱操作を検出するシートベルト検出センサ、その他のセンサを備えている。
【００２６】
ＧＰＳ受信装置（６−１−１）と、データ送受信装置（６−１−２）と、交通情報受信装置（６−２）は、図１の通信装置Ｉ／Ｆ部（１−１１）に接続され、他は各種入力Ｉ／Ｆ部（１−１０）に接続されている。
【００２７】
図１において、通信装置Ｉ／Ｆ部（１−１１）には、他にも通信制御装置（８）が接続できるようになっている。この通信制御装置（８）には、通信装置（９）（各種無線通信機器からなる携帯電話等）が接続されるようになっている。
これらを使って、電話回線による通話の他、例えば車内での通信カラオケのために使用するカラオケデータを提供するような情報提供局、交通情報を提供する情報基地局との通信や、エージェント処理に用いるシナリオデータを提供する情報提供局との通信ができるようにすることも可能である。
【００２８】
本実施形態において中央処理装置（１）は、通信制御装置（８）を介してシナリオが添付された電子メールを受信することができるようになっている。
また、中央処理装置（１）には、インターネット上のホームページを表示するブラウザソフトを組み込み、ＣＰＵ（１−１）で処理させることが可能であり、通信制御装置（８）を介してホームページからシナリオを含めたデータをダウンロードすることができるようになっている。
なお、通信制御装置（８）は、通信装置（９）と一体になったものを使用してもよい。
【００２９】
また、中央処理装置（１）は、通信Ｉ／Ｆ部（１−１１）を通して車内通信を行なうことで他の車載装置（７）の操作状況を受け取ったり、また、車載装置に対する各種制御を行うようになっている。
例えば、中央処理装置（１）は、各種車載装置（７）であるエアコン装置の設定温度を上げる、下げるといったようにエアコン装置を制御を行う。また、オーディオ装置から運転者がラジオ、ＣＤプレーヤ、カセットプレーヤー等のオーディオ機器の出力音量を上げる、下げるといったようにオーディオ装置の制御を行うようになっている。これらの車載装置に対する制御は、シナリオにおいて車載装置に対する制御が規定されている場合に、シナリオの実行に伴って行われる。
【００３０】
外部記憶装置（１０）は、外部記憶媒体駆動部（１０−１）とその外部記憶媒体（１０−２）を備えている。外部記憶装置（１０）は、ＣＰＵ（１−１）からの指示で外部記憶装置制御部（１−１２）による制御のもとで外部記憶媒体（１０−２）からデータやプログラムの読み込み、及び外部記憶媒体（１０−２）へのデータやプログラムの書き込みを行うようになっている。
外部記憶媒体（１０−２）には、例えば、フレキシブルディスク、ハードディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、光ディスク、磁気テープ、ＩＣカード類、光カード等の各種記憶媒体が使用され、使用する媒体毎にそれぞれの外部記憶媒体駆動装置（１０−１）が使用される。
【００３１】
外部記憶装置（１０）は、システムにおいて複数個所持してもよいものとする。例えば、収集した個人情報である、運転者情報データ（１０−２−３−６）と、学習項目データ及び応答データ（１０−２−３−７）を持ち運びが容易なＩＣカードやフレキシブルディスクで構成し、その他のデータをＤＶＤ−ＲＯＭで構成するといった例が考えられる。こうすることで、他の車両を運転する場合にこれらを記憶させたＩＣカードからデータを読み出させて使用し、ユーザが過去に応対した状況を学習した状態のエージェントとコミュニケーションすることが可能になる。つまり、車両毎のエージェントではなく、運転者毎に固有な学習内容のエージェントを車両内に出現させることが可能になる。
また、シナリオデータ＋シナリオで使用する画像データ（１０−２−３−４）を一例としてＤＶＤ−ＲＯＭで持つ構成にした場合でも、ＩＣカードを使って追加することも可能になっている。
これにより、ユーザ各自にとって固有のオリジナルシナリオを加えることが可能である。
このように、画面要素推移体（シナリオ）及び画面要素推移体の起動条件を外部から記憶することにより、本願発明の画面要素推移記憶手段が形成され、キャラクタ画像を含む画面構成、及び、キャラクタの表示を含んで実行する制御内容を記憶することにより、本願発明の記憶手段が形成される。
【００３２】
ＣＰＵ（１−１）は各種エージェント機能やナビゲーション機能を実現するプログラム（１０−２−１）や、演算処理に使用するエージェントデータ（１０−２−３）とナビゲーションデータ（１０−２−２）を、上記構成例で示すＤＶＤ−ＲＯＭやＩＣカード等から別の外部記憶装置（例えばハードディスク装置等）に格納（インストール）し、この記憶装置から必要なプログラム等をフラッシュメモリ（１−２）に読み込んで（ロードして）実行するようにしてもよいし、演算処理に必要なデータをこの記憶装置からＲＡＭ（１−４）に読み込んで（ロードして）実行するようにしてもよい。
【００３３】
次に、本発明におけるプログラムを含めたＣＰＵ（１−１）で実行されるプログラムの構成について説明する。
図３は、ＣＰＵ（１−１）でプログラムが実行されることにより実現されるエージェント処理部（１０１）と、全体処理部（１０２）との関係を表したものである。
本実施例では、種々のナビゲーション機能を実現する全体処理部（１０２）に、エージェント機能を実現するエージェント処理部（１０１）を加えることでエージェント機能付きナビゲーション装置を実現する構成になっている。
【００３４】
エージェント処理部（１０１）と全体処理部（１０２）は、互いの処理データをやり取りするためのＩ／Ｆ部をそれぞれが持っており、互いの処理データを取得し合えるようになっている。
例えば、エージェント処理部（１０１）は、シナリオデータに従って運転者とのコミュニケーションを実行した結果、運転者が設定したい目的地データを取得した場合に、このデータを全体処理部（１０２）に供給するようになっている。
全体処理部（１０２）では、取得した目的地データにより経路探索をし、作成した走行経路データに基づく経路案内を行なう。この経路案内処理において、画像や音声による進路変更方向等の案内を行なう場合に、案内に必要なデータを全体処理部（１０２）からエージェント処理部（１０１）に供給し、走行経路案内をするシナリオをデータ化したシナリオデータに従ってエージェントが案内することも可能である。
【００３５】
図４は、エージェント処理部（１０１）の構成を表したものである。
エージェント処理部（１０１）は、シナリオ駆動部（１０１−１）と、自律起動判断部（１０１−２）と、学習部（１０１−３）と、キャラクタ心理部（１０１−４）と、描画・音声出力部（１０１−５）と、音声認識部（１０１−７）と、エージェントＯＳ部（１０１−８）と、外部Ｉ／Ｆ部（１０１−９）とを備えている。
シナリオ駆動部（１０１−１）は、シナリオデータ（１０−２−３−４）を読み込み、そのシナリオデータに基づいて各処理部にメッセージ通信等を使って指示（各処理部が提供する機能を使用）する。シナリオ駆動部（１０１−１）は、シナリオの実行を管理し運転者に各種エージェント機能を提供するといったエージェント処理部の中心的な処理を行う。
【００３６】
自律起動判断部（１０１−２）は、シナリオデータ（１０−２−３−４）にある各シナリオの自律起動条件データを保持し、エージェントＯＳ部（１０１−８）から出力される定期的な自律起動判断指示により、時間、車両が位置する場所、一般道や高速道路といった道路種別、走行中や停車中等の車両状態、ナビゲーション装置の操作中や案内中等の稼働状態等の各種条件と各種状況との比較、判断を行なっている。
条件が一致した場合に、自律起動判断部（１０１−２）はシナリオ駆動部（１０１−１）に対し、条件が一致したシナリオの実行要求の指示を出す。
自律起動条件と比較するための各種状況はエージェントＯＳ部（１０１−８）及び学習部（１０１−３）から入手している。
【００３７】
図４の学習部（１０１−３）は、エージェントとのコミュニケーションにおいて運転者の選択や応答によって入手した項目（実行結果や実行履歴）を運転者情報データ（１０−２−３−６）や、学習項目データ及び応答データ（１０−２−３−７）として格納する。学習部（１０１−３）は、シナリオが異なるシーンで終了する場合の終了の仕方を示すエンドＩＤも入手して応答データ（１０−２−３−７）として格納する。これら入手した項目は、ＲＡＭ（１−４）上に格納されているが、外部記憶媒体（１０−２）であるＩＣカード等にも出力できるようになっている。
また、学習部（１０１−３）は、エージェントＯＳ部（１０１−８）から状況の変化を入手して運転操作に関する情報を記録する。例えば、運転者による乗車時間帯や、乗車頻度等の各種状況を判断するために、電源ＯＮ（イグニッションＯＮ）の日時を過去１０回分記憶しておいたりもする。格納された情報は、例えばシナリオ駆動部（１０１−１）に提供されシナリオの展開に変化を与えるために使用されたり、自律起動判断の比較に使用されたりする。
なお、また、本実施形態における学習部（１０１−３）は、運転者情報の保持・参照も兼務しているが、運転者情報部として独立させてもよい。
【００３８】
キャラクタ心理部（１０１−４）は、エージェントＯＳ部（１０１−８）が管理している現在状況を入手し、後述する長期的感情変化条件と短期的感情変化条件（図８、図１０）に基づき、キャラクタの心理状態を長期的感情要素と短期的感情要素を自律的に変更する。
またキャラクタ心理部（１０１−４）は、エージェントＯＳ（１０１−８）から、シナリオにおけるメンタルモデル変更指示（キャラクタの感情要素値変更の指示）を入手し、変更指示に応じて長期的感情要素と、短期的感情要素を変更する。
【００３９】
描画・音声出力部（１０１−５）は、シナリオ駆動部（１０１−１）からの指示で選択ボタンやタイトル等のパーツから構成される画面を表示するための制御信号を作成する。また、シナリオ駆動部（１０１−１）からの指示で、シーンデータによる表示状態に対応するキャラクタの各種行動（動作）を表示するための制御信号も作成する。
本実施形態では、これらの制御信号は、エージェントＯＳ部（１０１−８）に伝わり外部Ｉ／Ｆ部（１０１−９）から全体処理部（１０２）に伝わり、全体処理部（１０２）内にある画像プロセッサへの指示を行なう処理部を通して画像プロセッサ（１−６）へ伝わり画像処理を施し表示装置（２）に表示されるが、全体処理部（１０２）を通さずにエージェントＯＳ部（１０１−８）において画像プロセッサへの指示を行なう処理部を持たせるようにしてもよい。
【００４０】
描画・音声出力部（１０１−５）は、また、シナリオ駆動部（１０１−１）からの指示でエージェントが運転者とコミュニケーションを行なう際の台詞を出力するための制御信号を作成する。
本実施形態では、これらはエージェントＯＳ部（１０１−８）に伝わり外部Ｉ／Ｆ部（１０１−９）から全体処理部（１０２）に伝わり、全体処理部（１０２）内にある音声プロセッサへの指示を行なう処理部を通して音声プロセッサ（１−８）へ伝わり、この音声出力制御信号をアナログ信号に変換して音声出力装置（３）に出力されるが、全体処理部（１０２）を通さずにエージェントＯＳ部（１０１−８）において音声プロセッサへの指示を行なう処理部を持たせるようにしてもよい。
なお、本実施形態の描画・音声出力部（１０１−５）は、各シーンにおけるキャラクタの動作描画機能と音声出力機能を備えているが、描画部（描画機能部）と、音声出力部（音声出力機能部）とを別々に構成するようにしてもよい。
【００４１】
音声認識部（１０１−７）は、シナリオ駆動部（１０１−１）からの指示により、全体処理部（１０２）中の音声認識処理部に音声認識辞書を作成させるための制御信号を発する。また、音声認識部（１０１−７）は、シナリオ駆動部（１０１−１）からの指示で音声認識処理を開始させたり停止させたりする制御信号も発する。
本実施形態では、これらはエージェントＯＳ部（１０１−８）に伝わり外部Ｉ／Ｆ部（１０１−９）から、全体処理部（１０２）内にある音声認識処理部に伝えられる。
この音声認識処理部は、音声認識処理を開始する指示及び停止する指示を、音声プロセッサ（１−８）に伝え、音声プロセッサ（１−８）は音声入力装置（４）から入力されたアナログ信号をデジタルの音声入力信号に変換する処理を行なうことになっている。
音声入力信号が入力されると、音声認識処理部は、前記デジタルの音声入力信号を取得し、それをもとに音声認識処理部は認識処理を行ない、その結果は先ほどの経路と逆の流れで音声認識部（１０１−７）に伝えられる。音声認識部（１０１−７）は、音声認識結果をシナリオ駆動部（１０１−１）に通知する。
以上の構成により、音声を認識する音声認識手段が形成される。
【００４２】
エージェントＯＳ部（１０１−８）は、時間、場所、各種入力等の状況の変化（シナリオの追加も含む）を取得して現在の状況を管理し、状況の変化に対して必要に応じてメッセージ通信にて、キャラクタ心理部（１０１−４）等の各処理部に通知する。状況の変化は、外部Ｉ／Ｆ部（１０１−９）を通して全体処理部（１０２）から供給されたり、問い合わせたりして入手する。
入手される情報は、各種状況検出装置（６）による検出結果等を、各種入力Ｉ／Ｆ部（１−１０）と、通信Ｉ／Ｆ部（１−１１）より取り込みＲＡＭ（１−４）に書き込まれたものである。入力装置（５）を使って入力された内容も、外部Ｉ／Ｆ部（１０１−９）を通して全体処理部（１０２）から供給され、その内容を必要に応じてメッセージ通信にて各処理部に通知する。
また、エージェントＯＳ部（１０１−８）は、他にも各種のライブラリを持っており、各処理部の間でデータのやり取りなどを行なうメッセージ通信の提供、及び現在時刻の提供、メモリの管理を行ない各処理部が処理を行なう際に必要なメモリの提供、外部記憶媒体からのデータ読み込みや書き込み機能の提供などを行なう。
【００４３】
またエージェントＯＳ部（１０１−８）は、時計（１−５）から取得する時刻情報を用いて時間に関する処理を行ないタイマーの役割をして特定時間の経過通知を行うようになっている。すなわち、エージェントＯＳ部（１０１−８）は、計時手段として機能し、シナリオの各シーンにおいて設定されたタイマー設定時間を計時する。計時開始と計時するタイマー設定時間は、シナリオ駆動部（１０１−１）から通知され、タイマー設定時間が経過するとエージェントＯＳ部（１０１−８）は、設定時間が経過したことをシナリオ駆動部（１０１−１）に通知する。
また、エージェントＯＳ部（１０１−８）は、キャラクタ心理部（１０１−４）からの、短期的感情要素の変化の通知により計時を開始し、所定時間（例えば、３分）経過毎にキャラクタ心理部（１０１−４）に経時情報を通知する。キャラクタ心理部（１０１−４）では、経時情報が通知される毎に、短期的感情要素の値を所定値（例えば、「３」）ずつ減少させ、要素値が「０」になったら、計時終了の指示をエージェントＯＳ部（１０１−８）に通知する。
【００４４】
エージェントＯＳ部（１０１−８）は、自律起動判断部（１０１−２）に対して、定期的に自律起動判断指示を出すようになっている。この定期的な自律起動判断指示は、所定時間毎に出される。所定時間としては、定期的に出される自律起動判断指示によって定期的に処理される自律起動判断処理が、中央処理装置（１）全体の他の処理に影響しない範囲でできるだけ短い時間であることが望ましく、本実施形態では５秒間隔に設定されている。この所定時間は入力装置（５）からの操作によってユーザが当該所定時間を任意に変更することができるようにしてもよい。
また、エージェントＯＳ部（１０１−８）は、状況の変化が大きいと判断された場合にも、自律起動判断部（１０１−２）に対して、自律起動判断指示を出すようになっている。状況の変化が大きいとされる場合とは、例えば運転者が目的地設定を行なった場合、案内経路から車両がはずれた場合、シナリオデータが追加された場合、シナリオデータが削除された場合等であり、予め該当する項目が規定されＲＡＭ（１−４）等に記憶されている。
【００４５】
外部Ｉ／Ｆ部（１０１−９）は、エージェント処理部（１０１）と全体処理部（１０２）との間のインターフェースになっている（全体処理部（１０２）には受け手であるエージェントＩ／Ｆ部が存在する）。エージェント処理において利用するナビゲーション情報等各種情報の取得と、エージェント処理部から全体処理部に制御信号を伝えてナビゲーションを制御したりする。
この外部Ｉ／Ｆ部（１０１−９）を通して全体処理部（１０２）に通知して行なっている、画像プロセッサ（１−６）への描画指示や、音声プロセッサ（１−８）への音声出力指示、入力装置Ｉ／Ｆ部（１−９）からの入力情報の取得等、他プロセッサ及びＩ／Ｆ部への指示を行なう処理部をエージェント処理部に持たせ直接指示をしたり情報を取得したりするようにしてもよい。
【００４６】
図３における全体処理部（１０２）は、図示しないが地図描画部、経路探索部、経路案内部、現在位置計算部、目的地設定操作制御部等からなりナビゲーションの信号出力処理を行なうアプリケーション部、及び地図表示や経路案内に必要な表示出力制御、音声案内に必要な音声出力制御を行なうためのプログラム等のＯＳ部等で構成されている。
また、この全体処理部（１０２）には音声認識を行なう音声認識処理部、テキストデータを音声データに変換する処理部も存在する。ブラウザ機能やメール機能を追加する場合の当該処理部はこの全体処理部（１０２）に追加される。
もしくは、エージェント処理部（１０１）がブラウザ機能やメール機能を持つような構成にしてもよい。
また、本実施形態ではエージェント処理を実行するための拡張機能が全体処理部（１０２）に加えられている。この拡張機能には、例えばナビゲーションデータの中にある道路データと現在位置から、走行中の道路の種別（高速道路、国道、等）を検出する手段や走行中の道路のカーブ状況（カーブ手前、カーブ終了）を検出する手段等が存在する。
これら検出された状況は、エージェント処理部に伝えられ、例えば、エージェントの感情要素の変更等に使用される。
【００４７】
次に、外部記憶媒体（１０−２）に格納されているデータ構成（プログラムを含む）について説明する。
図５は、外部記憶媒体（１０−２）に集録されている情報を概念的に表したものである。
外部記憶媒体（１０−２）には本実施形態による各種エージェント機能やナビゲーション機能を実現するプログラム（１０−２−１）、及び必要な各種データとして、エージェントデータ（１０−２−３）とナビゲーションデータ（１０−２−２）が格納されている。
ナビゲーションデータ（１０−２−２）は、地図描画、経路探索、経路案内、目的地設定操作等に必要な各種データで構成されている。例としては、経路案内に使用される地図データ（道路地図、住宅地図、建造物形状地図等）、交差点データ、ノードデータ、道路データ、写真データ、登録地点データ、目的地点データ、案内道路データ、詳細目的地データ、目的地読みデータ、電話番号データ、住所データ、その他のデータのファイルからなりナビゲーション装置に必要な全てのデータが記憶されている。また、必要に応じて通信地域データ等も記憶される。
【００４８】
エージェントデータ（１０−２−３）は、メンタルモデルデータ（１０−２−３−１）と、お勧め提案データ（１０−２−３−３）と、知識データ（１０−２−３−２）と、シナリオデータ（１０−２−３−４）と、キャラクタデータ（１０−２−３−５）と、運転者情報データ（１０−２−３−６）と、学習項目データ及び応答データ（１０−２−３−７）と、で構成されている。
【００４９】
図６は、メンタルモデルデータ（１０−２−３−１）の内容を概念提供に表したものであり、長期的感情要素１０−２−３−１ａ、長期的感情変化条件１０−２−３−１ｂ、短期的感情要素１０−２−３−１ｃ、短期的感情変化条件１０−２−３−１ｄが格納されている。
長期的感情要素１０−２−３−１ａと短期的感情要素１０−２−３−１ｃは、キャラクタの心理状態を表す要素値が格納されている。長期的感情変化条件１０−２−３−１ｂと短期的感情変化条件１０−２−３−１ｄは、各種状況検出装置（６）の検出値や、ナビゲーション機能によるデータによって、各感情要素の値を変化させるための条件と、その変化値が格納されている。
この変化条件に対応する変化値、及び、シナリオによる感情要素の変化指示の値によって、長期的感情要素１０−２−３−１ａ、長期的感情変化条件１０−２−３−１ｂの感情要素値が変更される。
【００５０】
図７は、長期的感情要素１０−２−３−１ａを概念的に表したものである。
図７（ａ）に示されるように、長期的感情要素１０−２−３−１ａは、友好度，従順度，自信度，モラル，元気度の各要素で表され、各感情要素値は、例えば、０〜１００の値で表されるようになっている。長期的感情要素の数は、本実施形態では５つを採用しているが、その他の要素を加え、また、省略することで他の所定数としてもよい。
各要素の値はそれぞれ独立して、０〜１００までの間で変化する。
長期的感情要素１０−２−３−１ａは、図８に示される変化条件を満たした場合、及び、実行されているシナリオにおいて短期的感情変化の指示（図４１（ａ）参照）がされている場合に、それぞれ対応する値だけ変化する（更新される）。
【００５１】
長期的感情要素１０−２−３−１ａは、各感情要素ともに基準値が５０で、それより高くなるとその状態が強いことを表し、低くなると状態が弱いことを表している。
そして、シナリオによる分岐条件（移行条件）に対応して、各要素値が図７（ｂ）に示されるように、「低い」「普通」「高い」の３段階に分割されている。なお、「極めて低い」と「極めて高い」を加えた５段階（各々の要素値の幅＝２５）としてもよい。また分割した各要素の範囲については、エージェント装置のユーザが設定値を変更できるようにしてもよい。
シナリオ作成装置において、５つの長期的感情要素をシーン分岐に使用することができ、個々の感情要素値を単独で使用してもよいが、複数の感情要素値を組み合わせて、シーン分岐条件（移行条件）に使用するもできる。
例えば、エージェントが挨拶するときに元気よくしゃべるときの条件を友好度が高いだけの場合にするよりも、友好度と元気度の両方高い場合とすると、より人間らしさを表現することができる。
【００５２】
図８は、長期的感情変化条件１０−２−３−１ｂの規定内容を例示したものである。
長期的感情変化条件１０−２−３−１ｂには、ナビゲーション機能、車両状態等の状態や変化による条件の説明（項目の欄）と、その場合に変化する感情要素の変化値が規定されている。
図８に示されるように、項目欄には条件の説明が記載されているが、「エージェントの感情が変化する」の前の部分が条件に該当する。例えば、Ｎｏ．１の「車両が急加速したとき、エージェントの感情が変化する」の場合、前半部分の「車両が急加速したとき」が条件になる。
そして、この条件を満たした場合に、対応する右側の各長期的感情要素（友好度、自信度、重純度、元気度、モラル度）に規定されている値が、その感情要素値を変化させる値となる。
すなわち、Ｎｏ．１の場合、であれば、友好度とモラル度がそれぞれ１づつ減少する。なお、感情要素の変化値がマイナスの値の場合、その感情要素を減少させ、プラスの値の場合増加させる。図面では、−１と、１の場合について例示されているが、条件によっては２以上の増減を規定するようにしてもよい。
長期的感情変化条件１０−２−３−１ｂに規定されている各長期的感情要素の変化値は、長期的な感情を変化させるものであるため、全体の変化範囲に対して数パーセント以下の値で変化することが望ましい。
【００５３】
図９は、短期的感情要素１０−２−３−１ｃを概念提供に表したものである。
この図９に示されるように、短期的感情要素には、喜び、怒り、哀しみ、驚きの４要素から構成されている。短期的感情要素の数は、本実施形態では４つを採用しているが、その他の要素を加え、また、省略することで他の所定数としてもよい。
短期的感情要素１０−２−３−１ｃの各値は０から１００の値で変化し、各要素のうちの１つの要素のみが０より大きい値を取る。すなわち、ある感情要素が、新たに０から所定値（例えば、５０）に変化した場合、その変化前に値を有していた他の感情要素は０に変化する。
このように短期的感情要素は、ある状況や状態に対応してその時点で短期的にエージェントが持つ感情なので、長期的感情要素のように以前の値が影響したり蓄積したるするものではなく、１つの要素のみが値をとるようになっている。すなわち、複数の短期的感情が並立しないようにすることで、より人間らしさが表現されるようになっている。
但し、その他の変化を規定してもよい。例えば、要素Ａが５０の変化をしようとした場合、変化前の他の要素Ｂが５０以下であれば要素Ａが５０に変化するが、変化前の要素Ｂが５より大きければ要素Ａは変化しないようにする。この場合、変化前の要素Ｂの値と、変化しようとする要素Ａの値ののうち、値が大きい要素に大して、小さい方の値を引いた値に変化するようにしてもよい。例えば、要素Ａが５０で要素Ｂが８０であれば、要素Ａは０のままで要素Ｂが３０に減少し、要素Ａが９０で要素Ｂが４０であれば要素Ａは５０に変化し要素Ｂが０に変化する。
【００５４】
短期的感情要素１０−２−３−１ｃは、図１０に示される変化条件を満たした場合、及び、実行されているシナリオにおいて短期的感情変化の指示（図４１（ｂ）参照）がされている場合に、それぞれ対応する値だけ変化する（更新される）。
また、新たに変化した短期的感情要素の値は、時間の経過とともに減少して最終的に０になる。例えば、感情が持続する時間を最大で１時間と規定すると、値が最大値１００から最小値０に減少する時間が１時間ということになるので、３分毎に値が５ずつ減少ことになる。但し、所定時間ｔ単位で所定値ｎづつ変化するように設定変更するようにしてもよい。
このように短期的感情要素１０−２−３−１ｃの各感情要素の値は、瞬間的に感情的高ぶりが発生し時間と共に治まる、という人間の感情に対応して、全体の変化範囲に対して最大１００パーセントまでの大きな値で変化し、所定時間ｔ間隔で徐々に所定値ｎづつ減少する。これによりエージェントの短期的変化をより人間に近くすることができる。
【００５５】
短期的感情要素１０−２−３−１ｃの各感情要素の中で値が０より大きなもの（例えば、喜び）があるとき、エージェントの短期的感情はその値の要素（喜び）になる。全ての短期的感情要素がすべて０の場合、エージェントの短期的感情は「普通」ということになる。
短期的感情要素１０−２−３−１ｃの各感情要素の基準値は０で、それより高くなるにつれてその状態が強いこと表している。
短期的感情要素１０−２−３−１ｃは、シナリオによる分岐条件（移行条件）に対応して、図９（ｂ）に示されるように、「小」「中」「大」の３段階に分割されている。なお、「とても小さい」と「とても大きい」を加えた５段階（各々の要素値の幅＝２５）としてもよい。また分割した各要素の範囲については、エージェント装置のユーザが設定値を変更できるようにしてもよい。
【００５６】
図１０は、短期的感情変化条件１０−２−３−１ｄの規定内容を例示したものである。
短期的感情変化条件１０−２−３−１ｄには、ナビゲーション機能、車両状態等の状態や変化、シナリオの状態（操作を含む）による、変化条件の説明（項目の欄）と、その場合に変化する感情要素の変化値が規定されている。
図１０に示されるように、項目欄には条件の説明が記載されているが、「エージェントの感情が変化する」の前の部分が条件に該当する。例えば、Ｎｏ．５の「シナリオが強制終了されると、エージェントの感情が変化する」の場合、前半部分の「シナリオが強制終了されると」が条件になる。
そして、この条件を満たした場合に、対応する右側の各短期的感情要素（喜び、怒り、哀しみ、驚き）に規定されている値が、その感情要素値を変化させる値となる。
すなわち、Ｎｏ．５の場合、であれば、哀しみが５０だけ減少する。
【００５７】
短期的感情変化条件１０−２−３−１ｄに規定されている短期的感情要素の変化値は、長期的感情変化条件のようにマイナスの値をとることはなく、全てプラスの値である。また上述したように、全体の変化範囲（本実施形態では０〜１００）に対して最大１００パーセントまでの大きな値（本実施形態では３０、５０、８０、１００）が規定されている。
【００５８】
図５において、お勧め提案データ（１０−２−３−３）は、運転者にお勧め情報としてレストラン等を提案する場合に使用する。このお勧め提案データ（１０−２−３−３）にはレストラン名称、読み上げデータ、レストランのジャンルデータ、雰囲気データ、料金データ、地点データ、…等で構成され運転者情報データ（１０−２−３−６）及び知識データ（１０−２−３−２）を基にして運転者にお勧めのレストランを検索して提案したりする。レストラン以外にも観光地、休憩場所などが存在する。
知識データ（１０−２−３−２）は、統計データを基に年齢、性別による好みの傾向や、同乗者の有無によるシチュエーションによる選択傾向、場所による名産等を含んだ選択傾向、時期や時間による選択傾向をデータ化したものである。レストランの選択傾向、観光地の選択傾向、休憩場所の選択傾向、…等さまざまな選択傾向が存在する。
【００５９】
シナリオデータ（１０−２−３−４）は、エージェントが運転者とのコミュニケーションを取ったりする時の、状況に応じたエージェントの行為や質問内容、どういった状況において自律的にエージェントから情報提供を行なうのかといった条件、車両の走行に対してそのシナリオの実行をどのように扱うのかについて規定した走行中実行条件等が規定されている。
シナリオデータ（１０−２−３−４）には、キャラクタとは別に表示する画像データ（後述するシーン表示画面５４（図１４参照）に表示する画像データ）も保存される。
【００６０】
図１１は、実機形式シナリオデータの構成を表したものである。
シナリオデータ（１０−２−３−４）は、複数のシナリオで構成されており、それらを管理するためのデータと、個々のシナリオの内容を示すデータとで構成されている。
集録シナリオの管理データには、このシナリオデータの有効期限、作成された日や作成者等といった情報と、シナリオデータに収録されている個々のシナリオを全体的に管理するためのデータ（シナリオ番号、シナリオ名称、優先順位（プライオリティ））と、シナリオファイルに収録されているシナリオの自律起動条件データと、シナリオファイルに収録されているシナリオの中で運転者が入力装置（５）等を使って手動起動させることができるシナリオ一覧データが記されている。
【００６１】
個々のシナリオの内容を示すデータには、それぞれのシナリオを管理する管理データと、シナリオを構成する個々のシーンの内容を示すシーンデータとで構成されている。
それぞれのシナリオを管理するデータ（「このシナリオの管理データ」）には、シナリオに関する情報と、このシナリオで使用する音声認識辞書を作成するためのテキスト情報と、シナリオを構成する各シーンデータを全体的に管理するためのデータが記されている。
【００６２】
また、シナリオの管理データには、スタンバイ処理を行うか否かを判断するデータが格納されている。スタンバイ処理は、自動起動の場合にスタンバイ状態により待機するスタンバイシーンを展開する処理である。
このスタンバイ状態は、シナリオ実行の告知と、実行してもよいか否かの確認をエージェントが行うことで、ユーザがエージェントとのコミュニケーションの準備ができるまでシナリオの実行を待機させる状態である。例えば、地図の右上に小さいエージェントが登場し、「私にタッチしたら、お勧めの食事の場所を御紹介します。」とユーザに話し掛け、スタンバイ状態に入る。ユーザがエージェントにタッチすると、コミュニケーションモードになり、「進行方向の２ｋｍ先に、○○屋があります。味に定評があるとんかつ屋です。ここに寄って行きますか？」と伝えるシナリオが展開される。
シナリオ実行の際にスタンバイ状態に移行するか否かは、ユーザが選択できるようになっている。
【００６３】
シーンには画面や音声が出力される通常シーン、画面や音声が出力されない分岐シーン、通常シーンの一部が利用されるクローンシーン、及びダミーシーンがある。
通常シーンはシーンを管理する管理データと、画面構成データと、キャラクタ動作データと、各種処理データと、展開管理データとで構成されている。
一方、分岐シーンは、シーンを管理する管理データと、展開管理データとで構成されている。
【００６４】
シーンを管理するデータには、そのシーンに関する情報とシーンデータに属する各データセクションを管理するデータが記されている。
画面構成データには、このシーンにおいて表示装置（２）に表示する画面構成の各パーツのデータ（大きさや表示位置等）が記されている。
キャラクタ動作データには、このシーンにおいてキャラクタが行なう動作の指示データと、話す内容に関する指示データが記されている。動作の指示データには、シナリオデータで直接各キャラクタの表現手段で指示するものと、キャラクタに表現させたい状態で指示するものの２種類のうちどちらかで指示データが記されている。
各種処理データには、このシーンにおいて外部機器を制御（処理をさせる）する情報や、ナビゲーションを制御する情報や、他のシナリオを実行する指示や、タイマー設定情報や、キャラクタ心理を示すメンタルモデルの感情要素値を変化させる情報等が記されている。
外部機器とは通信Ｉ／Ｆ部（１−１１）に接続されている各機器等があり、例えば通信制御装置がある。制御する内容は、特定の電話番号に電話をかける処理や、通話を切断する処理等がある。
ナビゲーションの制御内容には、例えばこの地点を目的地に設定するといったものが存在する。
メンタルモデルの感情要素値を変化させる指示としては、長期的感情要素の「友好度」を１減少する、短期的感情要素の「喜び」を８０にする等がある。
【００６５】
展開管理データには、このシーンで何かイベントが発生した場合に、シナリオを終了するのか、次に進むシーンが何であるか、もしくは何も展開しないのか、といった情報（移行条件等）が記述されている。
ここでいうイベントとは、シーンの展開を次に進めるためのもので規定された何らかのアクションを示している。例えばキャラクタの台詞が終了した、設定しておいた時間が経過した、運転者がこのシーンで質問した内容に対して何らかの回答を選択した（例えば「はい」ｏｒ「いいえ」の質問に「はい」と答えた）、等が存在する。
このイベントに加えて学習した結果によって展開を変えることもできる。
例えば、質問に対し運転者が「はい」を選択した場合で通算使用回数が１０回未満の時といった使い方ができる。
学習した結果のほかに、日時、メンタルモデルを使ったキャラクタの心理状態、運転者情報、等も使用して展開を変えることもできるようになっている。
【００６６】
図１２はキャラクタデータの内容を概念的に表したものである。
キャラクタデータ（１０−２−３−５）には、複数のキャラクタのデータが格納されており、運転者の好みによって入力装置（５）等から選択することができるようになっている。
キャラクタデータ（１０−２−３−５）は、各キャラクタＡ、Ｂ、…毎に、キャラクタ画像データ１０２３５１と、キャラクタ音声データ１０２３５２と、キャラクタ画像選択データ１０２３５３とを備えている。
【００６７】
キャラクタ画像データ１０２３５１は、シナリオにより指定された各シーンで表示されるキャラクタの状態を表す静止画像や、動作を表す動画（アニメーション）等が格納されている。例えば、キャラクタがお辞儀をする動画、うなずく動画、右手を挙げる動画等が格納されている。
これらの各静止画像や動画には画像コードが付けられている。
キャラクタ画像データ１０２３５１は、画像記憶手段として機能する。
キャラクタ画像データ１０２３５１として使用するキャラクタ（エージェントの容姿）としては、人間（男性、女性）的な容姿である必要はない。例えば、非人間型のエージェントとして、動物自体の容姿や、ロボット的な容姿や、特定のキャラクタの容姿等であってもよい。
またエージェントの年齢としても一定である必要がなく、エージェントの学習機能として、最初は子供の容姿とし、時間の経過と共に成長していき容姿が変化していく（大人の容姿に変化し、更に老人の容姿に変化していく）ようにしてもよい。
【００６８】
キャラクタ音声データ１０２３５２は、選択されたシナリオのシーンに従って、エージェントが運転者と会話等を行うための音声データが格納されている。
エージェントによる会話の音声データは、エージェントが運転者情報を収集するための質問をするための音声データも格納されている。例としては、「こんにちは」、「よろしくね」、「またね」等が格納されている。
これらの各音声には音声コードが付けられている。
【００６９】
キャラクタ画像選択データ１０２３５３は、個々の表示状態に対して各キャラクタの表現方法（動作）を表す画像データを割り当てた変換テーブルである。
シナリオデータ（１０−２−３−４）は、キャラクタの種類によらない共通化した表示状態により各シーンの内容を規定している。
このためキャラクタ画像選択データ１０２３５３は、共通表現されたシーンの表示状態を、ユーザが選択したキャラクタに対する個別の動作内容を表示する画像データに変換するための変換テーブルであり、画像選択手段の一部として機能する。
【００７０】
図１３は、運転者情報データを概念的に示したものである。
運転者情報データ（１０−２−３−６）は、運転者に関する情報で、エージェントのコミュニケーションをより運転者の希望や趣味、嗜好に合ったものとするために利用される。この運転者情報データは、シナリオの起動条件や、シーンの移行条件としても使用される。
運転者情報データ（１０−２−３−６）には、運転者毎に情報を格納するための運転者のＩＤ（識別情報）、名前、年齢、性別、結婚（既婚か未婚か）、子供の有無と人数と年齢からなる運転者基礎データや、趣味嗜好データとが格納されるようになっている。
趣味嗜好データとしては、スポーツ、飲食、旅行等の大項目と、これら大項目の概念に含まれる詳細項目とから構成されている。例えば、大項目スポーツには、野球が好きか嫌いか、サッカーが好きか嫌いか、ゴルフが好きか嫌いか等のデータが格納されるようになっている。
運転者情報データ（１０−２−３−６）は、その車両を運転する運転者が複数存在する場合には、運転者毎に作成される。そして、運転者を特定して該当する運転者情報が使用される。
【００７１】
図５において、学習項目データ及び応答データ（１０−２−３−７）は、エージェントとのコミュニケーションにおいて運転者の選択や応答によってエージェントが学習した結果を格納するデータである。
従って、学習項目データ及び応答データ（１０−２−３−７）は、運転者毎にそのデータが格納・更新（学習）されるようになっている。
例えば、シナリオの使用状況として前回の選択結果や前回使用した日時、通算の使用回数等が格納される。
この学習内容に従って、例えば、毎回ナビ電源ＯＮ時に挨拶をするシナリオにおいて、前回使用から５分以内の場合に「つい先ほどにもお会いしましたね」と対応したり、逆に１ヶ月以上間があいている場合には「お久しぶりですね」と対応したりする。
【００７２】
図１４は、シナリオのシーンデータに基づいて表示装置（２）に表示されるシーン画面の一例を表したものである。
この図１４に示されるシーン画面は、未入力の運転者情報である趣味嗜好（食事）を取得するために運転者から質問をする質問シナリオのシーン画面（シーン番号０ｘ０００１）である。
シーン画面は、図１４に示されるように、エージェントの画像（静止画、動画）が表示されるエージェント表示画面５１、エージェントの音声に対応した文字が表示される吹き出し画面５２、タイトル画面５３、及び、各シーン固有の画像データ（実画像データの画像や回答選択ボタン等）が表示されるシーン表示画面５４から構成されている。
エージェント表示画面５１に表示されるエージェントは、ユーザが選択したキャラクタ、又はデフォルトのキャラクタである。
【００７３】
エージェント処理部（１０１）のシナリオ駆動部（１０１−１）は、趣味嗜好（食事）の質問シナリオを起動すると、最初にシーンヘッダで指定されるシーンの画面構成データをシナリオデータ＋画像（１０−２−３−４）から読み出してシーン画面を表示装置（２）に表示すると共に、質問文に相当する質問音声を音声出力装置（３）から出力するようになっている。
図１４（ａ）の質問シナリオのシーン画面では、吹き出し画面５２に「どのジャンルの食事が好きですか？」と表示される。なお、吹き出し画面５２の表示に対応する音声が音声出力装置（３）から出力されるようになっている。
また、図１４（ａ）のシーン画面におけるシーン表示画面５４には、４つの回答選択ボタン５４ａの「和食」、「洋食」、「中華」、「特に無し」が表示されている。
【００７４】
この運転者に対する質問のシーンには、運転者の回答に応じた複数のシーンが分岐して続くようになっている。各シーンの分岐及び続くシーンの特定については、各シーンの展開管理データに従って、運転者の回答に応じて決定される。
すなわち、図１４（ａ）のシーン画面（シーン番号０ｘ０００１）で運転者が回答選択ボタン「和食」を選択すると、シナリオ駆動部（１０１−１）は、回答に応じたシーン画面（ｂ）に分岐して表示される。このシーン画面（ｂ）では、選択された「和食」がタイトル画面５３に表示されると共に、吹き出し画面には「和食がすきなのですね。」と表示され、なお、分岐後の和食のシーン画面では、シナリオデータから読み出された和食の実画像５４ｂがシーン表示画面５４に表示される。そしてシナリオ駆動部（１０１−１）により、運転者の回答、例えば、「和食」が運転者情報として、運転者情報３０７の趣味嗜好データに格納されるようになっている。
このようにして、シナリオに規定された各シーン画像と音声が最後のシーンまで連続的に順次表示、出力されることで、１シナリオにおけるエージェントの行為が完了することになる。
【００７５】
図１５は、旅館が宿泊予定者に送信した案内シナリオによるシーン画面の遷移を各シーン毎に表したものである。
この案内シナリオは、複数のシーン画面のうち（ａ）〜（ｆ）までのシーン画面で構成されてる。
シーン画面（ｃ）に対するユーザの選択結果によって次のシーン画面が０ｘ０００４と０ｘ０００６に分岐している。また、図１５の例では分岐していないが、シーン画面（ｄ）においても選択した料理の種類に応じた料理をシーン表示画面５４に表示するようにシーン画面を分岐させるようにしてもよい。
また、この案内シナリオには、ユーザによってスタンバイ処理が設定されている場合に表示されるスタンバイシーン（ｓ）が設定されている。
【００７６】
以下図１５に従って予約シナリオによるエージェントの各行為について説明する。
以下の各シーン画面に対応して説明するエージェントの動作や画面の表示はいずれも、外部シナリオのシナリオデータに格納されているデータや画像及び指示に従って表示等されるものである。また、エージェントの動作として説明するが、実際にはエージェント処理部（１０１）のシナリオ駆動部（１０１−１）が処理を行う。
【００７７】
ユーザによってスタンバイ処理を使用しない設定が選択されている場合、予約シナリオが起動され、番号０ｘ０００１のシーンから展開される。
一方、スタンバイ処理を使用する設定が選択されている場合、図１５のスタンバイシーン（ｓ）が展開される。
図１５に表示した例では、スタンバイ処理を行う直前の画面、すなわち、ナビゲーション機能による経路案内のための地図画面が表示されている。この直前の画面上の右上に小さくエージェントがタッチパネル機能を持つ表示画面（２）に表示される。（キャラクタ表示手段）
そして、「私にタッチしたら、『予約された旅館の案内』をします。」というようにシナリオを実行する告知を行うと共に、実行の許可を促す（実行の確認）を求める。なお、シナリオデータでエージェントの音声内容が規定されている場合にはその音声が出力される。
そして、実行の許可の催促に従って、運転手による、ＯＫの意志表示が検出されると、通常のシナリオが一番最初のシーンから順次展開される。
なお、スタンバイシーンにおいて、ＯＫの意志表示がないままナビ等の機器操作、及び、一定時間が経過すると、タイマー通知により、シナリオの実行が終了される。
【００７８】
スタンバイシーンにおいてＯＫの意志表示がされた場合、又はスタンバイ処理が選択されていない場合、予約シナリオが起動される。
すなわち、まず番号０ｘ０００１のシーン画面が表示装置（２）に表示される。このシーンでは、エージェントＯＳ部（１０１−８）で管理しているキャラクタのエージェントが、エージェント表示画面５１に登場し、お辞儀をして音声による挨拶をする。音声による挨拶の内容は、吹き出し画面５２に表示されている文章と同一である。
音声による挨拶は、旅館に代わってエージェントが代行して行うことになるが、旅館の女将の写真画像をシーン表示画面５４に表示することで旅館からの挨拶であることが表現されている。この女将の画像は、外部シナリオの一部として受信し追加した画像で、シナリオデータ（１０−２−３−４）の実画像データとして格納されている。
エージェントの動作に対する指示は、キャラクタ動作指示データに格納されている指示に従う。
エージェントによる挨拶が終了すると、次のシーン０ｘ００２に遷移する。
【００７９】
次のシーン０ｘ０００２では、シーン表示画面５４に露天風呂の画像が表示される。そして、この露天風呂の絵をエージェントが指し示して、旅館の名物（ここが売りだということ）を、エージェントが音声と吹き出し画面５２の表示で説明する。
エージェントの話が終了すると、次のシーン０ｘ０００３に遷移し、本日の食事の画像（懐石料理の画像）をシーン表示画面５４に表示し、エージェントが料理の説明と、この料理で良いか否かを質問する。
そして、シーン０ｘ０００３のシーンデータにタイマー設定時間と、タイマー設定条件「走行中のみ設定する」が規定されているものとする。この場合、走行中であることを条件に、シーン開始時にタイマーによる計時が開始される。走行中か否かは車速センサ（６−１１）又は、距離センサ（６−１−５）において、車速ｖ＝０が検出された場合に停車中と判断され、車速ｖ≠０が検出された場合に走行中と判断される。
【００８０】
そして、表示した料理を変更するか否かの質問に対する回答としてユーザが「はい」を選択した場合にはシーン０ｘ０００４に分岐し、「いいえ」を選択した場合にはシーン０ｘ０００６に分岐する。
一方、タイマー設定時間内に、ユーザが音声による回答も、画面に表示された選択ボタンの選択による回答もせずにタイマー通知（設定時間の経過）した場合、シーン０ｘ０００３のシーンデータで規定されているタイマー通知時の移行条件に従って、そのシナリオを終了させる。
このように、ユーザからの回答がない場合にも、無回答という選択がされたと判断して、無回答を移行条件とする次のシーン（図１５の例では終了）に移行することで、擬人化されたキャラクタとのコミュニケーションをより人間同士のコミュニケーションに近づけることができる。
【００８１】
シーン０ｘ０００４では、懐石料理以外の選択可能なリストをシーン表示画面５４に表示する。エージェントは、シーン表示画面５４のリストを指し示して、どの料理が良いかを質問する。
そして、ユーザがいずれか１つを選択したらシーン０ｘ０００５に遷移する。
シーン０ｘ０００５では、懐石料理から変更すべき人数のリストをシーン表示画面５４に表示し、エージェントはこのリストを指し示して、人数の質問をする。そしてユーザがいずれか１つを選択したらシーン０ｘ０００６に遷移する。
【００８２】
シーン０ｘ０００６では、シーン表示画面５４に旅館の外観写真画像を表示し、エージェントがお辞儀をして挨拶をする。
そして、エージェントは、ユーザが選択してきた結果、図１５の案内シナリオの場合には食事に関する回答結果を、通信制御部を介して実行中の外部シナリオを送信した第三者（旅館）に送信する。
このように、ユーザについての情報を取得したい場合には、外部シナリオの作成者は、取得したい情報が得られる質問のシーンをシナリオ中に設け、その回答を電子メールで送信するようにシナリオを作成する。なお、回答の送信が必要な場合には、作成者の電子メールアドレスをシナリオデータ中に含める。
最後のシーン（図１５ではシーン０ｘ０００６）でのエージェントの話が終了すると、シナリオを終了させる。
【００８３】
このようにして、シナリオ駆動部（１０１−１）は、シナリオに規定された各シーン画像と音声を最後のシーンまで順次表示、出力する。
起動したシナリオが終了すると、シナリオ駆動部（１０１−１）は、他のシナリオの起動要求が存在するか否かの判断を行う。
【００８４】
次に、このようなシナリオ駆動部（１０１−１）で実行される各種シナリオを自律的に起動するか否かの判断処理について説明する。
図１６は、自律起動判断部によるシナリオの自律起動判断処理について表したものである。
この自律起動判断処理では、自律起動判断部（１０１−２）が装置の負荷を軽減するために、位置と日付に関する情報を受け取り、その受け取った位置と日付に近似する起動条件を、シナリオデータを保持している外部記憶装置（１０）より読み出し（抽出手段）、ＲＡＭ（１−４）に一時的に格納する処理を行う。
すなわち、自律起動判断部（１０１−２）は、今現在置かれている状況情報を取得するため、エージェントＩ／Ｆを介し、エージェントＯＳ部（１０１−８）より現在位置、時間などの状況情報を取得する（ステップ１１）。
そして、自律起動判断部（１０１−２）は、取得した位置、時間などの状況情報が所定単位の変化があるか否かを判断する（ステップ１２）。
判断の結果、所定単位の変化がありと判断された場合（ステップ１２；Ｙ）、自律起動判断部（１０１−２）は、その位置と時間などの条件に近似する条件を備えた自律起動条件を外部記憶装置（１０）より読み出し、ＲＡＭ（１−４）に一時的に格納する（ステップ１３）。ここで、近似する条件とは、位置の場合、地図データの全範囲を所定単位の方形ブロックに区画し、現在の自車位置が存在するブロックと、そのブロックに隣接する８つのブロックに位置情報が含まれる条件をいい、日付の場合、その当日と翌日が該当する。そして、所定単位の変化とは、位置の場合には車両が他のブロックに移動した場合で、日付の場合には日付が変わった場合が該当する。
そして自律起動判断部（１０１−２）は、読み込まれた自律起動条件を、状況情報が満たしているか否かについての条件判断処理を行う（ステップ１４）。
なお、ステップ１２の判断で所定単位の変化なしと判断された場合（；Ｎ）、予め読み出されていた起動条件を変更する必要がないため、ステップ１４の処理に進む。
【００８５】
図１７は、条件判断処理（ステップ１４）の処理内容を表したものである。
自律起動判断部（１０１−２）は、ＲＡＭ（１−４）から、最初の自律起動条件を取得し（ステップ２１）、ステップ１２で入手した各種状況情報による状況が、取得した自律起動条件を満たしているか否かを判断する（ステップ２２）。
自律起動条件を満たしている場合（ステップ２２；Ｙ）、自律起動判断部（１０１−２）は、その自律起動条件に対応するシナリオの実行要求メッセージを、シナリオ駆動部（１０１−１）に対して発行する（ステップ２３）。
【００８６】
次に自律起動判断部（１０１−２）は、次の自律起動条件がシナリオデータ（１０−２−３−４）にあるか否かを判断し（ステップ２４）、あれば（；Ｙ）、次の自律起動条件を取得し（ステップ２５）、以後ステップ２２〜２５の各処理を全ての自律起動条件に対する判断が終了するまで繰り返す。
ステップ２４において、次の自律起動条件が存在しない場合（；Ｎ）、自律起動判断部（１０１−２）は、自律起動判断処理を終了する。
【００８７】
次に、シナリオ駆動部（１０１−１）が、自律起動判断部（１０１−２）からシナリオ実行要求を受け取った場合のシナリオ実行処理について説明する。なお、以下に記す自律起動判断部の処理が、条件判断手段を構成する。
図１８は、シナリオ実行処理の流れを表したフローチャートである。
なお図１８では、シナリオを実行する場合の、エージェント処理部（１０１）の各部、及び全体処理部（１０２）による一連の代表的な動作を表したものであり、各部はそれぞれ独立した処理を行うようになっている。すなわち、各部の独立した処理が、連続することで図１８に示した代表的な流れになる。
具体的には、エージェント処理部（１０１）の各部、及び全体処理部（１０２）は、メッセージを受け取ったら、そのメッセージに対する処理を行ない、処理が完了したら次のメッセージを待つようになっている。
【００８８】
シナリオ駆動部（１０１−１）は、自律起動判断部（１０１−２）からシナリオ実行要求を受け取ると、ワークメモリの確保、初期化によるエージェント開始準備処理を行う（ステップ５０５−１）。
そして、シナリオ駆動部（１０１−１）は、シナリオの実行要求が手動起動か自動起動かを確認する（ステップ５０５−２）。手動起動は、ユーザが表示装置（２）のメニューからシナリオ起動を選択した場合で、自動起動は、シナリオの自律起動条件を満たした場合である。
シナリオの実行要求が手動起動の場合はメニューシナリオの要求処理を行う（ステップ５０５−３）。その後、シナリオデータ読み込み処理（ステップ５０５−４）に移行する。
【００８９】
一方、自動起動の場合には、自律起動条件を満たすことで実行要求されているシナリオが存在するので、そのままシナリオデータ読み込み処理（ステップ５０５−４）に移行する。
次にシナリオ駆動部（１０１−１）は、実行すべきシナリオデータをＲＡＭ（１−４）に読み込む（ステップ５０５−４）。シナリオデータを読み込む際、実行対象となっているシナリオが複数存在する場合（複数の自律起動条件が満たされた場合、手動起動要求と自動起動が重複した場合等）には、シナリオ駆動部（１０１−１）は、各シナリオに規定されている優先順位を判断し一番優先順位の高いシナリオデータを読み込む。優先順位が同じである場合には、自律起動判断部（１０１−２）から実行要求を受けた順に優先順位が高いものとして決定する。
【００９０】
シナリオデータの読み込みが完了すると、シナリオ駆動部（１０１−１）は、次に、シナリオ開始処理を行う（ステップ５０５−５）。
シナリオ開始処理においてシナリオ駆動部（１０１−１）は、まず、シナリオを開始するための初期化処理を行う。さららｒに、シナリオ駆動部（１０１１）は、スタンバイシーンが選択されていれば、図１５（ｓ）で説明したスタンバイシーンを実行してＯＫの意志表示が確認された場合、及び、スタンバイシーンが選択されていない場合に、シナリオ開始処理を終了する。
【００９１】
シナリオ開始処理（ステップ５０５−５）の後に、シナリオ駆動部（１０１−１）は、シナリオを構成するシーンの内容に応じてキャラクタの描画や音声を処理するシーン処理を実行する（ステップ５０５−６）。シーン処理の詳細は図１９により後述する。
シーン処理が完了すると、シナリオ駆動部（１０１−１）は、シナリオ終了か確認を行なう（ステップ５０５−７）。
シナリオ終了の場合、シナリオ駆動部（１０１−１）は、シナリオ終了処理を行なう（５０５−８）。このシナリオ終了処理において、学習部（１０１−３）が、終了の仕方を示すエンドＩＤを入手して応答データ（１０−２−３−７）に格納する。
シナリオ終了でない場合（シナリオがまだ続く場合）、シナリオの終了位置まで、ステップ５０５−６に戻って次のシーン、次のシーン、…とシーン処理を繰り返す。
【００９２】
シナリオの終了処理の後、シナリオ駆動部（１０１−１）は、他にシナリオの実行要求が有るか否か確認し（ステップ５０５−９）、他のシナリオの実行要求が存在する場合は、シナリオデータの読み込み処理（ステップ５０５−４）に戻って同様に処理が実行される。
一方、他に実行するシナリオが存在しない場合、シナリオ駆動部（１０１−１）は、エージェント終了処理を実行する（ステップ５０５−１０）。すなわち、エージェントＯＳ部（１０１−８）に対して、要求された全てのシナリオの実行処理が終了したことを知らせる。
その後、表示装置（２）に表示される画面は通常のナビゲーション画面に戻るが、その後の処理はエージェントＩ／Ｆを介して全体処理部（１０２）に受け渡す。
【００９３】
図１９は、シーン処理（ステップ５０５−６）の流れを表したフローチャートである。
シナリオ駆動部（１０１−１）は、シーン処理において、開始するシーンの種類を確認し（ステップ５０５−６−１）、通常のシーン又はスタンバイシーンの場合は、シーンデータの解析処理（ステップ５０５−６−２）に進み、クローンシーンの場合は、各種処理の依頼を行なう処理（ステップ５０５−６−５）に進む。
なお、図示していないが、シーンがダミーシーンである場合、シナリオ駆動部（１０１−１）は各種処理データに従った処理をバックグランド処理として指示した後に、シーン決定処理（ステップ５０５−１３）に移行する。
一方、分岐シーンの場合には、画面や音声の出力等の各種処理が存在しないので、追加条件により展開する次のシーンを決定するためにシーン決定処理（ステップ５０５−６−１３）に進む。
ここで、クローンシーンは、あるシーンｎの終了の仕方によって、元のシーン（直前に終了したシーン）ｎと同一の画面を表示する場合で、例えば、設定時間内に入力がされなかった場合に、同一の画面のまま入力を促す音声を出力するような場合のシーンである。
また、分岐シーンは、ある特定のシーンに推移して開始させるために、当該シーンの前に設けられたシーンで、画面表示がされずに画面推移（分岐）のための条件判断を行うシーンである。
【００９４】
開始するシーンが通常シーン、もしくはスタンバイシーンの場合、シナリオ駆動部（１０１−１）は、開始するシーンのデータを、ステップ５０５−４（図１８）で読み込んだシナリオデータがおかれているＲＡＭ（１−４）を参照し、表示する画面構成やキャラクタの動作指示、等を解析する（ステップ５０５−６−２）。
解析した結果、音声認識辞書が存在する場合、シナリオ駆動部（１０１−１）は、シーンデータ中に規定されている音声認識辞書の設定（初期化）依頼を音声認識部（１０１−７）に対して通知する（ステップ５０５−６−３）。
なお、スタンバイシーンの場合には、肯定か否定かの音声認識辞書が設定される。
【００９５】
次に、シナリオ駆動部（１０１−１）は、描画・音声出力部（１０１−５）に対して画面描画の依頼を行なうための処理として、描画する画面の各パーツを決定する画面構成の画面データ作成処理を行う（ステップ５０５−６−４）。
画面構成の画面データ作成処理では、例えば図１４に示されるシーン画面のうち、エージェント表示画面５１や、キャラクタの台詞が表示される吹き出し画面５２等のキャラクタに関連する項目を決定する処理である。
【００９６】
シナリオ駆動部（１０１−１）は、各種処理の指示を行う（ステップ５０５−６−５）。
各種処理の指示とは、ナビや外部接続機器などへの処理、タイマーが設定されている場合には時間計測の依頼処理等である。
また、シナリオ駆動部（１０１−１）は、各種処理として、長期的感情要素、又は短期的感情要素の各要素値を変更する指示がそのシーンに対して設定されている場合には、設定された指示に対応してメンタルモデルデータ（１０−２−３−１）の長期的感情要素１０−２−３−１ａ及び短期的感情要素１０−２−３−１ａの変更をキャラクタ心理部（１０１−４）に指示する。
キャラクタ心理部（１０１−４）は、指示に従って、シーンで指定された変更値に応じて各感情要素の値を変更する。すなわち、長期的感情要素であれば、指示された変更値を加減算し、短期的感情要素であれば当該短期的感情要素の値を指示された変更値に変更すると共に他の短期的感情要素の値をゼロにする。
このように、エージェントの長期的な感情の変化や短期的な感情の変化をエージェント装置に予め決められた条件（長期的感情変化条件１０−２−３−１ｂ、短期的感情変化条件１０−２−３−１ｄ）に従って変化させるだけでなく、シナリオに設定された感情要素の変更指示に従って変更することが可能である。このため、シナリオの作成者の意図に沿ったエージェントの感情変化を実現することが可能になる。
【００９７】
次に、シナリオ駆動部（１０１−１）は、シーンのキャラクタ動作や、台詞等の音声を決定し、決定したキャラクタの描画・音声出力の要求を描画・音声出力部に対して行い、該要求に従って、描画音声出力部はキャラクタ描画・音声出力処理を行う（ステップ５０５−６−６）。
シナリオ駆動部（１０１−１）によるキャラクタ描画データの作成は、作成するシナリオのパーツが画面構成のパーツかキャラクタに関するパーツかが異なる以外は、図１４に示した画面構成の描画データ作成処理と同様に行われる。また、キャラクタ描画データの作成の場合、吹き出し画面５２に表示する台詞に対応するキャラクタの音声や、効果音についての音声データの特定も行われる。
シナリオ駆動部（１０１−１）は、キャラクタ描画データ（音声データを含む）を作成すると、作成したキャラクタ描画データによるキャラクタ描画要求を描画・音声出力部（１０１−５）に対して行う。
描画・音声出力部は（１０１−５）は、シナリオ駆動部（１０１−１）からの描画要求に従って、キャラクタの描画・音声出力の処理を行う。キャラクタ描画・音声出力処理により、キャラクタがお辞儀をしたり、右方向や左方向を手で指したり、ユーザに話しかけたりするシーンが展開される。
また、スタンバイシーンの場合は、図１５（Ｓ）に例示したような、通常（図１５（ａ））よりも小さいキャラクタが表示される。
【００９８】
描画・音声出力部（１０１−５）からシーンのキャラクタ描画・音声出力処理終了が通知された後に、シナリオ駆動部（１０１−１）は、処理中のシーンデータにおいて音声認識についての指示がされているか否かを確認し（ステップ５０５−６−７）、指示が無ければ、ステップ５０５−６−９に移行し、指示がある場合にはそのシーンデータで指定されている音声認識のための辞書を使用して音声認識処理を行う（ステップ５０５−６−８）。
【００９９】
シナリオ駆動部（１０１−１）は、音声認識の指示が無い場合、及び、音声認識処理（ステップ５０５−６−８）が終了した後、エージェントＯＳ部（１０１−８）からユーザ入力の知らせを受け取ったら、その入力が何であるか確認し（ステップ５０５−６−９）、入力に対応した処理を行なう。
なお、上述したように、各処理は独立して実行されるため、音声認識処理（ステップ５０５−６−８）中であっても、エージェントＯＳ部（１０１−８）から入力が通知された場合にはその入力に対応した処理が並行して実行される。従って、音声認識処理中に、ユーザが音声認識の選択ボタンを選択しエージェントＯＳ部（１０１−８）から通知されると、音声認識処理による処理段階に関わらず、次の処理（ステップ５０５−６−９）が実行される。
例えば、スタンバイシーンの場合では、運転者によるＯＫ（肯定）の意志表示がされたか否かを表示装置の画面がタッチされたか否かにより判断することも可能であるため、画面がタッチされた場合、音声認識処理による処理段階にかかわらず、次の処理（ステップ５０５−６−９）が実行される。
【０１００】
シナリオ駆動部（１０１−１）は、エージェントＯＳ部（１０１−８）から、例えば、カーソルの移動に関する入力を受け取った場合、カーソルを移動させて、画面の描画依頼（画面スクロールの依頼）の処理を行う（ステップ５０５−６−１０）。
また、ユーザがシーン表示画面５４（図１４参照）に表示されているいずれかの回答選択ボタン５４ａを選択した場合、どの項目が選択されたか判断する（ステップ５０５−６−１１）。
なお、上述したように、図１８、図１９の処理は、シナリオ処理の１例を示したものであり、実際には各部が独立して個別の処理を行っている。このため、上の図１９には示していないが、音声認識開始もしくは中止が入力された場合、音声認識部に対し音声認識処理の開始もしくは中止の依頼を行なう等、ユーザ入力の確認（ステップ５０５−６−９）を行なった後の処理は他にも存在する。また、描画・音声出力部（１０１−５）からシーンのキャラクタ描画・音声出力処理終了が通知をされる前、つまり、指示したキャラクタの動作が終了する前であっても、ユーザの入力の確認（ステップ５０５−６−９）をすることも可能である。
【０１０１】
次に、シナリオ駆動部（１０１−１）は、選択された項目の判断結果から、展開判断処理（ステップ５０５−６−１２）において、シナリオデータの展開管理データ（図１１参照）を参照して次の展開を判断する。
シナリオ駆動部（１０１−１）は、次の展開が存在しない場合は何も処理せずにユーザ入力判断に戻る。
【０１０２】
一方、次の展開が存在する場合、及び、ステップ５０５−６−１で判断したシーンが分岐シーンである場合、シナリオ駆動部（１０１−１）は、次に展開するシーンを決定するシーン決定処理を行う（ステップ５０５−６−１）。
シーン決定処理においてシナリオ駆動部（１０１−１）は、現在処理中のシーンに設定されている移行条件を、シナリオデータの展開管理データ（図１１参照）から取得する。
そして、シナリオ駆動部（１０１−１）は、取得した移行条件（展開条件又は追加条件）に対応する、対象の状態変化（図２４で規定）又は対象状態（図２５で規定）を、キャラクタ心理部（１０１−４）やエージェントＯＳ部（１０１−８）から受け取る。
そして、受け取った状態変化又は対象状態が満たしている移行条件に対して展開管理データで規定されている次に展開すべき、通常シーン、クローンシーン、分岐シーンのいずれかを決定する。
【０１０３】
シナリオ駆動部（１０１−１）は、シーン決定処理により次に展開するシーンを決定した後、次の展開に進めるためにシーン終了処理（ステップ５０５−６−１４）に進む。
シーン終了処理（ステップ５０５−６−１４）では、シナリオ駆動部（１０１−１）が他の処理部に依頼している処理が有れば、その中止依頼を行ない（例えば音声認識処理の依頼をしていたら認識処理の中止依頼をする）、リターンする。リターンにより、図１８のシナリオ終了判断（ステップ５０５−７）に移行する。
【０１０４】
以上説明したように、本実施形態のエージェント装置によれば、自動起動条件を満たした場合に、シナリオを実行を待機させ、実行の告知と確認を行うスタンバイ処理を行うようにしたので、エージェントがユーザとコミュニケーションを始める前にユーザは準備をする時間ができ、エージェントのコミュニケーション内容を充分に聞き取ることが可能となる。
また、説明した実施形態によれば、シナリオ作成装置のユーザ（作成ユーザ）が作成したオリジナルのシナリオに組み込まれた自律起動条件を、シナリオの起動条件としてシナリオの実行を開始することができる。
従って、シナリオ作成装置のユーザに対して、エージェントの登場を含めた各種シナリオを、自分の好みに合わせたタイミングで起動させるようなシナリオを自由に作成する場を提供することができる。
また、シナリオエディタで作成したシナリオデータの指示に基づいてエージェントの長期的感情要素と短期的感情要素を変更するようにしたので、シナリオ作成者の意図に有った感情のエージェントによりコミュニケーションを取ることが可能になる。
また、分岐シーンによるシーンの展開がなされるので、シナリオ作成者の意図に沿った多彩なシーンに展開するシナリオを実行することができる。
【０１０５】
また、説明した実施形態によれば、エージェントの行為をシナリオデータで規定すると共に、このシナリオデータを複数の連続するシーンからなるシナリオによって規格化されているので、エージェント装置のユーザ及び第三者が自分でシナリオを作成し、組み込むことができる。
このように装置に予め格納されているデフォルトのシナリオに追加できるので、ユーザは自分に合った追加シナリオをインターネット等で探してダウンロードし、また自分でシナリオを作成することでエージェント装置をより快適に使用することができる。
【０１０６】
次に、ユーザや第三者が独自のシナリオを作成するシナリオ作成装置の構成とその動作について説明する。
図２０は、シナリオ作成装置の構成を表したものである。
シナリオ作成装置は、制御部（２００）と、入力装置（２１０）と、出力装置（２２０）と、通信制御装置（２３０）と、記憶装置（２４０）と、記憶媒体駆動装置（２５０）と、入出力Ｉ／Ｆ（２６０）とを備えている。これら各装置は、データバスや制御バス等のバスラインにより接続されている。
【０１０７】
制御部（２００）は、シナリオ作成装置全体を制御する。
シナリオ作成装置はシナリオ編集プログラムの実行だけでなく、その他プログラム類（例えばワープロや表計算等）を実行することもできる。制御部（２００）は、ＣＰＵ（２００−１）と、メモリ（２００−２）等から構成されている。
ＣＰＵ（２００−１）は、種々の演算処理を実行するプロセッサである。
メモリ（２００−２）は、ＣＰＵ（２００−１）が種々の演算処理を実行する際にワーキングメモリとして使用される。
ＣＰＵ（２００−１）は、メモリ（２００−２）にプログラムやデータなどを書き込んだり消去したりすることができる。
本実施の形態におけるメモリ（２００−２）には、ＣＰＵ（２００−１）がシナリオエディタ（シナリオ編集プログラム）に従ってシナリオデータを作成、編集、記憶等するためのエリアが確保可能になっている。
【０１０８】
入力装置（２１０）は、シナリオ作成装置に対して文字や数字その他の情報を入力するための装置であり、例えばキーボードやマウスなどにより構成されている。
キーボードは、主にカナや英文字などを入力するための入力装置である。
キーボートは、例えばユーザがシナリオ作成装置にログインするためのログインＩＤやパスワードを入力したり、シナリオ作成の際に音声合成や音声認識の対象となる文を入力したりする際などに使用される。
マウスは、ポインティングデバイスである。
ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）などを用いてシナリオ作成装置を操作する場合、表示装置上に表示されたボタンやアイコンなどをクリックすることにより、所定の情報の入力を行なうこと等に使用される入力装置である。
【０１０９】
出力装置（２２０）は、例えば表示装置や印刷装置などである。
表示装置は、例えばＣＲＴディスプレイ、液晶ディスプレイ、プラズマディスプレイなどが使用される。
表示装置には、シナリオを作成するためのメイン画面や、各シーンにおける画面構成を選択するための画面等の各種画面が表示される。また、各画面において選択された情報や入力された情報が表示されるようになっている。
印刷装置は、例えば、インクジェットプリンタ、レーザプリンタ、熱転写プリンタ、ドットプリンタなどの各種プリンタ装置が使用される。
【０１１０】
通信制御装置（２３０）は、外部との間で各種データやプログラムを送受信するための装置であって、モデム、ターミナルアダプタその他の装置が使用される。
通信制御装置（２３０）は、例えばインターネットやＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などに接続可能に構成されている。通信制御装置（２３０）は、これらのネットワークに接続した他の端末装置あるいはサーバ装置などと通信によって信号及びデータのやり取りを行なうことで、装置で作成したシナリオデータを送信したり、第３者が作成したシナリオデータを受信（ダウンロード）したり、更に、シナリオデータの作成に必要なデータを取得したりすることができるようになっている。
通信制御装置（２３０）はＣＰＵ（２００−１）によって制御され、例えば、ＴＣＰ／ＩＰなどの所定のプロトコルに従ってこれら端末装置やサーバ装置との信号及びデータの送受信を行う。
【０１１１】
記憶装置（２４０）は、読み書き可能な記憶媒体と、その記憶媒体に対してプログラムやデータを読み書きするための駆動装置によって構成されている。
当該記憶媒体として主にハードディスクが使用されるが、その他に、例えば、光磁気ディスク、磁気ディスク、半導体メモリなどの他の読み書き可能な記憶媒体によって構成することも可能である。
記憶装置（２４０）には、シナリオ編集プログラム（２４０−１）、シナリオ編集データ（２４０−２）、及びその他のプログラム・データ（２４０−３）が格納されている。その他のプログラムとして、例えば、通信制御装置（２３０）を制御し、シナリオ作成装置とネットワークでつながれた端末装置やサーバ装置との通信を維持する通信プログラムや、メモリ管理や入出力管理などのシナリオ作成装置を動作させるための基本ソフトウェアであるＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）なども記憶装置（２４０）に格納されている。
【０１１２】
記憶媒体駆動装置（２５０）は、着脱可能な記憶媒体を駆動してデータの読み書きを行うための駆動装置である。着脱可能な記憶媒体としては、例えば、光磁気ディスク、磁気ディスク、磁気テープ、ＩＣカード類、データをパンチした紙テープ、ＣＤ−ＲＯＭなどがある。
本実施形態では、シナリオ作成装置で作成・編集したシナリオデータ（エージェント装置で使用する形態）は、主としてＩＣカード類に書き込まれるようになっている。
シナリオ作成装置は、記憶媒体駆動装置（２５０）によって記憶媒体を駆動することにより、シナリオデータが格納された記憶媒体からシナリオを取得したり、あるいは、作成したシナリオデータを記憶媒体駆動装置から記憶媒体に格納したりすることができる。
【０１１３】
入出力Ｉ／Ｆ（２６０）は、例えば、シリアルインターフェースやその他の規格のインターフェースにより構成されている。
入出力Ｉ／Ｆ（２６０）に当該インターフェースに対応した外部機器を接続することにより、シナリオ作成装置の機能を拡張することができる。このような外部機器として例えば、ハードディスクなどの記憶装置、通信制御装置、スピーカ、マイクロフォンなどがある。
【０１１４】
次に、シナリオ編集プログラム（２４０−１）と、シナリオ編集データ（２４０−２）の構成について説明する。
図２１は、シナリオ編集プログラムとデータの構成を概念的に表したものである。
シナリオ編集プログラム（２４０−１）は、シナリオエディタ（２４０−１−１）と、シナリオコンパイラ（２４０−１−２）と、ＤＢ編集ツール（２４０−１−３）が存在する。
シナリオ編集データ（２４０−２）は、共通定義ＤＢ（２４０−２−１）と、ローカル定義ＤＢ（２４０−２−２）と、シナリオエディタで作成したＳＣＥ形式シナリオデータ（２４０−２−３）と、シナリオコンパイラで変換された実機形式（ＮＡＶ形式）シナリオデータ（２４０−２−４）が存在する。
シナリオエディタ（２４０−１−１）は、シナリオデータを作成するアプリケーションプログラムである。
【０１１５】
シナリオコンパイラ（２４０−１−２）は、シナリオエディタ（２４０−１−１）で作成されたＳＣＥ形式シナリオデータ（２４０−２−３）を、エージェント装置で使用可能な実機形式シナリオデータ（２４０−２−４）に変換するアプリケーションプログラムで、変換手段として機能する。
図２２は、データ形式の変換を概念的に表したものである。
この図２２に示されるように、シナリオコンパイラ（２４０−１−２）は、１個以上のＳＣＥ形式シナリオデータ（２４０−２−３）を、１個の実機形式（ＮＡＶ形式）シナリオデータ（２４０−２−４）に変換する。
【０１１６】
ＤＢ編集ツール（２４０−１−３）は、共通定義ＤＢ（２４０−２−１）に格納されているデータを編集・更新するためのアプリケーションプログラムである。
共通定義ＤＢ（２４０−２−１）には、シナリオデータを作成する際の定義データが格納される。共通定義ＤＢ（２４０−２−１）には、後述する自動起動条件項目、シーン展開の条件を規定する展開条件項目と追加条件項目（移行条件）、キャラクタの表示状態指示テーブル、等が格納される。この共通定義ＤＢ（２４０−２−１）は、シナリオ作成装置の記憶装置ではなく、ローカルエリアネットワーク（ＬＡＮ）でつながっているサーバ上に存在してもよい。こうすることで、ローカルエリアネットワーク（ＬＡＮ）でつながっている各シナリオ作成装置は共通の共通定義ＤＢ（２４０−２−１）を使ってシナリオデータを作成することが可能になる。
ローカル定義ＤＢ（２４０−２−２）は、シナリオ作成者がシナリオデータを作成中に定義した画面構成が格納される。
【０１１７】
ＳＣＥ形式シナリオデータ（２４０−２−３）は、シナリオエディタ（２４０−１−１）で作成されたデータである。
実機形式（ＮＡＶ形式）シナリオデータ（２４０−２−４）は、シナリオコンパイラ（２４０−１−３）によってＳＣＥ形式シナリオデータ（２４０−２−３）からエージェント装置で使用するためのデータ形式に変換されたデータである。
【０１１８】
図２３（ａ）は、自動起動項目として設定可能な項目を例示したものである
この自動起動項目は、エージェント装置で検出、認識、確認可能な各項目の種類のサンプルを概念的に一覧表示したものである。
この自動起動項目は、共通定義ＤＢ（２４０−２−１）に記述されており、シナリオエディタ（２４０−１−１）でシナリオを作成する際に、自律起動条件を設定するために、自動起動項目が共通定義ＤＢ（２４０−２−１）から読み出され、リスト表示される（提示手段）。作成者は、このリスト表示（一覧表示）された中から自動起動項目を選択する（選択手段）。
それぞれ選択された項目の種類に記されている内容によって数値入力を行なうウインドウが表示されたり、一覧から選択するウインドウが表示されたりして自動起動項目の判断条件を入力する。この操作を１又は複数回繰り返しシナリオを自律的に起動するための判断条件である自律起動条件のデータが作成される。
このように、画面要素推移体（シナリオ）の起動条件を設定することにより、起動条件設定手段が形成される。
【０１１９】
図２３（ｂ）、図２３（ｃ）は、自動起動項目に対して、自律起動条件として選択可能な選択可能項目を例示したものである。
選択可能項目も共通定義ＤＢ（２４０−２−１）に記述されている。図２３（ａ）に例示した自動起動項目を示したテーブルのうち、種別の欄に一覧から選択と表記された項目について、更に下位の概念として選択可能な項目が、選択可能項目として図２３（ｂ）、図２３（ｃ）に規定されている。選択可能項目に規定されたグループと、自動起動項目の項目とは、一番左側のＮｏ．の項目で対応付けられている。
表には示さないが他にもこれと同様に数値入力に関する定義テーブル等が存在し、時刻の入力ウインドウであったり、走行距離の入力ウインドウであったり、と異なった入力をするウインドウを作成することができるようになっている。
選択された自動起動項目と選択された選択可能項目及び入力された数値や時刻、距離等の組み合わせが、各シナリオに対する自律起動条件となる。例えば、ユーザによる選択が、自動起動項目「加速度」、選択可能項目「急減速状態」である場合、自律起動条件は「加速度−急減速」となる。
なお、本サンプルはあくまでもサンプルであり定義を変更してもよい。
例えば車速入力を一覧から選択にし、１０ｋｍ／ｈ毎に区切られた項目の中から選択する形をとってもよい。
また、エージェント装置において新規にセンシングできる項目が増えた場合には、その項目を追加する事ができる。例えばシートベルト検知センサを組み込んだ場合、一覧から選択という入力手段でシートベルト状態という項目に対し、シートベルト未装着、シートベルトを装着しているといった項目が選択できる定義を組み込むことが考えられる。
これらの変更及び追加は、先に示したＤＢ編集ツール（２４０−１−３）を使って行なう。
また、エージェント心理部からキャラクタの心理状態（長期的感情要素１０−２−３−１ａと短期的感情要素１０−２−３−１ｄ）を入手して自動起動判断の条件に加えてもよい。この場合も、ＤＢ編集ツール（２４０−１−３）を使って定義データを追加する。例えば、一覧から選択という入力手段で自動起動項目としてキャラクタの心理状態、長期的感情要素や短期的感情要素の各項目が選択できる定義を組み込むことが考えられる。
【０１２０】
図２４は、通常シーンに規定され、その通常シーンから次のシーン（通常シーン、分岐シーン）に展開をするための移行条件（展開条件）が格納された展開条件項目テーブルを表したものである。展開条件項目テーブルには、図２４に示されるように、キャラクタ動作終了、シナリオ割り込み、ユーザの応答として「はい」が選択等の各種対象の状態変化が規定されている。
展開条件項目は、１の通常シーンに対して複数設定することが可能であるが、通常シーンと他の通常シーン間、及び通常シーンと分岐シーン間には１つの展開条件項目が設定可能である。
展開条件項目テーブルは、共通定義ＤＢ（２４０−２−１）に格納されている。
展開条件項目の各項目は、各シーンの展開構成を作成する際に読み出され、分岐条件指定ウィンドウ（図３７（ａ））にリスト表示される。このリスト表示された中から展開条件項目を選択し、また、テーブルに格納されていない場合には別途展開条件をＤＢ編集ツール（２４０−１−３）を使って定義し追加することにより、シーン展開構成が作成される。
１の通常シーンに対して展開条件項目の選択を繰り返し、その後に展開する通常シーンまたは分岐シーンを複数設定することで、複数の推移先を持つ（複数に分岐された）シーンを作成することができる。
【０１２１】
図２５は、分岐シーンに規定され、その分岐シーンから次のシーン（通常シーン、分岐シーン）に展開するための移行条件（追加条件）が格納された追加条件項目テーブルを表したものである。分岐シーンは条件判断用のシーンである。
追加条件項目は、１の分岐シーンに対して、最大その追加条件項目テーブルの分類欄に規定されている１の分類を選択することができる。そして、その分類に対して設定されている内容に対応した数（追加条件項目テーブルの項目欄に規定されている種類の数）だけ分岐先を設定することが可能である。例えば、追加条件の分類「友好度」の場合には、最大「高い」「普通」「低い」「それ以外」の４つの条件項目設定することができ、この追加条件項目が規定された分岐シーンに対しては最大４つの通常シーン又は分岐シーンを展開させることが可能である。
分岐シーンと他の分岐シーン間、及び分岐シーンと通常シーン間には１つの展開条件項目が設定可能である。
追加条件テーブルも共通定義ＤＢ（２４０−２−１）に格納されている。
追加条件項目テーブルの分類の欄に規定された各分類が、各分岐シーンを作成する際に読み出され、拡張分岐条件指定ウィンドウ（図３７（ｂ））にリスト表示される。そして、設定した追加条件項目の１の分類に対応して、分岐シーンから展開する次のシーン（通常シーン、分岐シーン）を作成する際に、図３８に示す分岐条件値入力ウィンドウが作成され、追加条件項目テーブルの項目欄の内容がリスト表示（図３８（ａ））、又は入力可能な数値を選択可能に表示される・このリスト表示された中から追加条件を選択することにより、シーン展開構成が作成される。
【０１２２】
図２５に示されるように、追加条件として、エージェントの感情を数値で表したＡＭＭによる分岐や、シナリオの終了状態による分岐、ユーザ情報を使った分岐、日時や場所といったその他の状態による分岐シーンの作成が可能になっている。
例えば、追加条件項目テーブルでは、ＡＭＭによるエージェントの心理状態も規定されている。これにより、他の分岐条件に追加してエージェントの感情要素を移行条件に使用することができる。
【０１２３】
さらにエージェント装置は、学習部（（１０１−３）：図４参照）により、シナリオが複数のシーンに分岐していて、それぞれ異なるシーンでシナリオが終了する場合の終了の仕方をエンドＩＤとして記録するようになっている。また、学習部（１０１−３）は、シナリオのなかでユーザの応答や、通算使用回数等を学習データといして記録することができるようになっている。
図２５に示す追加条件項目テーブルにより、これら記録されたシナリオ終了状態（前回のシナリオの終了ＩＤ、過去に通過したエンドＩＤ、まだ通過していないエンドＩＤ）や、シナリオの通算使用回数、ユーザ情報（運転者情報）、日時、場所などを追加分岐条件として選択し、１個のシーンに対して多彩な展開をさせることが可能になる。
すなわち、通常シーンの後に分岐シーンを複数（直列、及び並列に）継続させることで、１の通常シーンに対して多彩な条件で分岐する複数の通常シーンを展開させることが可能になる。
【０１２４】
図２６、図２７は、共通定義ＤＢ（２４０−２−１）に格納されている、キャラクタによらない統一の動作指示テーブルの内容の一部を概念的に表したものである。以下図２６、図２７の説明より、キャラクタ設定手段を形成する。
このテーブルは、キャラクタの種類によらずに共通した動作の表示状態が規定されており、キャラクタに表現させたい内容毎に分類されている。
キャラクタによらない統一の動作指示テーブルは、複数存在し、本実施形態では、仕事の状態（図２６）、精神状態（図２７）、ＴＰＯ状態、成長状態、スケール状態の各表示状態指示テーブルが存在する。
図２６、図２７に示されるように、各表示状態指示テーブルは、複数のツリー構造になっており、後述するキャラクタ動作の状態指示編集ウィンドウ（図３３（ｃ））に各ツリー構造の形と分類名が表示されるようになっている。
【０１２５】
図２６、図２７に示されるように、表示状態指示テーブルのツリーの末端の項目毎に状態指示番号が付されている。この状態指示番号が、エージェント装置１のキャラクタ画像選択データ（変換テーブル）１０２３５３の状態指示番号（図９参照）に対応している。
【０１２６】
これらのテーブルでは、図２６、図２７でも示されているように、表示状態に対する下層で定義されているレベル（丁寧に行なう、普通に行なう、強、中、弱等）をシステム（エージェント装置）に自動で選択させる項目「自動」を設けている。
この自動を選択したシーンに対して、エージェント装置では、キャラクタ心理状態、日付や時刻、等によってキャラクタのどのレベルの表示状態を使用するかを判断して、いずれかの表示状態を選択し実行することになる。
【０１２７】
共通定義ＤＢ（２４０−２−１）には、その他、音声認識に使用する音声認識用データと、キャラクタの動作指示に使用するデータ（別途台詞の指示データも存在する）と、各シーンで設定した指示をプレビューして確認するためのキャラクタ画像データ及びキャラクタ台詞データ及びキャラクタによらない統一の指示に対する各キャラクタの表現方法への変換テーブルと、表示装置（２）に表示する各パーツデータ及びそれらをどのように配置するかが記された画面構成データと、シーンにおける処理内容として選択可能な項目、例えば、エージェントが処理可能な行為である、オーディオ装置のオン・オフやチャンネル選択、エアコン装置のオン・オフと温度設定、全体処理部（１０２）に供給する目的地の設定等の各種処理内容項目データ等が共通定義ＤＢ（２４０−２−１）に格納されている。
これら全ての定義データも、各定義データと同様に、変更及び追加がＤＢ編集ツール（２４０−１−３）を使って行なうことができるようになっている。
【０１２８】
各シーンで設定した指示をプレビューして確認するためのキャラクタ画像データは、エージェント装置に格納されている各種キャラクタの画像データが格納されている。
なお、ユーザは、エージェント装置から他のキャラクタについてのキャラクタ画像データと、変換テーブルをＩＣカード７、又は、サーバ３を介してシナリオ作成装置の共通定義ＤＢに格納することも可能である。
【０１２９】
次に、このように構成されたシナリオ作成装置によるシナリオ作成の各動作について、画面の遷移に従って説明する。
図２８は、シナリオエディタ（２４０−１−１）を起動した場合に表示装置に表示されるメインウィンドウの構成を表したものである。
この図２８に示されるように、メインウィンドウは、作成中のシーン画面（エージェント装置１の表示装置（２）に表示されるシーン画面（図１４参照））が表示されるシーン画面３０１と、各種設定を行う設定項目が表示された設定画面３０３と、シーンの展開構成（分岐の状態）が各シーンを表すシーンアイコン３０７のツリー構造により表示されるシーン展開画面３０５、及び処理アイコン表示部で構成されている。
【０１３０】
シナリオエディタ（２４０−１−１）を起動すると、メインウインドウのシーン展開画面３０５には、スタートポイント３０８が表示される。このスタートポイント３０８を選択するとシナリオプロパティの編集ができる。選択は、例えば、マウスカーソルによるポイント位置を該当箇所に合わせて、マウスをダブルクリックすることで選択される。
画面構成の変更ボタン３０９は、表示したい画面構成を選択するボタン、効果音設定ボタン１１０は、シナリオの各シーン毎に効果音を設定する画面を表示するボタンである。
エージェント表示画面３１１を選択すると、エージェント（キャラクタ）の動作の編集画面が表示される。
台詞編集ボタン３１３は、キャラクタの台詞の指示を編集するボタンである。
ボタンパーツとバックグラウンド音声認識辞書設定３１５を選択すると使用する音声認識辞書の編集ができる。シーン画面３０１の回答選択ボタン３１５ａ（５４ａ）のマークで表示されている方を選択すると認識する単語の名称がシーン画面に表示され、バックグラウンドで認識する方３１５ｂを選択すると、音声認識の対象となるが認識する単語の名称は表示されない。
【０１３１】
タイマー設定ボタン３１７は、タイマー設定情報を設定、及び変更するためのボタンである。
外部機器等の制御指示編集３１９では、外部機器等（ナビも含む）の制御指示を設定する。
音声認識開始制御指示３２０ａでは、作成中のシーンにおいて音声認識を行う場合に、音声認識の開始をどのようにするかを規定する音声認識の指示を設定する。音声認識の指示としては、音声認識を「自動で開始する」、「自動で開始しない」、「エージェント装置（車載装置）が判断する（おまかせ）」、のうちのいずれかを選択可能になっている。
コールバック制御指示３２０ｂでは、音声認識の結果を確認するためのコールバックを行うか否かについての指示を設定する。コールバックの指示としては、「コールバックする」、「コールバックしない」、エージェント装置が状況判断してコールバックをするかしないかを判断する「エージェント装置が判断（おまかせ）」のうちのいずれかを選択可能になっている。
ＡＭＭの変化の設定変更ボタン３２１は、後述するように、作成中のシーンでエージェントの各長期的感情要素を変更するためのボタンである。
【０１３２】
シーン展開表示部３２２は、シーン展開画面で指定された（アクティブ状態の）シーンに対して規定されている展開条件項目及び追加条件項目と、その条件項目を満たす場合に継続（接続）するシーンが表示される。
シーン展開表示部３２２の左側には、図２８に示されるように、アクティブ状態のシーンに設定された展開条件（図２４参照）や追加条件の分類（図２５参照）がツリー構造で表示される。また、シーン展開表示部の右側には、移行条件の内容とその接続先（展開先のシーン番号）が表示される。
【０１３３】
処理アイコン表示部には、シーン作成ボタン３２３、分岐シーン作成ボタン３２４、ダミーシーン作成部３２５、エイリアスシーン指定ボタン３２６、エンドＩＤボタン３２７、リンクＩＤボタン３２８、挿入ボタン３２９、上下差替ボタン３３０、シーン再生ボタン３３１、ビルドボタン３３２、その他の処理ボタンが表示されている。
【０１３４】
シーン作成ボタン３２３は、新たに通常シーンを作成する場合に使用する。
シーン作成ボタン３２３をクリックするとシナリオの流れを編集できる（次のシーンを作成する）。シーン作成ボタン３２３をクリックすると、現在選択しているシーンの次に展開する通常シーンの作成が可能になる。
シーン作成ボタン３２３でシナリオの流れを分岐させることで、各通常シーンに対する展開構成が作成される。例えば、図２８のシーン展開画面３０５に表示されているシーン展開構成に於いて、通常シーンのアイコン５を選択した状態（アクティブ表示されている状態）で、シーン作成ボタン３２３をクリックするとシーン５に続くシーンのアイコンが下層側に表示され、複数回クリック（複数回作成操作を行う）することでシーン５に続いて展開される通常シーン７、８、…が分岐して作成される。
【０１３５】
すなわち、シーンｍ（通常シーン又は分岐シーン）を選択した状態でシーン作成ボタン３２３をクリックすることで、シーンｍに続く次の通常シーンｍ１が作成される。そして、再度シーンｍを選択した状態で、シーン作成ボタン３２３をクリックするとシーンｍに続く次の通常シーンｍ２が、通常シーンｍ１と並列に分岐して作成される。同様に再度シーンｍを選択した状態でシーン作成ボタン３２３をクリックすると通常シーンｍ３が作成される。
そして、作成した通常シーンｍ１に続くシーンを更に展開させたい場合には、通常シーンｍ１を選択した状態でシーン作成ボタン３２３をクリックすることで、通常シーンｍ１に続く次の通常シーンｍ１−１が作成される。通常シーンｍ１から分岐する別のシーンを作成する場合にはシーンｍ１を再度選択してシーン作成ボタン３２３をクリックすればシーンｍ１に続くシーンｍ１−２が作成される。
更に、作成した通常シーンｍ１−１アクティブにした状態でシーン作成ボタン３２３をクリックすれば、通常シーンｍ１−１に続く通常シーンｍ１−１−１が作成される。
【０１３６】
分岐シーン作成ボタン３２４、新たに分岐シーンを作成する場合に使用する。
分岐シーン作成ボタン３２４をクリックするとシナリオの流れを編集できる（次の分岐シーンを作成する）。分岐シーン作成ボタン３２４をクリックすると、現在選択しているシーンの次に展開する分岐シーンの作成が可能になる。
分岐シーン作成ボタン３２４により、展開条件に続けてさらに複数の追加条件で分岐させることで、移行条件の論理演算（論理和、論理積）による各通常シーンに対する展開構成を作成することができる。
例えば、図２８のシーン展開画面３０５に表示されているシーン展開構成において、通常シーン１から通常シーン２に展開する場合に、両通常シーン間に分岐シーン４と分岐シーン６を挿入することで、通常シーン１に規定する状態変化をした場合で、分岐条件４と分岐条件６の両者を満たした場合に通常シーン２が通常シーン１に続いて展開される。このように、分岐シーンを複数使用することで、多彩な条件設定により種々の展開をするシナリオを作成することができる。
【０１３７】
図２８において分岐シーンは符号３３３で表されている。分岐シーンの作成は、通常シーンに続けることも、分岐シーンに続けて作成することも可能である。例えば、図２８のシーン展開画面３０５の通常シーン１をアクティブにした状態で分岐シーン作成ボタン３２４を選択することで分岐シーン４が作成され、この分岐シーンをアクティブにした状態で更に分岐シーン作成ボタン３２４を選択することで分岐シーン６が作成されている。
分岐シーンを階層的に作成する方法は、上で説明した通常シーンの作成方法と同様である。
【０１３８】
ダミーシーン作成ボタン３２５は、ダミーシーンを作成するボタンである。
ダミーシーンは、シーンを管理する管理データと、各種処理データと、展開管理データとで構成されていて、ナビゲーション機能における目的地の設定処理、エージェントの学習結果の記憶処理等の各週処理が規定される。
【０１３９】
エイリアスシーン指定ボタン３２６は、アクティブ状態のシーン（通常シーン、分岐シーン）から、作成済みの他のシーン（通常シーン、分岐シーン）に移行させるボタンである。
例えば、シーン展開画面３０５のシーン展開構成において分岐シーン６をアクティブにした状態で、エイリアスシーン指定ボタン３２６を選択した後に、移行したいシーン画面５を選択すると、シーン画面５に移行することを表すエイリアス画面３３４が表示される。
【０１４０】
終了位置作成ボタン３２７は、シナリオの終了位置を特定するためのエンドＩＤを作成するためのボタンである。
終了位置作成ボタン３２７をクリックするとシナリオの終了位置３４０を作成できる。作成した各シナリオの終了位置３４０には、終了番号がエンドＩＤとして割り振られるようになっている。
作成したシナリオの終了位置３４０を選択すると、エンドプロパティ編集画面（図４０参照）を表示し、この画面において、エージェントの各短期的感情要素を設定、及び変更することができる。
【０１４１】
リンクＩＤボタン３２８は、シーンに他のシナリオをリンクさせるリンクＩＤを作成するためのボタンである。
挿入ボタン３２９は、それぞれアクティブ状態のシーン（通常シーン、分岐シーン）又はエンドマークの前に通常シーン、分岐シーン、ダミーシーンを挿入するためのボタンである。各シーンの種類に応じたボタンを選択する。
上下差替ボタン３３０は、シーンの上下位置を変更するボタンであり、アクティブなシーンを上に移動するボタンと下に移動するボタンがある。
シーン再生ボタン３３１は、アクティブな通常シーンを再生するためのボタンである。
ビルドボタン３３２は、作成したシナリオをエージェント装置で使うための実機形式（ＮＡＶ形式）のフォーマットにコンパイルするためのボタンである。
【０１４２】
なお、図２８に示したメインウィンドウは、シナリオの作成途中を例示したもので、シナリオエディタ（２４０−１−１）を起動した当初の画面は、シーン展開画面３０５にスタートポイント３０８だけが表示され、シーン画面３０１には何も表示されていず、設定画面３０３も未設定（デフォルト値は表示されている）の状態である。
【０１４３】
図２９は、シーン展開画面３０５において分岐シーンをアクティブにした場合のメインウィンドウの状態を表したものである。
図２９に示されるように、分岐シーン（図では分岐シーン４）を選択してアクティブにするとシーン画面３０１（図２８）の領域に、追加条件分類表示欄３３５と、追加条件項目欄３３７が表示される。
分岐条件分類表示欄３３には、アクティブ状態の分岐シーンに対して選択されている追加条件項目の分類（図２５参照）が表示される。
分岐条件項目欄には、分岐先を指定する追加条件項目が表示される。
【０１４４】
図３０は、シナリオプロパティを編集する画面操作の流れを表したものである。
図２８に示したメインウインドウにおいて、シーン展開画面３０５に表示されているスタートポイント３０８をダブルクリックすると、図３０に示すシナリオプロパティの編集ウインドウがメインウィンドウ上に重ねて表示される。
【０１４５】
このシナリオプロパティの編集ウィンドウにおいて、シナリオ名称入力，カナ名称入力，アイコン選択，ジャンル選択，プライオリティの設定，有効期限（開始条件を満たしてから実際に開始するまでのタイムラグの上限値）の設定，走行中実行条件の設定，シナリオの起動条件の設定（別ウインドウ），スタンバイ処理使用条件の設定，作成者名称入力，コメント入力が行なえる。この画面で入力されるシナリオ名称入力，カナ名称入力は、実機形式のシナリオデータにおける管理データ等となる。
シナリオプロパティの編集ウィンドウにおいて、決定ボタン４０２をクリックすると編集内容がデータに反映され、メインウインドウに戻る。一方、キャンセルボタン４０３をクリックするとデータに反映されなで、メインウインドウに戻る。
シナリオプロパティの編集ウィンドウ（図３０）において、スタンバイ処理使用条件の設定ボタン４０９をクリックすると、スタンバイ処理の条件画面が表示され、スタンバイ処理を行うか否かを選択できるようになっている。
【０１４６】
シナリオプロパティの編集ウィンドウにおいて、起動条件の設定ボタン４０１を選択すると、図３１（ａ）に示す、シナリオ開始条件（自動起動条件）のメイン編集ウィンドウが表示される。
シナリオ開始条件のメイン編集ウインドウ（図３１（ａ）では、ユーザがシナリオを手動で開始できるように設定できる。この事例ではチェックボックス４０６のチェックを外して手動で起動しないに設定する。
このシナリオ開始条件のメイン編集ウインドウ（ａ）の左側の自動起動条件（自律起動条件）一覧にはシステムがシナリオを自動で開始する条件が表示される。図３１（ａ）の状態では、まだ何も設定されていないので空欄の状態である。
シナリオ開始条件のメイン編集ウインドウ（図３１（ａ））において、新規作成ボタン４０５をクリックすると、自動開始条件選択ウインドウ（図３１（ｂ））が表示され、新しい開始条件の編集ができる。
【０１４７】
自動開始条件選択ウインドウ（図３１（ｂ））において、設定したい判断条件項目（カテゴリ）を選択し、決定をクリックすると自動開始する条件範囲の選択ウインドウ（図３１（ｃ））へ進む。この図３１（ｂ）の例示では、高速道路走行中にシナリオを自動で開始（自律起動）したいので、「道路の状態がどのようなときに起動するか選択」の中の「種類を選択」の項目を選択し、決定をクリックする。
キャンセルをクリックするとシナリオ開始条件のメイン編集ウインドウ（図３１（ａ））に戻る。
【０１４８】
この自動開始条件選択ウインドウ（図３１（ｂ））に表示し、選択できる項目は、図２３（ａ）に表示した自動起動項目である。図３１（ｂ）において、「いつ起動させるかを選択」のフォルダ内を選択すると図２３（ａ）のＮｏ．１〜１０の条件項目が１つ下の階層に表示される。
同様に、「どこで起動させるかを選択」のフォルダを選択するとＮｏ．１０〜１６が、「道路の状態がどのようなときに起動させるかを選択」のフォルダを選択するとＮｏ．２１〜２３が、「車の状態がどのようなときに起動させるかを選択」のフォルダを選択するとＮｏ．１７〜２０が、「ナビの状態がどのようなときに起動させるかを選択」のフォルダを選択するとＮｏ．２１〜２８が、「ユーザがどのようなときに起動させるかを選択」のフォルダを選択するとＮｏ．２９〜３０が、それぞれ１つ下の階層に表示される。
【０１４９】
自動開始する条件範囲の選択ウインドウ（図３１（ｃ））では、前のウインドウ（ｂ）で選択した判断条件項目（カテゴリ）によってウインドウの構成が変わる。図示した例では、道路の種類を選択する項目のウィンドウが表示されている。
自動開始する条件範囲の選択ウインドウ（図３１（ｃ））で、選択可能な項目は、自動開始条件選択ウインドウ（図３１（ｂ））で選択した自動起動項目に対応する、選択できる項目（図２３（ｂ））である。この選択できる項目は、選択項目欄４０８右側のマークをクリックすることで、プルダウンメニュー表示される。
自動で開始しても良い条件範囲を一覧から選択（又は数字で入力）し、追加ボタンをクリックすると選択した項目が設定されて下の欄に表示される。図示した例では、「高速道路」を選択して追加ボタンをクリックした場合が表示されている。
自動開始する条件範囲の選択ウインドウ（図３１（ｃ））で決定ボタンをクリックするとその設定状態に決定し、シナリオ起動条件のメイン編集ウインドウ（図３１（ｄ））に戻る。
キャンセルをクリックすると自動開始条件選択ウインドウ（図３１（ｂ））に戻る。
【０１５０】
図３１（ｄ）のシナリオ開始条件のメイン編集ウインドウでは、左側の自動起動条件一覧に、上記操作で設定した自動で開始する条件（道路の種類が高速道路だったら起動する）が表示されている。
また、自動起動の条件一覧画面に表示されている自動で開始する条件を選択して編集ボタンをクリックすると、選択した条件にさらに条件設定を追加するための自動開始条件選択ウインドウ（図３１（ｂ））が表示される。
【０１５１】
次に、自律起動条件以外の、シナリオを作成する各種操作について説明する。
図３２は、エージェント表示画面５１（図１４参照）に表示したい画面構成を選択する画面操作の流れを表したものである。
この図３２（ａ）に示されるメインウィンドウのシーン展開画面３０５に表示されているシーンアイコン３０７を選択してアクティブ状態にすると、選択したシーンアイコンに対応するシーン画面３１０が表示される。そして、設定画面３０３の画面構成の変更ボタン３０９をクリックすると、画面構成の選択ウインドウ（ｂ）が表示される。
この画面構成の選択ウインドウ（ｂ）では、シーン表示画面５４（図１４参照）に表示可能なる画面構成が一覧表示される。何も表示されない基本画面、ボタンによる選択ボタンが２つ表示された２択画面、選択ボタンが複数表示されたボタン選択画面、例えば、都道府県名等の複数の項目がリスト表示されるリスト選択画面、画像データを表示する画像表示画面等の各種選択可能な画面が表示される。
一覧表示された各画面構成の中から１の画面構成を選択し、決定ボタンをクリックすると画面構成を変更する場合は確認ダイアログで確認後変更する場合は、その画面構成に変更してメインウィンドウ（ａ）に戻る。メインウィンドウに戻ると、シーン画面３０１が新たに選択した画面構成に変更されて表示される。
【０１５２】
以下図３３〜図３５は、キャラクタの表示内容（画像、音声）、処理内容に基づいて画面要素を設定する画面要素設定手段、及び、キャラクタ設定手段を形成する。
図３３は、キャラクタ動作（エージェントの動作）指示を編集する画面操作の流れを表したものである。
シーン画面の編集状態を表しているメインウィンドウ（図２８）において、エージェント表示画面３１１をマウスでダブルクリックすると、動作指示編集ダイアログ（個別指示）（図３３（ａ））又はキャラクタ動作指示編集ダイアログ（統一指示）（図３３（ｂ））が表示される。
いずれのウィンドウが表示されるかは、前回に使用したウィンドウが表示され、前回動作指示をキャラクタ毎の直接指示で指示しているときは（図３３（ａ））が表示され、前回キャラクタに表現させたい状態で指示している場合は（図３３（ｂ））が表示される。最初に使用する場合には、キャラクタ動作指示編集ダイアログ（統一指示）が表示される。
【０１５３】
図３３（ａ）のキャラクタ動作指示編集ダイアログ（個別指示）では、モーション（動作），表情（感情表現の要素），髪型（成長表現の要素），服装（ＴＰＯ表現の要素），スケール（キャラクタ表示領域をカメラのフレームとするとそのカメラアングルの要素），口パクをする範囲（台詞を割り当てる範囲），動作の指示タイミング，及びキャラクタ表示領域の背景を選択する。
図３３（ａ）のキャラクタ動作指示編集ダイアログ（個別指示）において、決定ボタンをクリックすると編集内容がデータに反映され、メインウィンドウ（図２８）に戻る。キャンセルボタンをクリックするとデータに反映されなで、メインウィンドウに戻る。
また、表現内容指定ボタンをクリックすると、キャラクタ動作指示編集ダイアログ（統一指示）図３３（ｂ）切り替わる。
【０１５４】
キャラクタ動作指示編集ダイアログ（個別指示）で動作の指示（表示状態）が選択されると、キャラクタ固有の動作としてシーンが定義される。この場合、エージェント装置１では、描画・音声出力部（１０１−５）によるキャラクタ描画・音声出力処理において、キャラクタによらない統一の動作指示でないと判断される。
【０１５５】
図３３（ｂ）のキャラクタ動作指示編集ダイアログ（統一指示）では、キャラクタが表現する状態として、共通定義ＤＢ（２４０−２−１）に格納されているキャラクタによらない統一の動作指示テーブル（図２６、図２７参照）に対応して、仕事の要素，精神状態の要素，ＴＰＯ表現の要素，成長表現の要素，スケール要素（キャラクタ表示領域をカメラのフレームとするとそのカメラアングルの要素），が選択可能に表示される。また、動作の指示タイミング，及びキャラクタ表示領域の背景の選択画面が表示される。
ユーザは、このキャラクタ動作の状態指示編集ウインドウに表示された各表示状態を選択することで、キャラクタによらず各キャラクタに共通した動作として選択した表示状態に対応する表示状態番号が設定中のシーンの内容として設定される。
このウィンドウで、決定ボタンをクリックすると編集内容がデータに反映され、メインウィンドウ（ａ）に戻る。キャンセルボタンをクリックするとデータに反映されなで、メインウィンドウ（ａ）に戻る。
直接指示指定ボタンをクリックすると、キャラクタ動作指示編集ダイアログ（個別指示）（ｂ）に切り替わる。
【０１５６】
図３４は、キャラクタ（エージェント）の台詞指示を編集する画面操作の流れを表したものである。
シーン画面の編集状態を表しているメインウィンドウ（図２８）において、設定画面３０３の台詞編集ボタン３１３をクリックすると、図３４（ａ）に示す台詞の編集ウインドウが表示される。
この台詞の編集ウインドウ１（ａ）では、「ＰＣＭ」のタブ画面が表示され、ＰＣＭ（録音されて用意されている肉声データ）の指示ができる。
台詞の編集ウインドウ１（ａ）で「ＴＴＳ」タブを選択すると、台詞の編集ウインドウ２（図３４（ｂ））が表示され、ＴＴＳ（合成音声）の指示ができる。
ＰＣＭの場合、台詞を全角ひらがなで入力（上記入力用ボックス）し該当する台詞が有るか検索（検索ボタンをクリックする：前方一致と完全一致の２種類の検索方法を用意）し、検索結果（検索結果一覧表示欄が存在する）から選択しキャラクタに話させる台詞を設定（追加ボタンをクリックすると設定できる）していく。
ＴＴＳの場合は台詞名称（吹き出し表示用データ）とフリガナ（合成音声を作成するためのデータ）を入力しキャラクタに話させる台詞を設定（追加ボタンをクリックすると設定できる）していく。
図３（ａ）、（ｂ）に示す台詞の編集ウインドウ１、２において、決定ボタンをクリックすると編集内容が吹き出し画面４３０のデータとして反映されて図２８のメインウィンドウに戻り、キャンセルボタンをクリックするとデータに反映されなでメインウィンドウに戻る。
【０１５７】
図３５は、音声認識辞書を編集する画面操作の流れを表したものである。
この操作は、作成したシナリオに基づいて回答を要求する問いかけをエージェント装置でした場合に、ユーザから返される音声による回答をエージェント装置で認識するための音声辞書を設定するものである。
シーン画面の編集状態を表しているメインウィンドウ（図２８）において、選択された画面構成に従って表示されるボタンパーツ部３１５ａ（画面構成によっては通常リストボックスパーツ部の場合も有る）をダブルクリックすると音声認識辞書選択ウインドウ（図３５（ａ））が表示される。また、バックグラウンドで認識する辞書の一覧表示部３１５ｂをダブルクリックしても音声認識辞書選択ウインドウが表示される。
【０１５８】
音声認識辞書選択ウインドウ（図３５（ａ））において、辞書候補の一覧表示にある辞書名称をダブルクリックするとその音声認識辞書を使うものとして、一般辞書として選択した一覧に表示される。
決定ボタンをクリックすると編集内容がデータに反映されてメインウィンドウ（図２８）に戻り、キャンセルボタンをクリックするとデータに反映されなでメインウィンドウに戻る。
ユーザ定義辞書の編集ボタンをクリックすると、音声認識辞書を新規に作成する音声認識辞書作成ウインドウ（図３５（ｂ））が表示される。このウインドウにおいて、辞書の名称を入力して辞書追加ボタンをクリックするとその名称で音声認識辞書を新規に作成して音声認識辞書へ単語登録するウインドウ（図３５（ｃ））が表示される。
音声認識辞書作成ウインドウでＯＫボタンをクリックすると音声認識辞書の作成を終了し、音声認識辞書選択ウインドウにもどる。
【０１５９】
音声認識辞書へ単語登録するウインドウ（図３５（ｃ））では、登録したい単語を半角カナでフリガナ欄に入力し、決定ボタンをクリックする。次に名称（表示させたい名称）を選択もしくは新規入力し、コールバックをする際のＰＣＭ音声を選択（無しを選択すればコールバックする場合はＴＴＳを使用する）する。これら３項目の入力をした後に登録ボタンをクリックするとデータ登録され右側の登録単語一覧に追加される。
登録したい単語の登録を全て終わったら戻るボタンをクリックすると音声認識辞書作成ウインドウに戻る。
【０１６０】
次にシナリオにおける各シーンの展開を構成する操作の流れとその画面について説明する
図３６は、作成されシーン展開画面３０５に表示されたシナリオのシーン展開構成の一例を表したものである。このシーン展開構成を用いてシナリオの流れを編集する操作について説明する。
図３６に示されるように、シーンの展開パターンとして次の各場合がある。
（１）通常シーンに続いて通常シーンが展開
（２）通常シーンに続いて分岐シーンが展開
（３）分岐シーンに続いて分岐シーンが展開
（４）分岐シーンに続いて通常シーンが展開
（５）通常シーンに続いて通常シーンのエイリアスシーンが展開
（６）通常シーンに続いて分岐シーンのエイリアスシーンが展開
（７）分岐シーンに続いて通常シーンのエイリアスシーンが展開
（８）分岐シーンに続いて分岐シーンのエイリアスシーンが展開
【０１６１】
このように、通常シーンと分岐シーンを組み合わせることで多彩なシーン展開が可能になる。
また、移行条件の論理演算も可能になる。例えば、通常シーン２に続いて通常シーン５に展開する場合に、間に分岐シーン３と分岐シーン４を接続することで、両分岐シーン３，４の追加条件双方を満たした場合にシーン２からシーン５に展開することになる。分岐条件の論理積である。
具体的には、通常シーン２において、エージェント装置のユーザが「はい」を選択したという状態の変化が発生した場合（通常シーン２に設定された展開条件）に、友好度が高くて（分岐シーン３の追加条件）、且つ、ユーザの性別が男性（分岐シーン４の追加条件）だった場合にシーン５に移行し、それ以外の場合にはシーン６に移行する。
【０１６２】
一方、通常シーン２に続いて通常シーン６に展開する場合、間に分岐シーン３を接続すると共に、分岐シーン３の追加条件を満たさない場合の分岐シーン４に通常シーン６のエイリアスシーン６′を接続することで、両分岐シーン３、４の追加条件のいずれか一方を満たした場合に、通常シーン２から通常シーン６に展開することになる。分岐条件の論理積である。
具体的には、通常シーン２において、エージェント装置のユーザが「はい」を選択したという状態の変化が発生した場合（通常シーン２に設定された展開条件）に、友好度が高くて（分岐シーン３の追加条件）、若しくは、ユーザの性別が男性（分岐シーン４の追加条件）だった場合にシーン６に移行する。
このように、画面要素の状態の変化や、車両状態の変化などの状態変化を条件として、移行条件（展開条件）を設定することにより、本発明の移行条件設定手段が形成され、ユーザ情報や時間、場所、道路種別等の状態を条件として、分岐条件（追加条件）を設定することにより本発明の分岐条件設定手段が形成される。
移行条件設定手段は、前期画面要素で定義された処理内容の終了が確認されたことを条件に、変化（処理内容の変化、車両の状態変化）があったことと判断する。
また、分岐条件設定手段は、画面要素には無関係に設定された条件を満たすかどうかで決定された分岐条件である。
【０１６３】
図３７、図３８は、上記各シーン展開パターンによる通常シーン、分岐シーン、エイリアスシーンを作成する際に表示されるウィンドウを表したものである。
以下、各展開パターンを作成するための操作について、図３６と図３７、図３８を使用して説明する。
なお、図２８、２９のメインウィンドウのシーン展開画面３０５には、図３６のシーン展開構成が表示されているものとして説明する。
【０１６４】
（１）通常シーンに続いて通常シーンを展開する操作
図３６における通常シーン１に続く通常シーン２を作成する場合を例に説明する。
メインウィンドウ（図２８）において、通常シーン１を選択してアクティブ状態にする。この状態で、メインウィンドウのシーン作成ボタン３２３をクリックすると、図３７（ａ）に示す分岐条件指定ウィンドウが表示される。
この分岐条件指定ウィンドウには、アクティブ状態のシーン番号が表示され、それに続いて展開条件（図２４）がリスト表示される。
この分岐条件指定ウィンドウにおいて、表示された展開条件を選択して、ＯＫボタンをクリックすると、選択された展開条件と移行先である通常シーン２を示すシーン番号がアクティブ状態の通常シーンに設定される。
そして、分岐条件指定ウィンドウが閉じられ、メイン画面に戻り、その展開条件を満たした場合に展開する（移行する）新たな通常シーン２が作成されシーン展開画面３０５のシーン展開構成に追加される。
なお、新規に作成された通常シーンは、作成済みの他のシーンと区別して表示される。例えば、点滅表示、異なる色で表示、「新規」を表示、等により区別表示される。
【０１６５】
（２）通常シーンに続いて分岐シーンを展開する操作
図３６における通常シーン２に続く分岐シーン３を作成する場合を例に説明する。
メインウィンドウ（図２８）において、通常シーン２を選択してアクティブ状態にする。この状態で、メインウィンドウの分岐シーン作成ボタン３２４を選択すると、図３７（ａ）に示す分岐条件指定ウィンドウが表示され、展開条件（図２４）がリスト表示される。
この分岐条件指定ウィンドウにおいて、表示された展開条件を選択して、ＯＫボタンをクリックすると、選択された展開条件と移行先である分岐シーン３を示すシーン番号がアクティブ状態の通常シーンに設定される。
そして、分岐条件指定ウィンドウが閉じられ、図３７（ｂ）に示す拡張分岐条件指定ウィンドウが表示される。この拡張分岐条件指定ウィンドウには、追加条件項目テーブルの分類（図２５参照）がリスト表示される。リスト表示された追加条件の分類を選択してＯＫボタンを選択すると、選択された分類が新規に作成する分岐シーン３の追加条件の分類として規定され、拡張分岐条件指定ウィンドウが閉じられる。
そして、メイン画面に戻り、その展開条件を満たした場合に展開する（移行する）新たな分岐シーン３が作成されシーン展開画面３０５のシーン展開構成に追加される。
新たに作成された分岐シーンについても、新たに作成された通常シーンと同様に、作成済みの他のシーン（通常シーン、分岐シーン）と区別表示される。
このように、１つの画面要素（通常シーン）から複数の画面要素に分岐させる分岐要素（分岐要素）を作成することにより、本発明の分岐要素作成手段が形成される。
【０１６６】
（３）分岐シーンに続いて分岐シーンを展開する操作
図３６における分岐シーン３に続く分岐シーン４を作成する場合を例に説明する。
メインウィンドウ（図２８）において、分岐シーン３を選択してアクティブ状態にする。この状態で、メインウィンドウの分岐シーン作成ボタン３２４を選択すると、図３８に示す分岐条件値入力ウィンドウが表示される。また、分岐シーン３をアクティブにすることによりメインウィンドウは図２８の状態から図２９に示す分岐シーン用のメインウィンドウに変更される。
分岐条件値入力ウィンドウには、アクティブ状態の分岐条件に設定されている追加条件項目の分類に対応して、その分類に対して選択可能な項目（図２５の分類に対応する項目欄参照）のリスト表示画面（図３８（ａ））、又は入力可能な通知入力画面（図３８（ｂ））等が表示される。
表示された分岐条件値入力ウィンドウにおいて、選択可能な項目を選択（図３８（ａ））、又は、入力可能な値を設定（図３８（ｂ））した後に決定ボタンを選択すると、アクティブな分岐シーン３に設定されている追加条件の分類に対応した追加条件として選択された追加条件が分岐シーン３に設定される。また分岐シーン３には、選択された追加条件と共に、追加条件に対する移行先である分岐シーン４を示すシーン番号が設定される。
そして、分岐条件値入力ウィンドウが閉じられ、新規に作成する分岐シーン４に対する追加条件の分類を設定するために、拡張分岐条件指定ウィンドウ（図３７（ｂ））が表示され、追加条件の分類がリスト表示される。表示された追加条件の分類を選択し、ＯＫボタンを選択すると、選択された分類が新規に作成する分岐シーン４の追加条件の分類として規定され、拡張分岐条件指定ウィンドウが閉じられる。
そして、図２９のメイン画面に戻り、その展開条件を満たした場合に展開する（移行する）新たな分岐シーン４が作成されシーン展開画面３０５のシーン展開構成に追加される。なお、図２９のメインウィンドウの、シーン展開表示部３２２、追加条件分類表示欄３３５、及び追加条件項目欄３３７には、選択された各分類と条件が反映され表示される。
【０１６７】
（４）分岐シーンに続いて通常シーンを展開する操作
図３６における分岐シーン４に続く通常シーン５を作成する場合を例に説明する。
メインウィンドウ（図２８又は図２９）において、分岐シーン４を選択してアクティブ状態にする。この状態で、メインウィンドウのシーン作成ボタン３２３を選択すると、アクティブ状態の分岐シーンに設定されている追加条件の分類に対応して図３８（ａ）又は（ｂ）に示す分岐条件値入力ウィンドウが表示される。
表示された、分岐条件値入力ウィンドウにおいて、選択可能な項目を選択（図３８（ａ））、又は、入力可能な値を設定（図３８（ｂ））した後に決定ボタンを選択すると、選択された追加条件がアクティブな分岐シーン４に設定されている追加条件の分類に対応する追加条件として分岐シーン４に設定される。また分岐シーン４には、追加条件と共に、その追加条件に対する移行先である通常シーン５を示すシーン番号が設定される。
そして、分岐条件値入力ウィンドウが閉じられ、図２９のメイン画面に戻り、その展開条件を満たした場合に展開する（移行する）新たな通常シーン５が作成されシーン展開画面３０５のシーン展開構成に追加される。また、図２９のメインウィンドウの、シーン展開表示部３２２、追加条件分類表示欄３３５、及び追加条件項目欄３３７には、選択された各分類と条件が反映され表示される。
【０１６８】
（５）通常シーンに続いて通常シーンのエイリアスシーンを展開する操作
図３６における通常シーン１に続く通常シーン６のエイリアスシーン６′を作成する場合を例に説明する。
メインウィンドウ（図２８）において、通常シーン１を選択してアクティブ状態にする。この状態で、メインウィンドウのエイリアスシーン指定ボタン３２６を選択し、その後、エイリアスシーにより移行したい作成済みの通常シーン６を指定する。
すると、図３７（ａ）の分岐条件指定ウィンドウが表示され、展開条件（図２４）がリスト表示される。
この分岐条件指定ウィンドウにおいて、表示された展開条件を選択して、ＯＫボタンをクリックすると、選択された展開条件と移行先である通常シーン６を示すシーン番号がアクティブ状態の通常シーンに設定される。
そして、分岐条件指定ウィンドウが閉じられ、図２８のメイン画面に戻り、その展開条件を満たした場合に指定した通常シーン６に展開する（移行する）ことを示すエイリアスシーン６′が作成されシーン展開画面３０５のシーン展開構成に追加される。
【０１６９】
（６）通常シーンに続いて分岐シーンのエイリアスシーンを展開する操作
図３６における通常シーン１に続く分岐シーン３のエイリアスシーン３′を作成する場合を例に説明する。
メインウィンドウ（図２８）において、通常シーン１を選択してアクティブ状態にする。この状態で、メインウィンドウのエイリアスシーン指定ボタン３２６を選択し、その後、エイリアスシーにより移行したい作成済みの分岐シーン３を指定する。
すると、図３７（ａ）に示す分岐条件指定ウィンドウが表示され、展開条件（図２４）がリスト表示される。
この分岐条件指定ウィンドウにおいて、表示された展開条件を選択して、ＯＫボタンをクリックすると、選択された展開条件と移行先である分岐シーン３を示すシーン番号がアクティブ状態の通常シーンに設定される。
そして、分岐条件指定ウィンドウが閉じられる。分岐シーン３に対する追加条件の分類は既に設定されているので、図２８のメイン画面に戻り、その展開条件を満たした場合に指定した分岐シーン３に展開する（移行する）ことを示すエイリアスシーン３′が作成されシーン展開画面３０５のシーン展開構成に追加される。
【０１７０】
（７）分岐シーンに続いて通常シーンのエイリアスシーンを展開する操作
図３６における分岐シーン４に続く分岐シーン６のエイリアスシーン６′を作成する場合を例に説明する。
メインウィンドウ（図２８）において、分岐シーン４を選択してアクティブ状態にする。この状態で、メインウィンドウのエイリアスシーン指定ボタン３２６を選択し、その後、作成済みの通常シーン６を指定すると、分岐シーン４に設定されている追加条件の分類に応じた図３８（ａ）又は（ｂ）の分岐条件値入力ウィンドウが表示される。
この画面で、選択可能な項目を設定し又は指定可能な数値を入力して決定ボタンを選択すると、選択された追加条件と移行先である通常シーン６を示すシーン番号がアクティブ状態の分岐シーン４に設定される。
そして、分岐条件値入力ウィンドウが閉じられる。図２９のメイン画面に戻り、その追加条件を満たした場合に指定した通常シーン６に展開する（移行する）ことを示すエイリアスシーン６′が作成されシーン展開画面３０５のシーン展開構成に追加される。
【０１７１】
（８）分岐シーンに続いて分岐シーンのエイリアスシーンを展開する操作
図３６における分岐シーン３に続く分岐シーン７のエイリアスシーン７′を作成する場合を例に説明する。
メインウィンドウ（図２８）において、分岐シーン３を選択してアクティブ状態にする。この状態で、メインウィンドウのエイリアスシーン指定ボタン３２６を選択し、その後、作成済みの分岐シーン７を指定すると、分岐シーン３に設定されている追加条件の分類に応じた図３８（ａ）又は（ｂ）の分岐条件値入力ウィンドウが表示される。
この画面で、選択可能な項目を設定し又は指定可能な数値を入力して決定ボタンを選択すると、選択された追加条件と移行先である通常シーン７を示すシーン番号がアクティブ状態の分岐シーン３に設定される。
そして、分岐条件値入力ウィンドウが閉じられる。図２９のメイン画面に戻り、その追加条件を満たした場合に指定した分岐シーン７に展開する（移行する）ことを示すエイリアスシーン７′が作成されシーン展開画面３０５のシーン展開構成に追加される。
【０１７２】
図３９は、以上のシーン展開の操作により、「年が明けて初めての挨拶で正月三が日の場合には「あけましておめでとう」と言わせる」シーン展開行構成の一例を表したものである。
このシーンは、シナリオの終了記録（エンドＩＤ）を使った分岐シーンを使用して作成される。
具体的には、図３９に示されるように、次のように作成される。
▲１▼日付で分岐する分岐シーン１により「正月三が日」について展開する分岐シーン２の展開と、その他の分岐シーン４移行とに分ける。
▲２▼分岐シーン４で展開するその他の通常シーンについての説明は省略するが、例えば時間等を追加条件としてにより「おはよう」、「こんにちは」、「こんばんは」と挨拶を変化させた各通常シーンを作成する。
▲３▼正月三が日の展開は、分岐シーン２により終了記録が存在するエンドＩＤで分岐するように設定する。
▲４▼分岐シーン２において、追加条件として「エンドＩＤ１で終了した記録が存在する」場合、作成済みの分岐条件４に移行するエイリアス４（上記▲２▼の通常の展開）へ展開するようにする。
▲５▼分岐シーン２においえ、追加条件以外（該当無し）の場合はシーン３へ展開するようにする。
▲６▼通常シーン３からキャラクタ動作終了でエンド１へ展開するようにする。
▲７▼シーン３を「あけましておめでとう」と挨拶するように設定する。
なお、位置の記録は終了要素（エンドＩＤ）に限ったものではなく、特定のシーン（画面要素）の位置を記録することも可能である。こうすることにより、より多彩な分岐が可能となり、ユーザの意図に沿ったシナリオが作成し易くなる。
【０１７３】
図４０は、シナリオの終了位置を編集する画面操作の流れを表したものである。
図２８のメインウインドウのシーン展開画面３０５にツリー構造により表示された各シーンアイコン３０７の中から、シナリオを終了させたいシーンのシーンアイコン３０７（図４０（ａ）ではアイコン４）を選択してアクティブ状態にする。この状態で、メインウィンドウのシナリオの終了位置作成ボタン３２７をクリックするとエンドＩＤ指定ウインドウ（図４０（ｂ））が表示される。
このエンドＩＤ指定ウインドウにおいて、終了位置マークの持つＩＤ番号を指定する。通常は自動割付するが、自動で割り付けると書かれたチェックボックスのチェックをはずせばエディタの操作者が自分で割り付けることができる。ＯＫボタンをクリックするとＩＤ番号を決定し分岐イベント選択ウインドウ（図４０（ｃ））が表示される。
【０１７４】
分岐イベント選択ウインドウ（図４０（ｃ））では、分岐条件の指定ウィンドウ（図３７（ａ））と同様な画面が表示され、操作方法も同様にして、シナリオを終了するための分岐条件を設定する。追加条件設定も同様にできる。このウィンドウで、ＯＫボタンをクリックするとその条件（移行条件）に決定してメインウィンドウ（ｄ）へ戻る（移行条件設定手段）。
なお、このシナリオを終了させるための分岐条件においても、図４０（ｃ）の分岐イベント選択ウィンドウにおいて、エージェントの長期的感情要素と、短期的感情要素を指定することができる。例えば、エージェントの長期的感情要素の元気度が「低い」（０〜３０）場合に終了させるように設定することができる。
メインウィンドウに戻った後のシーン展開画面３０５には、図４０（ｄ）に示されるように、選択したシナリオアイコン（図ではアイコン４）に続いて、新たにシナリオ終了位置４３３が作成され、表示される。
【０１７５】
図４１は、エージェントの心理状態として規定されているエージェント装置の長期的感情要素１０−２−３−１ａ及び短期的感情要素１０−２−３−１ａ（図６参照）を変更するシナリオを作成する操作画面を表したものである。
図４１（ａ）は、長期的感情要素を変更するシナリオを作成するためのＡＭＭの変化編集ウィンドウを表したものである。この編集ウィンドウは、図２８のメインウインドウのシーン展開画面３０５に表示された各シーンアイコン３０７の中から、そのシーンで感情を変更させたいシーンアイコン３０７を選択し、更に、ＡＭＭの変化の設定変更ボタン３２１を選択すると表示される。
このＡＭＭの変化編集ウィンドウにおいて、ＡＭＭの各長期的感情要素に対する要素値の変更幅を設定し、決定ボタン選択すると、メインウィンドウ（図２８）に戻り、ＡＭＭの変化の欄に設定した変更幅が反映される。
このシナリオが実行され該当シーンになると、エージェント装置のシナリオ駆動部（１０１−１）はシーン処理（ステップ５０５−６：図１８）の各種処理の指示（ステップ５０５−６−５：図１９）において、指示された長期的感情要素の値を変更値だけ増減する。
【０１７６】
図４１（ｂ）は、シナリオで短期的感情要素を変更するシナリオを作成するためのエンドプロパティ編集ウィンドウを表したものである。この編集ウィンドウは、図２８のメインウインドウのシーン展開画面３０５に表示されたシナリオ終了位置３４０を選択することで表示される。
このように、短期的感情要素を変更する指示は、シナリオの終了の仕方によってそれぞれ異なる設定とすることができる。
本実施形態のエージェント装置では、長期的感情要素が変更前の感情要素値を増減することで少しずつ変化するので、シーン毎に少しずつの変更が可能である。これに対して、短期的感情要素は変更前の感情要素値が反映されず新たな感情に対応した要素のみが設定され他はゼロになるので、シーン毎に変更するとエージェントの感情がめまぐるしく変化して、帰って人間らしくなくなる。このため、短期感情要素のシナリオによる変更は、シナリオ単位で設定することで、より人間らしい感情変化をするシナリオを作成することが可能になる。
図４１（ｂ）の編集ウィンドウにおいて、各短期的感情要素の下層に表示される変更の程度「少し」「普通に」「かなり」を設定する。変更の程度は、図９（ｂ）の「小」「中」「大」に対応して分割されており、例えば、「少し」が３０、「中」が７０、「大」が１００にそれぞれ変更値が規定されている。
【０１７７】
図４２は、作成したシナリオをエージェント装置で使用可能な実機形式（ＮＡＶ形式）のフォーマットにコンパイルするための画面操作の流れを表したものである。
メインウインドウ図４０（ａ）において、シナリオコンパイルボタン３３２をクリックすると、シナリオコンパイラのウインドウ（ｂ）が表示される。
このシナリオコンパイラのウインドウ（ｂ）において、コンパイルしたデータを出力するファイルの名称を指定し、同時に変換するシナリオを選択（シナリオ一覧リストにチェックしたシナリオを同時に変換する）し、コンパイルボタンをクリックすると、シナリオコンパイラ（２４０−１−２）がデータ変換を開始する。データ変換の状況を結果表示部に表示する。
終了ボタンをクリックするとデータ変換を終了し、メインウィンドウ（ａ）に戻る。
【０１７８】
以上説明したように、画面要素（シーン）、移行条件、分岐要素及び分岐条件を組み合わせて画面要素推移体（シナリオ）を作成する画面要素推移体作成手段が形成される。
また、以上説明したように、車両内の表示装置に表示するためのキャラクタの処理内容を設定するキャラクタ表示処理設定手段が形成される。
【０１７９】
以上説明したように、本実施形態のシナリオ作成装置によれば、シナリオの各シーンにおけるキャラクタの動作を指示する表示状態をキャラクタの種類によらずに共通化したので、キャラクタにとらわれずに実行できるシナリオを作成することができ、キャラクタ毎に作成していたシナリオを１個にまとめることができるため、シナリオ作成が容易になる。
【０１８０】
また説明した実施形態のエージェント装置によれば、エージェントの心理状態として長期的感情要素と短期的感情要素を規定し、両感情要素の両方を参照し、行動を決定することにより、より人間らしくエージェントを振舞わせることができる。
そして、シナリオ作成装置では、両感情要素をシナリオの移行条件として設定可能とし、また、シナリオにおいて両感情条件を変更可能にすることで、より人間らしく振る舞うエージェントのシナリオを作成することができる。
【０１８１】
また、本実施形態によれば、シナリオ作成装置で作成されたシナリオデータに基づいてエージェントを自律的に起動させる（自動で登場させる）条件を満たしたかを判断する処理を定期的にもしくは特定の状態を満たしたときに実行し、条件を満たした場合にエージェントを自動で登場させることができる。
一方、本実施形態のシナリオ作成装置及びシナリオエディタによれば、プログラムの知識の有無に関係無く、シナリオエディタを持つことで特定の条件を満たしたときに自動で登場して対応してくれるエージェントのシナリオデータを容易に作成及び編集することができる。
【０１８２】
【発明の効果】
請求項１及び請求項２に記載の発明によれば、車載装置で実行されることでキャラクタがコミュニケーションを行う画面要素推移体と、その起動条件を容易に作成することができる。
また、コミュニケーションの展開が豊富な画面要素推移体を容易に作成することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態におけるエージェント装置の構成を示すブロック図である。
【図２】同上、エージェント装置における各種状況検出装置の構成図である。
【図３】ＣＰＵでプログラムが実行されることにより実現されるエージェント処理部と、全体処理部との関係を表した説明図である。
【図４】エージェント処理部の構成を表した説明図である。
【図５】外部記憶媒体に集録されている情報を概念的に表した説明図である。
【図６】メンタルモデルデータの内容を概念提供に表した説明図である。
【図７】長期的感情要素を概念的に表した説明図である。
【図８】長期的感情変化条件の規定内容を例示した説明図である。
【図９】短期的感情要素を概念提供に表した説明図である。
【図１０】短期的感情変化条件の規定内容を例示した説明図である。
【図１１】実機形式シナリオデータの構成を表したものである。
【図１２】キャラクタデータを概念的に表した説明図である。
【図１３】運転者情報データを概念的に示した説明図である。
【図１４】シナリオのシーンデータに基づいて表示装置に表示されるシーン画面の一例を表した説明図である。
【図１５】旅館が宿泊予定者に送信した案内シナリオによるシーン画面の遷移を各シーン毎に表した画面遷移図である。
【図１６】自律起動判断部によるシナリオの自律起動判断処理について表したフローチャートである。
【図１７】条件判断処理の処理内容を表したフローチャートである。
【図１８】シナリオ実行処理の流れの一例を表したフローチャートである。
【図１９】シーン処理の流れの一例を表したフローチャートである。
【図２０】シナリオ作成装置の構成図である。
【図２１】シナリオ編集プログラムとデータの構成を概念的に表したものである。
【図２２】データ形式の変換を概念的に表したものである。
【図２３】自動起動項目として設定可能な項目を例示したものである。
【図２４】シーンから次のシーンに分岐（シーン展開）をするための展開条件項目（移行条件）が格納された展開条件項目テーブルである。
【図２５】追加条件テーブルを表したものである。
【図２６】共通定義ＤＢに格納されている、キャラクタの表示状態指示テーブルの内容の一部を概念的に表した説明図である。
【図２７】共通定義ＤＢに格納されている、キャラクタの表示状態指示テーブルの内容の他の一部を概念的に表した説明図である。
【図２８】シナリオエディタを起動した場合に表示装置に表示されるメインウィンドウの構成を表したものである。
【図２９】シーン展開画面の分岐シーンをアクティブにした場合のメインウィンドウの状態を表した説明図である。
【図３０】シナリオプロパティを編集する画面操作の流れを表したものである。
【図３１】シナリオ開始条件のメイン編集ウィンドウから、シナリオ起動条件を編集する画面操作の流れを表したものである。
【図３２】エージェント表示画面に表示したい画面構成を選択する画面操作の流れを表したものである。
【図３３】キャラクタ動作（エージェントの動作）指示を編集する画面操作の流れを表したものである。
【図３４】キャラクタ（エージェント）の台詞指示を編集する画面操作の流れを表したものである。
【図３５】音声認識辞書を編集する画面操作の流れを表したものである。
【図３６】作成されシーン展開画面に表示されたシナリオのシーン展開構成の一例を表した説明図である。
【図３７】通常シーン、分岐シーン、エイリアスシーンを作成する際に表示されるウィンドウを表した説明図である。
【図３８】通常シーン、分岐シーン、エイリアスシーンを作成する際に表示される他のウィンドウを表した説明図である。
【図３９】シーン展開の操作により、「年が明けて初めての挨拶で正月三が日の場合には「あけましておめでとう」と言わせる」シーン展開行構成の一例を表した説明図である。
【図４０】シナリオの終了位置を編集する画面操作の流れを表したものである。
【図４１】エージェントの心理状態として規定されているエージェント装置の長期的感情要素と短期的感情要素を変更するシナリオを作成する操作画面を表した説明図である。
【図４２】作成したシナリオをナビゲーションで使用可能な実機形式のフォーマットにコンパイルするための画面操作の流れを表したものである。
【符号の説明】
１  エージェント装置装置
２  シナリオ作成装置
３  サーバ
（１）  中央処理装置
（２）  表示装置
（３）  音声出力装置
（４）  音声入力装置
（５）  入力装置
（６）  各種状況検出装置
（７）各種車載装置
（８）通信制御装置
（９）通信装置
（１０）外部記憶装置
（２００）    制御部
（２１０）    入力装置
（２２０）    出力装置
（２３０）    通信制御装置
（２４０）    記憶装置
（２５０）    記憶媒体駆動装置
（２６０）    入出力Ｉ／Ｆ
【図１】
2004302904.tif 000003
【図２】
2004302904.tif 000004
【図３】
2004302904.tif 000005
【図４】
2004302904.tif 000006
【図５】
2004302904.tif 000007
【図６】
2004302904.tif 000008
【図７】
2004302904.tif 000009
【図８】
2004302904.tif 000010
【図９】
2004302904.tif 000011
【図１０】
2004302904.tif 000012
【図１１】
2004302904.tif 000013
【図１２】
2004302904.tif 000014
【図１３】
2004302904.tif 000015
【図１４】
2004302904.tif 000016
【図１５】
2004302904.tif 000017
【図１６】
2004302904.tif 000018
【図１７】
2004302904.tif 000019
【図１８】
2004302904.tif 000020
【図１９】
2004302904.tif 000021
【図２０】
2004302904.tif 000022
【図２１】
2004302904.tif 000023
【図２２】
2004302904.tif 000024
【図２３】
2004302904.tif 000025
【図２４】
2004302904.tif 000026
【図２５】
2004302904.tif 000027
【図２６】
2004302904.tif 000028
【図２７】
2004302904.tif 000029
【図２８】
2004302904.tif 000030
【図２９】
2004302904.tif 000031
【図３０】
2004302904.tif 000032
【図３１】
2004302904.tif 000033
【図３２】
2004302904.tif 000034
【図３３】
2004302904.tif 000035
【図３４】
2004302904.tif 000036
【図３５】
2004302904.tif 000037
【図３６】
2004302904.tif 000038
【図３７】
2004302904.tif 000039
【図３８】
2004302904.tif 000040
【図３９】
2004302904.tif 000041
【図４０】
2004302904.tif 000042
【図４１】
2004302904.tif 000043
【図４２】
2004302904.tif 000044