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