JP4206818B2 - In-vehicle device and data creation device - Google Patents

In-vehicle device and data creation device Download PDF

Info

Publication number
JP4206818B2
JP4206818B2 JP2003139671A JP2003139671A JP4206818B2 JP 4206818 B2 JP4206818 B2 JP 4206818B2 JP 2003139671 A JP2003139671 A JP 2003139671A JP 2003139671 A JP2003139671 A JP 2003139671A JP 4206818 B2 JP4206818 B2 JP 4206818B2
Authority
JP
Japan
Prior art keywords
scenario
scene
data
screen
character
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003139671A
Other languages
Japanese (ja)
Other versions
JP2004340836A (en
Inventor
智氣 窪田
松田  学
和英 足立
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Equos Research Co Ltd
Original Assignee
Equos Research Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Equos Research Co Ltd filed Critical Equos Research Co Ltd
Priority to JP2003139671A priority Critical patent/JP4206818B2/en
Publication of JP2004340836A publication Critical patent/JP2004340836A/en
Application granted granted Critical
Publication of JP4206818B2 publication Critical patent/JP4206818B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Navigation (AREA)
  • Processing Or Creating Images (AREA)
  • Traffic Control Systems (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、車載装置及びデータ作成装置に係り、例えば、車両の搭乗者とのコミュニケーションにより会話をしたり機器操作等を自律的に行うエージェント機能を備えた車載装置及び、その車載装置で実行される画面要素推移体を作成するデータ作成装置に関する。
【0002】
【従来の技術】
例えば、犬などのペット型のロボットや、車室内においてナビゲーション装置等の機器操作の案内をしたり状況に応じた質問や提案等を行うことで搭乗者との対話や対応をするエージェント装置が開発され、車載装置として車両に搭載されている(例えば、特許文献1参照)。
そして、装置に対して考えられる種々の状態を想定すると共に、想定した各状態を検出した場合にとるべき対応が、所定のデータやプログラムに従って規定されている。
【0003】
【特許文献1】
特開平11−37766号公報
【0004】
この従来のエージェント装置では、例えば、燃料検出センサ415の検出値G1が、全5回分の給油残量の平均値G2以下(G1≦G2)になった場合に、エージェントEが表示装置27に現れて給油を促す動作の動画が表示装置27に表示され、「おなかが減ったなあ!ガソリンがほしいな!」等の音声が音声出力装置25から出力される。
【0005】
【発明が解決しようとする課題】
従来のエージェント装置では、各種状況に対応してエージェントが種々の動作を行う様子を動画や静止画像により表示している。例えばエージェントがお辞儀をする動画、うなずく動画、画面表示された質問に対する回答の選択を促すために右手を挙げて回答を指し示す動画、等の各種動画を状況に応じて連続して再生することで一連の動作を表すようになっている。
しかし、表示する動画の再生時間を固定すると次のような問題が生じる。例えば、操作を促すアニメーションである場合、ユーザが操作をためらっていたり、操作を考えている間に動画の再生が終了してしまうと、継続しての操作が不可能になったとの誤解をユーザに与えることがある。この場合、それ以降ユーザは何をすればよいのかわからなくなってしまう。
また、複数の状況に対して同一の動画を再生するような場合、動画の再生時間が固定されていると、各状況に応じて出力される異なる音声内容が異なるため、音声と動画が同期しないことにもなる。
【0006】
そこで、状況にあわせて動画の再生時間を可変にすることが考えられる。
例えば、動画全体をループ可能として、時間の調整をする方法が考えられる。しかし、ループ中に後続の動画に移行する状況が発生し動画を中断した場合、後続の動画の先頭フレーム(先頭の画像)とループ中断時点のキャラクタの位置や姿勢が違った場合、後続の動画との間に動作のギャップが生じてしまい、動画の再生品質を低下させてしまう。また、エージェントの動作内容によっては、例えば、何度もお辞儀を繰り返すといった、同じ動作の不自然な繰り返しが発生し、ユーザに違和感を与える。
一方、動画をループさせず、再生途中で画像を静止させることも考えられるが、エージェントの動きが完全に停止してしまうため、システムが故障または停止したとの誤解をユーザに与える可能性がある。
更に、再生時間別に長さの異なる動画を用意することも考えられるが、再生時間別に動画を要する必要があるので、記憶すべきデータ量が増大すると共に、動画再生開始以降に発生した時間不確定な状況(車両の走行状態や、通信状態など)に動画を対応させることができない。
【0007】
また、ユーザに選択を求める動画を再生している途中でユーザが選択をした場合、後続の動画を再生するタイミングとして2つの方法が考えられる。まず、再生中の動画を直ちに中断して後続の動画再生に移行する方法の場合、中断時の画像と後続の動画の開始画像間のギャップにより動作が不自然になり再生品質が低下する。
一方、再生中の動画を最後まで再生した後に後続の動画を再生する方法の場合、ユーザの操作に対するエージェントの動作の応答が悪くなる。
【0008】
そこで、本発明では、画面要素推移体の1画面要素の実行中に、車載装置又は使用者から所定の指示があった場合、実行中の動画段階の再生品質及び応答速度に対して不自然さを少なくして後続動画を再生することが可能な車載装置を提供することを第1の目的とする。
また、本発明は、車載装置で実行されることでキャラクタがコミュニケーションを行う画面要素推移体と、その起動条件を作成すると共に、画面要素を実行中、使用者又は車載装置からの所定指示がなされた場合に、キャラクタの動作表現を中断するか否かを設定することが可能なデータ作成装置を提供することを第2の目的とする。
【0009】
【課題を解決するための手段】
請求項1に記載した発明では、キャラクタの基本姿勢状態から表現内容を示す所定姿勢状態までの開始動画、前記所定姿勢状態を保持する保持動画、前記所定姿勢状態から基本姿勢状態までの終了動画の少なくとも3つの動画からなるキャラクタの動作表現動画を記憶する動作表現動画記憶手段と、前記キャラクタの動作表現動画を含む表示内容が定義された画面要素を1画面要素とし、該画面要素を組み合わせて構成された画面要素推移体を記憶する画面要素推移記憶手段と、前記画面要素推移体を実行する画面要素推移体実行手段と、前記画面要素推移体の1画面要素で定義された動作表現動画の実行中に、車載装置又は使用者から所定の指示があった場合、当該実行中の動作表現動画を中断して次の画面要素を実行する即応モードと、当該実行中の動作表現動画が終了した後、次の画面要素を実行する品質モードと、を判断するモード判断手段と、を備えることを特徴とする車載装置を提供する。
請求項2記載の発明では、前記モード判断手段は、車載装置又は使用者から所定指示があった場合、実行中の動作表現動画画面要素で規定されているモードから、即応モードか品質モードかを判断することを特徴とする請求項1に記載の車載装置を提供する。
請求項3記載の発明では、前記モード判断手段は、車載装置又は使用者から所定指示があった場合、車載装置に規定されたテーブルに応じて、即応モードか品質モードかを判断する、ことを特徴とする請求項1に記載の車載装置を提供する。
請求項4記載の発明では、車載装置で実行される画面要素推移体を作成するデータ作成装置であって、基本姿勢状態から表現内容を示す所定姿勢状態までの開始動画、前記所定姿勢状態を保持する保持動画、前記所定姿勢状態から基本姿勢状態までの終了動画の少なくとも3つの動画からなる段階で規定されるキャラクタの動作表現動画を含む表示内容が規定された画面要素を1画面要素として作成する画面要素作成手段と、前記画面要素作成手段で作成された1画面要素から次の画面要素に移行するための移行条件を設定する移行条件設定手段と、前記画面要素及び前記移行条件に基づき車載装置で実行される画面要素推移体を作成する画面要素推移体作成手段とを備え、前記画面要素作成手段は、前記画面要素で定義された動作表現動画を実行中、車載装置又はその使用者からの所定指示がなされた場合に、キャラクタの動作表現動画を中断するか否かについてのモード、当該1画面要素に設定する動作中断設定手段を更に備えることを特徴とするデータ作成装置を提供する。
請求項5記載の発明では、前記動作中断設定手段は、実行中の動作表現動画中断して次の画面要素を実行する即応モード、実行中の動作表現動画を継続した後に次の画面要素を実行する品質モード、中断するか否かを車載装置側で判断する自動判断モードのいずれか1を設定する、ことを特徴とする請求項4に記載のデータ作成装置を提供する。
【0010】
【発明の実施の形態】
以下、本発明の車載装置の好適な実施形態であるエージェント装置、データ作成装置の好適な実施形態であるシナリオ作成装置、及びデータ作成プログラムの好適な実施形態であるシナリオエディタについて、図1から図37を参照して詳細に説明する。
【0011】
(1)実施形態の概要
本実施形態のエージェント装置では、所定の容姿からなるエージェント(キャラクタ)の画像(平面的画像、ホログラフィ等の立体的画像等)を車両内に表示する。そして、エージェント装置の機能である、センサ等の検出結果から周囲の状態(人の動きや音声を含む)を認識、判断し、その結果に応じた動作の動画や音声を出力するという機能を、このエージェントの容姿の動きや音声と連動して実行する。例えば、「どのジャンルの食事がすきですか」等の回答(和食、洋食等)を要求する問いかけと共に、首を傾ける動作を行う。そして、この問いかけに対するユーザの回答内容を判別(回答音声の認識や、回答選択ボタン54aの選択から判別)して、次のシーン(画面要素)に応じた処理を実行する。このように、装置からの回答を要求する問いかけと、その回答に応じて、所定の操作の実行を開始するので、ユーザは、あたかも擬似人格を備えたエージェントが車両内に存在しているような体感をするようになる。以下の説明では、このようなエージェント装置の一連の機能の実行を、エージェントの行為や動作として説明する。
【0012】
本実施形態のエージェント装置では、このエージェントに運転者との各種コミュニケーションや、操作の代行を行わせる。そしてエージェントが自律的に行う様々な行為(各行為)を複数のシナリオ(画面要素推移体)で構成する。そして、エージェントによる一連の連続した行為(動作を表す動画の再生と音声の出力、及びエージェンとの操作)の内容を規定した複数のシナリオと、各シナリオの展開を自律的に開始(起動)するための自律起動条件(起動条件)とにより規格化したシナリオデータを保存する。
変更する。
【0013】
シナリオは、シナリオ作成装置で作成され、シーン(画面要素)を基準の単位として、1又は連続する複数のシーンで構成される。自律的に行う処理内容とエージェントの動作を表す動画及び音声の少なくとも1つから構成される場面が1シーンである。各シーンの後にどのシーンに移行するかは移行条件により決まる。
【0014】
各シーンにおけるキャラクタの動作は、1又は複数の個別動作画像(キャラクタの動作表現)で構成され、個別動作画像は少なくとも1つ以上の完結した意味を表現可能な単位の動画である。この個別動作画像を、キャラクタの基本姿勢状態から所定姿勢の保持状態(所定状態)までの開始動画と、保持状態から所定範囲内での僅かな動作を行う保持動画と、保持状態から基本姿勢状態までの終了動画の3つで構成する。
このように、キャラクタの各個別動作画像を、基本姿勢状態から所定状態を経て基本状態に戻る動画により構成することで、動作の連続性を保つことができる。
そして、保持動画を繰り返すことで個別動作画像の再生時間の調整を行う。この場合、保持動画は手を振る、瞬きをする等の動作をした後、所定状態に戻るので、エージェントが動作中であることをユーザに認識させることができる。また、保持動画は保持状態の僅かな動きの場合には、保持動画を繰り返し再生している途中で中断して終了動画に移行しても画像のギャップが大きくなることがない。
また、品質よりも応答速度が重要な場合には、中断条件(車載装置又は使用者からの所定の指示(図13参照))を満たした場合に再生中の個別動作画像を中断して次の個別動作画像を再生することでキャラクタの応答を素早くすることができる。
【0015】
エージェント装置は、個別動作画像の再生中に中断条件が満たされた場合に、どのようにして後続の個別動作画像を再生するかを、シーン(画面要素)で規定された即応モード、品質モード、自動選択モードに応じて決定する。自動選択モードが選択されている場合には、各中断条件に対応して予め即応モード又は品質モードが規定されたテーブルから決定する。
【0016】
エージェント装置のユーザ等は、規定された規格に従って、独自のシナリオをシナリオ作成装置を使用して作成する。シナリオ作成装置は、シナリオ編集プログラムやデータをパーソナルコンピュータにインストールすることで構成することができる。
作成したシナリオは、インターネット等のネットワークを介してエージェント装置に送信し、又はダウンロードしてもらうことにより、また、所定の半導体メモリを介してエージェント装置に格納することで、自己(第三者)の希望通りの行為(コミュニケーションや処理)をエージェントに行わせることが可能になる。更に、作成したシナリオをメールに添付してエージェント装置に送信することも可能である。
このように、ユーザは自分の思い通りにエージェントを機能させるシナリオを独自にまた、容易に作成することが可能になるので、エージェント装置の自律的な動作に対する抵抗がなくなる。
シナリオ作成装置では、シナリオを作成する際に、各シーンにおける個別動作画像毎に中断条件と、中断後に後続個別動作画像に移行する際のモードを各シーンデータ中に規定することができるようになっている。
【0017】
(2)実施形態の詳細
図1は、エージェント装置とシナリオ作成装置からなる全体のシステム構成を表したものである。
このシステムでは、本実施形態のエージェント装置1と、指定された規格でシナリオデータを作成するユーザ又は第三者であるシナリオデータ作成者のシナリオ作成装置2と、サーバ3等を使用したインターネット等の通信手段から構成されている。
シナリオ作成装置2では、シナリオエディタにより独自のシナリオデータを作成する。そして、独自のシナリオデータを作成したユーザは、DVD−ROM、ICカード等の半導体記憶装置その他の記憶媒体7にシナリオデータを格納して、エージェント装置1に受け渡すことが可能である。そして、シナリオデータを受け取ったエージェント装置1では、記憶媒体駆動装置により記憶媒体7からシナリオデータを読み込んで、既に記憶しているシナリオデータに組み込むことで、シナリオ作成装置2で作成されたシナリオデータにしたがってエージェント装置1を動作させることが可能になる。なお、シナリオ作成装置2で作成するものは、エージェント装置1のユーザ自身でもよく、また、第三者でもよい。
また、エージェント装置1では、ユーザ自身や第三者が作成したシナリオデータを、インターネット等のネットワークを介して組み込み、また、メールに添付されたシナリオデータを組み込むことができる。
また、エージェント装置1のユーザに対してサービスの提供等を希望する第三者は、所定形式のシナリオデータを、例えば、シナリオエディタを使用してシナリオ作成装置2で作成し、ホームページに掲載してダウンロード可能にし、または電子メールの添付ファイルとしてエージェント装置1に送信する。エージェント装置1は、電子メールに添付されたシナリオデータ5を受信し、または、ユーザがサーバ3等の通信手段を介してシナリオデータファイル4をダウンロードするようになっている。また、エージェント装置1は、受信したシナリオデータの実行に従って取得されるユーザの回答(シナリオデータに対する回答メール)を、電子メール6の本文又は添付ファイルで、シナリオ作成者のシナリオ作成装置2に送信する。
【0018】
まず、開発者やユーザによって作成されたシナリオに従ってエージェントが自律的に機能するエージェント装置1について、その構成と動作を説明する。
図2は、本実施形態におけるエージェント装置1の構成を表したブロック図である。
本実施形態におけるエージェント装置1は、車両に搭載されおり、車両内のユーザとの間でコミュニケーションを行う機能や車両に対して所定の処理を行う車両制御機能等のエージェント機能の他、ユーザに走行経路の案内等を行うナビゲーション機能も備えている。
本実施形態のエージェント装置1では、エージェント機能及び、ナビゲーション機能を実現するための中央処理装置(1)、表示装置(2)、音声出力装置(3)、音声入力装置(4)、入力装置(5)、各種状況検出装置(6)、各種車載装置(7)、通信制御装置(8)、通信装置(9)、外部記憶装置(10)を備えている。
【0019】
中央処理装置(1)は、種々の演算処理を実行するCPU(1-1)、外部記憶装置(10)からプログラムを読み込んで格納するフラッシュメモリ(1-2)、フラッシュメモリ(1-2)のプログラムチェック、更新処理を行なうプログラム(プログラム読み込み手段)を格納したROM(1-3)、CPU(1-1)がワーキングメモリとして演算処理中のデータを一時的に格納するRAM(1-4)、短期感情要素の要素値を経時的に減少させるための時間経過を測定するためやその他の時間や時刻の計測に使用される時計(1-5)、表示装置(2)への画面表示に使用する画像データが記憶された画像メモリ(1-7)、CPU(1-1)からの表示出力制御信号に基づいて画像メモリ(1-7)から画像データを取り出し、画像処理を施して表示装置(2)に出力する画像プロセッサ(1-6)、CPU(1-1)からの音声出力制御信号をアナログ信号に変換して音声出力装置(3)に出力する処理と、音声入力装置(4)から入力されたアナログ信号をデジタルの音声入力信号に変換する処理を行なう音声プロセッサ(1-8)、入力装置(5)による入力内容を受け取る入力装置I/F部(1-9)、各種状況を検出するための検出器類から情報を受け取るための各種入力I/F部(1-10)、他の装置と情報のやり取りを行なう通信I/F部(1-11)、CD−ROMやICカード類、ハードディスク等といった外部記憶媒体(10-2)からデータ及びプログラムを読み込んだりデータを書き込んだりする外部記憶装置(10)を制御するための外部記憶装置制御部(1-12)を備えている。
【0020】
この中央処理装置(1)は、経路探索処理や、経路案内に必要な表示案内処理や、その他システム全体において必要な処理、本実施形態におけるエージェント処理(エージェントと運転者との各種コミュニケーションや操作代行、状況判断を行ないその結果に応じて自律的に行なう処理)を行うようになっている。
更新処理を行なうプログラム(プログラム読み込み手段)は、ROM(1-3)以外にもフラッシュメモリ(1-2)に格納するようにしてもよい。
本実施形態におけるプログラムを含め、CPU(1-1)で実行される全てのプログラムは、外部記憶媒体(10-2)であるCD−ROM等に格納されてもよいし、それらプログラムの一部または全てが本体側のROM(1-3)またはフラッシュメモリ(1-2)に格納するようにしてもよい。
この外部記憶媒体(10-2)に記憶されたデータやプログラムが外部信号として中央処理装置(1)に入力されて演算処理されることにより、種々のエージェント機能及びナビゲーション機能が実現されるようになっている。
また、本実施形態の中央処理装置(1)は、起動条件(自律起動条件)を満たしていると判断された場合、画面要素推移体(シナリオ)を実行する、画面要素推移体実行手段を形成している。
【0021】
表示装置(2)は、中央処理装置(1)の処理による経路案内用の道路地図や各種画像情報が表示されたり、キャラクタの各種行動(動画)及び画面構成のパーツで構成された画面要素推移体(シナリオ)が表示されたりするようになっている。表示装置(2)には、液晶表示装置、CRT等の各種表示装置が使用される。なお、この表示装置(2)は、例えばタッチパネル等の、入力装置(5)としての機能を兼ね備えたものとすることができる。
音声出力装置(3)は、中央処理装置(1)の処理によって声による経路案内を行なう場合の案内音声や、エージェントによる運転者との通常のコミュニケーション用の会話や運転者情報取得のための質問による音声や音が出力されるようになっている。音声出力装置(3)は、車内に配置された複数のスピーカで構成されている。これらは、オーディオ用のスピーカと兼用するようにしてもよい。
【0022】
音声入力装置(4)は、運転者の音声を的確に収集するために指向性のある専用のマイクが使用されたりする。この音声入力装置(4)から入力されたアナログ信号を変換したデジタルの音声入力信号を使ってCPU(1-1)で音声認識処理が実行されるようになっている。
音声認識の対象となる音声としては、例えば、ナビゲーション処理における目的地等の入力音声や、エージェントとの運転者の会話(運転者による応答を含む)等があげられ、音声入力装置はこれらの音声を入力する音声入力手段として機能する。
なお、音声認識が必要なシーンか否かについては各シーンデータにおいて、音声認識の指示が設定されている。そして、音声認識の指示が設定されているシーンのシーンデータには、音声認識の対象となる音声を認識するための辞書が指定されている。
シナリオには、この音声認識の結果(運転者の応答結果)に応じて、エージェントの感情要素の要素値の変更指示が規定されている場合がある。
【0023】
入力装置(5)は、目的地を設定する際に電話番号や地図上の座標などにて入力したり、目的地までの経路探索や経路案内を要求(リクエスト)するために使用される。また、入力装置(5)は、運転者情報を運転者が入力する場合や、エージェント機能の使用を開始する場合のトリガとしてとして使用される。さらに入力装置(5)は、エージェント機能による、エージェントとのコミュニケーションにおいて、エージェントからの問い合わせ等に対して運転者が応答するための1つの応答手段としても機能するようになっている。
入力装置(5)には、タッチパネル(スイッチとして機能)、キーボード、マウス、ライトペン、ジョイスティックなどの各種の装置が使用可能である。
また、赤外線等を利用したリモコンと、リモコンから送信される各種信号を受信する受信部を備えてもよい。
また、上記の音声入力装置(4)を使った音声認識を入力装置の代わりに使用しても良い。
【0024】
図3は、各種状況検出装置(6)の構成を表したブロック図である。
この各種状況検出装置により、車載の各種状況を検出する状況検出手段が構成される。
各種状況検出装置(6)は、現在位置検出装置(6-1)と、交通状況情報受信装置(6-2)と、運転操作等の状況を検出するためにブレーキ検出器(6-3)と、サイドブレーキ(パーキングブレーキ)検出器(6-4)と、アクセル開度検出器(6-5)と、A/Tのシフト位置検出器(6-6)と、ワイパ検出器(6-7)と、方向指示器検出器(6-8)と、ハザード検出器(6-9)と、イグニッション検出器(6-10)を備えている。上記構成により、各種状況及び条件を検出することにより、検出手段が形成される。
また、各種状況検出装置(6)は、車両の速度(車速情報)を検出する車速センサ(6-11)を備えており、該車速センサが検出した車速が0か否によって走行中であるか否かを判断することにより、走行判断手段が形成される。
【0025】
現在位置検出装置(6-1)は、車両の絶対位置(緯度、経度による)を検出するためのものであり、人工衛星を利用して車両の位置を測定するGPS(Global Positioning System)受信装置(6-1-1)と、GPSの補正信号を受信するデータ送受信装置(6-1-2)と、方位センサ(6-1-3)と、舵角センサ(6-1-4)と、距離センサ(6-1-5)等が使用される。
距離センサ(6-1-5)と舵角センサ(6-1-4)は運転操作状況検出手段としても機能する。
【0026】
交通状況情報受信装置(6-2)は、道路の混雑状況等を検出するためのものである。
交通状況情報受信装置(6-2)は、路上に配置されたビーコンから情報を受信するビーコン受信装置(6-2-1)と、FM放送電波を用いて情報を受信する装置(6-2-2)等が使用され、これらを用いて交通情報センターから渋滞情報や、交通規制情報等を受信する。
また、ビーコン受信装置(6-2-1)を現在位置検出手段として、現在位置検出装置(6-1)と併用してもよいものとする。
【0027】
ブレーキ検出器(6-3)は、フットブレーキが踏み込み状態か否かを検出する。
サイドブレーキ(パーキングブレーキ)検出器(6-4)は、運転者がサイドブレーキを操作中か否か、及びサイドブレーキの状態(ONかOFFか)を検出する。
アクセル開度検出器(6-5)は、運転者がアクセルペダルをどれぐらい踏み込んでいるかを検出する。
シフト位置検出器(6-6)は、運転者がA/Tのシフトレバーを操作中か否か、及びシフトレバー位置を検出する。
ワイパ検出器(6-7)は、運転者がワイパを使用しているか否かを検出する。
【0028】
方向指示器検出器(6-8)は、運転者が方向指示器の操作中であるか否か、及び方向指示器が点滅中か否かを検出する。
ハザード検出器(6-9)は、運転者がハザードを使用している状態か否かを検出する。
イグニッション検出器(6-10)は、イグニッションスイッチがONになっているか否かを検出する。
車速の検出には距離センサ(6-1-5)を使用することもできる。
各種状況検出装置(6)は、機器操作状況検出手段としてこれらの他にも、ヘッドランプやルームランプ等のランプ類の操作状況を検出するライト検出センサ、運転者のシートベルト着脱操作を検出するシートベルト検出センサ、その他のセンサを備えている。
【0029】
GPS受信装置(6-1-1)と、データ送受信装置(6-1-2)と、交通情報受信装置(6-2)は、図2の通信装置I/F部(1-11)に接続され、他は各種入力I/F部(1-10)に接続されている。
【0030】
図2において、通信装置I/F部(1-11)には、他にも通信制御装置(8)が接続できるようになっている。この通信制御装置(8)には、通信装置(9)(各種無線通信機器からなる携帯電話等)が接続されるようになっている。
これらを使って、電話回線による通話の他、例えば車内での通信カラオケのために使用するカラオケデータを提供するような情報提供局、交通情報を提供する情報基地局との通信や、エージェント処理に用いるシナリオデータを提供する情報提供局との通信ができるようにすることも可能である。
【0031】
本実施形態において中央処理装置(1)は、通信制御装置(8)を介してシナリオが添付された電子メールを受信することができるようになっている。
また、中央処理装置(1)には、インターネット上のホームページを表示するブラウザソフトを組み込み、CPU(1-1)で処理させることが可能であり、通信制御装置(8)を介してホームページからシナリオを含めたデータをダウンロードすることができるようになっている。
なお、通信制御装置(8)は、通信装置(9)と一体になったものを使用してもよい。
【0032】
また、中央処理装置(1)は、通信I/F部(1-11)を通して車内通信を行なうことで他の車載装置(7)の操作状況を受け取ったり、また、車載装置に対する各種制御を行うようになっている。
例えば、中央処理装置(1)は、各種車載装置(7)であるエアコン装置の設定温度を上げる、下げるといったようにエアコン装置を制御を行う。また、オーディオ装置から運転者がラジオ、CDプレーヤ、カセットプレーヤー等のオーディオ機器の出力音量を上げる、下げるといったようにオーディオ装置の制御を行うようになっている。これらの車載装置に対する制御は、シナリオにおいて車載装置に対する制御が規定されている場合に、シナリオの実行に伴って行われる。
【0033】
外部記憶装置(10)は、外部記憶媒体駆動部(10-1)とその外部記憶媒体(10-2)を備えている。外部記憶装置(10)は、CPU(1-1)からの指示で外部記憶装置制御部(1-12)による制御のもとで外部記憶媒体(10-2)からデータやプログラムの読み込み、及び外部記憶媒体(10-2)へのデータやプログラムの書き込みを行うようになっている。
外部記憶媒体(10-2)には、例えば、フレキシブルディスク、ハードディスク、CD−ROM、DVD−ROM、光ディスク、磁気テープ、ICカード類、光カード等の各種記憶媒体が使用され、使用する媒体毎にそれぞれの外部記憶媒体駆動装置(10-1)が使用される。
【0034】
外部記憶装置(10)は、システムにおいて複数個所持してもよいものとする。例えば、収集した個人情報である、運転者情報データ(10-2-3-6)と、学習項目データ及び応答データ(10-2-3-7)を持ち運びが容易なICカードやフレキシブルディスクで構成し、その他のデータをDVD−ROMで構成するといった例が考えられる。こうすることで、他の車両を運転する場合にこれらを記憶させたICカードからデータを読み出させて使用し、ユーザが過去に応対した状況を学習した状態のエージェントとコミュニケーションすることが可能になる。つまり、車両毎のエージェントではなく、運転者毎に固有な学習内容のエージェントを車両内に出現させることが可能になる。
また、シナリオデータ+シナリオで使用する画像データ(10-2-3-4)を一例としてDVD−ROMで持つ構成にした場合でも、ICカードを使って追加することも可能になっている。
これにより、ユーザ各自にとって固有のオリジナルシナリオを加えることが可能である。
このように、画面要素推移体(シナリオ)及び画面要素推移体の起動条件を外部から記憶することにより、本願発明の画面要素推移記憶手段が形成され、キャラクタ画像を含む画面構成、及び、キャラクタの表示を含んで実行する制御内容を記憶することにより、本願発明の記憶手段が形成される。
【0035】
CPU(1-1)は各種エージェント機能やナビゲーション機能を実現するプログラム(10-2-1)や、演算処理に使用するエージェントデータ(10-2-3)とナビゲーションデータ(10-2-2)を、上記構成例で示すDVD−ROMやICカード等から別の外部記憶装置(例えばハードディスク装置等)に格納(インストール)し、この記憶装置から必要なプログラム等をフラッシュメモリ(1-2)に読み込んで(ロードして)実行するようにしてもよいし、演算処理に必要なデータをこの記憶装置からRAM(1-4)に読み込んで(ロードして)実行するようにしてもよい。
【0036】
次に、本発明におけるプログラムを含めたCPU(1-1)で実行されるプログラムの構成について説明する。
図4は、CPU(1-1)でプログラムが実行されることにより実現されるエージェント処理部(101)と、全体処理部(102)との関係を表したものである。
本実施例では、種々のナビゲーション機能を実現する全体処理部(102)に、エージェント機能を実現するエージェント処理部(101)を加えることでエージェント機能付きナビゲーション装置を実現する構成になっている。
【0037】
エージェント処理部(101)と全体処理部(102)は、互いの処理データをやり取りするためのI/F部をそれぞれが持っており、互いの処理データを取得し合えるようになっている。
例えば、エージェント処理部(101)は、シナリオデータに従って運転者とのコミュニケーションを実行した結果、運転者が設定したい目的地データを取得した場合に、このデータを全体処理部(102)に供給するようになっている。
全体処理部(102)では、取得した目的地データにより経路探索をし、作成した走行経路データに基づく経路案内を行なう。この経路案内処理において、画像や音声による進路変更方向等の案内を行なう場合に、案内に必要なデータを全体処理部(102)からエージェント処理部(101)に供給し、走行経路案内をするシナリオをデータ化したシナリオデータに従ってエージェントが案内することも可能である。
【0038】
図5は、エージェント処理部(101)の構成を表したものである。
エージェント処理部(101)は、シナリオ駆動部(101-1)と、自律起動判断部(101-2)と、学習部(101-3)と、キャラクタ心理部(101-4)と、描画・音声出力部(101-5)と、音声認識部(101-7)と、エージェントOS部(101-8)と、外部I/F部(101-9)とを備えている。
シナリオ駆動部(101-1)は、シナリオデータ(10-2-3-4)を読み込み、そのシナリオデータに基づいて各処理部にメッセージ通信等を使って指示(各処理部が提供する機能を使用)する。シナリオ駆動部(101-1)は、シナリオの実行を管理し運転者に各種エージェント機能を提供するといったエージェント処理部の中心的な処理を行う。
【0039】
自律起動判断部(101-2)は、シナリオデータ(10-2-3-4)にある各シナリオの自律起動条件データを保持し、エージェントOS部(101-8)から出力される定期的な自律起動判断指示により、時間、車両が位置する場所、一般道や高速道路といった道路種別、走行中や停車中等の車両状態、ナビゲーション装置の操作中や案内中等の稼働状態等の各種条件と各種状況との比較、判断を行なっている。
条件が一致した場合に、自律起動判断部(101-2)はシナリオ駆動部(101-1)に対し、条件が一致したシナリオの実行要求の指示を出す。
自律起動条件と比較するための各種状況はエージェントOS部(101-8)及び学習部(101-3)から入手している。
【0040】
図5の学習部(101-3)は、エージェントとのコミュニケーションにおいて運転者の選択や応答によって入手した項目(実行結果や実行履歴)を運転者情報データ(10-2-3-6)や、学習項目データ及び応答データ(10-2-3-7)として格納する。学習部(101-3)は、シナリオが異なるシーンで終了する場合の終了の仕方を示すエンドIDも入手して応答データ(10-2-3-7)として格納する。これら入手した項目は、RAM(1-4)上に格納されているが、外部記憶媒体(10-2)であるICカード等にも出力できるようになっている。
また、学習部(101-3)は、エージェントOS部(101-8)から状況の変化を入手して運転操作に関する情報を記録する。例えば、運転者による乗車時間帯や、乗車頻度等の各種状況を判断するために、電源ON(イグニッションON)の日時を過去10回分記憶しておいたりもする。格納された情報は、例えばシナリオ駆動部(101-1)に提供されシナリオの展開に変化を与えるために使用されたり、自律起動判断の比較に使用されたりする。
なお、本実施形態における学習部(101-3)は、運転者情報の保持・参照も兼務しているが、運転者情報部として独立させてもよい。
【0041】
キャラクタ心理部(101-4)は、エージェントOS部(101-8)が管理している現在状況を入手し、後述する長期的感情変化条件と短期的感情変化条件(図8、図10)に基づき、キャラクタの心理状態を長期的感情要素と短期的感情要素を自律的に変更する。
またキャラクタ心理部(101-4)は、エージェントOS(101-8)から、シナリオにおけるメンタルモデル変更指示(キャラクタの感情要素値変更の指示)を入手し、変更指示に応じて長期的感情要素と、短期的感情要素を変更する。
【0042】
描画・音声出力部(101-5)は、シナリオ駆動部(101-1)からの指示で選択ボタンやタイトル等のパーツから構成される画面を表示するための制御信号を作成する。また、シナリオ駆動部(101-1)からの指示で、シーンデータによる表示状態に対応するキャラクタの各種行動(動作)を表示するための制御信号も作成する。
本実施形態では、これらの制御信号は、エージェントOS部(101-8)に伝わり外部I/F部(101-9)から全体処理部(102)に伝わり、全体処理部(102)内にある画像プロセッサへの指示を行なう処理部を通して画像プロセッサ(1-6)へ伝わり画像処理を施し表示装置(2)に表示されるが、全体処理部(102)を通さずにエージェントOS部(101-8)において画像プロセッサへの指示を行なう処理部を持たせるようにしてもよい。
【0043】
描画・音声出力部(101-5)は、また、シナリオ駆動部(101-1)からの指示でエージェントが運転者とコミュニケーションを行なう際の台詞を出力するための制御信号を作成する。
本実施形態では、これらはエージェントOS部(101-8)に伝わり外部I/F部(101-9)から全体処理部(102)に伝わり、全体処理部(102)内にある音声プロセッサへの指示を行なう処理部を通して音声プロセッサ(1-8)へ伝わり、この音声出力制御信号をアナログ信号に変換して音声出力装置(3)に出力されるが、全体処理部(102)を通さずにエージェントOS部(101-8)において音声プロセッサへの指示を行なう処理部を持たせるようにしてもよい。
なお、本実施形態の描画・音声出力部(101-5)は、各シーンにおけるキャラクタの動作描画機能と音声出力機能を備えているが、描画部(描画機能部)と、音声出力部(音声出力機能部)とを別々に構成するようにしてもよい。
【0044】
音声認識部(101-7)は、シナリオ駆動部(101-1)からの指示により、全体処理部(102)中の音声認識処理部に音声認識辞書を作成させるための制御信号を発する。また、音声認識部(101-7)は、シナリオ駆動部(101-1)からの指示で音声認識処理を開始させたり停止させたりする制御信号も発する。
本実施形態では、これらはエージェントOS部(101-8)に伝わり外部I/F部(101-9)から、全体処理部(102)内にある音声認識処理部に伝えられる。
この音声認識処理部は、音声認識処理を開始する指示及び停止する指示を、音声プロセッサ(1-8)に伝え、音声プロセッサ(1-8)は音声入力装置(4)から入力されたアナログ信号をデジタルの音声入力信号に変換する処理を行なうことになっている。
音声入力信号が入力されると、音声認識処理部は、前記デジタルの音声入力信号を取得し、それをもとに音声認識処理部は認識処理を行ない、その結果は先ほどの経路と逆の流れで音声認識部(101-7)に伝えられる。音声認識部(101-7)は、音声認識結果をシナリオ駆動部(101-1)に通知する。
以上の構成により、音声を認識する音声認識手段が形成される。
【0045】
エージェントOS部(101-8)は、時間、場所、各種入力等の状況の変化(シナリオの追加も含む)を取得して現在の状況を管理し、状況の変化に対して必要に応じてメッセージ通信にて、キャラクタ心理部(101-4)等の各処理部に通知する。状況の変化は、外部I/F部(101-9)を通して全体処理部(102)から供給されたり、問い合わせたりして入手する。
入手される情報は、各種状況検出装置(6)による検出結果等を、各種入力I/F部(1-10)と、通信I/F部(1-11)より取り込みRAM(1-4)に書き込まれたものである。入力装置(5)を使って入力された内容も、外部I/F部(101-9)を通して全体処理部(102)から供給され、その内容を必要に応じてメッセージ通信にて各処理部に通知する。
また、エージェントOS部(101-8)は、他にも各種のライブラリを持っており、各処理部の間でデータのやり取りなどを行なうメッセージ通信の提供、及び現在時刻の提供、メモリの管理を行ない各処理部が処理を行なう際に必要なメモリの提供、外部記憶媒体からのデータ読み込みや書き込み機能の提供などを行なう。
【0046】
またエージェントOS部(101-8)は、時計(1-5)から取得する時刻情報を用いて時間に関する処理を行ないタイマーの役割をして特定時間の経過通知を行うようになっている。すなわち、エージェントOS部(101-8)は、計時手段として機能し、シナリオの各シーンにおいて設定されたタイマー設定時間を計時する。計時開始と計時するタイマー設定時間は、シナリオ駆動部(101-1)から通知され、タイマー設定時間が経過するとエージェントOS部(101-8)は、設定時間が経過したことをシナリオ駆動部(101-1)に通知する。
また、エージェントOS部(101-8)は、キャラクタ心理部(101-4)からの、短期的感情要素の変化の通知により計時を開始し、所定時間(例えば、3分)経過毎にキャラクタ心理部(101-4)に経時情報を通知する。キャラクタ心理部(101-4)では、経時情報が通知される毎に、短期的感情要素の値を所定値(例えば、「3」)ずつ減少させ、要素値が「0」になったら、計時終了の指示をエージェントOS部(101-8)に通知する。
【0047】
エージェントOS部(101-8)は、自律起動判断部(101-2)に対して、定期的に自律起動判断指示を出すようになっている。この定期的な自律起動判断指示は、所定時間毎に出される。所定時間としては、定期的に出される自律起動判断指示によって定期的に処理される自律起動判断処理が、中央処理装置(1)全体の他の処理に影響しない範囲でできるだけ短い時間であることが望ましく、本実施形態では5秒間隔に設定されている。この所定時間は入力装置(5)からの操作によってユーザが当該所定時間を任意に変更することができるようにしてもよい。
また、エージェントOS部(101-8)は、状況の変化が大きいと判断された場合にも、自律起動判断部(101-2)に対して、自律起動判断指示を出すようになっている。状況の変化が大きいとされる場合とは、例えば運転者が目的地設定を行なった場合、案内経路から車両がはずれた場合、シナリオデータが追加された場合、シナリオデータが削除された場合等であり、予め該当する項目が規定されRAM(1-4)等に記憶されている。
【0048】
外部I/F部(101-9)は、エージェント処理部(101)と全体処理部(102)との間のインターフェースになっている(全体処理部(102)には受け手であるエージェントI/F部が存在する)。エージェント処理において利用するナビゲーション情報等各種情報の取得と、エージェント処理部から全体処理部に制御信号を伝えてナビゲーションを制御したりする。
この外部I/F部(101-9)を通して全体処理部(102)に通知して行なっている、画像プロセッサ(1-6)への描画指示や、音声プロセッサ(1-8)への音声出力指示、入力装置I/F部(1-9)からの入力情報の取得等、他プロセッサ及びI/F部への指示を行なう処理部をエージェント処理部に持たせ直接指示をしたり情報を取得したりするようにしてもよい。
【0049】
図4における全体処理部(102)は、図示しないが地図描画部、経路探索部、経路案内部、現在位置計算部、目的地設定操作制御部等からなりナビゲーションの信号出力処理を行なうアプリケーション部、及び地図表示や経路案内に必要な表示出力制御、音声案内に必要な音声出力制御を行なうためのプログラム等のOS部等で構成されている。
また、この全体処理部(102)には音声認識を行なう音声認識処理部、テキストデータを音声データに変換する処理部も存在する。ブラウザ機能やメール機能を追加する場合の当該処理部はこの全体処理部(102)に追加される。
もしくは、エージェント処理部(101)がブラウザ機能やメール機能を持つような構成にしてもよい。
また、本実施形態ではエージェント処理を実行するための拡張機能が全体処理部(102)に加えられている。この拡張機能には、例えばナビゲーションデータの中にある道路データと現在位置から、走行中の道路の種別(高速道路、国道、等)を検出する手段や走行中の道路のカーブ状況(カーブ手前、カーブ終了)を検出する手段等が存在する。
これら検出された状況は、エージェント処理部に伝えられ、例えば、エージェントの感情要素の変更等に使用される。
【0050】
次に、外部記憶媒体(10-2)に格納されているデータ構成(プログラムを含む)について説明する。
図6は、外部記憶媒体(10-2)に集録されている情報を概念的に表したものである。
外部記憶媒体(10-2)には本実施形態による各種エージェント機能やナビゲーション機能を実現するプログラム(10-2-1)、及び必要な各種データとして、エージェントデータ(10-2-3)とナビゲーションデータ(10-2-2)が格納されている。
ナビゲーションデータ(10-2-2)は、地図描画、経路探索、経路案内、目的地設定操作等に必要な各種データで構成されている。例としては、経路案内に使用される地図データ(道路地図、住宅地図、建造物形状地図等)、交差点データ、ノードデータ、道路データ、写真データ、登録地点データ、目的地点データ、案内道路データ、詳細目的地データ、目的地読みデータ、電話番号データ、住所データ、その他のデータのファイルからなりナビゲーション装置に必要な全てのデータが記憶されている。また、必要に応じて通信地域データ等も記憶される。
【0051】
エージェントデータ(10-2-3)は、メンタルモデルデータ(10-2-3-1)と、お勧め提案データ(10-2-3-3)と、知識データ(10-2-3-2)と、シナリオデータ(10-2-3-4)と、キャラクタデータ(10-2-3-5)と、運転者情報データ(10-2-3-6)と、学習項目データ及び応答データ(10-2-3-7)と、動作切り替え判断データ(10-2-3-8)で構成されている。
【0052】
図7は、メンタルモデルデータ(10-2-3-1)の内容を概念的に表したものであり、長期的感情要素10-2-3-1a、長期的感情変化条件10-2-3-1b、短期的感情要素10-2-3-1c、短期的感情変化条件10-2-3-1dが格納されている。
長期的感情要素10-2-3-1aと短期的感情要素10-2-3-1cは、キャラクタの心理状態を表す要素値が格納されている。長期的感情変化条件10-2-3-1bと短期的感情変化条件10-2-3-1dは、各種状況検出装置(6)の検出値や、ナビゲーション機能によるデータによって、各感情要素の値を変化させるための条件と、その変化値が格納されている。
この変化条件に対応する変化値、及び、シナリオによる感情要素の変化指示の値によって、長期的感情要素10-2-3-1a、長期的感情変化条件10-2-3-1bの感情要素値が変更される。
【0053】
図8は、長期的感情要素10-2-3-1aを概念的に表したものである。
図8に示されるように、長期的感情要素10-2-3-1aは、友好度,従順度,自信度,モラル,元気度の各要素で表され、各感情要素値は、例えば、0〜100の値で表されるようになっている。長期的感情要素の数は、本実施形態では5つを採用しているが、その他の要素を加え、また、省略することで他の所定数としてもよい。
各要素の値はそれぞれ独立して、0〜100までの間で変化する。
長期的感情要素10-2-3-1aは、10-2-3-1bに記述された変化条件を満たした場合、及び、実行されているシナリオにおいて短期的感情変化の指示がされている場合に、それぞれ対応する値だけ変化する(更新される)。
【0054】
長期的感情要素10-2-3-1aは、各感情要素ともに基準値が50で、それより高くなるとその状態が強いことを表し、低くなると状態が弱いことを表している。
そして、シナリオによる分岐条件(移行条件)に対応して、各要素値が図8(b)に示されるように、「とても低い」「低い」「普通」「高い」「とても高い」の5段階に分割されている。なお、「とても低い」と「とても高い」を除いた3段階(各々の要素値の幅=10)としてもよい。また分割した各要素の範囲については、エージェント装置のユーザが設定値を変更できるようにしてもよい。本実施例は、感情要素の変化が出にくい(普通の領域を多く設定している)が、均等に割り当てるなど、本実施例と異なる配分にしても良い。
シナリオ作成装置において、5つの長期的感情要素をシーン分岐に使用することができ、個々の感情要素値を単独で使用してもよいが、複数の感情要素値を組み合わせて、シーン分岐条件(移行条件)に使用するもできる。
例えば、エージェントが挨拶するときに元気よくしゃべるときの条件を友好度が高いだけの場合にするよりも、友好度と元気度の両方高い場合とすると、より人間らしさを表現することができる。
【0055】
特に図示しないが、長期的感情変化条件10-2-3-1bの規定内容としては、ナビゲーション機能、車両状態等の状態や変化による条件の説明(項目の欄)と、その場合に変化する感情要素の変化値が規定されている。
例えば、「車両が急加速したとき、エージェントの感情が変化する(友好度とモラルが−1される)」等の規定が存在する。
長期的感情変化条件10-2-3-1bに規定されている各長期的感情要素の変化値は、長期的な感情を変化させるものであるため、全体の変化範囲に対して数パーセント以下の値で変化することが望ましい。
【0056】
図9は、短期的感情要素10-2-3-1cを概念提供に表したものである。
この図9に示されるように、短期的感情要素には、喜び、怒り、哀しみ、驚きの4要素から構成されている。短期的感情要素の数は、本実施形態では4つを採用しているが、その他の要素を加え、また、省略することで他の所定数としてもよい。
短期的感情要素10-2-3-1cの各値は0から100の値で変化し、各要素のうちの1つの要素のみが0より大きい値を取る。すなわち、ある感情要素が、新たに0から所定値(例えば、50)に変化した場合、その変化前に値を有していた他の感情要素は0に変化する。
このように短期的感情要素は、ある状況や状態に対応してその時点で短期的にエージェントが持つ感情なので、長期的感情要素のように以前の値が影響したり蓄積したるするものではなく、1つの要素のみが値をとるようになっている。すなわち、複数の短期的感情が並立しないようにすることで、より人間らしさが表現されるようになっている。
但し、その他の変化を規定してもよい。例えば、要素Aが50の変化をしようとした場合、変化前の他の要素Bが50以下であれば要素Aが50に変化するが、変化前の要素Bが5より大きければ要素Aは変化しないようにする。この場合、変化前の要素Bの値と、変化しようとする要素Aの値ののうち、値が大きい要素に対して、小さい方の値を引いた値に変化するようにしてもよい。例えば、要素Aが50で要素Bが80であれば、要素Aは0のままで要素Bが30に減少し、要素Aが90で要素Bが40であれば要素Aは50に変化し要素Bが0に変化する。
【0057】
短期的感情要素10-2-3-1cは、10-2-3-1dに記述された変化条件を満たした場合、及び、実行されているシナリオにおいて短期的感情変化の指示がされている場合に、それぞれ対応する値だけ変化する(更新される)。
また、新たに変化した短期的感情要素の値は、時間の経過とともに減少して最終的に0になる。例えば、感情が持続する時間を最大で1時間と規定すると、値が最大値100から最小値0に減少する時間が1時間ということになるので、3分毎に値が5ずつ減少することになる。但し、所定時間t単位で所定値nづつ変化するように設定変更するようにしてもよい。
このように短期的感情要素10-2-3-1cの各感情要素の値は、瞬間的に感情的高ぶりが発生し時間と共に治まる、という人間の感情に対応して、全体の変化範囲に対して最大100パーセントまでの大きな値で変化し、所定時間t間隔で徐々に所定値nづつ減少する。これによりエージェントの短期的変化をより人間に近くすることができる。
【0058】
短期的感情要素10-2-3-1cの各感情要素の中で値が0より大きなもの(例えば、喜び)があるとき、エージェントの短期的感情はその値の要素(喜び)になる。全ての短期的感情要素がすべて0の場合、エージェントの短期的感情は「普通」ということになる。
短期的感情要素10-2-3-1cの各感情要素の基準値は0で、それより高くなるにつれてその状態が強いこと表している。
短期的感情要素10-2-3-1cは、シナリオによる分岐条件(移行条件)に対応して、図9(b)に示されるように、「小」「中」「大」の3段階に分割されている。なお、「とても小さい」と「とても大きい」を加えた5段階(各々の要素値の幅=20)としてもよい。また分割した各要素の範囲については、エージェント装置のユーザが設定値を変更できるようにしてもよい。
【0059】
特に図示しないが、短期的感情変化条件10-2-3-1dの規定内容としては、ナビゲーション機能、車両状態等の状態や変化による条件の説明(項目の欄)と、その場合に変化する感情要素の変化値が規定されている。
例えば、「シナリオが強制終了されると、エージェントの感情が変化する(哀しみが+30される)」等の規定が存在する。
【0060】
短期的感情変化条件10-2-3-1dに規定されている短期的感情要素の変化値は、長期的感情変化条件のようにマイナスの値をとることはなく、全てプラスの値である。また上述したように、全体の変化範囲(本実施形態では0〜100)に対して最大100パーセントまでの大きな値(本実施形態では30、70、100)が規定されている。
【0061】
図6において、お勧め提案データ(10-2-3-3)は、運転者にお勧め情報としてレストラン等を提案する場合に使用する。このお勧め提案データ(10-2-3-3)にはレストラン名称、読み上げデータ、レストランのジャンルデータ、雰囲気データ、料金データ、地点データ、…等で構成され運転者情報データ(10-2-3-6)及び知識データ(10-2-3-2)を基にして運転者にお勧めのレストランを検索して提案したりする。レストラン以外にも観光地、休憩場所などが存在する。
知識データ(10-2-3-2)は、統計データを基に年齢、性別による好みの傾向や、同乗者の有無によるシチュエーションによる選択傾向、場所による名産等を含んだ選択傾向、時期や時間による選択傾向をデータ化したものである。レストランの選択傾向、観光地の選択傾向、休憩場所の選択傾向、…等さまざまな選択傾向が存在する。
【0062】
シナリオデータ(10-2-3-4)は、エージェントが運転者とのコミュニケーションを取ったりする時の、状況に応じたエージェントの行為や質問内容、どういった状況において自律的にエージェントから情報提供を行なうのかといった条件、車両の走行に対してそのシナリオの実行をどのように扱うのかについて規定した走行中実行条件等が規定されている。
シナリオデータ(10-2-3-4)には、キャラクタとは別に表示する画像データ(後述するシーン表示画面54(図14参照)に表示する画像データ)も保存される。
【0063】
図10は、実機形式シナリオデータの構成を表したものである。
シナリオデータ(10-2-3-4)は、複数のシナリオで構成されており、それらを管理するためのデータと、個々のシナリオの内容を示すデータとで構成されている。
集録シナリオの管理データには、このシナリオデータの有効期限、作成された日や作成者等といった情報と、シナリオデータに収録されている個々のシナリオを全体的に管理するためのデータ(シナリオ番号、シナリオ名称、優先順位(プライオリティ))と、シナリオファイルに収録されているシナリオの自律起動条件データと、シナリオファイルに収録されているシナリオの中で運転者が入力装置(5)等を使って手動起動させることができるシナリオ一覧データが記されている。
【0064】
個々のシナリオの内容を示すデータには、それぞれのシナリオを管理する管理データと、シナリオを構成する個々のシーンの内容を示すシーンデータとで構成されている。
それぞれのシナリオを管理するデータ(「このシナリオの管理データ」)には、シナリオに関する情報と、このシナリオで使用する音声認識辞書を作成するためのテキスト情報と、シナリオを構成する各シーンデータを全体的に管理するためのデータが記されている。
【0065】
また、シナリオの管理データには、スタンバイ処理を行うか否かを判断するデータが格納されている。スタンバイ処理は、自動起動の場合にスタンバイ状態により待機するスタンバイシーンを展開する処理である。
このスタンバイ状態は、シナリオ実行の告知と、実行してもよいか否かの確認をエージェントが行うことで、ユーザがエージェントとのコミュニケーションの準備ができるまでシナリオの実行を待機させる状態である。例えば、地図の右上に小さいエージェントが登場し、「私にタッチしたら、お勧めの食事の場所を御紹介します。」とユーザに話し掛け、スタンバイ状態に入る。ユーザがエージェントにタッチすると、コミュニケーションモードになり、「進行方向の2km先に、○○屋があります。味に定評があるとんかつ屋です。ここに寄って行きますか?」と伝えるシナリオが展開される。
シナリオ実行の際にスタンバイ状態に移行するか否かは、ユーザが選択できるようになっている。
【0066】
シーンには画面や音声が出力される通常シーン、画面や音声が出力されない分岐シーン、通常シーンの一部が利用されるクローンシーン、及びダミーシーンがある。
通常シーンはシーンを管理する管理データと、画面構成データと、キャラクタ動作データと、各種処理データと、展開管理データとで構成されている。
一方、分岐シーンは、シーンを管理する管理データと、展開管理データとで構成されている。
【0067】
シーンを管理するデータには、そのシーンに関する情報とシーンデータに属する各データセクションを管理するデータが記されている。
画面構成データには、このシーンにおいて表示装置(2)に表示する画面構成の各パーツのデータ(大きさや表示位置等)が記されている。
キャラクタ動作データには、このシーンにおいてキャラクタが行なう動作の指示データと、話す内容に関する指示データが記されている。動作の指示データには、シナリオデータで直接各キャラクタの表現手段で指示するものと、キャラクタに表現させたい状態で指示するものの2種類のうちどちらかで指示データが記されている。この指示データで指示されている動作に対応する動画がキャラクタの動作として再生される。
各種処理データには、このシーンにおいて外部機器を制御(処理をさせる)する情報や、ナビゲーションを制御する情報や、他のシナリオを実行する指示や、タイマー設定情報や、キャラクタ心理を示すメンタルモデルの感情要素値を変化させる情報等が記されている。
外部機器とは通信I/F部(1-11)に接続されている各機器等があり、例えば通信制御装置がある。制御する内容は、特定の電話番号に電話をかける処理や、通話を切断する処理等がある。
ナビゲーションの制御内容には、例えばこの地点を目的地に設定するといったものが存在する。
メンタルモデルの感情要素値を変化させる指示としては、長期的感情要素の「友好度」を1減少する、短期的感情要素の「喜び」を80にする等がある。
【0068】
展開管理データには、このシーンで何かイベントが発生した場合に、シナリオを終了するのか、次に進むシーンが何であるか、もしくは何も展開しないのか、といった情報(移行条件等)が記述されている。
ここでいうイベントとは、シーンの展開を次に進めるためのもので規定された何らかのアクションを示している。例えばキャラクタの台詞が終了した、設定しておいた時間が経過した、運転者がこのシーンで質問した内容に対して何らかの回答を選択した(例えば「はい」or「いいえ」の質問に「はい」と答えた)、等が存在する。
このイベントに加えて学習した結果によって展開を変えることもできる。
例えば、質問に対し運転者が「はい」を選択した場合で通算使用回数が10回未満の時といった使い方ができる。
学習した結果のほかに、日時、メンタルモデルを使ったキャラクタの心理状態、運転者情報、等も使用して展開を変えることもできるようになっている。
【0069】
図11はキャラクタデータの内容を概念的に表したものである。
キャラクタデータ(10-2-3-5)には、複数のキャラクタのデータが格納されており、運転者の好みによって入力装置(5)等から選択することができるようになっている。
キャラクタデータ(10-2-3-5)は、各キャラクタA、B、…毎に、キャラクタ画像データ102351と、キャラクタ音声データ102352と、キャラクタ画像選択データ102353とを備えている。
【0070】
キャラクタ画像データ102351は、シナリオにより指定された各シーンで表示されるキャラクタの状態を表す静止画像や、動作を表す個別動作画像(アニメーション)等が格納されている。例えば、キャラクタがお辞儀をする動画、うなずく動画、右手を挙げる等の、個別動作画像が格納されている。
個別動作画像は、うなずく(肯定の意)、首を横に振る(否定の意)などの、少なくとも1つ以上の完結した意味を表現可能な動画の単位である。
これらの各静止画像や個別動作画像には画像コードが付けられている。
キャラクタ画像データ102351は、動作表現記憶手段、画像記憶手段として機能する。
キャラクタ画像データ102351として使用するキャラクタ(エージェントの容姿)としては、人間(男性、女性)的な容姿である必要はない。例えば、非人間型のエージェントとして、動物自体の容姿や、ロボット的な容姿や、特定のキャラクタの容姿等であってもよい。
またエージェントの年齢としても一定である必要がなく、エージェントの学習機能として、最初は子供の容姿とし、時間の経過と共に成長していき容姿が変化していく(大人の容姿に変化し、更に老人の容姿に変化していく)ようにしてもよい。
【0071】
シーン(画面要素)は、個別動作画像を1つ、又は2つ以上の組み合わせを有し、個別動作画像と音声、その他のデータで構成されている。
図12は、キャラクタが右手を挙げる動作を表す個別動作画像の内容を表したものである。
この図12に示されるように、個別動作画像は、開始動画(a)、保持動画(b)、終了動画(c)の最低3種類の動画で構成されている。(a)〜(c)では、実際に表示される動画のうち、最初と最後及び途中の代表的な画像を表している。
この3つの動画(開始動画、保持動画、終了動画)を順次再生することでお辞儀をする等のキャラクタの個別の動作が表現される。
【0072】
図12(a)に示されるように、開始動画はキャラクタの基本姿勢を表した画像(基本姿勢状態画像12a1)から始まり、所定姿勢の保持状態(所定状態)の画像(保持状態画像12a4)で終了する。
図12(a)に例示した開始動画では、基本姿勢状態から、ヒジを曲げた状態で右手を上に挙げて、ほほ笑むまでの動作が表示される。
【0073】
図12(b)に示されるように、保持動画は、保持状態画像12b1から開始し、保持状態画像12b4で終了する。
保持動画は、保持状態画像12b1を基準として、途中の画像12b2、12b3においてキャラクタが表現する内容を保持した動きをした後、基準となる保持状態画像12b4に戻る。
図12(b)に例示した保持動画では、保持状態画像12b1に対して、途中画像12b2で頭部が傾く動きをし、途中画像12b3で頭部の傾きが元に戻り口元と手首の角度が変化している。
この保持動画の繰り返し回数により個別動作画像の再生時間を調節するようになっている。また、個別動作画像に対して最短の再生を行う場合には、保持動画の再生は省略される。すなわち、開始動画に続いて終了動画を再生することで保持状態画像12a4,12c1を経過する最短の動画が実行される。
【0074】
終了動画は、図2(c)に示されるように、保持状態画像12c1から始まり、基本姿勢状態画像12c4で終了する。終了動画は、基本姿勢状態に復帰するための動画である。
なお、開始動画終了時の保持状態画像12a4と、保持動画開始時と終了時の保持状態画像12b1、12b4と、終了動画開始時の保持状態画像12c1とは同一の画像である。
また、終了動画は、開始動画の保持状態画像から基本姿勢状態まで逆に再生したものと同一である。
【0075】
このように、キャラクタの各個別動作画像は、基本姿勢状態で開始及び終了するので、各シーン(画面要素)において複数の個別動作画像で構成しても、キャラクタの動作を連続させることができる。
【0076】
図13は、エージェントデータ(10-2-3)における動作切り替え判断データ(10-2-3-8)の内容を概念的に表示したものである。
動作切り替え判断データ(10-2-3-8)は、個別動作画像の再生中における、中断条件と、中断条件に対応して即応モード又は品質モードのいずれにより後続の個別動作画像に移行するかを規定したテーブルである。
図13に示される「項目」欄に規定されている各イベント(キャラクタ動作終了等)が中断条件に該当し、「動作切り替え判断」欄に規定されているクオリティ重視が品質モードで、反応重視が即応モードに対応している。
エージェント装置は、実行するシナリオにおいて中断条件と対応するモードが規定されていない場合、及び、シナリオにおいて自動選択が設定されている場合に、動作切り替え判断データ(10-2-3-8)を使用してモードを決定するようになっている。
【0077】
図11(b)は、キャラクタ画像データ102351に格納されている再生時間テーブルを概念的に表したものである。
この再生時間テーブルには、各個別動作画像における開始動画、終了動画を再生した場合の再生時間時間と、保持動画を1回再生した場合の再生時間が格納されている。
エージェント装置は、シナリオの各シーンデータの規定、例えば、音声の出力時間等に対応して、1又は複数の個別動作画像を再生するが、規定された時間に対応して個別動画の再生が行われるようにするために、再生時間テーブルが参照される。例えば、キャラクタが「おはようございます。今日も宜しくお願いします」と挨拶しながら動作「お辞儀」をする場合、音声の出力時間を算出し、例えば、6秒であったとする。この場合再生時間テーブルから、開始動画と終了動画のそれぞれに優先的に再生時間1.5秒が割り当てられ、残りの3秒に対して保持動画が割り当てられる。
そして、保持動画に割り当てられた時間が3秒で、保持動画の再生時間が1.5秒なので、N=2回となり、保持動画が2回再生されることになる。
【0078】
キャラクタ音声データ102352(図11(a))は、選択されたシナリオのシーンに従って、エージェントが運転者と会話等を行うための音声データが格納されている。
エージェントによる会話の音声データは、エージェントが運転者情報を収集するための質問をするための音声データも格納されている。例としては、「こんにちは」、「よろしくね」、「またね」等が格納されている。
これらの各音声には音声コードが付けられている。
【0079】
キャラクタ画像選択データ102353は、個々の表示状態に対して各キャラクタの表現方法(動作)を表す画像データを割り当てた変換テーブルである。
シナリオデータ(10-2-3-4)は、キャラクタの種類によらない共通化した表示状態により各シーンの内容を規定している。
このためキャラクタ画像選択データ102353は、共通表現されたシーンの表示状態を、ユーザが選択したキャラクタに対する個別の動作内容を表示する画像データに変換するための変換テーブルであり、画像選択手段の一部として機能する。
【0080】
図6における運転者情報データ(10-2-3-6)は、特に図示しないが、運転者に関する情報で、エージェントのコミュニケーションをより運転者の希望や趣味、嗜好に合ったものとするために利用される。この運転者情報データは、シナリオの起動条件や、シーンの移行条件としても使用される。
運転者情報データ(10-2-3-6)には、運転者毎に情報を格納するための運転者のID(識別情報)、名前、年齢、性別、結婚(既婚か未婚か)、子供の有無と人数と年齢からなる運転者基礎データや、趣味嗜好データとが格納されるようになっている。
趣味嗜好データとしては、スポーツ、飲食、旅行等の大項目と、これら大項目の概念に含まれる詳細項目とから構成されている。例えば、大項目スポーツには、野球が好きか嫌いか、サッカーが好きか嫌いか、ゴルフが好きか嫌いか等のデータが格納されるようになっている。
運転者情報データ(10-2-3-6)は、その車両を運転する運転者が複数存在する場合には、運転者毎に作成される。そして、運転者を特定して該当する運転者情報が使用される。
【0081】
図6において、学習項目データ及び応答データ(10-2-3-7)は、エージェントとのコミュニケーションにおいて運転者の選択や応答によってエージェントが学習した結果を格納するデータである。
従って、学習項目データ及び応答データ(10-2-3-7)は、運転者毎にそのデータが格納・更新(学習)されるようになっている。
例えば、シナリオの使用状況として前回の選択結果や前回使用した日時、通算の使用回数等が格納される。
この学習内容に従って、例えば、毎回ナビ電源ON時に挨拶をするシナリオにおいて、前回使用から5分以内の場合に「つい先ほどにもお会いしましたね」と対応したり、逆に1ヶ月以上間があいている場合には「お久しぶりですね」と対応したりする。
【0082】
図14は、シナリオのシーンデータに基づいて表示装置(2)に表示されるシーン画面の一例を表したものである。
この図14に示されるシーン画面は、未入力の運転者情報である趣味嗜好(食事)を取得するために運転者から質問をする質問シナリオのシーン画面(シーン番号0x0001)である。
シーン画面は、図14に示されるように、エージェントの個別動作画像が表示されるエージェント表示画面51、エージェントの音声に対応した文字が表示される吹き出し画面52、タイトル画面53、及び、各シーン固有の画像データ(実画像データの画像や回答選択ボタン等)が表示されるシーン表示画面54から構成されている。
エージェント表示画面51に表示されるエージェントは、ユーザが選択したキャラクタ、又はデフォルトのキャラクタである。
【0083】
エージェント処理部(101)のシナリオ駆動部(101-1)は、趣味嗜好(食事)の質問シナリオを起動すると、最初にシーンヘッダで指定されるシーンの画面構成データをシナリオデータ+画像(10-2-3-4)から読み出してシーン画面を表示装置(2)に表示すると共に、質問文に相当する質問音声を音声出力装置(3)から出力するようになっている。
図14(a)の質問シナリオのシーン画面では、吹き出し画面52に「どのジャンルの食事が好きですか?」と表示される。そして、吹き出し画面52の表示に対応する音声が音声出力装置(3)から出力される。
また、図14(a)のシーン画面におけるシーン表示画面54には、4つの回答選択ボタン54aの「和食」、「洋食」、「中華」、「特に無し」が表示されている。
そして、キャラクタの音声出力に合わせて、キャラクタが右手をあげて回答選択ボタン54aを指し示す個別動作画像が再生され表示される。
【0084】
この運転者に対する質問のシーンには、運転者の回答に応じた複数のシーンが分岐して続くようになっている。各シーンの分岐及び続くシーンの特定については、各シーンの展開管理データに従って、運転者の回答に応じて決定される。
すなわち、図14(a)のシーン画面(シーン番号0x0001)で運転者が回答選択ボタン「和食」を選択すると、シナリオ駆動部(101-1)は、回答に応じたシーン画面(b)に分岐して表示される。このシーン画面(b)では、選択された「和食」がタイトル画面53に表示されると共に、吹き出し画面には「和食がすきなのですね。」と表示され、なお、分岐後の和食のシーン画面では、シナリオデータから読み出された和食の実画像54bがシーン表示画面54に表示される。そしてシナリオ駆動部(101-1)により、運転者の回答、例えば、「和食」が運転者情報として、運転者情報データ(10-2-3-6)の趣味嗜好データに格納されるようになっている。
このようにして、シナリオに規定された各シーン画像と音声が最後のシーンまで連続的に順次表示、出力されることで、1シナリオにおけるエージェントの行為が完了することになる。
【0085】
図15は、旅館が宿泊予定者に送信した案内シナリオによるシーン画面の遷移を各シーン毎に表したものである。
この案内シナリオは、複数のシーン画面のうち(a)〜(f)までのシーン画面で構成されてる。
シーン画面(c)に対するユーザの選択結果によって次のシーン画面が0x0004と0x0006に分岐している。また、図15の例では分岐していないが、シーン画面(d)においても選択した料理の種類に応じた料理をシーン表示画面54に表示するようにシーン画面を分岐させるようにしてもよい。
また、この案内シナリオには、ユーザによってスタンバイ処理が設定されている場合に表示されるスタンバイシーン(s)が設定されている。
【0086】
以下図15に従って予約シナリオによるエージェントの各行為について説明する。
以下の各シーン画面に対応して説明するエージェントの動作や画面の表示はいずれも、外部シナリオのシナリオデータに格納されているデータや画像及び指示に従って表示等されるものである。また、エージェントの動作として説明するが、実際にはエージェント処理部(101)のシナリオ駆動部(101-1)が処理を行う。
また、各シーン画面には基本姿勢状態の画像が表示されているが、各々のシーン画面(a)〜(f)に応じた個別動作画像が再生される。例えば、シーン画面(a)ではエージェントがお辞儀をする個別動作画像が再生され、シーン画面(d)ではヒジを曲げながら右手を挙げる個別動作画像(図12参照)が再生される。
【0087】
ユーザによってスタンバイ処理を使用しない設定が選択されている場合、予約シナリオが起動され、番号0x0001のシーンから展開される。
一方、スタンバイ処理を使用する設定が選択されている場合、図15のスタンバイシーン(s)が展開される。
図15に表示した例では、スタンバイ処理を行う直前の画面、すなわち、ナビゲーション機能による経路案内のための地図画面が表示されている。この直前の画面上の右上に小さくエージェントがタッチパネル機能を持つ表示画面(2)に表示される。(キャラクタ表示手段)
そして、「私にタッチしたら、『予約された旅館の案内』をします。」というようにシナリオを実行する告知を行うと共に、実行の許可を促す(実行の確認)を求める。なお、シナリオデータでエージェントの音声内容が規定されている場合にはその音声が出力される。
そして、実行の許可の催促に従って、運転手による、OKの意志表示が検出されると、通常のシナリオが一番最初のシーンから順次展開される。
なお、スタンバイシーンにおいて、OKの意志表示がないままナビ等の機器操作、及び、一定時間が経過すると、タイマー通知により、シナリオの実行が終了される。
【0088】
スタンバイシーンにおいてOKの意志表示がされた場合、又はスタンバイ処理が選択されていない場合、予約シナリオが起動される。
すなわち、まず番号0x0001のシーン画面が表示装置(2)に表示される。このシーンでは、エージェントOS部(101-8)で管理しているキャラクタのエージェントが、エージェント表示画面51に登場し、お辞儀をして音声による挨拶をする。音声による挨拶の内容は、吹き出し画面52に表示されている文章と同一である。
音声による挨拶は、旅館に代わってエージェントが代行して行うことになるが、旅館の女将の写真画像をシーン表示画面54に表示することで旅館からの挨拶であることが表現されている。この女将の画像は、外部シナリオの一部として受信し追加した画像で、シナリオデータ(10-2-3-4)の実画像データとして格納されている。
エージェントの動作に対する指示は、キャラクタ動作指示データに格納されている指示に従う。
エージェントによる挨拶が終了すると、次のシーン0x002に遷移する。
【0089】
次のシーン0x0002では、シーン表示画面54に露天風呂の画像が表示される。そして、この露天風呂の絵をエージェントが指し示して、旅館の名物(ここが売りだということ)を、エージェントが音声と吹き出し画面52の表示で説明する。
エージェントの話が終了すると、次のシーン0x0003に遷移し、本日の食事の画像(懐石料理の画像)をシーン表示画面54に表示し、エージェントが料理の説明と、この料理で良いか否かを質問する。
そして、シーン0x0003のシーンデータにタイマー設定時間と、タイマー設定条件「走行中のみ設定する」が規定されているものとする。この場合、走行中であることを条件に、シーン開始時にタイマーによる計時が開始される。走行中か否かは車速センサ(6-11)又は、距離センサ(6-1-5)において、車速v=0が検出された場合に停車中と判断され、車速v≠0が検出された場合に走行中と判断される。
【0090】
そして、表示した料理を変更するか否かの質問に対する回答としてユーザが「はい」を選択した場合にはシーン0x0004に分岐し、「いいえ」を選択した場合にはシーン0x0006に分岐する。
一方、タイマー設定時間内に、ユーザが音声による回答も、画面に表示された選択ボタンの選択による回答もせずにタイマー通知(設定時間の経過)した場合、シーン0x0003のシーンデータで規定されているタイマー通知時の移行条件に従って、そのシナリオを終了させる。
このように、ユーザからの回答がない場合にも、無回答という選択がされたと判断して、無回答を移行条件とする次のシーン(図15の例では終了)に移行することで、擬人化されたキャラクタとのコミュニケーションをより人間同士のコミュニケーションに近づけることができる。
【0091】
シーン0x0004では、懐石料理以外の選択可能なリストをシーン表示画面54に表示する。エージェントは、シーン表示画面54のリストを指し示して、どの料理が良いかを質問する。
そして、ユーザがいずれか1つを選択したらシーン0x0005に遷移する。
シーン0x0005では、懐石料理から変更すべき人数のリストをシーン表示画面54に表示し、エージェントはこのリストを指し示して、人数の質問をする。そしてユーザがいずれか1つを選択したらシーン0x0006に遷移する。
【0092】
シーン0x0006では、シーン表示画面54に旅館の外観写真画像を表示し、エージェントがお辞儀をして挨拶をする。
そして、エージェントは、ユーザが選択してきた結果、図15の案内シナリオの場合には食事に関する回答結果を、通信制御部を介して実行中の外部シナリオを送信した第三者(旅館)に送信する。
このように、ユーザについての情報を取得したい場合には、外部シナリオの作成者は、取得したい情報が得られる質問のシーンをシナリオ中に設け、その回答を電子メールで送信するようにシナリオを作成する。なお、回答の送信が必要な場合には、作成者の電子メールアドレスをシナリオデータ中に含める。
最後のシーン(図15ではシーン0x0006)でのエージェントの話が終了すると、シナリオを終了させる。
【0093】
このようにして、シナリオ駆動部(101-1)は、シナリオに規定された各シーン毎の個別動作画像と音声を最後のシーンまで順次表示、出力する。
起動したシナリオが終了すると、シナリオ駆動部(101-1)は、他のシナリオの起動要求が存在するか否かの判断を行う。
【0094】
次に、このようなシナリオ駆動部(101-1)で実行される各種シナリオを自律的に起動する動作について説明する。
自律起動判断部(101-2)は、今現在置かれている状況情報を取得するため、エージェントI/Fを介し、エージェントOS部(101-8)より現在位置、時間などの状況情報を取得し、いずれかの自律起動条件を満たしているか否かを判断する。
そして、自律起動条件を満たしている場合、自律起動判断部(101-2)は、その自律起動条件に対応するシナリオの実行要求メッセージを、シナリオ駆動部(101-1)に対して発行することで、シナリオの実行が開始される。
【0095】
図16は、シナリオ実行処理の流れを表したフローチャートである。
なお図16では、シナリオを実行する場合の、エージェント処理部(101)の各部、及び全体処理部(102)による一連の代表的な動作を表したものであり、各部はそれぞれ独立した処理を行うようになっている。すなわち、各部の独立した処理が、連続することで図16に示した代表的な流れになる。
具体的には、エージェント処理部(101)の各部、及び全体処理部(102)は、メッセージを受け取ったら、そのメッセージに対する処理を行ない、処理が完了したら次のメッセージを待つようになっている。
【0096】
シナリオ駆動部(101-1)は、自律起動判断部(101-2)からシナリオ実行要求を受け取ると、ワークメモリの確保、初期化によるエージェント開始準備処理を行う(ステップ505-1)。
そして、シナリオ駆動部(101-1)は、シナリオの実行要求が手動起動か自動起動かを確認する(ステップ505-2)。手動起動は、ユーザが表示装置(2)のメニューからシナリオ起動を選択した場合で、自動起動は、シナリオの自律起動条件を満たした場合である。
シナリオの実行要求が手動起動の場合はメニューシナリオの要求処理を行う(ステップ505-3)。その後、シナリオデータ読み込み処理(ステップ505-4)に移行する。
【0097】
一方、自動起動の場合には、自律起動条件を満たすことで実行要求されているシナリオが存在するので、そのままシナリオデータ読み込み処理(ステップ505-4)に移行する。
次にシナリオ駆動部(101-1)は、実行すべきシナリオデータをRAM(1-4)に読み込む(ステップ505-4)。シナリオデータを読み込む際、実行対象となっているシナリオが複数存在する場合(複数の自律起動条件が満たされた場合、手動起動要求と自動起動が重複した場合等)には、シナリオ駆動部(101-1)は、各シナリオに規定されている優先順位を判断し一番優先順位の高いシナリオデータを読み込む。優先順位が同じである場合には、自律起動判断部(101-2)から実行要求を受けた順に優先順位が高いものとして決定する。
【0098】
シナリオデータの読み込みが完了すると、シナリオ駆動部(101-1)は、次に、シナリオ開始処理を行う(ステップ505-5)。
シナリオ開始処理においてシナリオ駆動部(101-1)は、まず、シナリオを開始するための初期化処理を行う。さらに、シナリオ駆動部(1011)は、スタンバイシーンが選択されていれば、図15(s)で説明したスタンバイシーンを実行してOKの意志表示が確認された場合、及び、スタンバイシーンが選択されていない場合に、シナリオ開始処理を終了する。
【0099】
シナリオ開始処理(ステップ505-5)の後に、シナリオ駆動部(101-1)は、シナリオを構成するシーンの内容に応じてキャラクタの描画や音声を処理するシーン処理を実行する(ステップ505-6)。シーン処理の詳細は図17により後述する。
シーン処理が完了すると、シナリオ駆動部(101-1)は、シナリオ終了か確認を行なう(ステップ505-7)。
シナリオ終了の場合、シナリオ駆動部(101-1)は、シナリオ終了処理を行なう(505-8)。このシナリオ終了処理において、学習部(101-3)が、終了の仕方を示すエンドIDを入手して応答データ(10-2-3-7)に格納する。
シナリオ終了でない場合(シナリオがまだ続く場合)、シナリオの終了位置まで、ステップ505-6に戻って次のシーン、次のシーン、…とシーン処理を繰り返す。
【0100】
シナリオの終了処理の後、シナリオ駆動部(101-1)は、他にシナリオの実行要求が有るか否か確認し(ステップ505-9)、他のシナリオの実行要求が存在する場合は、シナリオデータの読み込み処理(ステップ505-4)に戻って同様に処理が実行される。
一方、他に実行するシナリオが存在しない場合、シナリオ駆動部(101-1)は、エージェント終了処理を実行する(ステップ505-10)。すなわち、エージェントOS部(101-8)に対して、要求された全てのシナリオの実行処理が終了したことを知らせる。
その後、表示装置(2)に表示される画面は通常のナビゲーション画面に戻るが、その後の処理はエージェントI/Fを介して全体処理部(102)に受け渡す。
【0101】
図17は、シーン処理(ステップ505-6)の流れを表したフローチャートである。
シナリオ駆動部(101-1)は、シーン処理において、開始するシーンの種類を確認し(ステップ505-6-1)、通常のシーン又はスタンバイシーンの場合は、シーンデータの解析処理(ステップ505-6-2)に進み、クローンシーンの場合は、各種処理の依頼を行なう処理(ステップ505-6-5)に進む。
なお、図示していないが、シーンがダミーシーンである場合、シナリオ駆動部(101-1)は各種処理データに従った処理をバックグランド処理として指示した後に、シーン決定処理(ステップ505-13)に移行する。
一方、分岐シーンの場合には、画面や音声の出力等の各種処理が存在しないので、追加条件により展開する次のシーンを決定するためにシーン決定処理(ステップ505-6-13)に進む。
ここで、クローンシーンは、あるシーンnの終了の仕方によって、元のシーン(直前に終了したシーン)nと同一の画面を表示する場合で、例えば、設定時間内に入力がされなかった場合に、同一の画面のまま入力を促す音声を出力するような場合のシーンである。
また、分岐シーンは、ある特定のシーンに推移して開始させるために、当該シーンの前に設けられたシーンで、画面表示がされずに画面推移(分岐)のための条件判断を行うシーンである。
【0102】
開始するシーンが通常シーン、もしくはスタンバイシーンの場合、シナリオ駆動部(101-1)は、開始するシーンのデータを、ステップ505-4(図16)で読み込んだシナリオデータがおかれているRAM(1-4)を参照し、表示する画面構成やキャラクタの動作指示、等を解析する(ステップ505-6-2)。
解析した結果、音声認識辞書が存在する場合、シナリオ駆動部(101-1)は、シーンデータ中に規定されている音声認識辞書の設定(初期化)依頼を音声認識部(101-7)に対して通知する(ステップ505-6-3)。
なお、スタンバイシーンの場合には、肯定か否定かの音声認識辞書が設定される。
【0103】
次に、シナリオ駆動部(101-1)は、描画・音声出力部(101-5)に対して画面描画の依頼を行なうための処理として、描画する画面の各パーツを決定する画面構成の画面データ作成処理を行う(ステップ505-6-4)。
画面構成の画面データ作成処理では、例えば図16に示されるシーン画面のうち、エージェント表示画面51や、キャラクタの台詞が表示される吹き出し画面52等のキャラクタに関連する項目を決定する処理である。
【0104】
シナリオ駆動部(101-1)は、各種処理の指示を行う(ステップ505-6-5)。
各種処理の指示とは、ナビや外部接続機器などへの処理、タイマーが設定されている場合には時間計測の依頼処理等である。
また、シナリオ駆動部(101-1)は、各種処理として、長期的感情要素、又は短期的感情要素の各要素値を変更する指示がそのシーンに対して設定されている場合には、設定された指示に対応してメンタルモデルデータ(10-2-3-1)の長期的感情要素10-2-3-1a及び短期的感情要素10-2-3-1cの変更をキャラクタ心理部(101-4)に指示する。
キャラクタ心理部(101-4)は、指示に従って、シーンで指定された変更値に応じて各感情要素の値を変更する。すなわち、長期的感情要素であれば、指示された変更値を加減算し、短期的感情要素であれば当該短期的感情要素の値を指示された変更値に変更すると共に他の短期的感情要素の値をゼロにする。
このように、エージェントの長期的な感情の変化や短期的な感情の変化をエージェント装置に予め決められた条件(長期的感情変化条件10-2-3-1b、短期的感情変化条件10-2-3-1d)に従って変化させるだけでなく、シナリオに設定された感情要素の変更指示に従って変更することが可能である。このため、シナリオの作成者の意図に沿ったエージェントの感情変化を実現することが可能になる。
【0105】
次に、シナリオ駆動部(101-1)は、シーンのキャラクタ動作や、台詞等の音声を決定し、決定したキャラクタの描画・音声出力の要求を描画・音声出力部に対して行い、該要求に従って、描画音声出力部はキャラクタ描画・音声出力処理を行う(ステップ505-6-6)。
シナリオ駆動部(101-1)によるキャラクタ描画データの作成は、作成するシナリオのパーツが画面構成のパーツかキャラクタに関するパーツかが異なる以外は、図16に示した画面構成の描画データ作成処理と同様に行われる。また、キャラクタ描画データの作成の場合、吹き出し画面52に表示する台詞に対応するキャラクタの音声や、効果音についての音声データの特定も行われる。
シナリオ駆動部(101-1)は、キャラクタ描画データ(音声データを含む)を作成すると、作成したキャラクタ描画データによるキャラクタ描画要求を描画・音声出力部(101-5)に対して行う。
描画・音声出力部は(101-5)は、シナリオ駆動部(101-1)からの描画要求に従って、キャラクタの描画・音声出力の処理を行う。キャラクタ描画・音声出力処理により、キャラクタがお辞儀をしたり、右方向や左方向を手で指したり、ユーザに話しかけたりするシーンが展開される。
また、スタンバイシーンの場合は、図15(S)に例示したような、通常(図15(a))よりも小さいキャラクタが表示される。
【0106】
図18は、描画・音声出力部(101-5)によるキャラクタ描画・音声出力処理を表したフローチャートである。
描画・音声出力部(101-5)は、シナリオ駆動部(101-1)からキャラクタの動作指示の依頼又は描画データを受けると、動作指示内容解析処理(ステップ505-6-6-1~505-6-6-8)、動作再生処理(ステップ505-6-6-9)、要求終了返信(ステップ505-6-6-10)の順に処理を行う。
【0107】
動作指示内容解析処理において描画・音声出力部(101-5)は、まず、受け取った描画指示内容キャラクタの種類によらない統一の(共通の)動作指示か否かを判断し(ステップ505-6-6-1)、描画指示がキャラクタ毎に特定された表現方法で指示(直接指示:図37(b)参照)されていれば、動作再生処理(ステップ505-6-6-9)に移行する。
【0108】
描画指示がキャラクタによらない統一の表示形態であれば、描画・音声出力部(101-5)は、指示内容の変換を行う。
変換はまず、その時点で設定されているキャラクタの種類をエージェントOS部(101-8)から取得する(ステップ505-6-6-2)。
次に描画・音声出力部(101-5)は、統一の動作指示(表示状態番号)とキャラクタ毎の動作指示内容(画像コード)の対応表が書かれた変換テーブル(キャラクタ画像選択データ)102353を外部記憶装置(10)のキャラクタデータ(10-2-3-5)から取得する。
そして、描画・音声出力部(101-5)は、変換テーブルを基に動作させるキャラクタの動作指示内容、すなわち、シーンデータの表示状態番号に対応するキャラクタの画像コードを取得する(ステップ505-6-6-4)。
【0109】
描画・音声出力部(101-5)は、取得した動作指示情報が、キャラクタの動作指示をシステムに自動で選択させる設定になっている場合、(ステップ505-6-6-5;Y)、更に以下の処理を行う。
すなわち、描画・音声出力部(101-5)は、まず時間、場所、運転者情報、エージェントメンタルモデル等の、動作自動選択条件情報をエージェントOS部等、エージェント処理部に含まれている各情報を管理している処理部(101-8)から取得する(ステップ505-6-6-6)。
次に時間等の統一の動作指示の選択条件情報と、キャラクタの統一の動作指示とが記述されている、電源ON時に既にRAMに読み込まれているエージェントデータ(10-2-3)から自動選択テーブルを取得する(ステップ505-6-6-7)。
そして、描画・音声出力部(101-5)は、時間等の統一の動作指示の選択条件情報と、動作自動選択テーブルを基に統一の動作指示を取得する。該統一の動作指示を基に、ステップ505-6-6-3で取得した変換テーブル102353を参照して動作指示内容(画像コード)を取得することにより動作指示を確定する(ステップ505-6-6-8)。
【0110】
次に、描画・音声出力部(101-5)は、動作再生処理を行う(ステップ505-6-6-9)。
すなわち、描画・音声出力部(101-5)は、キャラクタの動作指示内容(画像コード)を基に、キャラクタデータ(10-2-3-5)の、選択されているキャラクタのキャラクタ画像データ102351(図11参照)から、再生する個別動作画像を取得する。
また当該キャラクタの動作指示依頼が、キャラクタの動作にキャラクタの台詞音声を同期させ出力させる内容であれば、キャラクタデータ(10-2-3-5)のキャラクタ音声データ102352から音声データを取得する。
【0111】
そして、描画・音声出力部(101-5)は、音声データを出力する場合には、その音声データの出力時間t1を取得し、音声データの出力がない場合にはシーンデータに規定されている時間t1を取得する。以下、時間t1を、個別動画の再生に割り当てられる全体の時間なので、全割当時間という。
そして、描画・音声出力部(101-5)は、シーンデータで規定されている台詞又は時間に割り付けられている(台詞の音声を出力する間、又は規定時間内に再生するように規定されている)個別動作画像、の再生時間を再生時間テーブル(図11(b)参照)から取得する。
【0112】
描画・音声出力部(101-5)は、取得した各個別動作画像の再生時間と、取得した全割当時間t1とから、各個別動作画像における保持動画の再生回数Nを数式(1)から決定する。
この数式において、全割当時間をt1、開始動画の再生時間をt2、保持動画の再生時間をt3、終了動画の再生時間をt4とする。また全開始動画、全保持動画、全終了動画の再生時間の合計値をそれぞれ、Σt2、Σt3、Σt4とする。
この場合、時間Σt2が全開始動画に割り当てられ、時間Σt4が全終了動画に割り当てられ、時間(t1−(Σt2+Σt4))が全保持動画に割り当てられる。
このように、各個別動作画像の開始動画と終了動画に優先的に時間が割り当てられ、残りの時間が各保持動画に割り当てられる。
【0113】
【数式1】
n=(t1−(Σt2+Σt4))/Σt3(余り時間t5)…(1)
【0114】
そして、描画・音声出力部(101-5)は、数式(1)からnと余り時間t5を算出し、各保持動画の再生回数を次のように決定する。
(a)t5=0の場合
全保持動画の再生回数N=n回
(b)t5≠0の場合
最初の保持動画からm−1番目の保持動画までの再生回数N=n
m番目の保持動画から最後の保持動画までの再生回数N=n+1回
但し、mは、p番目の保持動画から最後の保持動画までの再生時間の合計を{Σt3}とした場合に、{Σt3}≧t5を満たすpのうちの最大値である。
例えば、a〜dまでの保持動画(各再生時間1秒)に対して7秒割り当てられている場合、n=6/4=1、余り2となるので、aとbの再生回数が1回、cとdの再生回数が2回となる。
【0115】
なお、本実施形態では、全割当時間t1と同時又は後に個別動作画像の再生が終了することになるが、保持動画の再生回数Nを一律n回とすることで個別動作の再生を音声出力や規定時間よりも先に終了させるようにしてもよい。この場合、音声出力が終了するまで又は規定時間が経過するまでの間、図11(b)に示す基本(立ち)の保持動画を繰り返し再生する。
また、全割当時間t1が、開始動画と終了動画の両再生時間の合計よりも短い場合には、開始動画と終了動画のみを再生する。
【0116】
図19は、個別動作画像を再生する場合に、開始動画、保持動画、終了動画間で移行可能な流れを表したものである。
図19に示されるように、各動画は保持状態画面を介して再生が連続される。
(1)開始動画に続く動画
開始動画は、次の2つの動画に移行することができる。
▲1▼保持動画の再生回数N≠0の場合、保持動画に移行する。
▲2▼保持動画の再生回数N=0の場合、終了動画に移行する。
(2)保持動画に続く動画
保持動画は、次の2つの動画に移行することができる。
▲3▼保持動画の再生回数N>2の場合、保持動画に移行する。
▲4▼保持動画の再生回数N=1の場合、終了動画に移行する。
(3)終了動画に続く動画
終了動画は、同一の個別動作画像内の動画に移行することはなく、後続の個別動画の開始動画に移行する。
【0117】
次に、個別動作画像の再生中に中断条件が満たされた場合について説明する。
シナリオ駆動部(101-1)は、個別動作画像の再生中に、図13に規定する中断条件(項目欄に記載した条件)が満たされたか否かについて監視している。
そして、いずれかの中断条件が満たされた場合、シナリオ駆動部(101-1)は、次の個別動作画像に移行する際の移行モード(品質モード、即応モード)と、中断イベントを描画・音声出力部(101-5)に供給する。
移行モードは、再生中の個別動作画像に対して、移行モードが規定されている場合には、規定されている移行モードに決定する。個別動作画像に対して自動モードが規定されている場合及び、移行モードが規定されていない場合には、動作切り替え判断データ(10-2-3-8)(図6、図13参照)を使用して中断条件に対応した移行モードを決定する。
以上のようにシナリオ駆動部(101-1)により移行モードが決定されることで、モード判断手段が構成されている。
【0118】
描画・音声出力部(101-5)は、シナリオ駆動部(101-1)から中断イベントが供給されると、移行モード(品質モード、即応モード)に応じて、実行中の動画段階(開始動画、保持動画、終了動画)を中断して、後続の個別動作画像に移行する(実行する)。
【0119】
図20は、品質モードにおける中断後の再生状態を表したものである。
図20に示されるように、品質モードでは中断イベントの発生がどの動画を再生中かによって異なる。
(1)開始動画再生中の場合
図20(a)に示されるように、開始動画の再生中に中断イベントが発生すると、開始動画の再生を終了した後、保持動画を1回再生し、終了動画を再生した後に後続の個別動作画像に移行する。
なお、開始動画の再生中に中断イベントが発生した場合、開始動画の再生を終了した後に、保持動画を再生せずに終了動画を再生して、後続の個別動作画像に移行するようにしてもよい。この場合、開始動画の最後と終了動画の最初に保持状態画像を表示するので両動画移行の際のギャップがなく、保持動画の再生を省略した分だけ早く後続の個別動作画像を再生することができる。
【0120】
(2)保持動画再生中の場合
図20(b)に示されるように、保持動画の再生中に中断イベントが発生した場合には、再生中の保持動画を最後まで再生した後に終了動画を再生し、その後に後続の個別動作画像に移行する。
この保持動画再生中の場合、上記の数式(1)から決定した再生回数N回に対してp回目の再生中(p<N)であれば、保持動画の再生がN−p回省略される。従って、品質を維持しながら、動画間のギャップなしに、ある度の即応性を確保することができる。
(3)終了動画再生中の場合
図20(c)に示されるように、終了動画の再生中に中断イベントが発生した場合には、そのまま終了動画を再生した後に後続の個別動作画像に移行する。
【0121】
このように、品質モードの場合、再生している動画間のギャップが無く、また、中断した個別動作画像は基本姿勢状態で終了し、後続の個別動作画像が基本姿勢状態から開始するため、品質を維持した中断と後続個別動作画像への移行が可能となる。
【0122】
図21は、即応モードにおける中断後の再生状態を表したものである。
図21に示されるように、即応モードの場合、中断イベントの発生時点に拘わらす、再生中の動画を中断して後続の個別動作画像に移行する。
即応モードの場合、中断イベント発生時点で中断するため、後続の個別動画に移行する際に多少のギャップを生じるが、例えばエージェント装置のユーザに不要な待機をさせずに、レスポンス良く後続の個別動作画像を再生することができる。
【0123】
以上のように中断イベントがある場合、ない場合において描画・音声出力部(101-5)で決定した個別動作画像の再生データはエージェントOS部(101-8)に伝わり外部I/F部(101-9)から全体処理部(102)に伝わり、全体処理部(102)内にある描画プロセッサ(1-6)への指示を行う処理部を通して描画プロセッサ(1-6)へ伝わり個別動作画像が表示装置(2)に順次再生表示される。
また取得した音声データはエージェントOS部(101-8)に伝わり外部I/F部(101-9)から全体処理部(102)に伝わり、全体処理部(102)内にある音声プロセッサ(1-8)への指示を行う処理部を通して音声プロセッサ(1-8)へ伝わり、この音声出力制御信号をアナログ信号に変換して音声出力装置(3)に出力される。
【0124】
次に、描画・音声出力部(101-5)は、シナリオ駆動部(101-1)から要求されたキャラクタの動作処理をすべて行った後、要求されたシーンのキャラクタ描画・音声出力処理終了をシナリオ駆動部(101-1)に通知し(図18、ステップ505-6-6-10)、処理を終了する。
また、キャラクタの台詞音声を同期させて出力する要求内容であった場合は、音声の出力が全て終了した時点で、キャラクタ音声出力処理終了をシナリオ駆動部(101-1)に通知する。
【0125】
描画・音声出力部(101-5)からシーンのキャラクタ描画・音声出力処理終了が通知された後に、シナリオ駆動部(101-1)は、処理中のシーンデータにおいて音声認識についての指示がされているか否かを確認し(図17、ステップ505-6-7)、指示が無ければ、ステップ505-6-9に移行し、指示がある場合にはそのシーンデータで指定されている音声認識のための辞書を使用して音声認識処理を行う(ステップ505-6-8)。
【0126】
シナリオ駆動部(101-1)は、音声認識の指示が無い場合、及び、音声認識処理(ステップ505-6-8)が終了した後、エージェントOS部(101-8)からユーザ入力の知らせを受け取ったら、その入力が何であるか確認し(ステップ505-6-9)、入力に対応した処理を行なう。
なお、上述したように、各処理は独立して実行されるため、音声認識処理(ステップ505-6-8)中であっても、エージェントOS部(101-8)から入力が通知された場合にはその入力に対応した処理が並行して実行される。従って、音声認識処理中に、ユーザが音声認識の選択ボタンを選択しエージェントOS部(101-8)から通知されると、音声認識処理による処理段階に関わらず、次の処理(ステップ505-6-9)が実行される。
例えば、スタンバイシーンの場合では、運転者によるOK(肯定)の意志表示がされたか否かを表示装置の画面がタッチされたか否かにより判断することも可能であるため、画面がタッチされた場合、音声認識処理による処理段階にかかわらず、次の処理(ステップ505-6-9)が実行される。
【0127】
シナリオ駆動部(101-1)は、エージェントOS部(101-8)から、例えば、カーソルの移動に関する入力を受け取った場合、カーソルを移動させて、画面の描画依頼(画面スクロールの依頼)の処理を行う(ステップ505-6-10)。
また、ユーザがシーン表示画面54(図14参照)に表示されているいずれかの回答選択ボタン54aを選択した場合、どの項目が選択されたか判断する(ステップ505-6-11)。
なお、上述したように、図16、図17の処理は、シナリオ処理の1例を示したものであり、実際には各部が独立して個別の処理を行っている。このため、図17には示していないが、音声認識開始もしくは中止が入力された場合、音声認識部に対し音声認識処理の開始もしくは中止の依頼を行なう等、ユーザ入力の確認(ステップ505-6-9)を行なった後の処理は他にも存在する。また、描画・音声出力部(101-5)からシーンのキャラクタ描画・音声出力処理終了が通知される前、つまり、指示したキャラクタの動作が終了する前であっても、ユーザの入力の確認(ステップ505-6-9)をすることも可能である。
【0128】
次に、シナリオ駆動部(101-1)は、選択された項目の判断結果から、展開判断処理(ステップ505-6-12)において、シナリオデータの展開管理データ(図10参照)を参照して次の展開を判断する。
シナリオ駆動部(101-1)は、次の展開が存在しない場合は何も処理せずにユーザ入力判断に戻る。
【0129】
一方、次の展開が存在する場合、及び、ステップ505-6-1で判断したシーンが分岐シーンである場合、シナリオ駆動部(101-1)は、次に展開するシーンを決定するシーン決定処理を行う(ステップ505-6-1)。
シーン決定処理においてシナリオ駆動部(101-1)は、現在処理中のシーンに設定されている移行条件を、シナリオデータの展開管理データ(図10参照)から取得する。
そして、シナリオ駆動部(101-1)は、取得した移行条件(展開条件又は追加条件)に対応する、対象の状態変化(図25で規定)又は対象状態を、キャラクタ心理部(101-4)やエージェントOS部(101-8)から受け取る。
そして、受け取った状態変化又は対象状態が満たしている移行条件に対して展開管理データで規定されている次に展開すべき、通常シーン、クローンシーン、分岐シーンのいずれかを決定する。
【0130】
シナリオ駆動部(101-1)は、シーン決定処理により次に展開するシーンを決定した後、次の展開に進めるためにシーン終了処理(ステップ505-6-14)に進む。
シーン終了処理(ステップ505-6-14)では、シナリオ駆動部(101-1)が他の処理部に依頼している処理が有れば、その中止依頼を行ない(例えば音声認識処理の依頼をしていたら認識処理の中止依頼をする)、リターンする。リターンにより、図16のシナリオ終了判断(ステップ505-7)に移行する。
【0131】
次に、ユーザや第三者が独自のシナリオを作成するシナリオ作成装置の構成とその動作について説明する。
図22は、シナリオ作成装置の構成を表したものである。
シナリオ作成装置は、制御部(200)と、入力装置(210)と、出力装置(220)と、通信制御装置(230)と、記憶装置(240)と、記憶媒体駆動装置(250)と、入出力I/F(260)とを備えている。これら各装置は、データバスや制御バス等のバスラインにより接続されている。
【0132】
制御部(200)は、シナリオ作成装置全体を制御する。
シナリオ作成装置はシナリオ編集プログラムの実行だけでなく、その他プログラム類(例えばワープロや表計算等)を実行することもできる。制御部(200)は、CPU(200-1)と、メモリ(200-2)等から構成されている。
CPU(200-1)は、種々の演算処理を実行するプロセッサである。
メモリ(200-2)は、CPU(200-1)が種々の演算処理を実行する際にワーキングメモリとして使用される。
CPU(200-1)は、メモリ(200-2)にプログラムやデータなどを書き込んだり消去したりすることができる。
本実施の形態におけるメモリ(200-2)には、CPU(200-1)がシナリオエディタ(シナリオ編集プログラム)に従ってシナリオデータを作成、編集、記憶等するためのエリアが確保可能になっている。
【0133】
入力装置(210)は、シナリオ作成装置に対して文字や数字その他の情報を入力するための装置であり、例えばキーボードやマウスなどにより構成されている。
キーボードは、主にカナや英文字などを入力するための入力装置である。
キーボートは、例えばユーザがシナリオ作成装置にログインするためのログインIDやパスワードを入力したり、シナリオ作成の際に音声合成や音声認識の対象となる文を入力したりする際などに使用される。
マウスは、ポインティングデバイスである。
GUI(Graphical User Interface)などを用いてシナリオ作成装置を操作する場合、表示装置上に表示されたボタンやアイコンなどをクリックすることにより、所定の情報の入力を行なうこと等に使用される入力装置である。
【0134】
出力装置(220)は、例えば表示装置や印刷装置などである。
表示装置は、例えばCRTディスプレイ、液晶ディスプレイ、プラズマディスプレイなどが使用される。
表示装置には、シナリオを作成するためのメイン画面や、各シーンにおける画面構成を選択するための画面等の各種画面が表示される。また、各画面において選択された情報や入力された情報が表示されるようになっている。
印刷装置は、例えば、インクジェットプリンタ、レーザプリンタ、熱転写プリンタ、ドットプリンタなどの各種プリンタ装置が使用される。
【0135】
通信制御装置(230)は、外部との間で各種データやプログラムを送受信するための装置であって、モデム、ターミナルアダプタその他の装置が使用される。
通信制御装置(230)は、例えばインターネットやLAN(Local Area Network)などに接続可能に構成されている。通信制御装置(230)は、これらのネットワークに接続した他の端末装置あるいはサーバ装置などと通信によって信号及びデータのやり取りを行なうことで、装置で作成したシナリオデータを送信したり、第3者が作成したシナリオデータを受信(ダウンロード)したり、更に、シナリオデータの作成に必要なデータを取得したりすることができるようになっている。
通信制御装置(230)はCPU(200-1)によって制御され、例えば、TCP/IPなどの所定のプロトコルに従ってこれら端末装置やサーバ装置との信号及びデータの送受信を行う。
【0136】
記憶装置(240)は、読み書き可能な記憶媒体と、その記憶媒体に対してプログラムやデータを読み書きするための駆動装置によって構成されている。
当該記憶媒体として主にハードディスクが使用されるが、その他に、例えば、光磁気ディスク、磁気ディスク、半導体メモリなどの他の読み書き可能な記憶媒体によって構成することも可能である。
記憶装置(240)には、シナリオ編集プログラム(240-1)、シナリオ編集データ(240-2)、及びその他のプログラム・データ(240-3)が格納されている。その他のプログラムとして、例えば、通信制御装置(230)を制御し、シナリオ作成装置とネットワークでつながれた端末装置やサーバ装置との通信を維持する通信プログラムや、メモリ管理や入出力管理などのシナリオ作成装置を動作させるための基本ソフトウェアであるOS(Operating System)なども記憶装置(240)に格納されている。
【0137】
記憶媒体駆動装置(250)は、着脱可能な記憶媒体を駆動してデータの読み書きを行うための駆動装置である。着脱可能な記憶媒体としては、例えば、光磁気ディスク、磁気ディスク、磁気テープ、ICカード類、データをパンチした紙テープ、CD−ROMなどがある。
本実施形態では、シナリオ作成装置で作成・編集したシナリオデータ(エージェント装置で使用する形態)は、主としてICカード類に書き込まれるようになっている。
シナリオ作成装置は、記憶媒体駆動装置(250)によって記憶媒体を駆動することにより、シナリオデータが格納された記憶媒体からシナリオを取得したり、あるいは、作成したシナリオデータを記憶媒体駆動装置から記憶媒体に格納したりすることができる。
【0138】
入出力I/F(260)は、例えば、シリアルインターフェースやその他の規格のインターフェースにより構成されている。
入出力I/F(260)に当該インターフェースに対応した外部機器を接続することにより、シナリオ作成装置の機能を拡張することができる。このような外部機器として例えば、ハードディスクなどの記憶装置、通信制御装置、スピーカ、マイクロフォンなどがある。
【0139】
次に、シナリオ編集プログラム(240-1)と、シナリオ編集データ(240-2)の構成について説明する。
図23は、シナリオ編集プログラムとデータの構成を概念的に表したものである。
シナリオ編集プログラム(240-1)は、シナリオエディタ(240-1-1)と、シナリオコンパイラ(240-1-2)と、DB編集ツール(240-1-3)が存在する。
シナリオ編集データ(240-2)は、共通定義DB(240-2-1)と、ローカル定義DB(240-2-2)と、シナリオエディタで作成したSCE形式シナリオデータ(240-2-3)と、シナリオコンパイラで変換された実機形式(NAV形式)シナリオデータ(240-2-4)が存在する。
シナリオエディタ(240-1-1)は、シナリオデータを作成するアプリケーションプログラムである。
【0140】
シナリオコンパイラ(240-1-2)は、シナリオエディタ(240-1-1)で作成されたSCE形式シナリオデータ(240-2-3)を、エージェント装置で使用可能な実機形式シナリオデータ(240-2-4)に変換するアプリケーションプログラムで、変換手段として機能する。
図24は、データ形式の変換を概念的に表したものである。
この図24に示されるように、シナリオコンパイラ(240-1-2)は、1個以上のSCE形式シナリオデータ(240-2-3)を、1個の実機形式(NAV形式)シナリオデータ(240-2-4)に変換する。
【0141】
DB編集ツール(240-1-3)は、共通定義DB(240-2-1)に格納されているデータを編集・更新するためのアプリケーションプログラムである。
共通定義DB(240-2-1)には、シナリオデータを作成する際の定義データが格納される。共通定義DB(240-2-1)には、自動起動条件項目、シーン展開の条件を規定する展開条件項目と追加条件項目(移行条件)、キャラクタの表示状態指示テーブル、等が格納される。この共通定義DB(240-2-1)は、シナリオ作成装置の記憶装置ではなく、ローカルエリアネットワーク(LAN)でつながっているサーバ上に存在してもよい。こうすることで、ローカルエリアネットワーク(LAN)でつながっている各シナリオ作成装置は共通の共通定義DB(240-2-1)を使ってシナリオデータを作成することが可能になる。
ローカル定義DB(240-2-2)は、シナリオ作成者がシナリオデータを作成中に定義した画面構成が格納される。
【0142】
SCE形式シナリオデータ(240-2-3)は、シナリオエディタ(240-1-1)で作成されたデータである。
実機形式(NAV形式)シナリオデータ(240-2-4)は、シナリオコンパイラ(240-1-3)によってSCE形式シナリオデータ(240-2-3)からエージェント装置で使用するためのデータ形式に変換されたデータである。
【0143】
シナリオ編集プログラムで編集できる項目の一部を例示する。これらは、共通定義DB(240-2-1)に格納されている。
図25は、通常シーンに規定され、その通常シーンから次のシーン(通常シーン、分岐シーン)に展開をするための移行条件(展開条件)が格納された展開条件項目テーブルを表したものである。展開条件項目テーブルには、図25に示されるように、キャラクタ動作終了、シナリオ割り込み、ユーザの応答として「はい」が選択等の各種対象の状態変化が規定されている。
展開条件項目は、1の通常シーンに対して複数設定することが可能であるが、通常シーンと他の通常シーン間、及び通常シーンと分岐シーン間には1つの展開条件項目が設定可能である。
展開条件項目テーブルは、共通定義DB(240-2-1)に格納されている。
展開条件項目の各項目は、各シーンの展開構成を作成する際に読み出され、分岐条件指定ウィンドウにリスト表示される。このリスト表示された中から展開条件項目を選択し、また、テーブルに格納されていない場合には別途展開条件をDB編集ツール(240-1-3)を使って定義し追加することにより、シーン展開構成が作成される。
1の通常シーンに対して展開条件項目の選択を繰り返し、その後に展開する通常シーンまたは分岐シーンを複数設定することで、複数の推移先を持つ(複数に分岐された)シーンを作成することができる。
【0144】
図26、図27は、キャラクタによらない統一の動作指示テーブルの内容の一部を概念的に表したものである。以下図26、図27の説明より、キャラクタ設定手段を形成する。
このテーブルは、キャラクタの種類によらずに共通した動作の表示状態が規定されており、キャラクタに表現させたい内容毎に分類されている。
キャラクタによらない統一の動作指示テーブルは、複数存在し、本実施形態では、仕事の状態(図26)、精神状態(図27)、TPO状態、成長状態、スケール状態の各表示状態指示テーブルが存在する。
図26、図27に示されるように、各表示状態指示テーブルは、複数のツリー構造になっており、後述するキャラクタ動作の状態指示編集ウィンドウに各ツリー構造の形と分類名が表示されるようになっている。
【0145】
図26、図27に示されるように、表示状態指示テーブルのツリーの末端の項目毎に状態指示番号が付されている。この状態指示番号が、エージェント装置1のキャラクタ画像選択データ(変換テーブル)102353の状態指示番号(図9参照)に対応している。
【0146】
これらのテーブルでは、図26、図27でも示されているように、表示状態に対する下層で定義されているレベル(丁寧に行なう、普通に行なう、強、中、弱等)をシステム(エージェント装置)に自動で選択させる項目「自動」を設けている。
この自動を選択したシーンに対して、エージェント装置では、キャラクタ心理状態、日付や時刻、等によってキャラクタのどのレベルの表示状態を使用するかを判断して、いずれかの表示状態を選択し実行することになる。
【0147】
共通定義DB(240-2-1)には、その他、音声認識に使用する音声認識用データと、キャラクタの動作指示に使用するデータ(別途台詞の指示データも存在する)と、各シーンで設定した指示をプレビューして確認するためのキャラクタ画像データ及びキャラクタ台詞データ及びキャラクタによらない統一の指示に対する各キャラクタの表現方法への変換テーブルと、表示装置(2)に表示する各パーツデータ及びそれらをどのように配置するかが記された画面構成データと、シーンにおける処理内容として選択可能な項目、例えば、エージェントが処理可能な行為である、オーディオ装置のオン・オフやチャンネル選択、エアコン装置のオン・オフと温度設定、全体処理部(102)に供給する目的地の設定等の各種処理内容項目データ等が共通定義DB(240-2-1)に格納されている。
なお、自動起動条件を編集するための起動条件に関する項目や、シナリオの展開を多彩にするための追加条件項目(分岐シーンで設定する項目)等もこの共通定義DB(240-2-1)に格納されている。
これら全ての定義データも、各定義データと同様に、変更及び追加がDB編集ツール(240-1-3)を使って行なうことができるようになっている。
【0148】
各シーンで設定した指示をプレビューして確認するためのキャラクタ画像データは、エージェント装置に格納されている各種キャラクタの画像データが格納されている。
なお、ユーザは、エージェント装置から他のキャラクタについてのキャラクタ画像データと、変換テーブルをICカード7、又は、サーバ3を介してシナリオ作成装置の共通定義DBに格納することも可能である。
【0149】
次に、このように構成されたシナリオ作成装置によるシナリオ作成の各動作について、画面の遷移に従って説明する。
図28は、シナリオエディタ(240-1-1)を起動した場合に表示装置に表示されるメインウィンドウの構成を表したものである。
この図28に示されるように、メインウィンドウは、作成中のシーン画面(エージェント装置1の表示装置(2)に表示されるシーン画面(図14参照))が表示されるシーン画面301と、各種設定を行う設定項目が表示された設定画面303と、シーンの展開構成(分岐の状態)が各シーンを表すシーンアイコン307のツリー構造により表示されるシーン展開画面305、及び処理アイコン表示部で構成されている。
【0150】
シナリオエディタ(240-1-1)を起動すると、メインウインドウのシーン展開画面305には、スタートポイント308が表示される。このスタートポイント308を選択するとシナリオプロパティの編集ができる。選択は、例えば、マウスカーソルによるポイント位置を該当箇所に合わせて、マウスをダブルクリックすることで選択される。
画面構成の変更ボタン309は、表示したい画面構成を選択するボタン、効果音設定ボタン110は、シナリオの各シーン毎に効果音を設定する画面を表示するボタンである。
エージェント表示画面311を選択すると、エージェント(キャラクタ)の動作の編集画面が表示される。
台詞編集ボタン313は、キャラクタの台詞の指示を編集するボタンである。ボタンパーツとバックグラウンド音声認識辞書設定315を選択すると使用する音声認識辞書の編集ができる。シーン画面301の回答選択ボタン315a(54a)のマークで表示されている方を選択すると認識する単語の名称がシーン画面に表示され、バックグラウンドで認識する方315bを選択すると、音声認識の対象となるが認識する単語の名称は表示されない。
【0151】
タイマー設定ボタン317は、タイマー設定情報を設定、及び変更するためのボタンである。
外部機器等の制御指示編集319では、外部機器等(ナビも含む)の制御指示を設定する。
音声認識開始制御指示320aでは、作成中のシーンにおいて音声認識を行う場合に、音声認識の開始をどのようにするかを規定する音声認識の指示を設定する。音声認識の指示としては、音声認識を「自動で開始する」、「自動で開始しない」、「エージェント装置(車載装置)が判断する(おまかせ)」、のうちのいずれかを選択可能になっている。
コールバック制御指示320bでは、音声認識の結果を確認するためのコールバックを行うか否かについての指示を設定する。コールバックの指示としては、「コールバックする」、「コールバックしない」、エージェント装置が状況判断してコールバックをするかしないかを判断する「エージェント装置が判断(おまかせ)」のうちのいずれかを選択可能になっている。
AMMの変化の設定変更ボタン321は、後述するように、作成中のシーンでエージェントの各長期的感情要素を変更するためのボタンである。
【0152】
シーン展開表示部322は、シーン展開画面で指定された(アクティブ状態の)シーンに対して規定されている展開条件項目及び追加条件項目と、その条件項目を満たす場合に継続(接続)するシーンが表示される。
シーン展開表示部322の左側には、図28に示されるように、アクティブ状態のシーンに設定された展開条件(図24参照)や追加条件の分類(図25参照)がツリー構造で表示される。また、シーン展開表示部の右側には、移行条件の内容とその接続先(展開先のシーン番号)が表示される。
【0153】
処理アイコン表示部には、シーン作成ボタン323、分岐シーン作成ボタン324、ダミーシーン作成部325、エイリアスシーン指定ボタン326、エンドIDボタン327、リンクIDボタン328、挿入ボタン329、上下差替ボタン330、シーン再生ボタン331、ビルドボタン332、その他の処理ボタンが表示されている。
【0154】
シーン作成ボタン323は、新たに通常シーンを作成する場合に使用する。
シーン作成ボタン323をクリックするとシナリオの流れを編集できる(次のシーンを作成する)。シーン作成ボタン323をクリックすると、現在選択しているシーンの次に展開する通常シーンの作成が可能になる。
シーン作成ボタン323でシナリオの流れを分岐させることで、各通常シーンに対する展開構成が作成される。例えば、図28のシーン展開画面305に表示されているシーン展開構成に於いて、通常シーンのアイコン5を選択した状態(アクティブ表示されている状態)で、シーン作成ボタン323をクリックするとシーン5に続くシーンのアイコンが下層側に表示され、複数回クリック(複数回作成操作を行う)することでシーン5に続いて展開される通常シーン7、8、…が分岐して作成される。
【0155】
すなわち、シーンm(通常シーン又は分岐シーン)を選択した状態でシーン作成ボタン323をクリックすることで、シーンmに続く次の通常シーンm1が作成される。そして、再度シーンmを選択した状態で、シーン作成ボタン323をクリックするとシーンmに続く次の通常シーンm2が、通常シーンm1と並列に分岐して作成される。同様に再度シーンmを選択した状態でシーン作成ボタン323をクリックすると通常シーンm3が作成される。
そして、作成した通常シーンm1に続くシーンを更に展開させたい場合には、通常シーンm1を選択した状態でシーン作成ボタン323をクリックすることで、通常シーンm1に続く次の通常シーンm1−1が作成される。通常シーンm1から分岐する別のシーンを作成する場合にはシーンm1を再度選択してシーン作成ボタン323をクリックすればシーンm1に続くシーンm1−2が作成される。
更に、作成した通常シーンm1−1アクティブにした状態でシーン作成ボタン323をクリックすれば、通常シーンm1−1に続く通常シーンm1−1−1が作成される。
【0156】
分岐シーン作成ボタン324、新たに分岐シーンを作成する場合に使用する。
分岐シーン作成ボタン324をクリックするとシナリオの流れを編集できる(次の分岐シーンを作成する)。分岐シーン作成ボタン324をクリックすると、現在選択しているシーンの次に展開する分岐シーンの作成が可能になる。
分岐シーン作成ボタン324により、展開条件に続けてさらに複数の追加条件で分岐させることで、移行条件の論理演算(論理和、論理積)による各通常シーンに対する展開構成を作成することができる。
例えば、図28のシーン展開画面305に表示されているシーン展開構成において、通常シーン1から通常シーン2に展開する場合に、両通常シーン間に分岐シーン4と分岐シーン6を挿入することで、通常シーン1に規定する状態変化をした場合で、分岐条件4と分岐条件6の両者を満たした場合に通常シーン2が通常シーン1に続いて展開される。このように、分岐シーンを複数使用することで、多彩な条件設定により種々の展開をするシナリオを作成することができる。
【0157】
図28において分岐シーンは符号333で表されている。分岐シーンの作成は、通常シーンに続けることも、分岐シーンに続けて作成することも可能である。例えば、図28のシーン展開画面305の通常シーン1をアクティブにした状態で分岐シーン作成ボタン324を選択することで分岐シーン4が作成され、この分岐シーンをアクティブにした状態で更に分岐シーン作成ボタン324を選択することで分岐シーン6が作成されている。
分岐シーンを階層的に作成する方法は、上で説明した通常シーンの作成方法と同様である。
【0158】
ダミーシーン作成ボタン325は、ダミーシーンを作成するボタンである。
ダミーシーンは、シーンを管理する管理データと、各種処理データと、展開管理データとで構成されていて、ナビゲーション機能における目的地の設定処理、エージェントの学習結果の記憶処理等の各週処理が規定される。
【0159】
エイリアスシーン指定ボタン326は、アクティブ状態のシーン(通常シーン、分岐シーン)から、作成済みの他のシーン(通常シーン、分岐シーン)に移行させるボタンである。
例えば、シーン展開画面305のシーン展開構成において分岐シーン6をアクティブにした状態で、エイリアスシーン指定ボタン326を選択した後に、移行したいシーン画面5を選択すると、シーン画面5に移行することを表すエイリアス画面334が表示される。
【0160】
エンドIDボタン327は、シナリオの終了位置を特定するためのエンドIDを作成するためのボタンである。
エンドIDボタン327をクリックするとシナリオの終了位置340を作成できる。作成した各シナリオの終了位置340には、終了番号がエンドIDとして割り振られるようになっている。
作成したシナリオの終了位置340を選択すると、エンドプロパティ編集画面を表示し、この画面において、エージェントの各短期的感情要素を設定、及び変更することができる。
【0161】
リンクIDボタン328は、シーンに他のシナリオをリンクさせるリンクIDを作成するためのボタンである。
挿入ボタン329は、それぞれアクティブ状態のシーン(通常シーン、分岐シーン)又はエンドマークの前に通常シーン、分岐シーン、ダミーシーンを挿入するためのボタンである。各シーンの種類に応じたボタンを選択する。
上下差替ボタン330は、シーンの上下位置を変更するボタンであり、アクティブなシーンを上に移動するボタンと下に移動するボタンがある。
シーン再生ボタン331は、アクティブな通常シーンを再生するためのボタンである。
ビルドボタン332は、作成したシナリオをエージェント装置で使うための実機形式(NAV形式)のフォーマットにコンパイルするためのボタンである。
【0162】
なお、図28に示したメインウィンドウは、シナリオの作成途中を例示したもので、シナリオエディタ(240-1-1)を起動した当初の画面は、シーン展開画面305にスタートポイント308だけが表示され、シーン画面301には何も表示されていず、設定画面303も未設定(デフォルト値は表示されている)の状態である。
【0163】
図29は、シーン展開画面305において分岐シーンをアクティブにした場合のメインウィンドウの状態を表したものである。
図29に示されるように、分岐シーン(図では分岐シーン4)を選択してアクティブにするとシーン画面301(図28参照)の領域に、追加条件分類表示欄335と、追加条件項目欄337が表示される。
分岐条件分類表示欄33には、アクティブ状態の分岐シーンに対して選択されている追加条件項目の分類が表示される。
分岐条件項目欄には、分岐先を指定する追加条件項目が表示される。
【0164】
図30は、シナリオプロパティを編集する画面操作の流れを表したものである。
図28に示したメインウインドウにおいて、シーン展開画面305に表示されているスタートポイント308をダブルクリックすると、図30に示すシナリオプロパティの編集ウインドウがメインウィンドウ上に重ねて表示される。
【0165】
このシナリオプロパティの編集ウィンドウにおいて、シナリオ名称入力,カナ名称入力,アイコン選択,ジャンル選択,プライオリティの設定,有効期限(開始条件を満たしてから実際に開始するまでのタイムラグの上限値)の設定,走行中実行条件の設定,シナリオの起動条件の設定(別ウインドウ),スタンバイ処理使用条件の設定,作成者名称入力,コメント入力が行なえる。この画面で入力されるシナリオ名称入力,カナ名称入力は、実機形式のシナリオデータにおける管理データ等となる。
シナリオプロパティの編集ウィンドウにおいて、決定ボタン402をクリックすると編集内容がデータに反映され、メインウインドウに戻る。一方、キャンセルボタン403をクリックするとデータに反映されなで、メインウインドウに戻る。
シナリオプロパティの編集ウィンドウ(図30)において、スタンバイ処理使用条件の設定ボタン409をクリックすると、スタンバイ処理の条件画面が表示され、スタンバイ処理を行うか否かを選択できるようになっている。
【0166】
シナリオプロパティの編集ウィンドウにおいて、起動条件の設定ボタン401を選択すると、シナリオ開始条件(自動起動条件)のメイン編集ウィンドウが表示される(図示せず)。
シナリオ開始条件のメイン編集ウインドウでは、ユーザがシナリオを手動で開始できるように設定できる。この事例ではチェックボックスのチェックを外して手動で起動しないに設定する。
このシナリオ開始条件のメイン編集ウインドウの自動起動条件(自律起動条件)一覧にはシステムがシナリオを自動で開始する条件が表示される。
シナリオ開始条件のメイン編集ウインドウにおいて、新規作成ボタンをクリックすると、自動開始条件選択ウインドウ(図示せず)が表示され、新しい開始条件の編集ができる。
【0167】
自動開始条件選択ウインドウにおいて、設定したい判断条件項目(カテゴリ)を選択し、決定をクリックすると自動開始する条件範囲の選択ウインドウへ進む。例えば、高速道路走行中にシナリオを自動で開始(自律起動)したい場合、「道路の状態がどのようなときに起動するか選択」の中の「種類を選択」の項目を選択し、更に「高速道路」を選択する。
【0168】
次に、自律起動条件以外の、シナリオを作成する各種操作について説明する。
図31は、エージェント表示画面51(図14参照)に表示したい画面構成を選択する画面操作の流れを表したものである。
この図31(a)に示されるメインウィンドウのシーン展開画面305に表示されているシーンアイコン307を選択してアクティブ状態にすると、選択したシーンアイコンに対応するシーン画面310が表示される。そして、設定画面303の画面構成の変更ボタン309をクリックすると、画面構成の選択ウインドウ(b)が表示される。
この画面構成の選択ウインドウ(b)では、シーン表示画面54(図18参照)に表示可能なる画面構成が一覧表示される。何も表示されない基本画面、ボタンによる選択ボタンが2つ表示された2択画面、選択ボタンが複数表示されたボタン選択画面、例えば、都道府県名等の複数の項目がリスト表示されるリスト選択画面、画像データを表示する画像表示画面等の各種選択可能な画面が表示される。
一覧表示された各画面構成の中から1の画面構成を選択し、決定ボタンをクリックすると画面構成を変更する場合は確認ダイアログで確認後変更する場合は、その画面構成に変更してメインウィンドウ(a)に戻る。メインウィンドウに戻ると、シーン画面301が新たに選択した画面構成に変更されて表示される。
【0169】
以下図32〜図35に基づく処理や操作は、キャラクタの表示内容(画像、音声)、処理内容に基づいて画面要素を設定する画面要素作成手段、及びキャラクタ設定手段を形成する。
図32は、キャラクタ動作(エージェントの動作)指示を編集する画面操作の流れを表したものである。
シーン画面の編集状態を表しているメインウィンドウ(図28)において、エージェント表示画面311をマウスでダブルクリックすると、動作指示編集ダイアログ(個別指示)(図32(a))又はキャラクタ動作指示編集ダイアログ(統一指示)(図32(b))が表示される。
いずれのウィンドウが表示されるかは、前回に使用したウィンドウが表示され、前回動作指示をキャラクタ毎の直接指示で指示しているときは(図32(a))が表示され、前回キャラクタに表現させたい状態で指示している場合は(図32(b))が表示される。最初に使用する場合には、キャラクタ動作指示編集ダイアログ(統一指示)が表示される。
【0170】
図32(a)のキャラクタ動作指示編集ダイアログ(個別指示)では、モーション(動作),表情(感情表現の要素),髪型(成長表現の要素),服装(TPO表現の要素),スケール(キャラクタ表示領域をカメラのフレームとするとそのカメラアングルの要素),口パクをする範囲(台詞を割り当てる範囲),動作の指示タイミング,及びキャラクタ表示領域の背景を選択する。
モーション一覧の中からモーションを選択すると右側の選択したモーション欄に表示される。作成中のシーンが実行された場合に、選択したモーションに対応する個別動作画像が再生されることになる。モーションは複数選択することが可能であり、選択した順番(選択したモーション欄のリスト表示順)に対応する個別動作画像が再生される。
図32(a)のキャラクタ動作指示編集ダイアログ(個別指示)において、決定ボタンをクリックすると編集内容がデータに反映され、メインウィンドウ(図28)に戻る。キャンセルボタンをクリックするとデータに反映されなで、メインウィンドウに戻る。
また、表現内容指定ボタンをクリックすると、キャラクタ動作指示編集ダイアログ(統一指示)図32(b)切り替わる。
【0171】
キャラクタ動作指示編集ダイアログ(個別指示)で動作の指示(表示状態)が選択されると、キャラクタ固有の動作としてシーンが定義される。この場合、エージェント装置1では、描画・音声出力部(101-5)によるキャラクタ描画・音声出力処理において、キャラクタによらない統一の動作指示でないと判断される。
【0172】
図32(b)のキャラクタ動作指示編集ダイアログ(統一指示)では、キャラクタが表現する状態として、共通定義DB(240-2-1)に格納されているキャラクタによらない統一の動作指示テーブル(図26、図27参照)に対応して、仕事の要素,精神状態の要素,TPO表現の要素,成長表現の要素,スケール要素(キャラクタ表示領域をカメラのフレームとするとそのカメラアングルの要素),が選択可能に表示される。また、動作の指示タイミング,及びキャラクタ表示領域の背景の選択画面が表示される。
ユーザは、このキャラクタ動作の状態指示編集ウインドウに表示された各表示状態を選択することで、キャラクタによらず各キャラクタに共通した動作として選択した表示状態に対応する表示状態番号が設定中のシーンの内容として設定される。
このウィンドウで、決定ボタンをクリックすると編集内容がデータに反映され、メインウィンドウ(a)に戻る。キャンセルボタンをクリックするとデータに反映されなで、メインウィンドウ(a)に戻る。
直接指示指定ボタンをクリックすると、キャラクタ動作指示編集ダイアログ(個別指示)(b)に切り替わる。
【0173】
図32のキャラクタ動作指示編集ダイアログでは、キャラクタ動作品質欄において、中断イベントが発生した場合の移行モード(品質モード、即応モード)を規定することができる。このキャラクタ動作指示編集ダイアログにより移行モードを規定することで、キャラクタの動作表現を中断するか否かを設定する動作中断設定手段を形成する。
キャラクタ動作品質欄左側のプルダウンボタンがクリックされると、選択可能なモードとして、「自動選択」、「動作終了を待って切り替え」(品質モードに対応)、「動作終了を待たずに切り替え」(即応モードに対応)、をプルダウン表示し、そのうちのいずれかが選択されると、モーション一覧から選択したモーションの個別動作画像に対応した移行モードとして規定する。
なお、図32(a)のキャラクタ動作指示編集ダイアログ(個別指示)における台詞の割付範囲の最初(左側)と終わり(右側)を指定することで、指定された範囲のモーションに対応する個別動作画像が、編集中のシーンにおいて設定した台詞(キャラクタの音声)に対応付けられる。これにより、対応付けられた台詞似合わせて指定範囲の個別動作画像が再生されることになる。
例えば、モーション一覧からa、b、c、d、eの順に5つのモーションが選択されていて、台詞の割付として2〜4が範囲として指定されている場合、個別動作画像aの再生が終了した後にb〜dまでの個別動作画像が再生され、この間にキャラクタが台詞を音声出力する。その後、eの個別動作画像が再生される。
【0174】
図33は、メインウィンドウにおいて台詞編集ボタンが選択された場合に表示される、示す音声編集メモウィンドウの説明図である。
図28のメインウィンドウにおいて、台詞編集ボタン313が選択(クリック)されると、シナリオエディタ211は、図33に示す音声編集メモウィンドウ600を新たに表示する。
なお、シナリオエディタ211の処理として説明したが、実際に表示するのはシナリオエディタ211(プログラム)とCPU101が協同して表示等の処理を行うが、説明を簡単にするため、両者が協同した動作をシナリオエディタ211の処理、及び動作として説明する。以下の説明、及び合成音声編集ダイアログ214の処理及び動作も同様に説明する。
【0175】
図33の音声編集メモウィンドウ600において、音声編集ボタン601が選択されると、合成音声編集ダイアログ214が起動し、合成音声編集ダイアログ214が図34に示す音声編集メイン画面608を表示する。
この音声編集メイン画面608で合成音声データが作成されると、その合成音声データに対応する文を、シナリオエディタ211は音声編集メモウィンドウ600の吹き出し表示部602にテキスト表示する。
なお、音声編集を行わずに吹き出し表示部602に直接テキスト入力することも可能である。この場合には、合成音声データが作成されないため、このシナリオをエージェント装置で実行しても音声は出力されず、吹き出し表示部602から入力されたテキストが吹き出し52に表示される。
【0176】
図34は、音声編集メイン画面608を表したものである。
音声編集メイン画面508は、音声特定部と、台詞入力部と、前方一致検索部と、結果表示部と、キャンセルボタンを備えている。
音声特定部は、声の種類を選択する声種類選択ボタン607と、感情を選択する感情選択ボタン605で構成される。
台詞入力部は、台詞入力ボックス610と、変換ボタン611とで構成される。
前方一致検索部は、チェックボックス612、前方一致候補がリスト表示される候補リストボックス613、リスト表示されていない候補も含めた全候補の数が表示される候補数ボックス614、リスト表示された候補を選択する候補選択ボタン615で構成される。
結果表示部は、合成音声データによる音の繋がりを、枠で囲われた単語と無音線分により視覚的に表示する単語列情報ボックス619、再生ボタン620、全削除ボタン621、文章登録ボタン622、登録文章一覧ボタン623、選択中単語登録ボタン624、新規単語登録ボタン625、登録単語一覧ボタン626、決定ボタン627で構成されている。
【0177】
この音声編集メイン画面605の台詞入力ボックス610にエージェントに発音させたい会話の内容をなす台詞を入力することで、対応する合成音声データが作成及び編集される。以下、その合成音声作成及び編集の処理動作について説明する。
【0178】
声種類選択ボタン607が選択されると、合成音声編集ダイアログ214は、選択可能な声の種類をドロップダウン表示する。選択可能な声の種類としては、成人女性、成人男性、…、自動選択、のうちの一つを選択可能であり、選択された声の種類は、合成音声データとしてメモリ102に格納される。デフォルトの音の種類は成人女性が規定されている。
種類として、自動選択が選択された場合、合成音声編集ダイアログ214で作成、編集した合成音声データを試聴する場合(再生ボタン620がクリックされた場合)には、デフォルトの種別で再生される。
シナリオを実行するエージェント装置側でも音声を指定する機能があり、自由選択が選択されている場合には、エージェント側で指定した音声、又はエージェント装置ユーザが指定した音声、又は、指定したキャラクタに準拠した音声(声の種類)が出力される。一方、シナリオデータの合成音声データとして、自由選択以外の声の種類が選択されている場合には、エージェント装置による指定に関わりなく、合成音声データに従う声の種類の音声が優先して出力される。
【0179】
感情選択ボタン605が選択されると、合成音声編集ダイアログ214は、楽しい、悲しい、元気、…普通、といった喜怒哀楽を示す各感情のドロップダウンメニューを表示する。
ユーザによっていずれかの感情が選択されると、合成音声編集ダイアログ214は、台詞DB221aから、同一の表記に対して複数存在する単位音声データのうち、選択された感情に対応する音声コードを優先的に検索する。
感情が選択されていない場合には、感情「普通」を選択する。
このように、感情、声の種別の少なくとも一方を指定することにより、本発明の指定手段を形成する。
【0180】
台詞入力ボックス610が指定されて文字が入力されると、合成音声編集ダイアログ214は、入力された文字を順次表示する。
そして、チェックボックス612にチェックがされている場合、台詞DB221aの表記文字部分を前方一致検索し、候補となる表記を候補リストボックス613にリスト表示すると共に、リストした候補数を候補数ボックス614に表示する。
図34に表示されている一例では、台詞入力ボックス610に「今日」が入力されているので、合成音声編集ダイアログ214は、「今日」が前方一致する候補として「今日」「今日は」「今日は晴れです」…等の16の候補が検索され、その内の8個が表示されている。表示されていない候補は、候補リストボックス613右側のスクロールボタンを移動してスクロール表示させることが可能である。
そして、例えば、さらに「は晴れ」が入力された台詞入力ボックス610に「今日は晴れ」と表示されると、前方一致検索の結果、「今日は晴れです」「今日は晴れですね」及び「今日は晴れだね」の3候補がリスト表示される。
このように、前方一致検索は、入力され台詞入力ボックス610に表示されたテキストに応じて、ユーザの操作なしに自動的に実行される。
【0181】
候補リストボックス613に表示された前方一致候補リストの内からいずれか1つが選択されて決定されると、単語列情報ボックス619に表示すると共に、台詞入力ボックス610、候補リストボックス613と候補数ボックス614の表示をクリアする。
選択した候補の決定は、候補のマウスダブルクリック、候補を選択後、候補選択ボタン615のクリック、候補を選択後キーボードの「Enter」キーにより決定される。
【0182】
次に、合成音声データの作成と、単語列情報ボックス619に表示する、入力文を視覚的に表示する単語列表示について説明する。
合成音声編集ダイアログ214は、変換ボタン611が選択されると、台詞入力ボックス610に表示されたテキスト(入力文)を、変換対象文として一括して変換する。
なお、既に吹き出し画面52(図14、図28参照)に表示するテキスト文が入力されている場合(合成音声データが作成されていない場合といる場合がある)、図28の台詞編集ボタン313がクリックされると、入力済みのテキスト文が吹き出し表示部602に表示される。そして、この状態で音声編集ボタン601が選択されると、合成音声編集ダイアログ214は、吹き出し表示部602に表示されているテキスト文を台詞入力ボックス610に表示する。これにより、作成済みの合成音声データも編集対象とすることができる。
【0183】
図35は、音声認識辞書を編集する画面操作の流れを表したものである。
この操作は、作成したシナリオに基づいて回答を要求する問いかけをエージェント装置でした場合に、ユーザから返される音声による回答をエージェント装置で認識するための音声辞書を設定するものである。
シーン画面の編集状態を表しているメインウィンドウ(図28)において、選択された画面構成に従って表示されるボタンパーツ部315a(画面構成によっては通常リストボックスパーツ部の場合も有る)をダブルクリックすると音声認識辞書選択ウインドウ(図35(a))が表示される。また、バックグラウンドで認識する辞書の一覧表示部315bをダブルクリックしても音声認識辞書選択ウインドウが表示される。
【0184】
音声認識辞書選択ウインドウ(図35(a))において、辞書候補の一覧表示にある辞書名称をダブルクリックするとその音声認識辞書を使うものとして、一般辞書として選択した一覧に表示される。
決定ボタンをクリックすると編集内容がデータに反映されてメインウィンドウ(図28)に戻り、キャンセルボタンをクリックするとデータに反映されなでメインウィンドウに戻る。
ユーザ定義辞書の編集ボタンをクリックすると、音声認識辞書を新規に作成する音声認識辞書作成ウインドウ(図35(b))が表示される。このウインドウにおいて、辞書の名称を入力して辞書追加ボタンをクリックするとその名称で音声認識辞書を新規に作成して音声認識辞書へ単語登録するウインドウ(図35(c))が表示される。
音声認識辞書作成ウインドウでOKボタンをクリックすると音声認識辞書の作成を終了し、音声認識辞書選択ウインドウにもどる。
【0185】
音声認識辞書へ単語登録するウインドウ(図35(c))では、登録したい単語を半角カナでフリガナ欄に入力し、決定ボタンをクリックする。次に名称(表示させたい名称)を選択もしくは新規入力し、コールバックをする際のPCM音声を選択(無しを選択すればコールバックする場合はTTSを使用する)する。これら3項目の入力をした後に登録ボタンをクリックするとデータ登録され右側の登録単語一覧に追加される。
登録したい単語の登録を全て終わったら戻るボタンをクリックすると音声認識辞書作成ウインドウに戻る。
【0186】
次に、シナリオの流れを編集する操作について説明する。
図28のメインウィンドウにおいて作成中のシーンアイコン307を選択してアクティブ状態にする。この状態で、新規シーン作成ボタン323をクリックすると、移行の選択ウインドウ(図示せず)が表示される。
この移行の選択ウインドウにおいて、新規に作成するシーンへ分岐させる条件を分岐イベント一覧から選択することで次のシーン(新規作成するシーン)への移行条件がが決定され、メインウィンドウへ戻る。
戻った後のメインウィンドウのシーン展開画面305に、新たにシーンが作成され、他のシーンアイコンと区別するため、NEWと表記される。
なお、分岐イベントの選択ウィンドウで選択できる分岐イベントは、図25に表示されている。
以上のように、1つの画面要素から次の画面要素に移行するための条件を設定することにより、本願発明における移行条件設定手段及びキャラクタの1つの動作処理から次の動作処理に移行する制限時間を設定する移行制限時間設定手段が形成される。
【0187】
次に、シナリオの終了位置を編集する操作について説明する。
図28のメインウインドウにおいて、シナリオのエンドIDボタン327をクリックするとエンドIDの指定ウインドウ(図示せず)が表示される。
このエンドIDの指定ウインドウにおいて、終了位置マークの持つID番号を指定する。通常は自動割付するが、自動で割り付けると書かれたチェックボックスのチェックをはずせばエディタの操作者が自分で割り付けることもできる。OKボタンをクリックするとID番号を決定し分岐イベント選択ウインドウ(図示せず)が表示される。
分岐イベント選択ウインドウでは、新規シーン作成時と操作方法は同様にシナリオを終了するための分岐条件を設定する。追加条件設定も同様にできる。このウィンドウで、OKボタンをクリックするとその条件(移行条件)に決定してメインウィンドウへ戻る(移行条件設定手段)。このときメインウィンドウのシーン展開画面305には、新たにエンドIDが作成され表示される。
以上説明したように、キャラクタ(エージェント)の表示内容、処理内容の少なくとも1つが定義された画面要素を1画面要素(シーン)とし、該画面要素及び画面要素間の移行条件とを組み合わせて画面要素推移体(シナリオ)を作成する画面要素推移体作成手段が形成される。
また、以上説明したように、車両内の表示装置に表示するためのキャラクタの処理内容を設定するキャラクタ表示処理設定手段が形成される。
【0188】
図36は、作成したシナリオをエージェント装置で使用可能な実機形式(NAV形式)のフォーマットにコンパイルするための画面操作の流れを表したものである。
メインウインドウ(図36(a))において、ビルドボタン332をクリックすると、シナリオコンパイラのウインドウ(b)が表示される。
このシナリオコンパイラのウインドウ(b)において、コンパイルしたデータを出力するファイルの名称を指定し、同時に変換するシナリオを選択(シナリオ一覧リストにチェックしたシナリオを同時に変換する)し、コンパイルボタンをクリックすると、シナリオコンパイラ(240-1-2)がデータ変換を開始する。データ変換の状況を結果表示部に表示する。
終了ボタンをクリックするとデータ変換を終了し、メインウィンドウ(a)に戻る。
【0189】
以上説明したように、画面要素(シーン)、移行条件、分岐要素及び分岐条件を組み合わせて画面要素推移体(シナリオ)を作成する画面要素推移体作成手段が形成される。
また、以上説明したように、車両内の表示装置に表示するためのキャラクタの処理内容を設定するキャラクタ表示処理設定手段が形成される。
【0190】
以上説明したように、本実施形態のシナリオ作成装置によれば、シナリオの各シーンにおけるキャラクタの動作を指示する表示状態をキャラクタの種類によらずに共通化したので、キャラクタにとらわれずに実行できるシナリオを作成することができ、キャラクタ毎に作成していたシナリオを1個にまとめることができるため、シナリオ作成が容易になる。
【0191】
また説明した実施形態のエージェント装置によれば、エージェントの心理状態として長期的感情要素と短期的感情要素を規定し、両感情要素の両方を参照し、行動を決定することにより、より人間らしくエージェントを振舞わせることができる。
そして、シナリオ作成装置では、両感情要素をシナリオの移行条件として設定可能とし、また、シナリオにおいて両感情条件を変更可能にすることで、より人間らしく振る舞うエージェントのシナリオを作成することができる。
【0192】
また、本実施形態によれば、シナリオ作成装置で作成されたシナリオデータに基づいてエージェントを自律的に起動させる(自動で登場させる)条件を満たしたかを判断する処理を定期的にもしくは特定の状態を満たしたときに実行し、条件を満たした場合にエージェントを自動で登場させることができる。
一方、本実施形態のシナリオ作成装置及びシナリオエディタによれば、プログラムの知識の有無に関係無く、シナリオエディタを持つことで特定の条件を満たしたときに自動で登場して対応してくれるエージェントのシナリオデータを容易に作成及び編集することができる。
【0193】
また、本実施形態によれば、各個別動作画像を、基本姿勢状態画像で開始し、基本姿勢状態画像で終了するようにしたので、個別動作画像間でキャラクタの姿勢が急激に変わることがなくなり、より自然な動きとすることができる。
また、個別動作画像を開始動画、保持動画、終了動画で構成し、保持動画の再生を繰り返すことで不自然な動作をせずに時間調整をすることが可能となる。
また、品質よりも応答速度が重要な場合には、中断条件を満たした場合に再生中の個別動作画像を中断して次の個別動作画像を再生することでキャラクタの応答を素早くすることができる。
【0194】
以上説明本発明の好適な実施形態につて説明したが、本発明では、種々の変形が可能である。
例えば、品質モードにおける中断後の再生を、図37に示すように第2の品質モードIIとしてもよい。
なお、第2の品質モードIIは、実施形態の図20で説明した品質モードに代えて採用してもよく、図20の品質モードと第2の品質モードIIを併用するようにしてもよい。併用する場合には、図32のキャラクタ動作品質のプルダウンメニューに第2の品質モードIIを選択対象に加える。また、エージェント装置では、動作切り替え判断データ(10-2-3-8)(図13参照)の自動選択の対象として「クオリティ重視」(図20の品質モードに対応)と、「反応重視」(図21の即応モードに対応)に、「クオリティ・反応中間」(第2の品質モードIIに対応)を加えて規定する。
【0195】
図37は、第2の品質モードIIにおける中断後の再生状態を表したものである。
(1)開始動画再生中の場合
図37(a)に示されるように、開始動画の再生中に中断イベントが発生すると、再生中の開始動画を中断して、終了動画を途中から再生する。
終了動画の再生開始箇所は、再生動画と終了動画の再生時間がT1で、開始動画を再生してから中断イベント発生までの時間をT2とした場合、終了動画は、T1−T2時間経過後の箇所から開始する。この場合終了動画の再生時間もT2となる。
開始動画と終了動画は対称関係にある、すなわち、終了動画を基本姿勢状態画像から逆方向に再生すると開始動画と同一になることから、開始動画を中断した際の画像と、終了動画を開始した際の画像とは一致している。このため、中断の際の画像のギャップをなくして、再生中の画像を早めに終了させることができる。
【0196】
(2)保持動画再生中の場合
図37(b)に示されるように、保持動画の再生中に中断イベントが発生した場合には、再生中の保持動画を中断して終了動画を再生し、その後に後続の個別動作画像に移行する。
これにより、保持動画の残りの再生時間だけ即応することができる。この場合、保持動画は保持状態画像から僅かの動きとすることで、終了動画は保持状態画像から開始するので、画像間のギャップは小さくなっている。この場合の保持状態画像12b1、12b4からの僅かな動作としては、保持状態画像との差分が10%を超えない範囲での動きとなっている。
なお、所定範囲内での僅かな動きとしては、単位時間における前画像との差分が10%以内とするようにしてもよい。また、差分の範囲としては、10%以外に5%、15%、20%としてもよい。
(3)終了動画再生中の場合
図37(c)に示されるように、終了動画の再生中に中断イベントが発生した場合には、そのまま終了動画を再生した後に後続の個別動作画像に移行する。この動作は、図20(c)に示した移行と同一である。
以上説明した第2の品質モードIIの場合の時間調節用の保持動画では、小さく手を振る、瞬きをする、小首をかしげる等の僅かであるが動作を行うので、エージェントが動作中であることをユーザに認識させることができる。また、保持動画は保持状態僅かな動きであるため、保持動画の繰り返し再生している途中で中断して終了動画に移行しても画像のギャップが大きくなることがない。
【0197】
また説明した実施形態では、基本姿勢状態が1つの場合について説明したが、基本姿勢状態を複数設けるようにしてもよい。
例えば、基本姿勢状態をA、B、Cの3種類とした場合、各々の基本姿勢状態A、B、Cから開始し保持状態を経てまた基本姿勢状態A、B、Cに復帰する個別動作画像を用意する。各個別動作画像は、説明した実施形態と同様に、開始動画、保持動画、終了動画で構成する。
また、1の基本姿勢状態から他の基本姿勢状態に変化するための基本姿勢変更動画を別個用意する。この基本姿勢変更動画の数は、基本姿勢状態の数がQであれば、(Q2−Q)個必要となる。例えば、基本姿勢状態がA、B、Cの3種類である場合、Aで開始しBで終了する基本姿勢変更動画、Bで開始しAで終了する基本姿勢変更動画、Bで開始しCで終了する基本姿勢変更動画、Cで開始しBで終了する基本姿勢変更動画、Cで開始しAで終了する基本姿勢変更動画、Aで開始しCで終了する基本姿勢変更動画の6種類の基本姿勢変更動画を用意する。
そして、基本姿勢変更動画と個別動作画像をしようして、画像間にギャップのない動画を連続して再生することが可能になる。
このように基本姿勢状態を複数設けることで、キャラクタにより複雑な動作をさせることができるようになる。
【0198】
【発明の効果】
請求項1から請求項3に記載の発明によれば、画面要素推移体の1画面要素で定義された動作表現動画の実行中に、車載装置又は使用者から所定の指示があった場合、実行中の動作表現動画の再生品質及び応答速度に対して不自然さを少なくして後続動画を再生することができる。
請求項4、請求項5に記載の発明によれば、車載装置で実行されることでキャラクタがコミュニケーションを行う画面要素推移体と、その起動条件を作成すると共に、画面要素で定義された動作表現動画を実行中、車載装置又はその使用者からの所定指示がなされた場合に、キャラクタの動作表現動画を中断するか否かについてのモードを設定することができる。
【図面の簡単な説明】
【図1】本発明の一実施形態におけるエージェント装置の構成を示すブロック図である。
【図2】同上、エージェント装置における各種状況検出装置の構成図である。
【図3】CPUでプログラムが実行されることにより実現されるエージェント処理部と、全体処理部との関係を表した説明図である。
【図4】エージェント処理部の構成を表した説明図である。
【図5】外部記憶媒体に集録されている情報を概念的に表した説明図である。
【図6】メンタルモデルデータの内容を概念提供に表した説明図である。
【図7】長期的感情要素を概念的に表した説明図である。
【図8】長期的感情変化条件の規定内容を例示した説明図である。
【図9】短期的感情要素を概念提供に表した説明図である。
【図10】短期的感情変化条件の規定内容を例示した説明図である。
【図11】実機形式シナリオデータの構成を表したものである。
【図12】キャラクタが右手を挙げる動作を表す個別動作画像の内容の一例を表した説明図である。
【図13】エージェントデータにおける動作切り替え判断データの内容を概念的に表示した説明図である。
【図14】シナリオのシーンデータに基づいて表示装置に表示されるシーン画面の一例を表した説明図である。
【図15】旅館が宿泊予定者に送信した案内シナリオによるシーン画面の遷移を各シーン毎に表した画面遷移図である。
【図16】シナリオ実行処理の流れの一例を表したフローチャートである。
【図17】シーン処理の流れの一例を表したフローチャートである。
【図18】描画・音声出力部(101-5)によるキャラクタ描画・音声出力処理を表したフローチャートである。
【図19】個別動作画像を再生する場合に、開始動画、保持動画、終了動画間で移行可能な流れを表した説明図である。
【図20】品質モードにおける中断後の再生状態を表した説明図である。
【図21】即応モードにおける中断後の再生状態を表した説明図である。
【図22】シナリオ作成装置の構成図である。
【図23】シナリオ編集プログラムとデータの構成を概念的に表したものである。
【図24】データ形式の変換を概念的に表した説明図である。
【図25】シーンから次のシーンに分岐(シーン展開)をするための展開条件項目(移行条件)が格納された展開条件項目テーブルである。
【図26】共通定義DBに格納されている、キャラクタの表示状態指示テーブルの内容の一部を概念的に表した説明図である。
【図27】共通定義DBに格納されている、キャラクタの表示状態指示テーブルの内容の他の一部を概念的に表した説明図である。
【図28】シナリオエディタを起動した場合に表示装置に表示されるメインウィンドウの構成を表したものである。
【図29】シーン展開画面の分岐シーンをアクティブにした場合のメインウィンドウの状態を表した説明図である。
【図30】シナリオプロパティを編集する画面操作の流れを表したものである。
【図31】エージェント表示画面に表示したい画面構成を選択する画面操作の流れを表したものである。
【図32】キャラクタ動作(エージェントの動作)指示を編集する画面操作の流れを表したものである。
【図33】メインウィンドウにおいて台詞編集ボタンが選択された場合に表示される、示す音声編集メモウィンドウの説明図である。
【図34】音声編集メイン画面の説明図である。
【図35】音声認識辞書を編集する画面操作の流れを表したものである。
【図36】作成したシナリオをナビゲーションで使用可能な実機形式のフォーマットにコンパイルするための画面操作の流れを表したものである。
【図37】品質モードにおける中断後の再生状態の変形例を表した説明図である。
【符号の説明】
1 エージェント装置装置
2 シナリオ作成装置
3 サーバ
(1) 中央処理装置
(2) 表示装置
(3) 音声出力装置
(4) 音声入力装置
(5) 入力装置
(6) 各種状況検出装置
(7) 各種車載装置
(8) 通信制御装置
(9) 通信装置
(10) 外部記憶装置
(200) 制御部
(210) 入力装置
(220) 出力装置
(230) 通信制御装置
(240) 記憶装置
(250) 記憶媒体駆動装置
(260) 入出力I/F
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an in-vehicle device and a data creation device, for example, an in-vehicle device provided with an agent function for performing conversation and communicating with a vehicle occupant autonomously and performing device operations, and the like. The present invention relates to a data creation device that creates a screen element transition body.
[0002]
[Prior art]
For example, pet-type robots such as dogs, and agent devices that interact with passengers by providing guidance on device operations such as navigation devices in the passenger compartment and asking questions and suggestions according to the situation have been developed. It is mounted on a vehicle as an in-vehicle device (see, for example, Patent Document 1).
In addition, various states that can be considered for the apparatus are assumed, and actions to be taken when each assumed state is detected are defined in accordance with predetermined data and programs.
[0003]
[Patent Document 1]
JP-A-11-37766
[0004]
In this conventional agent device, for example, the agent E appears on the display device 27 when the detection value G1 of the fuel detection sensor 415 is equal to or less than the average value G2 (G1 ≦ G2) of the remaining fuel amount for all five times. Then, a moving image for prompting refueling is displayed on the display device 27, and a sound such as “I am hungry! I want gasoline!” Is output from the sound output device 25.
[0005]
[Problems to be solved by the invention]
In the conventional agent device, the state in which the agent performs various operations corresponding to various situations is displayed as a moving image or a still image. For example, a series of videos that the agent bows, a nod video, a video that points to the answer by raising the right hand to prompt the user to select the answer to the question displayed on the screen, etc. It represents the operation of.
However, if the playback time of the moving image to be displayed is fixed, the following problem occurs. For example, in the case of an animation that prompts an operation, if the user hesitates to perform an operation or if the playback of a video ends while thinking about the operation, the user misunderstands that the operation cannot be continued. To give to. In this case, the user will not know what to do after that.
Also, when playing the same video for multiple situations, if the playback time of the video is fixed, the different audio contents output depending on the situation will be different, so the audio and video will not be synchronized It will also be.
[0006]
Therefore, it is conceivable to change the playback time of the moving image according to the situation.
For example, it is possible to adjust the time so that the entire moving image can be looped. However, if a situation occurs in which a transition to a subsequent video occurs during a loop, and the video is interrupted, if the position and orientation of the character at the time of the loop interruption differ from the first frame of the subsequent video, the subsequent video An operation gap occurs between them and the reproduction quality of the moving image is lowered. Also, depending on the operation content of the agent, for example, an unnatural repetition of the same operation, such as repeated bowing, may occur, giving the user a sense of discomfort.
On the other hand, it is conceivable to freeze the image without looping the movie, but the agent's movement is completely stopped, which may give the user a misunderstanding that the system has failed or stopped. .
Furthermore, it may be possible to prepare videos with different lengths depending on the playback time, but since it is necessary to have videos for each playback time, the amount of data to be stored increases and the time that has occurred since the start of video playback is uncertain It is impossible to make a moving image correspond to various situations (such as vehicle running state or communication state).
[0007]
In addition, when the user makes a selection while playing a moving image that requires the user to select, two methods can be considered as the timing for playing the subsequent moving image. First, in the case of a method in which a moving image being reproduced is immediately interrupted to shift to subsequent moving image reproduction, the operation becomes unnatural due to a gap between the interrupted image and the starting image of the subsequent moving image, and the reproduction quality is deteriorated.
On the other hand, in the case of a method in which a moving image being reproduced is reproduced to the end and a subsequent moving image is reproduced, the response of the agent's operation to the user's operation becomes worse.
[0008]
Therefore, in the present invention, when there is a predetermined instruction from the in-vehicle device or the user during execution of one screen element of the screen element transition body, unnaturalness with respect to the playback quality and response speed of the moving image stage being executed. It is a first object to provide an in-vehicle device capable of reproducing a subsequent moving image with a reduced amount.
In addition, the present invention creates a screen element transition body in which characters communicate with each other by being executed by the in-vehicle device, and a start condition thereof, and a predetermined instruction is given from the user or the in-vehicle device while executing the screen element. The second object of the present invention is to provide a data creation device capable of setting whether or not to interrupt the action expression of a character.
[0009]
[Means for Solving the Problems]
According to the first aspect of the present invention, the start moving image from the basic posture state of the character to the predetermined posture state indicating the expression content, the retained moving image holding the predetermined posture state, and the end moving image from the predetermined posture state to the basic posture state At least 3 videos Consist of Character motion expression Video Expression to memorize Video Storage means and action expression of the character Video Screen element transition that stores a screen element transition body composed of a combination of the screen elements, with one screen element defined as the display element containing the display content body Storage means, screen element transition body execution means for executing the screen element transition body, and one screen element of the screen element transition body Action expression video defined in If there is a predetermined instruction from the in-vehicle device or user during the execution of Concerned Running Action expression Ready mode to interrupt the video and execute the next screen element, Concerned Expression of action during execution Video And a mode determination means for determining a quality mode for executing the next screen element after the operation is completed.
According to a second aspect of the present invention, the mode determination means is a representation of an action being executed when a predetermined instruction is received from an in-vehicle device or a user. Video of 1 The in-vehicle device according to claim 1, wherein it is determined whether the mode is a quick response mode or a quality mode from a mode defined by a screen element.
In the invention according to claim 3, the mode determination means, when there is a predetermined instruction from the in-vehicle device or the user, In-vehicle The vehicle-mounted device according to claim 1, wherein whether the mode is an immediate mode or a quality mode is determined according to a table defined in the device.
In invention of Claim 4, A data creation device for creating a screen element transition body to be executed by an in-vehicle device, wherein a start moving image from a basic posture state to a predetermined posture state indicating an expression content, a holding moving image that holds the predetermined posture state, and the predetermined posture state Stipulated in a stage consisting of at least three videos from the end video to the basic posture state Character motion expression Video A screen element with specified display content including As one screen element From the screen element creation means to be created and the one screen element created by the screen element creation means, the following 1 A transition condition setting means for setting a transition condition for shifting to a screen element; 1 Screen element transition body creating means for creating a screen element transition body to be executed by the in-vehicle device based on the screen element and the transition condition, the screen element creation means, 1 Screen element Action expression video defined in In-vehicle device Or its user Character's motion expression when given instructions from Video Whether to interrupt About mode The , In the one screen element Provided is a data creation device further comprising operation interruption setting means for setting.
According to a fifth aspect of the present invention, the operation interruption setting means is an operation being executed. Expression video The Interruption Responsive mode to execute the next screen element, and motion expression during execution Video Quality mode, which executes the next screen element after continuing Whether to interrupt In-vehicle device side Judging by Automatic judgment mode Any one of the above is set, and the data creation device according to claim 4 is provided.
[0010]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 1 to FIG. 1 show an agent device that is a preferred embodiment of the in-vehicle device of the present invention, a scenario creation device that is a preferred embodiment of a data creation device, and a scenario editor that is a preferred embodiment of a data creation program. This will be described in detail with reference to FIG.
[0011]
(1) Outline of the embodiment
In the agent device of the present embodiment, an agent (character) image (planar image, stereoscopic image such as holography) having a predetermined appearance is displayed in the vehicle. The function of the agent device is a function of recognizing and judging the surrounding state (including human movement and voice) from the detection result of the sensor or the like, and outputting a video or voice of the action according to the result. It is executed in conjunction with the movement and voice of this agent's appearance. For example, an operation of tilting the head is performed together with a question requesting an answer (Japanese food, Western food, etc.) such as “Which genre do you like?”. Then, the content of the user's answer to this question is discriminated (recognized from the answer voice recognition or the answer selection button 54a selection), and the process corresponding to the next scene (screen element) is executed. As described above, since the inquiry requesting an answer from the apparatus and the execution of the predetermined operation is started in response to the answer, the user seems to have an agent with a pseudo personality in the vehicle. Come to experience. In the following description, execution of a series of functions of such an agent device will be described as an agent action or operation.
[0012]
In the agent device of the present embodiment, this agent is allowed to perform various communications with the driver and proxy operations. Various actions (each action) autonomously performed by the agent are configured by a plurality of scenarios (screen element transition bodies). And, autonomously start (activate) a plurality of scenarios that define the contents of a series of continuous actions (reproduction of moving images representing operations and output of sound, and operations with agents), and the deployment of each scenario. The scenario data standardized by the autonomous activation condition (activation condition) for saving is saved.
change.
[0013]
A scenario is created by a scenario creation device and is composed of one or a plurality of continuous scenes with a scene (screen element) as a reference unit. One scene is composed of at least one of a processing content autonomously processed and a moving image and an audio representing an agent's operation. Which scene to transition to after each scene is determined by the transition conditions.
[0014]
The action of the character in each scene is composed of one or a plurality of individual action images (character action expressions), and each individual action image is a moving image of a unit capable of expressing at least one complete meaning. This individual motion image is divided into a starting moving image from the character's basic posture state to a predetermined posture holding state (predetermined state), a holding moving image that performs a slight motion within a predetermined range from the holding state, and the holding state to the basic posture state. It consists of three of the end videos until.
Thus, the continuity of motion can be maintained by configuring each individual motion image of the character with a moving image that returns from the basic posture state to the basic state through a predetermined state.
Then, the reproduction time of the individual motion image is adjusted by repeating the retained moving image. In this case, the retained moving image returns to a predetermined state after performing an operation such as shaking hands or blinking, so that the user can recognize that the agent is operating. Further, when the retained moving image has a slight movement in the retained state, the gap between images does not increase even if the retained moving image is interrupted in the middle of repetitive reproduction and is shifted to the end moving image.
When the response speed is more important than quality, the individual operation image being reproduced is interrupted when the interruption condition (the predetermined instruction from the in-vehicle device or the user (see FIG. 13)) is satisfied, and the next operation image is interrupted. By reproducing the individual motion image, the response of the character can be made quick.
[0015]
The agent device determines how to reproduce the subsequent individual motion image when the interruption condition is satisfied during the reproduction of the individual motion image, the quick response mode defined in the scene (screen element), the quality mode, Determine according to the automatic selection mode. When the automatic selection mode is selected, the quick response mode or the quality mode is determined in advance from a table corresponding to each interruption condition.
[0016]
The user of the agent device creates a unique scenario using the scenario creation device in accordance with a defined standard. The scenario creation device can be configured by installing a scenario editing program and data in a personal computer.
The created scenario is transmitted to the agent device via a network such as the Internet or downloaded, and stored in the agent device via a predetermined semiconductor memory. It is possible to make the agent perform the desired action (communication and processing). Furthermore, the created scenario can be attached to an e-mail and transmitted to the agent device.
In this way, the user can easily and uniquely create a scenario that causes the agent to function as intended, and thus there is no resistance to the autonomous operation of the agent device.
In the scenario creation device, when creating a scenario, it is possible to specify the interruption condition for each individual motion image in each scene and the mode for shifting to the subsequent individual motion image after the interruption in each scene data. ing.
[0017]
(2) Details of the embodiment
FIG. 1 shows an overall system configuration including an agent device and a scenario creation device.
In this system, the agent device 1 of the present embodiment, a scenario creation device 2 of a scenario data creator who is a user or a third party who creates scenario data according to a specified standard, and the Internet using a server 3 or the like It consists of communication means.
The scenario creation device 2 creates unique scenario data using a scenario editor. The user who created the unique scenario data can store the scenario data in a semiconductor storage device or other storage medium 7 such as a DVD-ROM or an IC card and transfer it to the agent device 1. The agent device 1 that has received the scenario data reads the scenario data from the storage medium 7 by the storage medium driving device and incorporates the scenario data into the already stored scenario data, whereby the scenario data created by the scenario creation device 2 is converted into the scenario data. Therefore, the agent device 1 can be operated. Note that what is created by the scenario creation device 2 may be the user of the agent device 1 or a third party.
Further, the agent device 1 can incorporate scenario data created by the user or a third party via a network such as the Internet, or can incorporate scenario data attached to an email.
In addition, a third party who desires to provide a service to the user of the agent device 1 creates scenario data in a predetermined format by the scenario creation device 2 using, for example, a scenario editor and posts it on the homepage. It can be downloaded or sent to the agent device 1 as an email attachment. The agent device 1 receives the scenario data 5 attached to the e-mail, or the user downloads the scenario data file 4 via communication means such as the server 3. Further, the agent device 1 transmits the user's response (response email to the scenario data) acquired in accordance with the execution of the received scenario data to the scenario creator 2 of the scenario creator in the body of the email 6 or an attached file. .
[0018]
First, the configuration and operation of an agent device 1 in which an agent functions autonomously according to a scenario created by a developer or a user will be described.
FIG. 2 is a block diagram showing the configuration of the agent device 1 in the present embodiment.
The agent device 1 according to this embodiment is mounted on a vehicle and travels to a user in addition to an agent function such as a function of communicating with a user in the vehicle and a vehicle control function of performing predetermined processing on the vehicle. It also has a navigation function for route guidance.
In the agent device 1 of the present embodiment, a central processing device (1), a display device (2), a voice output device (3), a voice input device (4), an input device (for realizing an agent function and a navigation function) 5), various status detection devices (6), various in-vehicle devices (7), a communication control device (8), a communication device (9), and an external storage device (10).
[0019]
The central processing unit (1) includes a CPU (1-1) that executes various arithmetic processes, a flash memory (1-2) that reads and stores a program from the external storage device (10), and a flash memory (1-2). ROM (1-3) storing a program (program reading means) for performing a program check and update process, and a RAM (1-4) for temporarily storing data being processed by the CPU (1-1) as a working memory ), Clock (1-5) used to measure the passage of time to reduce the element value of short-term emotion elements over time, and other time and time measurements, and display on the display device (2) Image data (1-7) in which image data to be used is stored, and image data is extracted from the image memory (1-7) based on the display output control signal from the CPU (1-1), and subjected to image processing. From the image processor (1-6) and CPU (1-1) for output to the display device (2) An audio processor (converting an audio output control signal into an analog signal and outputting the analog signal to the audio output device (3)) and an analog processor input from the audio input device (4) into a digital audio input signal ( 1-8), input device I / F unit (1-9) for receiving the input content from the input device (5), various input I / F units for receiving information from detectors for detecting various situations ( 1-10) Reading data and programs from an external storage medium (10-2) such as a communication I / F section (1-11) for exchanging information with other devices, CD-ROMs, IC cards, hard disks, etc. An external storage device control unit (1-12) is provided for controlling the external storage device (10) for writing or writing data.
[0020]
This central processing unit (1) includes route search processing, display guidance processing necessary for route guidance, other processing necessary for the entire system, agent processing in this embodiment (various communication and operation agency between agents and drivers) The situation determination is performed, and processing autonomously performed according to the result is performed.
The program (program reading means) for performing the update process may be stored in the flash memory (1-2) in addition to the ROM (1-3).
All the programs executed by the CPU (1-1) including the program in the present embodiment may be stored in a CD-ROM or the like that is an external storage medium (10-2), or a part of the programs Alternatively, all may be stored in the ROM (1-3) or the flash memory (1-2) on the main body side.
The data and programs stored in the external storage medium (10-2) are input as external signals to the central processing unit (1) and processed to realize various agent functions and navigation functions. It has become.
Further, the central processing unit (1) of the present embodiment forms a screen element transition body execution means for executing a screen element transition body (scenario) when it is determined that the start condition (autonomous start condition) is satisfied. is doing.
[0021]
The display device (2) displays a road map for route guidance and various image information by the processing of the central processing device (1), and screen element transitions composed of various character actions (videos) and screen configuration parts. The body (scenario) is displayed. Various display devices such as a liquid crystal display device and a CRT are used for the display device (2). The display device (2) may have a function as an input device (5) such as a touch panel.
The voice output device (3) provides guidance voice when performing route guidance by voice by the processing of the central processing unit (1), a conversation for normal communication with the driver by the agent, and questions for obtaining driver information. Voice and sound are output. The audio output device (3) is composed of a plurality of speakers arranged in the vehicle. These may also be used as audio speakers.
[0022]
In the voice input device (4), a dedicated microphone having directivity is used in order to accurately collect the voice of the driver. A voice recognition process is executed by the CPU (1-1) using a digital voice input signal obtained by converting an analog signal inputted from the voice input device (4).
Examples of voices that are subject to voice recognition include input voices such as destinations in navigation processing, driver conversations with agents (including responses by drivers), and the voice input device uses these voices. Functions as voice input means for inputting.
As to whether or not a scene requires voice recognition, a voice recognition instruction is set in each scene data. In addition, a dictionary for recognizing a voice that is a target of voice recognition is specified in the scene data of a scene for which a voice recognition instruction is set.
In some scenarios, an instruction to change the element value of the emotional element of the agent may be defined in accordance with the result of the voice recognition (the driver's response result).
[0023]
The input device (5) is used to input a telephone number or coordinates on a map when setting a destination, or to request (request) a route search or route guidance to the destination. The input device (5) is used as a trigger when the driver inputs driver information or when the use of the agent function is started. Furthermore, the input device (5) functions as one response means for the driver to respond to an inquiry from the agent or the like in communication with the agent by the agent function.
As the input device (5), various devices such as a touch panel (functioning as a switch), a keyboard, a mouse, a light pen, and a joystick can be used.
Moreover, you may provide the receiving part which receives the remote control using infrared rays etc., and the various signals transmitted from a remote control.
Further, voice recognition using the voice input device (4) may be used instead of the input device.
[0024]
FIG. 3 is a block diagram showing the configuration of various status detection devices (6).
The various situation detection devices constitute situation detection means for detecting various on-vehicle situations.
Various situation detection devices (6) are a current position detection device (6-1), a traffic situation information reception device (6-2), and a brake detector (6-3) Side brake (parking brake) detector (6-4), accelerator opening detector (6-5), A / T shift position detector (6-6), wiper detector (6- 7), a direction indicator detector (6-8), a hazard detector (6-9), and an ignition detector (6-10). With the above configuration, detection means is formed by detecting various situations and conditions.
Each situation detection device (6) includes a vehicle speed sensor (6-11) for detecting the speed of the vehicle (vehicle speed information), and whether the vehicle is traveling depending on whether or not the vehicle speed detected by the vehicle speed sensor is zero. By determining whether or not, a travel determination means is formed.
[0025]
The current position detection device (6-1) is for detecting the absolute position (by latitude and longitude) of the vehicle, and is a GPS (Global Positioning System) reception device that measures the position of the vehicle using an artificial satellite. (6-1-1), a data transmission / reception device (6-1-2) that receives a GPS correction signal, a direction sensor (6-1-3), and a steering angle sensor (6-1-4) A distance sensor (6-1-5) is used.
The distance sensor (6-1-5) and the rudder angle sensor (6-1-4) also function as driving operation status detection means.
[0026]
The traffic condition information receiving device (6-2) is for detecting the congestion condition of the road.
The traffic condition information receiving device (6-2) includes a beacon receiving device (6-2-1) that receives information from beacons placed on the road, and a device (6-2) that receives information using FM broadcast radio waves. -2) etc. are used to receive traffic jam information and traffic regulation information from the traffic information center.
Further, the beacon receiving device (6-2-1) may be used in combination with the current position detecting device (6-1) as the current position detecting means.
[0027]
The brake detector (6-3) detects whether or not the foot brake is depressed.
The side brake (parking brake) detector (6-4) detects whether or not the driver is operating the side brake and the state of the side brake (ON or OFF).
The accelerator opening detector (6-5) detects how much the driver has depressed the accelerator pedal.
The shift position detector (6-6) detects whether or not the driver is operating the A / T shift lever and the shift lever position.
The wiper detector (6-7) detects whether or not the driver is using the wiper.
[0028]
The direction indicator detector (6-8) detects whether or not the driver is operating the direction indicator and whether or not the direction indicator is blinking.
The hazard detector (6-9) detects whether or not the driver is using the hazard.
The ignition detector (6-10) detects whether or not the ignition switch is ON.
A distance sensor (6-1-5) can also be used to detect the vehicle speed.
In addition to these, the various state detection device (6) detects a light detection sensor for detecting an operation state of lamps such as a headlamp and a room lamp, and a driver's seat belt attaching / detaching operation. A seat belt detection sensor and other sensors are provided.
[0029]
The GPS receiver (6-1-1), the data transmitter / receiver (6-1-2), and the traffic information receiver (6-2) are connected to the communication device I / F unit (1-11) in FIG. Others are connected to various input I / F units (1-10).
[0030]
In FIG. 2, a communication control device (8) can be connected to the communication device I / F unit (1-11). The communication control device (8) is connected to a communication device (9) (such as a mobile phone made up of various wireless communication devices).
Using these, in addition to telephone line calls, for example, communication with information providing stations that provide karaoke data used for communication karaoke in the car, information base stations that provide traffic information, and agent processing It is also possible to enable communication with an information provider that provides scenario data to be used.
[0031]
In the present embodiment, the central processing unit (1) can receive an e-mail attached with a scenario via the communication control unit (8).
In addition, the central processing unit (1) can incorporate browser software for displaying a homepage on the Internet and can be processed by the CPU (1-1). The scenario can be executed from the homepage via the communication control unit (8). You can download the data including.
The communication control device (8) may be integrated with the communication device (9).
[0032]
The central processing unit (1) receives in-vehicle communication through the communication I / F unit (1-11) to receive the operation status of the other in-vehicle device (7) and performs various controls on the in-vehicle device. It is like that.
For example, the central processing unit (1) controls the air conditioner so as to raise or lower the set temperature of the air conditioner that is the various in-vehicle devices (7). In addition, the driver controls the audio device such that the driver increases or decreases the output volume of an audio device such as a radio, a CD player, or a cassette player from the audio device. The control for these in-vehicle devices is performed along with the execution of the scenario when the control for the in-vehicle devices is defined in the scenario.
[0033]
The external storage device (10) includes an external storage medium driving unit (10-1) and its external storage medium (10-2). The external storage device (10) reads data and programs from the external storage medium (10-2) under the control of the external storage device control unit (1-12) according to instructions from the CPU (1-1), and Data and programs are written to the external storage medium (10-2).
As the external storage medium (10-2), for example, various storage media such as a flexible disk, a hard disk, a CD-ROM, a DVD-ROM, an optical disk, a magnetic tape, an IC card, and an optical card are used. Each external storage medium driving device (10-1) is used.
[0034]
A plurality of external storage devices (10) may be possessed in the system. For example, the collected personal information such as driver information data (10-2-3-6), learning item data and response data (10-2-3-7) can be easily carried with an IC card or flexible disk. An example in which the data is configured and other data is configured by a DVD-ROM is conceivable. By doing this, when driving other vehicles, it is possible to read and use the data from the IC card that stores them, and to communicate with the agent who has learned the situation that the user has responded to in the past Become. That is, it is possible to make an agent having learning content unique to each driver appear in the vehicle instead of the agent for each vehicle.
Further, even when the configuration includes the scenario data + image data (10-2-3-4) used in the scenario as an example in a DVD-ROM, it can be added using an IC card.
Thereby, it is possible to add an original scenario unique to each user.
Thus, by storing the screen element transition body (scenario) and the activation conditions of the screen element transition body from the outside, the screen element transition storage means of the present invention is formed, the screen configuration including the character image, and the character By storing the control contents to be executed including the display, the storage means of the present invention is formed.
[0035]
CPU (1-1) is a program (10-2-1) that realizes various agent functions and navigation functions, and agent data (10-2-3) and navigation data (10-2-2) used for arithmetic processing Is stored (installed) in a separate external storage device (for example, a hard disk device) from the DVD-ROM or IC card shown in the above configuration example, and necessary programs are stored in the flash memory (1-2). The data may be read (loaded) and executed, or data necessary for arithmetic processing may be read (loaded) from the storage device into the RAM (1-4) and executed.
[0036]
Next, the configuration of a program executed by the CPU (1-1) including the program according to the present invention will be described.
FIG. 4 shows the relationship between the agent processing unit (101) realized by the CPU (1-1) executing a program and the overall processing unit (102).
In this embodiment, an agent function navigation device is realized by adding an agent processing unit (101) for realizing an agent function to an overall processing unit (102) for realizing various navigation functions.
[0037]
Each of the agent processing unit (101) and the overall processing unit (102) has an I / F unit for exchanging the processing data with each other, and can acquire the processing data of each other.
For example, when the agent processing unit (101) acquires destination data that the driver wants to set as a result of executing communication with the driver according to the scenario data, the agent processing unit (101) supplies this data to the overall processing unit (102). It has become.
The overall processing unit (102) searches for a route based on the acquired destination data and performs route guidance based on the generated travel route data. In this route guidance process, when guidance such as a route change direction by image or voice is provided, the data required for guidance is supplied from the overall processing unit (102) to the agent processing unit (101) to guide the traveling route It is also possible for the agent to guide according to the scenario data converted into data.
[0038]
FIG. 5 shows the configuration of the agent processing unit (101).
The agent processing unit (101) includes a scenario driving unit (101-1), an autonomous activation determination unit (101-2), a learning unit (101-3), a character psychology unit (101-4), a drawing / A voice output unit (101-5), a voice recognition unit (101-7), an agent OS unit (101-8), and an external I / F unit (101-9) are provided.
The scenario driver (101-1) reads the scenario data (10-2-3-4) and instructs each processing unit using message communication based on the scenario data (functions provided by each processing unit). use. The scenario driving unit (101-1) performs central processing of the agent processing unit such as managing scenario execution and providing various agent functions to the driver.
[0039]
The autonomous activation determination unit (101-2) holds autonomous activation condition data for each scenario in the scenario data (10-2-3-4), and is periodically output from the agent OS unit (101-8). Various conditions and conditions such as time, location where the vehicle is located, road type such as general road and highway, vehicle state such as running or stopped, operating state such as operating navigation device or guiding, etc. Comparison and judgment.
When the conditions are matched, the autonomous activation determining unit (101-2) issues an instruction to execute the scenario having the matched conditions to the scenario driving unit (101-1).
Various situations for comparison with the autonomous activation conditions are obtained from the agent OS unit (101-8) and the learning unit (101-3).
[0040]
The learning unit (101-3) in FIG. 5 uses the driver information data (10-2-3-6), the items (execution results and execution history) obtained by the driver's selection and response in communication with the agent, Store as learning item data and response data (10-2-3-7). The learning unit (101-3) also obtains an end ID indicating how to end when the scenario ends in a different scene, and stores it as response data (10-2-3-7). These acquired items are stored on the RAM (1-4), but can be output to an IC card or the like as an external storage medium (10-2).
The learning unit (101-3) obtains a change in the situation from the agent OS unit (101-8) and records information related to the driving operation. For example, the date and time of power ON (ignition ON) may be stored for the past 10 times in order to determine various conditions such as the boarding time zone and boarding frequency by the driver. The stored information is provided to the scenario driver (101-1), for example, and used to change the development of the scenario, or used for comparison of autonomous activation determination.
In addition, although the learning part (101-3) in this embodiment serves also as holding | maintenance and reference of driver information, you may make it independent as a driver information part.
[0041]
The character psychology unit (101-4) obtains the current situation managed by the agent OS unit (101-8), and sets long-term emotion change conditions and short-term emotion change conditions (FIGS. 8 and 10) described later. Based on the character's psychological state, the long-term emotional element and the short-term emotional element are autonomously changed.
Also, the character psychology unit (101-4) obtains a mental model change instruction (instruction for changing the emotion element value of the character) in the scenario from the agent OS (101-8), and determines a long-term emotion element according to the change instruction. , Change short-term emotional elements.
[0042]
The drawing / sound output unit (101-5) creates a control signal for displaying a screen composed of parts such as a selection button and a title in response to an instruction from the scenario driving unit (101-1). In addition, a control signal for displaying various actions (motions) of the character corresponding to the display state by the scene data is also created by an instruction from the scenario drive unit (101-1).
In this embodiment, these control signals are transmitted to the agent OS unit (101-8), transmitted from the external I / F unit (101-9) to the overall processing unit (102), and are present in the overall processing unit (102). The image processor (1-6) is transmitted to the image processor (1-6) through the processing unit for instructing the image processor, and the image is processed and displayed on the display device (2). In 8), a processing unit for giving an instruction to the image processor may be provided.
[0043]
The drawing / voice output unit (101-5) also creates a control signal for outputting a dialogue when the agent communicates with the driver in response to an instruction from the scenario driving unit (101-1).
In this embodiment, these are transmitted to the agent OS unit (101-8), transmitted from the external I / F unit (101-9) to the overall processing unit (102), and sent to the voice processor in the overall processing unit (102). The signal is transmitted to the audio processor (1-8) through the processing unit for giving instructions, and this audio output control signal is converted into an analog signal and output to the audio output device (3), but without passing through the overall processing unit (102). The agent OS unit (101-8) may have a processing unit that gives instructions to the voice processor.
The drawing / sound output unit (101-5) of the present embodiment includes a character motion drawing function and a sound output function in each scene, but a drawing unit (drawing function unit) and a sound output unit (sound The output function unit) may be configured separately.
[0044]
The voice recognition unit (101-7) issues a control signal for causing the voice recognition processing unit in the overall processing unit (102) to create a voice recognition dictionary in response to an instruction from the scenario driving unit (101-1). The voice recognition unit (101-7) also issues a control signal for starting and stopping the voice recognition process in response to an instruction from the scenario driving unit (101-1).
In the present embodiment, these are transmitted to the agent OS unit (101-8) and from the external I / F unit (101-9) to the speech recognition processing unit in the overall processing unit (102).
The voice recognition processing unit transmits an instruction to start and stop the voice recognition process to the voice processor (1-8), and the voice processor (1-8) receives an analog signal input from the voice input device (4). Is to be converted into a digital audio input signal.
When a voice input signal is input, the voice recognition processing unit acquires the digital voice input signal, and based on that, the voice recognition processing unit performs a recognition process, and the result is the reverse of the previous route. Is transmitted to the voice recognition unit (101-7). The speech recognition unit (101-7) notifies the scenario recognition unit (101-1) of the speech recognition result.
With the above configuration, voice recognition means for recognizing voice is formed.
[0045]
The agent OS unit (101-8) obtains changes in the situation (including the addition of scenarios) such as time, place, and various inputs, manages the current situation, and sends messages as necessary to the change in situation. It notifies each processing unit such as the character psychology unit (101-4) through communication. The change in the situation is supplied from the overall processing unit (102) through the external I / F unit (101-9) or obtained through an inquiry.
The information obtained is obtained by fetching the detection results by various status detection devices (6) from various input I / F units (1-10) and communication I / F units (1-11), and RAM (1-4). Is written on. Content input using the input device (5) is also supplied from the overall processing unit (102) through the external I / F unit (101-9), and the content is sent to each processing unit by message communication as necessary. Notice.
The agent OS unit (101-8) also has various other libraries, providing message communication for exchanging data between processing units, providing the current time, and managing memory. It provides memory necessary for each processing unit to perform processing, and provides data reading and writing functions from an external storage medium.
[0046]
Further, the agent OS unit (101-8) performs time processing using time information acquired from the clock (1-5) and serves as a timer to notify the passage of a specific time. That is, the agent OS unit (101-8) functions as a time measuring means, and measures the timer setting time set in each scene of the scenario. The timer setting time to start timing is notified from the scenario driving unit (101-1), and when the timer setting time has elapsed, the agent OS unit (101-8) indicates that the setting time has elapsed. -1) is notified.
In addition, the agent OS unit (101-8) starts timing in response to a short-term emotional element change notification from the character psychology unit (101-4), and character psychology every elapse of a predetermined time (for example, 3 minutes). Section (101-4) is notified of the time information. The character psychology section (101-4) decreases the value of the short-term emotion element by a predetermined value (for example, “3”) every time time information is notified, and when the element value becomes “0”, An end instruction is notified to the agent OS unit (101-8).
[0047]
The agent OS unit (101-8) periodically issues an autonomous activation determination instruction to the autonomous activation determination unit (101-2). This periodic autonomous activation determination instruction is issued every predetermined time. The predetermined time may be as short as possible within a range in which the autonomous activation determination process periodically processed by the autonomous activation determination instruction issued periodically does not affect other processes of the entire central processing unit (1). Desirably, the interval is set to 5 seconds in this embodiment. The predetermined time may be arbitrarily changed by the user by an operation from the input device (5).
Also, the agent OS unit (101-8) issues an autonomous activation determination instruction to the autonomous activation determination unit (101-2) even when it is determined that the change in the situation is large. Cases where the change in the situation is considered to be large include, for example, when the driver has set a destination, the vehicle has been removed from the guide route, scenario data has been added, scenario data has been deleted, etc. Yes, corresponding items are defined in advance and stored in the RAM (1-4) or the like.
[0048]
The external I / F unit (101-9) serves as an interface between the agent processing unit (101) and the overall processing unit (102). Part exists). Acquisition of various types of information such as navigation information used in agent processing, and transmission of control signals from the agent processing unit to the entire processing unit control navigation.
Drawing instructions to the image processor (1-6) and audio output to the audio processor (1-8), which are performed by notifying the overall processing unit (102) through the external I / F unit (101-9) The agent processing unit has a processing unit that gives instructions to other processors and the I / F unit, such as instructions and acquisition of input information from the input device I / F unit (1-9). You may make it.
[0049]
An overall processing unit (102) in FIG. 4 includes a map drawing unit, a route search unit, a route guidance unit, a current position calculation unit, a destination setting operation control unit, etc. (not shown), and an application unit that performs navigation signal output processing, In addition, it is configured by an OS unit or the like such as a program for performing display output control necessary for map display and route guidance and voice output control necessary for voice guidance.
The overall processing unit (102) also includes a speech recognition processing unit that performs speech recognition and a processing unit that converts text data into speech data. When the browser function or the mail function is added, the processing unit is added to the overall processing unit (102).
Alternatively, the agent processing unit (101) may have a browser function or a mail function.
In this embodiment, an extended function for executing agent processing is added to the overall processing unit (102). This extended function includes, for example, means for detecting the type of road that is running (highway, national road, etc.) from the road data in the navigation data and the current position, and the curve condition of the road that is running (before the curve, Means for detecting (end of curve) and the like exist.
These detected situations are transmitted to the agent processing unit, and are used, for example, to change an agent's emotional element.
[0050]
Next, the data configuration (including programs) stored in the external storage medium (10-2) will be described.
FIG. 6 conceptually shows information recorded in the external storage medium (10-2).
The external storage medium (10-2) includes a program (10-2-1) for realizing various agent functions and navigation functions according to the present embodiment, and agent data (10-2-3) and navigation as necessary various data. Data (10-2-2) is stored.
The navigation data (10-2-2) is composed of various data necessary for map drawing, route search, route guidance, destination setting operation, and the like. Examples include map data used for route guidance (road maps, housing maps, building shape maps, etc.), intersection data, node data, road data, photo data, registration point data, destination point data, guide road data, It consists of detailed destination data, destination reading data, telephone number data, address data, and other data files and stores all data necessary for the navigation device. Moreover, communication area data etc. are also memorize | stored as needed.
[0051]
Agent data (10-2-3) includes mental model data (10-2-3-1), recommended proposal data (10-2-3-3), and knowledge data (10-2-3-2). ), Scenario data (10-2-3-4), character data (10-2-3-5), driver information data (10-2-3-6), learning item data and response data (10-2-3-7) and operation switching judgment data (10-2-3-8).
[0052]
FIG. 7 conceptually shows the contents of the mental model data (10-2-3-1). The long-term emotional element 10-2-3-1a and the long-term emotional change condition 10-2-3 -1b, short-term emotional element 10-2-3-1c, and short-term emotional change condition 10-2-3-1d are stored.
The long-term emotion element 10-2-3-1a and the short-term emotion element 10-2-3-1c store element values representing the character's psychological state. The long-term emotional change condition 10-2-3-1b and the short-term emotional change condition 10-2-3-1d are the values of each emotional element depending on the detection values of the various situation detection devices (6) and the data by the navigation function. The condition for changing the value and the change value are stored.
The emotional element values of the long-term emotional element 10-2-3-1a and the long-term emotional change condition 10-2-3-1b are determined according to the change value corresponding to the change condition and the value of the emotional element change instruction according to the scenario. Is changed.
[0053]
FIG. 8 conceptually shows the long-term emotional element 10-2-3-1a.
As shown in FIG. 8, the long-term emotional element 10-2-3-1a is represented by each element of friendship, obedience, confidence, morality, and spirit, and each emotional element value is, for example, 0 It is represented by a value of ~ 100. The number of long-term emotional elements is five in this embodiment, but other predetermined numbers may be added by adding or omitting other elements.
The value of each element changes independently from 0 to 100.
When the long-term emotional element 10-2-3-1a satisfies the change conditions described in 10-2-3-1b, and when the short-term emotional change is instructed in the scenario being executed Each of them changes (updates) by a corresponding value.
[0054]
The long-term emotional element 10-2-3-1a has a reference value of 50 for each emotional element. When the reference value is higher than that, it indicates that the state is strong, and when it is lower, the state is weak.
Corresponding to the branch condition (transition condition) according to the scenario, as shown in FIG. 8B, each element value has five levels of “very low” “low” “normal” “high” “very high”. It is divided into In addition, it is good also as three steps (width | variety of each element value = 10) except "very low" and "very high". In addition, regarding the range of each divided element, the user of the agent device may be able to change the setting value. In this embodiment, the emotional elements are hardly changed (a large number of normal areas are set), but the distribution may be different from that of the present embodiment, such as equal allocation.
In the scenario creation device, five long-term emotional elements can be used for scene branching, and individual emotional element values may be used alone. Condition).
For example, if the condition when the agent greets and speaks vigorously is only when the degree of friendship is high, the humanity can be expressed more.
[0055]
Although not specifically shown, the long-term emotional change condition 10-2-3-1b includes the following descriptions of the navigation function, vehicle state, and other conditions and conditions due to changes (item column), and emotions that change in that case Element change values are specified.
For example, there is a rule such as “when the vehicle suddenly accelerates, the agent's emotion changes (friendship and morality are reduced by 1)”.
The change value of each long-term emotional element stipulated in the long-term emotional change condition 10-2-3-1b changes long-term emotions. It is desirable to change with the value.
[0056]
FIG. 9 is a conceptual representation of the short-term emotional element 10-2-3-1c.
As shown in FIG. 9, the short-term emotional elements are composed of four elements: joy, anger, sadness, and surprise. Although the number of short-term emotional elements is four in the present embodiment, other predetermined elements may be added or omitted by adding other elements.
Each value of the short-term emotional element 10-2-3-1c varies from 0 to 100, and only one element of each element takes a value greater than zero. That is, when a certain emotional element is newly changed from 0 to a predetermined value (for example, 50), other emotional elements having values before the change are changed to 0.
In this way, short-term emotional elements are the emotions that agents have in the short-term at that point in time for a certain situation or state, so previous values do not affect or accumulate like long-term emotional elements Only one element takes a value. In other words, humanity is expressed more by preventing multiple short-term emotions from being side by side.
However, other changes may be defined. For example, when element A is going to change 50, element A changes to 50 if other element B before the change is 50 or less, but element A changes if element B before the change is greater than 5. Do not. In this case, of the value of the element B before the change and the value of the element A to be changed, the element having a larger value may be changed to a value obtained by subtracting the smaller value. For example, if element A is 50 and element B is 80, element A remains 0 and element B decreases to 30, and if element A is 90 and element B is 40, element A changes to 50 B changes to 0.
[0057]
The short-term emotional element 10-2-3-1c satisfies the change conditions described in 10-2-3-1d, and the short-term emotional change is instructed in the scenario being executed Each of them changes (updates) by a corresponding value.
Also, the value of the newly changed short-term emotion element decreases with the passage of time and finally becomes zero. For example, if the maximum duration of emotion is defined as 1 hour, the time when the value decreases from the maximum value 100 to the minimum value 0 is 1 hour, so the value decreases by 5 every 3 minutes. Become. However, the setting may be changed so as to change by a predetermined value n in units of a predetermined time t.
In this way, the value of each emotional element in the short-term emotional element 10-2-3-1c corresponds to the human emotion that the emotional highness momentarily occurs and subsides over time, and the overall change range It changes with a large value up to a maximum of 100 percent, and gradually decreases by a predetermined value n at a predetermined time t interval. This makes the short-term change of the agent closer to humans.
[0058]
When each of the emotional elements of the short-term emotion element 10-2-3-1c has a value greater than 0 (for example, joy), the agent's short-term emotion becomes an element of that value (joy). If all short-term emotional elements are all zero, the agent's short-term emotion is “normal”.
The reference value of each emotional element in the short-term emotional element 10-2-3-1c is 0, and the higher the value is, the stronger the state is.
The short-term emotional element 10-2-3-1c is divided into three stages, “small”, “medium”, and “large”, as shown in FIG. It is divided. In addition, it is good also as five steps (width | variety of each element value = 20) which added "very small" and "very large". In addition, regarding the range of each divided element, the user of the agent device may be able to change the setting value.
[0059]
Although not shown in particular, the contents of the short-term emotion change condition 10-2-3-1d include the navigation function, the description of the condition such as the vehicle state and conditions (item column), and the emotion that changes in that case Element change values are specified.
For example, there is a rule such as “when the scenario is forcibly terminated, the agent's emotion changes (sadness is increased by +30)”.
[0060]
The change values of the short-term emotional elements stipulated in the short-term emotional change condition 10-2-3-1d do not take negative values unlike the long-term emotional change conditions, and are all positive values. Further, as described above, a large value (30, 70, 100 in this embodiment) up to a maximum of 100 percent is defined with respect to the entire change range (0 to 100 in this embodiment).
[0061]
In FIG. 6, the recommended proposal data (10-2-3-3) is used when a restaurant or the like is proposed as recommended information to the driver. This recommended proposal data (10-2-3-3) is composed of restaurant name, reading data, restaurant genre data, atmosphere data, fee data, point data, etc., and driver information data (10-2-3). Based on 3-6) and knowledge data (10-2-3-2), a restaurant recommended for the driver is searched and proposed. In addition to restaurants, there are sightseeing spots and rest areas.
Knowledge data (10-2-3-2) is based on statistical data, preference trends by age and gender, selection trends by situations depending on the presence or absence of passengers, selection trends including local specialties, timing and time This is a data conversion of the selection tendency. There are various selection trends such as a selection tendency of restaurants, a selection tendency of sightseeing spots, a selection tendency of rest places, and so on.
[0062]
Scenario data (10-2-3-4) is provided by the agent autonomously in any situation when the agent communicates with the driver. And a running execution condition that stipulates how to handle the execution of the scenario with respect to the running of the vehicle.
In the scenario data (10-2-3-4), image data to be displayed separately from the character (image data to be displayed on a scene display screen 54 (see FIG. 14) described later) is also stored.
[0063]
FIG. 10 shows the configuration of actual machine format scenario data.
The scenario data (10-2-3-4) is composed of a plurality of scenarios. The scenario data (10-2-3-4) is composed of data for managing them and data indicating the contents of each scenario.
The management data for the acquisition scenario includes information such as the expiry date of this scenario data, date of creation, creator, etc., and data for overall management of each scenario recorded in the scenario data (scenario number, Scenario name, priority (priority)), autonomous activation condition data of the scenario recorded in the scenario file, and the driver manually using the input device (5) in the scenario recorded in the scenario file Lists scenario list data that can be started.
[0064]
The data indicating the contents of each scenario includes management data for managing each scenario and scene data indicating the contents of individual scenes constituting the scenario.
The data for managing each scenario ("Management data for this scenario") includes information on the scenario, text information for creating a speech recognition dictionary used in this scenario, and the scene data that make up the scenario as a whole. The data for management is written.
[0065]
The scenario management data stores data for determining whether or not to perform standby processing. The standby process is a process for developing a standby scene that stands by in a standby state in the case of automatic activation.
This standby state is a state in which the execution of the scenario is waited until the user is ready to communicate with the agent by the agent performing the scenario execution notification and confirming whether or not to execute the scenario. For example, a small agent appears in the upper right corner of the map, speaks to the user, “If you touch me, I will introduce a recommended meal location,” and enters standby. When the user touches the agent, it enters the communication mode, and a scenario is developed that says, “There is a XX restaurant 2km ahead in the direction of travel. The
The user can select whether or not to shift to the standby state during scenario execution.
[0066]
The scene includes a normal scene in which a screen and sound are output, a branch scene in which no screen and sound are output, a clone scene in which a part of the normal scene is used, and a dummy scene.
A normal scene is composed of management data for managing a scene, screen configuration data, character motion data, various processing data, and development management data.
On the other hand, the branch scene is composed of management data for managing the scene and development management data.
[0067]
In the data for managing a scene, information on the scene and data for managing each data section belonging to the scene data are described.
In the screen configuration data, data (size, display position, etc.) of each part of the screen configuration displayed on the display device (2) in this scene is described.
The character action data includes instruction data for actions performed by the character in this scene and instruction data related to the content to be spoken. In the instruction data of the action, the instruction data is written in one of two types, that is, the scenario data that is directly instructed by the expression means of each character and the instruction that is instructed by the character to be expressed. A moving image corresponding to the action instructed by the instruction data is reproduced as the action of the character.
Various processing data includes information for controlling (processing) external devices in this scene, information for controlling navigation, instructions for executing other scenarios, timer setting information, and mental models that indicate character psychology. Information that changes the emotion element value is described.
The external device includes each device connected to the communication I / F unit (1-11), for example, a communication control device. The contents to be controlled include a process for making a call to a specific telephone number and a process for disconnecting a call.
The navigation control content includes, for example, setting this point as a destination.
As an instruction to change the emotional element value of the mental model, there are 1 to decrease the “friendship degree” of the long-term emotional element by 1 and “joy” of the short-term emotional element to 80.
[0068]
The development management data describes information such as whether to end the scenario, what is the next scene to proceed, or nothing to be developed when an event occurs in this scene. ing.
The event here refers to some action defined for proceeding to the next development of the scene. For example, when the character's dialogue has ended, the set time has elapsed, the driver has selected some answer to the question asked in this scene (for example, “Yes” to the question “Yes” or “No”) ), Etc. exist.
In addition to this event, the development can be changed according to the learning results.
For example, it can be used when the driver selects “Yes” for the question and the total number of uses is less than 10.
In addition to the learning results, the development can also be changed using the date and time, the mental state of the character using the mental model, driver information, and the like.
[0069]
FIG. 11 conceptually shows the contents of character data.
Character data (10-2-3-5) stores data of a plurality of characters, and can be selected from the input device (5) or the like according to the driver's preference.
The character data (10-2-3-5) includes character image data 102351, character voice data 102352, and character image selection data 102353 for each character A, B,.
[0070]
The character image data 102351 stores a still image representing the state of the character displayed in each scene specified by the scenario, an individual motion image (animation) representing the motion, and the like. For example, individual motion images are stored such as a movie that the character bows, a nod movie, and a right hand.
An individual motion image is a unit of a moving image that can express at least one complete meaning, such as nodding (affirmation) and shaking a head (no intention).
Each of these still images and individual motion images is provided with an image code.
The character image data 102351 functions as action expression storage means and image storage means.
The character (agent appearance) used as the character image data 102351 does not have to be a human (male, female) appearance. For example, the non-human agent may be the appearance of an animal itself, a robot-like appearance, a specific character appearance, or the like.
Also, the age of the agent does not need to be constant, and the learning function of the agent is to start with the appearance of a child, and then grow with the passage of time. It may change to the appearance of
[0071]
A scene (screen element) has one or a combination of two or more individual motion images, and is composed of individual motion images, sound, and other data.
FIG. 12 shows the contents of an individual action image representing the action in which the character raises the right hand.
As shown in FIG. 12, the individual operation image is composed of at least three types of moving images, that is, a starting moving image (a), a retained moving image (b), and an ending moving image (c). (A) to (c) represent representative images of the first, last, and halfway among the actually displayed moving images.
Individual actions of the character such as bowing are expressed by sequentially reproducing the three moving images (start moving image, retained moving image, and end moving image).
[0072]
As shown in FIG. 12A, the start moving image starts with an image (basic posture state image 12a1) representing the basic posture of the character and is an image (holding state image 12a4) in a predetermined posture holding state (predetermined state). finish.
In the starting moving image illustrated in FIG. 12A, an operation from the basic posture state to a smile with the right hand raised with the elbow bent is displayed.
[0073]
As shown in FIG. 12B, the retained moving image starts from the retained state image 12b1 and ends with the retained state image 12b4.
The retained moving image moves while retaining the content expressed by the character in the intermediate images 12b2 and 12b3 with the retained state image 12b1 as a reference, and then returns to the retained state image 12b4 as a reference.
In the retained moving image illustrated in FIG. 12B, the head tilts in the midway image 12b2 with respect to the retained state image 12b1, and the tilt of the head returns to the original in the midway image 12b3 so that the angle between the mouth and the wrist is It has changed.
The playback time of the individual motion image is adjusted according to the number of repetitions of the retained moving image. Further, when the shortest reproduction is performed on the individual operation image, the reproduction of the retained moving image is omitted. That is, the shortest moving image that passes through the holding state images 12a4 and 12c1 is executed by reproducing the ending moving image after the starting moving image.
[0074]
As shown in FIG. 2C, the end moving image starts with the holding state image 12c1 and ends with the basic posture state image 12c4. The end moving image is a moving image for returning to the basic posture state.
Note that the hold state image 12a4 at the end of the start moving image, the hold state images 12b1 and 12b4 at the start and end of the hold moving image, and the hold state image 12c1 at the start of the end moving image are the same image.
Further, the end moving image is the same as that reproduced from the starting moving image holding state image to the basic posture state.
[0075]
In this way, each individual motion image of the character starts and ends in the basic posture state, so that even if the individual motion image is composed of a plurality of individual motion images in each scene (screen element), the character motion can be continued.
[0076]
FIG. 13 conceptually displays the contents of the operation switching determination data (10-2-3-8) in the agent data (10-2-3).
Whether the operation switching judgment data (10-2-3-8) is transferred to the subsequent individual operation image in the immediate response mode or the quality mode corresponding to the interruption condition during the reproduction of the individual operation image and the interruption condition. It is a table that prescribes.
Each event (character movement end, etc.) defined in the “item” column shown in FIG. 13 corresponds to the interruption condition, the quality emphasis defined in the “motion switching determination” column is the quality mode, and the reaction emphasis is It corresponds to the quick response mode.
The agent device uses the operation switching judgment data (10-2-3-8) when the mode corresponding to the interruption condition is not specified in the scenario to be executed and when automatic selection is set in the scenario. Then the mode is decided.
[0077]
FIG. 11B conceptually shows a reproduction time table stored in the character image data 102351.
This playback time table stores a playback time when a start moving picture and an end moving picture in each individual motion image are played, and a playback time when a retained moving picture is played once.
The agent device reproduces one or a plurality of individual motion images in accordance with the definition of each scene data of the scenario, for example, the audio output time, etc., but the individual moving image is reproduced in accordance with the prescribed time. The playback time table is referred to in order to be displayed. For example, when the character bows while saying “Good morning, thank you again today”, it is assumed that the voice output time is calculated, for example, 6 seconds. In this case, from the playback time table, a playback time of 1.5 seconds is preferentially assigned to each of the start video and the end video, and a retained video is assigned to the remaining 3 seconds.
Since the time allocated to the retained moving image is 3 seconds and the reproduction time of the retained moving image is 1.5 seconds, N = 2 times, and the retained moving image is reproduced twice.
[0078]
Character voice data 102352 (FIG. 11 (a)) stores voice data for the agent to have a conversation with the driver according to the scene of the selected scenario.
The voice data of the conversation by the agent also stores voice data for the agent to ask questions for collecting driver information. As an example, "Hello", "I Regards", "And I", and the like are stored.
Each of these voices is accompanied by a voice code.
[0079]
The character image selection data 102353 is a conversion table in which image data representing the expression method (action) of each character is assigned to each display state.
Scenario data (10-2-3-4) defines the contents of each scene with a common display state that does not depend on the character type.
For this reason, the character image selection data 102353 is a conversion table for converting the display state of the scene expressed in common into image data that displays individual action contents for the character selected by the user. Function as.
[0080]
The driver information data (10-2-3-6) in FIG. 6 is not particularly shown, but is information related to the driver in order to make the agent's communication more suitable for the driver's wishes, hobbies and preferences. Used. This driver information data is also used as a scenario start condition and a scene transition condition.
Driver information data (10-2-3-6) contains the driver ID (identification information), name, age, gender, marriage (married or unmarried), child, for storing information for each driver. The driver basic data including the presence / absence, the number of persons, and the age, and hobby preference data are stored.
The hobby preference data is composed of major items such as sports, eating and drinking, and travel, and detailed items included in the concepts of these major items. For example, data such as whether or not to like baseball, whether or not to like soccer, whether or not to like golf is stored in the large-scale sports.
Driver information data (10-2-3-6) is created for each driver when there are a plurality of drivers who drive the vehicle. Then, the corresponding driver information is used by specifying the driver.
[0081]
In FIG. 6, learning item data and response data (10-2-3-7) are data for storing results learned by the agent by the driver's selection and response in communication with the agent.
Therefore, the learning item data and the response data (10-2-3-7) are stored / updated (learned) for each driver.
For example, as the usage status of the scenario, the previous selection result, the date and time of last use, the total number of times of use, and the like are stored.
In accordance with this learning content, for example, in a scenario in which greetings are made every time the navigation power is turned on, if it is within 5 minutes from the previous use, “I met you just before”, or conversely, for more than a month When it is open, it responds to “Long time no see”.
[0082]
FIG. 14 shows an example of a scene screen displayed on the display device (2) based on the scenario scene data.
The scene screen shown in FIG. 14 is a scene screen (scene number 0x0001) of a question scenario for asking a question from a driver in order to acquire a hobby preference (meal) that is uninputted driver information.
As shown in FIG. 14, the scene screen includes an agent display screen 51 on which an individual action image of the agent is displayed, a balloon screen 52 on which characters corresponding to the voice of the agent are displayed, a title screen 53, and a scene-specific screen. Are displayed on a scene display screen 54 on which image data (images of actual image data, answer selection buttons, etc.) are displayed.
The agent displayed on the agent display screen 51 is a character selected by the user or a default character.
[0083]
When the scenario driving unit (101-1) of the agent processing unit (101) starts a hobby preference (meal) question scenario, the scenario screen + image (10- 2-3-4), the scene screen is displayed on the display device (2), and the question voice corresponding to the question sentence is output from the voice output device (3).
On the scene screen of the question scenario in FIG. 14A, “Which genre do you like?” Is displayed on the balloon screen 52. And the audio | voice corresponding to the display of the balloon screen 52 is output from an audio | voice output apparatus (3).
Further, on the scene display screen 54 in the scene screen of FIG. 14A, “Japanese food”, “Western food”, “Chinese food”, and “None in particular” of the four answer selection buttons 54a are displayed.
Then, in accordance with the voice output of the character, an individual action image in which the character raises his right hand and points to the answer selection button 54a is reproduced and displayed.
[0084]
A plurality of scenes corresponding to the driver's answer are branched in the question scene for the driver. The branching of each scene and the identification of the subsequent scene are determined according to the driver's answer according to the development management data of each scene.
That is, when the driver selects the answer selection button “Japanese food” on the scene screen (scene number 0x0001) in FIG. 14A, the scenario driving unit (101-1) branches to the scene screen (b) corresponding to the answer. Is displayed. In this scene screen (b), the selected “Japanese food” is displayed on the title screen 53 and the balloon screen displays “I like Japanese food.” On the Japanese food scene screen after branching, The real Japanese food image 54 b read from the scenario data is displayed on the scene display screen 54. Then, the scenario driver (101-1) stores the driver's answer, for example, “Japanese food” as the driver information in the hobby preference data of the driver information data (10-2-3-6). It has become.
In this way, each scene image and sound specified in the scenario are sequentially displayed and output until the last scene, thereby completing the action of the agent in one scenario.
[0085]
FIG. 15 shows the transition of the scene screen according to the guidance scenario transmitted from the inn to the prospective guest for each scene.
This guidance scenario is composed of scene screens (a) to (f) among a plurality of scene screens.
The next scene screen is branched into 0x0004 and 0x0006 according to the selection result of the user with respect to the scene screen (c). Although not branched in the example of FIG. 15, the scene screen may be branched so that dishes corresponding to the selected dish type are displayed on the scene display screen 54 in the scene screen (d).
In this guidance scenario, a standby scene (s) that is displayed when standby processing is set by the user is set.
[0086]
Hereinafter, each action of the agent according to the reservation scenario will be described with reference to FIG.
The agent operations and screen displays described below corresponding to each scene screen are all displayed according to data, images, and instructions stored in the scenario data of the external scenario. Further, although described as an agent operation, the scenario driving unit (101-1) of the agent processing unit (101) actually performs the processing.
Moreover, although the image of the basic posture state is displayed on each scene screen, the individual operation image corresponding to each scene screen (a) to (f) is reproduced. For example, on the scene screen (a), an individual motion image that the agent bows is reproduced, and on the scene screen (d), an individual motion image (see FIG. 12) that raises the right hand while bending the elbow is reproduced.
[0087]
When the setting not to use the standby process is selected by the user, the reservation scenario is activated and developed from the scene having the number 0x0001.
On the other hand, when the setting to use standby processing is selected, the standby scene (s) in FIG. 15 is developed.
In the example displayed in FIG. 15, a screen immediately before the standby process is performed, that is, a map screen for route guidance by the navigation function is displayed. A small agent is displayed on the display screen (2) having a touch panel function in the upper right on the screen immediately before this. (Character display means)
Then, a notification of executing the scenario is made, such as “If you touch me,“ I will guide you to the reserved inn ”.” It also asks for permission to execute (confirmation of execution). If the voice data of the agent is defined in the scenario data, the voice is output.
Then, when an OK intention display by the driver is detected in accordance with the prompt for permission to execute, normal scenarios are sequentially developed from the first scene.
In the standby scene, when a device operation such as navigation is performed without a OK display and a certain time elapses, the execution of the scenario is terminated by a timer notification.
[0088]
When an OK indication is displayed in the standby scene, or when standby processing is not selected, the reservation scenario is activated.
That is, first, the scene screen with the number 0x0001 is displayed on the display device (2). In this scene, the agent of the character managed by the agent OS unit (101-8) appears on the agent display screen 51, bows and greets with voice. The content of the voice greeting is the same as the text displayed on the balloon screen 52.
The greeting by voice is performed on behalf of the inn by the agent, but it is expressed that the inn is a greeting from the inn by displaying a photo image of the general of the inn on the scene display screen 54. The image of the landlady is an image received and added as part of the external scenario, and is stored as actual image data of the scenario data (10-2-3-4).
The instruction for the action of the agent follows the instruction stored in the character action instruction data.
When the greeting by the agent ends, the scene transitions to the next scene 0x002.
[0089]
In the next scene 0x0002, an image of an open-air bath is displayed on the scene display screen 54. Then, the agent points to the picture of the outdoor bath, and the agent explains the specialty of the inn (that it is sold here) by voice and display of the balloon screen 52.
When the agent's story ends, the scene transitions to the next scene 0x0003, and an image of today's meal (an image of kaiseki cuisine) is displayed on the scene display screen 54. The agent explains the dish and whether or not this dish is acceptable. Question.
It is assumed that a timer setting time and a timer setting condition “set only during running” are defined in the scene data of scene 0x0003. In this case, counting by a timer is started at the start of the scene on condition that the vehicle is running. Whether or not the vehicle is traveling is determined to be stopped when the vehicle speed sensor (6-11) or the distance sensor (6-1-5) detects the vehicle speed v = 0, and the vehicle speed v ≠ 0 is detected. It is determined that the vehicle is traveling.
[0090]
If the user selects “Yes” as an answer to the question as to whether or not to change the displayed dish, the process branches to the scene 0x0004, and if “No” is selected, the process branches to the scene 0x0006.
On the other hand, if the user gives a timer notification (elapsed set time) without answering by voice or answering by selecting a selection button displayed on the screen within the timer set time, it is defined by the scene data of scene 0x0003. The scenario is terminated according to the transition condition at the time of timer notification.
In this way, even when there is no answer from the user, it is determined that no answer has been selected, and the process proceeds to the next scene (end in the example of FIG. 15) using no answer as a transition condition. It is possible to make the communication with the character converted closer to the communication between humans.
[0091]
In the scene 0x0004, a selectable list other than kaiseki cuisine is displayed on the scene display screen 54. The agent points to the list on the scene display screen 54 and asks which dishes are good.
When the user selects any one, the scene transitions to the scene 0x0005.
In the scene 0x0005, a list of the number of people to be changed from kaiseki cuisine is displayed on the scene display screen 54, and the agent points to this list and asks the number of people. When the user selects any one, the scene transitions to the scene 0x0006.
[0092]
In scene 0x0006, the inn appearance photograph image is displayed on the scene display screen 54, and the agent bows and greets.
Then, as a result of the selection made by the user, the agent transmits an answer result regarding meals to the third party (inn) that transmitted the external scenario being executed via the communication control unit in the case of the guidance scenario of FIG. .
In this way, when it is desired to acquire information about the user, the creator of the external scenario creates a scenario in which a scene of a question from which information to be acquired can be obtained is provided in the scenario and the response is transmitted by e-mail. To do. If it is necessary to send an answer, the e-mail address of the creator is included in the scenario data.
When the agent's story in the last scene (scene 0x0006 in FIG. 15) ends, the scenario ends.
[0093]
In this manner, the scenario driving unit (101-1) sequentially displays and outputs the individual operation images and sounds for each scene specified in the scenario up to the last scene.
When the activated scenario ends, the scenario driving unit (101-1) determines whether there is a request for activation of another scenario.
[0094]
Next, an operation for autonomously starting various scenarios executed by the scenario driving unit (101-1) will be described.
Autonomous activation determination unit (101-2) acquires status information such as the current position and time from agent OS unit (101-8) via agent I / F in order to acquire the current status information. Whether or not any of the autonomous activation conditions is satisfied is determined.
When the autonomous activation condition is satisfied, the autonomous activation determination unit (101-2) issues a scenario execution request message corresponding to the autonomous activation condition to the scenario driving unit (101-1). The scenario execution is started.
[0095]
FIG. 16 is a flowchart showing the flow of scenario execution processing.
Note that FIG. 16 shows a series of typical operations performed by each unit of the agent processing unit (101) and the overall processing unit (102) when a scenario is executed, and each unit performs independent processing. It is like that. That is, the independent process of each part is continued, and the typical flow shown in FIG. 16 is obtained.
Specifically, each part of the agent processing unit (101) and the entire processing unit (102) process the message when receiving the message, and wait for the next message when the processing is completed.
[0096]
Upon receiving the scenario execution request from the autonomous activation determination unit (101-2), the scenario driving unit (101-1) performs agent start preparation processing by securing and initializing work memory (step 505-1).
Then, the scenario driving unit (101-1) confirms whether the scenario execution request is a manual activation or an automatic activation (step 505-2). Manual activation is when the user selects scenario activation from the menu of the display device (2), and automatic activation is when the scenario autonomous activation condition is satisfied.
If the scenario execution request is manual activation, menu scenario request processing is performed (step 505-3). Thereafter, the process proceeds to the scenario data reading process (step 505-4).
[0097]
On the other hand, in the case of automatic activation, there is a scenario that is requested to be executed by satisfying the autonomous activation condition, so that the process directly proceeds to the scenario data reading process (step 505-4).
Next, the scenario driver (101-1) reads scenario data to be executed into the RAM (1-4) (step 505-4). When reading scenario data, if there are multiple scenarios to be executed (when multiple autonomous activation conditions are satisfied, manual activation request and automatic activation overlap, etc.), the scenario driver (101 -1) reads the scenario data with the highest priority by judging the priority specified in each scenario. If the priorities are the same, it is determined that the priorities are higher in the order in which the execution requests are received from the autonomous activation determination unit (101-2).
[0098]
When the reading of the scenario data is completed, the scenario driving unit (101-1) next performs a scenario start process (step 505-5).
In the scenario start process, the scenario driver (101-1) first performs an initialization process for starting the scenario. Furthermore, if the standby scene is selected, the scenario driving unit (1011) executes the standby scene described in FIG. 15 (s) and confirms the OK display, and the standby scene is selected. If not, the scenario start process is terminated.
[0099]
After the scenario start process (step 505-5), the scenario drive unit (101-1) executes a scene process for processing character drawing and sound according to the contents of the scenes constituting the scenario (step 505-6). ). Details of the scene processing will be described later with reference to FIG.
When the scene processing is completed, the scenario driving unit (101-1) checks whether the scenario is finished (step 505-7).
In the case of scenario termination, the scenario driver (101-1) performs scenario termination processing (505-8). In this scenario termination process, the learning unit (101-3) obtains an end ID indicating the termination method and stores it in the response data (10-2-3-7).
If the scenario is not finished (if the scenario still continues), the process returns to step 505-6 to repeat the scene process with the next scene, the next scene,.
[0100]
After scenario termination processing, the scenario driver (101-1) checks whether there is another scenario execution request (step 505-9). If there is another scenario execution request, the scenario drive unit (101-1) Returning to the data reading process (step 505-4), the same process is executed.
On the other hand, when there is no other scenario to be executed, the scenario driving unit (101-1) executes an agent termination process (step 505-10). That is, it notifies the agent OS unit (101-8) that the execution processing of all requested scenarios has been completed.
Thereafter, the screen displayed on the display device (2) returns to the normal navigation screen, but the subsequent processing is transferred to the overall processing unit (102) via the agent I / F.
[0101]
FIG. 17 is a flowchart showing the flow of scene processing (step 505-6).
The scenario driver (101-1) confirms the type of scene to be started in the scene processing (step 505-6-1), and in the case of a normal scene or a standby scene, the scene data analysis processing (step 505- In the case of a clone scene, the process proceeds to a process for requesting various processes (step 505-6-5).
Although not shown, when the scene is a dummy scene, the scenario driving unit (101-1) instructs the processing according to various processing data as background processing, and then determines the scene (step 505-13). Migrate to
On the other hand, in the case of a branch scene, since there are no various processes such as screen and audio output, the process proceeds to the scene determination process (step 505-6-13) in order to determine the next scene to be developed according to the additional conditions.
Here, the clone scene is a case where the same screen as the original scene (scene that ended immediately before) n is displayed depending on how a certain scene n ends, for example, when input is not performed within a set time. This is a scene in the case where a voice prompting input is output with the same screen.
In addition, a branch scene is a scene that is provided in front of the scene in order to make a transition to a specific scene and start the condition without making a screen display (branch). is there.
[0102]
When the scene to be started is a normal scene or a standby scene, the scenario driver (101-1) stores the data of the scene to be started in the RAM (in which the scenario data read in step 505-4 (FIG. 16) is placed ( 1-4), and analyze the screen configuration to be displayed, the action instruction of the character, etc. (step 505-6-2).
If the voice recognition dictionary exists as a result of the analysis, the scenario driving unit (101-1) sends a voice recognition dictionary setting (initialization) request specified in the scene data to the voice recognition unit (101-7). Notification is made (step 505-6-3).
In the case of a standby scene, an affirmative or negative speech recognition dictionary is set.
[0103]
Next, the scenario drive unit (101-1) is a screen having a screen configuration that determines each part of the screen to be drawn as a process for requesting the drawing / audio output unit (101-5) to draw the screen. Data creation processing is performed (step 505-6-4).
In the screen data creation processing of the screen configuration, for example, among the scene screens shown in FIG. 16, items related to the character such as the agent display screen 51 and the balloon screen 52 on which the character dialogue is displayed are determined.
[0104]
The scenario drive unit (101-1) instructs various processes (step 505-6-5).
The various processing instructions include processing to a navigation system, an externally connected device, or the like, or time measurement request processing when a timer is set.
In addition, the scenario driving unit (101-1) is set when various instructions are set for the scene as long-term emotion elements or short-term emotion elements. The mental psychology department (101) changes the long-term emotional element 10-2-3-1a and the short-term emotional element 10-2-3-1c of the mental model data (10-2-3-1) -4).
The character psychology unit (101-4) changes the value of each emotion element according to the change value specified in the scene according to the instruction. That is, if it is a long-term emotional element, the indicated change value is added or subtracted, and if it is a short-term emotional element, the value of the short-term emotional element is changed to the indicated change value and other short-term emotional elements Set the value to zero.
In this way, long-term emotional changes or short-term emotional changes in the agent device are pre-determined in the agent device (long-term emotional change condition 10-2-3-1b, short-term emotional change condition 10-2 -3-1d), it is possible to change according to the emotion element change instruction set in the scenario. For this reason, it becomes possible to realize the agent's emotional change according to the intention of the scenario creator.
[0105]
Next, the scenario driving unit (101-1) determines the character action of the scene and the speech such as dialogue, and makes a request for drawing / sound output of the determined character to the drawing / sound output unit. Accordingly, the drawing voice output unit performs character drawing / voice output processing (step 505-6-6).
The creation of the character drawing data by the scenario drive unit (101-1) is the same as the drawing data creation processing of the screen configuration shown in FIG. 16 except that the scenario part to be created is different from the part of the screen configuration or the part related to the character. To be done. In the case of creating the character drawing data, the voice of the character corresponding to the dialogue displayed on the balloon screen 52 and the voice data regarding the sound effect are also specified.
When creating the character drawing data (including voice data), the scenario driving unit (101-1) makes a character drawing request based on the created character drawing data to the drawing / voice output unit (101-5).
The drawing / sound output unit (101-5) performs character drawing / sound output processing in accordance with a drawing request from the scenario driving unit (101-1). By the character drawing / speech output process, a scene is developed in which the character bows, points in the right or left direction by hand, or talks to the user.
In the case of a standby scene, a character smaller than normal (FIG. 15A) as illustrated in FIG. 15S is displayed.
[0106]
FIG. 18 is a flowchart showing character drawing / sound output processing by the drawing / sound output unit (101-5).
Upon receiving a character motion instruction request or drawing data from the scenario driving unit (101-1), the drawing / sound output unit (101-5) receives a motion instruction content analysis process (steps 505-6-6-1 to 505). -6-6-8), operation reproduction processing (step 505-6-6-9), request end reply (step 505-6-6-10).
[0107]
In the action instruction content analysis process, the drawing / sound output unit (101-5) first determines whether or not it is a unified (common) action instruction that does not depend on the type of the received drawing instruction content character (step 505-6). -6-1) If the drawing instruction is instructed by the expression method specified for each character (direct instruction: see FIG. 37 (b)), the process proceeds to the action reproduction process (step 505-6-6-9). To do.
[0108]
If the drawing instruction is a unified display form that does not depend on characters, the drawing / audio output unit (101-5) converts the instruction content.
In the conversion, first, the character type set at that time is acquired from the agent OS section (101-8) (step 505-6-6-2).
Next, the drawing / sound output unit (101-5) displays a conversion table (character image selection data) 102353 in which a correspondence table of unified operation instructions (display state numbers) and operation instruction contents (image codes) for each character is written. Is obtained from the character data (10-2-3-5) of the external storage device (10).
Then, the drawing / audio output unit (101-5) acquires the action instruction content of the character to be operated based on the conversion table, that is, the image code of the character corresponding to the display state number of the scene data (step 505-6). -6-4).
[0109]
The drawing / sound output unit (101-5), when the acquired action instruction information is set to automatically select the action instruction of the character (step 505-6-6-5; Y), Further, the following processing is performed.
That is, the drawing / speech output unit (101-5) first sets the automatic operation condition information, such as time, place, driver information, agent mental model, etc., to each information included in the agent processing unit such as the agent OS unit. Is acquired from the processing unit (101-8) that manages (step 505-6-6-6).
Next, automatic selection from agent data (10-2-3) that has already been read into the RAM when the power is turned on, including selection condition information for uniform operation instructions such as time, and uniform operation instructions for characters A table is acquired (step 505-6-6-7).
Then, the drawing / sound output unit (101-5) acquires the unified operation instruction based on the selection condition information of the unified operation instruction such as time and the operation automatic selection table. Based on the unified operation instruction, the operation instruction is determined by referring to the conversion table 102353 acquired in step 505-6-6-3 to acquire the operation instruction content (image code) (step 505-6- 6-8).
[0110]
Next, the drawing / sound output unit (101-5) performs operation reproduction processing (step 505-6-6-9).
That is, the drawing / sound output unit (101-5) performs character image data 102351 of the selected character in the character data (10-2-3-5) based on the action instruction content (image code) of the character. The individual motion image to be reproduced is acquired from (see FIG. 11).
If the action instruction request for the character is to synchronize and output the character speech to the character action, the voice data is acquired from the character voice data 102352 of the character data (10-2-3-5).
[0111]
The drawing / audio output unit (101-5) obtains the output time t1 of the audio data when outputting the audio data, and is specified in the scene data when there is no output of the audio data. Time t1 is acquired. Hereinafter, since the time t1 is the total time allocated for playback of individual moving images, it is referred to as a total allocated time.
The drawing / audio output unit (101-5) is assigned to the line or time specified in the scene data (it is specified to be played during the output of the audio of the line or within the specified time). The playback time of the individual motion image is acquired from the playback time table (see FIG. 11B).
[0112]
The drawing / sound output unit (101-5) determines the number of times N of retained moving images to be played in each individual motion image from Equation (1) from the obtained playback time of each individual motion image and the acquired allotted time t1. To do.
In this equation, the total allocated time is t1, the playback time of the start video is t2, the playback time of the retained video is t3, and the playback time of the end video is t4. Further, the total values of the reproduction times of all start videos, all retained videos, and all end videos are Σt2, Σt3, and Σt4, respectively.
In this case, time Σt2 is assigned to all start videos, time Σt4 is assigned to all end videos, and time (t1- (Σt2 + Σt4)) is assigned to all retained videos.
Thus, time is preferentially assigned to the start video and end video of each individual motion image, and the remaining time is assigned to each retained video.
[0113]
[Formula 1]
n = (t1− (Σt2 + Σt4)) / Σt3 (remainder time t5) (1)
[0114]
Then, the drawing / sound output unit (101-5) calculates n and the remainder time t5 from the formula (1), and determines the number of times to play each retained moving image as follows.
(A) When t5 = 0
Number of playbacks of all retained videos N = n
(B) When t5 ≠ 0
Number of playback times from the first retained video to the m−1th retained video N = n
Number of plays from the m-th retained video to the last retained video N = n + 1
However, m is the maximum value of p satisfying {Σt3} ≧ t5, where {Σt3} is the total reproduction time from the p-th retained moving image to the last retained moving image.
For example, when 7 seconds are allocated to the retained moving images from a to d (each reproduction time of 1 second), n = 6/4 = 1 and remainder 2, so that the number of reproductions of a and b is 1 time. , C and d are reproduced twice.
[0115]
In the present embodiment, the playback of the individual motion image ends at the same time or after the all allocated time t1, but the playback of the individual motion can be reproduced by setting the number of times N of the retained moving image to be played back uniformly. You may make it complete | finish before a regulation time. In this case, the basic (standing) retained moving image shown in FIG. 11B is repeatedly reproduced until the audio output is completed or until the specified time elapses.
Further, when the total allocation time t1 is shorter than the sum of both playback times of the start video and the end video, only the start video and the end video are played.
[0116]
FIG. 19 shows a flow that can be transferred between the start moving image, the retained moving image, and the end moving image when the individual operation image is reproduced.
As shown in FIG. 19, playback of each moving image is continued through the holding state screen.
(1) Video following the start video
The start moving image can be transferred to the following two moving images.
{Circle around (1)} When the number of times the retained moving image is played back N ≠ 0, the process proceeds to the retained moving image.
{Circle over (2)} When the number of times the retained moving image is played back N = 0, the process proceeds to the end moving image.
(2) Video that follows the retained video
The retained moving image can be transferred to the following two moving images.
{Circle around (3)} When the number of playback times of the retained video N> 2, the process shifts to the retained video.
{Circle around (4)} When the number of times the retained moving image is played back N = 1, the process proceeds to the end moving image.
(3) Video following the end video
The end moving image does not move to the moving image in the same individual operation image, but moves to the starting moving image of the subsequent individual moving image.
[0117]
Next, a case where the interruption condition is satisfied during the reproduction of the individual operation image will be described.
The scenario driving unit (101-1) monitors whether or not the interruption condition (condition described in the item column) defined in FIG. 13 is satisfied during reproduction of the individual operation image.
When any of the interruption conditions is satisfied, the scenario driver (101-1) draws the transition mode (quality mode, quick response mode) for transitioning to the next individual motion image, and the interruption event / audio. Supply to the output unit (101-5).
When the transition mode is defined for the individual motion image being reproduced, the transition mode is determined as the defined transition mode. When the automatic mode is specified for the individual operation image and when the transition mode is not specified, the operation switching judgment data (10-2-3-8) (see FIGS. 6 and 13) is used. Thus, the transition mode corresponding to the interruption condition is determined.
As described above, the mode determination means is configured by determining the transition mode by the scenario driving unit (101-1).
[0118]
When an interruption event is supplied from the scenario drive unit (101-1), the drawing / audio output unit (101-5), depending on the transition mode (quality mode, quick response mode), , Holding movie, end movie) are interrupted, and the subsequent individual motion image is transferred (executed).
[0119]
FIG. 20 shows a reproduction state after interruption in the quality mode.
As shown in FIG. 20, in the quality mode, the occurrence of the interruption event differs depending on which moving image is being reproduced.
(1) When starting video playback
As shown in FIG. 20A, when an interruption event occurs during the playback of the start video, after the start video is finished playing, the retained video is played once, and after the end video is played, the subsequent individual operations Move to image.
If an interruption event occurs during playback of the start video, after the playback of the start video is finished, the end video is played without playing the retained video, and the subsequent individual motion image is transferred. Good. In this case, since the hold state image is displayed at the end of the start video and the start of the end video, there is no gap when moving to both videos, and the subsequent individual motion image can be played back as soon as the playback of the hold video is omitted. it can.
[0120]
(2) During playback of retained video
As shown in FIG. 20B, when an interruption event occurs during the playback of the retained video, the end video is played after the retained video being played is played to the end, and then the subsequent individual motion image Migrate to
When the retained moving image is being reproduced, if the p-th reproduction is being performed (p <N) with respect to the N times of reproduction determined from the above equation (1), the retained moving image is omitted Np times. . Therefore, it is possible to ensure a certain degree of responsiveness without gaps between moving images while maintaining quality.
(3) End video playback
As shown in FIG. 20C, when an interruption event occurs during the reproduction of the end moving image, the end moving image is reproduced as it is, and then the subsequent individual operation image is transferred.
[0121]
In this way, in the quality mode, there is no gap between the moving images being played back, the interrupted individual motion image ends in the basic posture state, and the subsequent individual motion images start from the basic posture state. And the transition to the subsequent individual operation image is possible.
[0122]
FIG. 21 shows a reproduction state after interruption in the quick response mode.
As shown in FIG. 21, in the case of the quick response mode, the moving image being reproduced is interrupted and the subsequent individual motion image is transferred regardless of the occurrence time of the interruption event.
In the case of the quick response mode, there is a slight gap when moving to the subsequent individual video because it is interrupted when the interrupt event occurs, but for example, the individual operation of the subsequent with good response without causing unnecessary waiting for the agent device user. Images can be played back.
[0123]
As described above, when there is an interruption event, the reproduction data of the individual motion image determined by the drawing / audio output unit (101-5) is transmitted to the agent OS unit (101-8) when there is no interruption event, and the external I / F unit (101 -9) is transmitted to the overall processing unit (102), and is transmitted to the drawing processor (1-6) through the processing unit for instructing the drawing processor (1-6) in the overall processing unit (102). It is sequentially reproduced and displayed on the display device (2).
The acquired voice data is transmitted to the agent OS unit (101-8) and from the external I / F unit (101-9) to the overall processing unit (102), and the voice processor (1- The signal is transmitted to the audio processor (1-8) through the processing unit for instructing 8), and the audio output control signal is converted into an analog signal and output to the audio output device (3).
[0124]
Next, the drawing / sound output unit (101-5) completes the character drawing / sound output processing for the requested scene after performing all the motion processing of the character requested by the scenario driving unit (101-1). The scenario driver (101-1) is notified (FIG. 18, Step 505-6-6-10), and the process is terminated.
If the content of the request is to synchronize and output the character speech, the scenario driver (101-1) is notified of the completion of the character speech output processing when all the speech output is completed.
[0125]
After the drawing / sound output unit (101-5) notifies the end of the character drawing / sound output process of the scene, the scenario drive unit (101-1) is instructed about the speech recognition in the scene data being processed. (FIG. 17, step 505-6-7). If there is no instruction, the process proceeds to step 505-6-9. If there is an instruction, the voice recognition specified in the scene data is detected. Voice recognition processing is performed using the dictionary for the above (step 505-6-8).
[0126]
The scenario driving unit (101-1) notifies the user input from the agent OS unit (101-8) when there is no voice recognition instruction and after the voice recognition process (step 505-6-8) is completed. When it is received, it is confirmed what the input is (step 505-6-9), and processing corresponding to the input is performed.
As described above, since each process is executed independently, when an input is notified from the agent OS unit (101-8) even during the voice recognition process (step 505-6-8). The processing corresponding to the input is executed in parallel. Therefore, when the user selects the voice recognition selection button and is notified from the agent OS unit (101-8) during the voice recognition process, the next process (step 505-6) is performed regardless of the processing stage of the voice recognition process. -9) is executed.
For example, in the case of a standby scene, it is possible to determine whether or not the driver has indicated OK (affirmation) based on whether or not the screen of the display device has been touched. The next process (step 505-6-9) is executed regardless of the processing stage of the voice recognition process.
[0127]
When the scenario driving unit (101-1) receives, for example, an input related to the movement of the cursor from the agent OS unit (101-8), the scenario driving unit (101-1) moves the cursor to process a screen drawing request (screen scroll request). (Step 505-6-10).
When the user selects any answer selection button 54a displayed on the scene display screen 54 (see FIG. 14), it is determined which item has been selected (step 505-6-11).
Note that, as described above, the processes in FIGS. 16 and 17 show an example of the scenario process. In practice, each unit independently performs an individual process. For this reason, although not shown in FIG. 17, when voice recognition start or stop is input, confirmation of user input such as requesting the voice recognition unit to start or stop voice recognition processing is performed (step 505-6). There are other processes after -9). In addition, even before the end of the character drawing / audio output process of the scene is notified from the drawing / audio output unit (101-5), that is, before the operation of the instructed character is completed, It is also possible to perform steps 505-6-9).
[0128]
Next, the scenario driving unit (101-1) refers to the scenario data development management data (see FIG. 10) in the development judgment process (step 505-6-12) from the judgment result of the selected item. Determine next deployment.
When there is no next development, the scenario driving unit (101-1) returns to the user input determination without performing any processing.
[0129]
On the other hand, if there is a next development, and if the scene determined in step 505-6-1 is a branch scene, the scenario driving unit (101-1) determines the scene to be developed next. (Step 505-6-1).
In the scene determination process, the scenario drive unit (101-1) acquires the transition condition set for the currently processed scene from the scenario data development management data (see FIG. 10).
Then, the scenario drive unit (101-1) displays the target state change (defined in FIG. 25) or the target state corresponding to the acquired transition condition (development condition or additional condition) as the character psychology unit (101-4). And from the agent OS section (101-8).
Then, a normal scene, a clone scene, or a branch scene to be developed next, which is defined in the development management data with respect to the transition condition that the received state change or target state satisfies, is determined.
[0130]
The scenario drive unit (101-1) determines the next scene to be developed by the scene determination process, and then proceeds to the scene end process (step 505-6-14) to proceed to the next development.
In the scene end process (step 505-6-14), if there is a process requested by the scenario drive unit (101-1) to another processing unit, a cancellation request is made (for example, a request for a speech recognition process is made). If so, request to stop the recognition process) and return. Upon return, the process proceeds to scenario end determination (step 505-7) in FIG.
[0131]
Next, the configuration and operation of a scenario creation device in which a user or a third party creates a unique scenario will be described.
FIG. 22 shows the configuration of the scenario creation device.
The scenario creation device includes a control unit (200), an input device (210), an output device (220), a communication control device (230), a storage device (240), a storage medium drive device (250), Input / output I / F (260). These devices are connected by a bus line such as a data bus or a control bus.
[0132]
The control unit (200) controls the entire scenario creation device.
The scenario creation device can execute not only the scenario editing program but also other programs (for example, a word processor and a spreadsheet). The control unit (200) includes a CPU (200-1) and a memory (200-2).
The CPU (200-1) is a processor that executes various arithmetic processes.
The memory (200-2) is used as a working memory when the CPU (200-1) executes various arithmetic processes.
The CPU (200-1) can write and erase programs and data in the memory (200-2).
In the memory (200-2) in the present embodiment, an area for the CPU (200-1) to create, edit, and store scenario data according to a scenario editor (scenario editing program) can be secured.
[0133]
The input device (210) is a device for inputting characters, numbers, and other information to the scenario creation device, and is composed of, for example, a keyboard and a mouse.
The keyboard is an input device for inputting mainly kana and English characters.
The keyboard is used, for example, when a user inputs a login ID or password for logging in to the scenario creation device, or when a sentence to be subjected to speech synthesis or speech recognition is input at the time of scenario creation.
A mouse is a pointing device.
When operating a scenario creation device using a GUI (Graphical User Interface) or the like, an input device used for inputting predetermined information by clicking a button or icon displayed on the display device It is.
[0134]
The output device (220) is, for example, a display device or a printing device.
As the display device, for example, a CRT display, a liquid crystal display, a plasma display or the like is used.
Various screens such as a main screen for creating a scenario and a screen for selecting a screen configuration in each scene are displayed on the display device. In addition, selected information and input information are displayed on each screen.
As the printing apparatus, for example, various printer apparatuses such as an ink jet printer, a laser printer, a thermal transfer printer, and a dot printer are used.
[0135]
The communication control device (230) is a device for transmitting and receiving various data and programs to and from the outside, and a modem, a terminal adapter, and other devices are used.
The communication control device (230) is configured to be connectable to, for example, the Internet or a LAN (Local Area Network). The communication control device (230) exchanges signals and data by communication with other terminal devices or server devices connected to these networks, thereby transmitting scenario data created by the device, or by a third party. The created scenario data can be received (downloaded), and further, data necessary for creating the scenario data can be acquired.
The communication control device (230) is controlled by the CPU (200-1), and performs transmission and reception of signals and data with these terminal devices and server devices according to a predetermined protocol such as TCP / IP.
[0136]
The storage device (240) includes a readable / writable storage medium and a drive device for reading / writing programs and data from / to the storage medium.
A hard disk is mainly used as the storage medium, but it can also be configured by other readable / writable storage media such as a magneto-optical disk, a magnetic disk, and a semiconductor memory.
The storage device (240) stores a scenario editing program (240-1), scenario editing data (240-2), and other program data (240-3). Other programs include, for example, a communication program that controls the communication control device (230) and maintains communication with the terminal device and server device connected to the scenario creation device and the network, and scenario creation such as memory management and input / output management An OS (Operating System), which is basic software for operating the apparatus, is also stored in the storage device (240).
[0137]
The storage medium driving device (250) is a driving device for driving a removable storage medium to read / write data. Examples of the removable storage medium include a magneto-optical disk, a magnetic disk, a magnetic tape, IC cards, a paper tape punched with data, and a CD-ROM.
In the present embodiment, scenario data created and edited by the scenario creation device (a form used by the agent device) is mainly written in IC cards.
The scenario creation device acquires a scenario from the storage medium storing the scenario data by driving the storage medium by the storage medium drive device (250) or stores the created scenario data from the storage medium drive device. Can be stored.
[0138]
The input / output I / F (260) is configured by, for example, a serial interface or another standard interface.
The function of the scenario creation device can be expanded by connecting an external device corresponding to the interface to the input / output I / F (260). Examples of such external devices include a storage device such as a hard disk, a communication control device, a speaker, and a microphone.
[0139]
Next, the configuration of the scenario editing program (240-1) and scenario editing data (240-2) will be described.
FIG. 23 conceptually shows the configuration of the scenario editing program and data.
The scenario editing program (240-1) includes a scenario editor (240-1-1), a scenario compiler (240-1-2), and a DB editing tool (240-1-3).
The scenario edit data (240-2) includes the common definition DB (240-2-1), local definition DB (240-2-2), and SCE scenario data (240-2-3) created with the scenario editor. And actual machine format (NAV format) scenario data (240-2-4) converted by the scenario compiler.
The scenario editor (240-1-1) is an application program that creates scenario data.
[0140]
The scenario compiler (240-1-2) converts the SCE scenario data (240-2-3) created by the scenario editor (240-1-1) into actual machine scenario data (240- It is an application program that converts to 2-4) and functions as a conversion means.
FIG. 24 conceptually shows data format conversion.
As shown in FIG. 24, the scenario compiler (240-1-2) converts one or more SCE format scenario data (240-2-3) into one actual machine format (NAV format) scenario data (240 Convert to -2-4).
[0141]
The DB editing tool (240-1-3) is an application program for editing / updating data stored in the common definition DB (240-2-1).
The common definition DB (240-2-1) stores definition data for creating scenario data. The common definition DB (240-2-1) stores automatic start condition items, development condition items that specify scene development conditions, additional condition items (transition conditions), a character display state instruction table, and the like. This common definition DB (240-2-1) may exist not on the storage device of the scenario creation device but on a server connected by a local area network (LAN). By doing so, it becomes possible for each scenario creating apparatus connected by a local area network (LAN) to create scenario data using a common common definition DB (240-2-1).
The local definition DB (240-2-2) stores the screen configuration defined by the scenario creator while creating scenario data.
[0142]
The SCE format scenario data (240-2-3) is data created by the scenario editor (240-1-1).
The actual machine format (NAV format) scenario data (240-2-4) is converted from the SCE format scenario data (240-2-3) to the data format for use on the agent device by the scenario compiler (240-1-3). Data.
[0143]
Examples of items that can be edited with the scenario editing program are shown below. These are stored in the common definition DB (240-2-1).
FIG. 25 shows a development condition item table in which transition conditions (development conditions) for development from the normal scene to the next scene (normal scene, branch scene) are stored. . In the development condition item table, as shown in FIG. 25, state changes of various objects such as character action end, scenario interruption, and “Yes” selected as a user response are defined.
A plurality of expansion condition items can be set for one normal scene, but one expansion condition item can be set between a normal scene and another normal scene and between a normal scene and a branch scene. .
The expansion condition item table is stored in the common definition DB (240-2-1).
Each item of the development condition item is read out when creating the development configuration of each scene, and is displayed in a list in the branch condition designation window. Select the expansion condition item from the list displayed, and if it is not stored in the table, define the expansion condition separately using the DB editing tool (240-1-3) and add it to the scene. A deployment configuration is created.
It is possible to create a scene having a plurality of transition destinations (branched into a plurality of branches) by repeatedly selecting the expansion condition item for one normal scene and then setting a plurality of normal scenes or branch scenes to be expanded thereafter. it can.
[0144]
FIG. 26 and FIG. 27 conceptually show part of the contents of a unified action instruction table that does not depend on characters. Hereinafter, character setting means is formed from the description of FIGS. 26 and 27.
This table defines a common action display state regardless of the type of character, and is categorized for each content to be expressed by the character.
There are a plurality of unified motion instruction tables that do not depend on characters. In this embodiment, the display state instruction tables for work state (FIG. 26), mental state (FIG. 27), TPO state, growth state, and scale state are provided. Exists.
As shown in FIGS. 26 and 27, each display state instruction table has a plurality of tree structures, and the shape and classification name of each tree structure are displayed in the character action state instruction edit window described later. It has become.
[0145]
As shown in FIGS. 26 and 27, a state instruction number is assigned to each item at the end of the tree of the display state instruction table. This state instruction number corresponds to the state instruction number (see FIG. 9) of the character image selection data (conversion table) 102353 of the agent device 1.
[0146]
In these tables, as shown in FIG. 26 and FIG. 27, the system (agent device) indicates the level defined in the lower layer for the display state (carefully, normally, strong, medium, weak, etc.). The item “automatic” is automatically selected.
For the scene selected as automatic, the agent device determines which level of the display state of the character to use based on the character psychological state, date, time, etc., and selects and executes one of the display states. It will be.
[0147]
In the common definition DB (240-2-1), in addition, data for speech recognition used for speech recognition, data used for character motion instructions (separate speech instruction data also exists), and set for each scene Character image data and character dialogue data for previewing and confirming the designated instruction, a conversion table to each character representation method for a unified instruction independent of the character, each part data displayed on the display device (2), and Screen configuration data describing how to arrange the items and items that can be selected as processing contents in the scene, for example, actions that can be processed by the agent, on / off of the audio device, channel selection, air conditioner device Common definition of various process content item data such as on / off, temperature setting, destination setting to be supplied to the overall processing unit (102) D Stored in (240-2-1).
The common definition DB (240-2-1) also contains items related to startup conditions for editing automatic startup conditions and additional condition items (items set in branch scenes) for diversifying scenario development. Stored.
All of these definition data can be changed and added using the DB editing tool (240-1-3) in the same manner as each definition data.
[0148]
Character image data for previewing and confirming instructions set in each scene stores image data of various characters stored in the agent device.
Note that the user can also store character image data and conversion tables for other characters from the agent device in the common definition DB of the scenario creation device via the IC card 7 or the server 3.
[0149]
Next, each operation of scenario creation by the scenario creation device configured as described above will be described according to the transition of the screen.
FIG. 28 shows the configuration of the main window displayed on the display device when the scenario editor (240-1-1) is activated.
As shown in FIG. 28, the main window includes a scene screen 301 on which a scene screen being created (a scene screen (see FIG. 14) displayed on the display device (2) of the agent device 1) is displayed. A setting screen 303 on which setting items to be set are displayed, a scene development screen 305 in which a scene development configuration (branch state) is displayed by a tree structure of scene icons 307 representing each scene, and a processing icon display unit Has been.
[0150]
When the scenario editor (240-1-1) is activated, a start point 308 is displayed on the scene development screen 305 of the main window. When this start point 308 is selected, scenario properties can be edited. The selection is made by, for example, matching the point position by the mouse cursor to the corresponding location and double-clicking the mouse.
A screen configuration change button 309 is a button for selecting a screen configuration to be displayed, and a sound effect setting button 110 is a button for displaying a screen for setting a sound effect for each scene of the scenario.
When the agent display screen 311 is selected, an agent (character) action editing screen is displayed.
The dialogue editing button 313 is a button for editing a dialogue instruction of the character. When the button part and the background speech recognition dictionary setting 315 are selected, the speech recognition dictionary to be used can be edited. The name of the word to be recognized is displayed on the scene screen when the one displayed with the mark of the answer selection button 315a (54a) on the scene screen 301 is selected, and when the one 315b to be recognized in the background is selected, the target of speech recognition is selected. However, the name of the recognized word is not displayed.
[0151]
The timer setting button 317 is a button for setting and changing timer setting information.
In the control instruction edit 319 for an external device or the like, a control instruction for an external device or the like (including a navigation) is set.
The voice recognition start control instruction 320a sets a voice recognition instruction that defines how to start voice recognition when voice recognition is performed in the scene being created. As the voice recognition instruction, one of “automatically start”, “not automatically start”, and “judgment by agent device (on-vehicle device)” can be selected. Yes.
In the callback control instruction 320b, an instruction as to whether or not to perform a callback for confirming the result of voice recognition is set. As a callback instruction, one of “call back”, “do not call back”, or “agent device determines (automatic)” that determines whether the agent device determines the situation and determines whether to call back or not. Can be selected.
The AMM change setting change button 321 is a button for changing each long-term emotion element of the agent in the scene being created, as will be described later.
[0152]
The scene development display unit 322 displays a development condition item and an additional condition item defined for a scene designated (active) on the scene development screen, and a scene to be continued (connected) when the condition item is satisfied. Is displayed.
On the left side of the scene development display unit 322, as shown in FIG. 28, the development conditions (see FIG. 24) and the classification of additional conditions (see FIG. 25) set in the active scene are displayed in a tree structure. . In addition, on the right side of the scene development display section, the contents of the transition condition and the connection destination (the scene number of the development destination) are displayed.
[0153]
The processing icon display section includes a scene creation button 323, a branch scene creation button 324, a dummy scene creation section 325, an alias scene designation button 326, an end ID button 327, a link ID button 328, an insert button 329, an up / down change button 330, A scene playback button 331, a build button 332, and other processing buttons are displayed.
[0154]
The scene creation button 323 is used when a new normal scene is created.
When the scene creation button 323 is clicked, the scenario flow can be edited (the next scene is created). When the scene creation button 323 is clicked, a normal scene to be developed next to the currently selected scene can be created.
By branching the flow of the scenario with the scene creation button 323, a development configuration for each normal scene is created. For example, in the scene development configuration displayed on the scene development screen 305 in FIG. 28, when the scene creation button 323 is clicked in a state where the normal scene icon 5 is selected (actively displayed), the scene 5 is displayed. The icon of the subsequent scene is displayed on the lower layer side, and the normal scenes 7, 8,... Developed after the scene 5 are branched and created by clicking a plurality of times (a plurality of creation operations are performed).
[0155]
That is, by clicking the scene creation button 323 with the scene m (normal scene or branch scene) selected, the next normal scene m1 following the scene m is created. When the scene creation button 323 is clicked with the scene m selected again, the next normal scene m2 following the scene m is created by branching in parallel with the normal scene m1. Similarly, when the scene creation button 323 is clicked with the scene m selected again, the normal scene m3 is created.
If the scene following the created normal scene m1 is to be further developed, the next normal scene m1-1 following the normal scene m1 is clicked by clicking the scene creation button 323 with the normal scene m1 selected. Created. When creating another scene that branches off from the normal scene m1, the scene m1 is selected again and the scene creation button 323 is clicked to create a scene m1-2 following the scene m1.
Furthermore, if the scene creation button 323 is clicked while the created normal scene m1-1 is activated, a normal scene m1-1-1 following the normal scene m1-1 is created.
[0156]
A branch scene creation button 324 is used when a new branch scene is created.
When the branch scene creation button 324 is clicked, the scenario flow can be edited (create the next branch scene). When the branch scene creation button 324 is clicked, it is possible to create a branch scene to be developed next to the currently selected scene.
By using the branch scene creation button 324 to branch under a plurality of additional conditions following the development condition, a development configuration for each normal scene by a logical operation (logical sum, logical product) of the transition conditions can be created.
For example, in the scene development configuration displayed on the scene development screen 305 in FIG. 28, when developing from the normal scene 1 to the normal scene 2, by inserting the branch scene 4 and the branch scene 6 between the two normal scenes, When the state change defined in the normal scene 1 is performed and both the branch condition 4 and the branch condition 6 are satisfied, the normal scene 2 is developed following the normal scene 1. In this way, by using a plurality of branch scenes, it is possible to create scenarios that perform various developments with various condition settings.
[0157]
In FIG. 28, the branch scene is denoted by reference numeral 333. The branch scene can be created following a normal scene or a branch scene. For example, a branch scene 4 is created by selecting the branch scene creation button 324 with the normal scene 1 on the scene development screen 305 in FIG. 28 activated, and a branch scene creation button with this branch scene activated. A branch scene 6 is created by selecting 324.
The method for creating the branch scene hierarchically is the same as the method for creating the normal scene described above.
[0158]
The dummy scene creation button 325 is a button for creating a dummy scene.
The dummy scene is composed of management data for managing the scene, various processing data, and development management data, and each week process such as destination setting processing in the navigation function and storage processing of the agent learning result is defined. The
[0159]
The alias scene designation button 326 is a button for shifting from an active scene (normal scene, branch scene) to another created scene (normal scene, branch scene).
For example, when the scene scene 5 on the scene development screen 305 has the branch scene 6 active and the alias scene designation button 326 is selected and then the scene screen 5 to be transferred is selected, the alias indicating that the scene screen 5 is transferred to. A screen 334 is displayed.
[0160]
The end ID button 327 is a button for creating an end ID for specifying the end position of the scenario.
When the end ID button 327 is clicked, a scenario end position 340 can be created. An end number is assigned as an end ID to the end position 340 of each created scenario.
When the end position 340 of the created scenario is selected, an end property editing screen is displayed, and each short-term emotion element of the agent can be set and changed on this screen.
[0161]
The link ID button 328 is a button for creating a link ID for linking another scenario to the scene.
The insert button 329 is a button for inserting a normal scene, a branch scene, and a dummy scene before each active scene (normal scene, branch scene) or end mark. Select a button for each scene type.
The up / down replacement button 330 is a button for changing the vertical position of the scene, and includes a button for moving the active scene up and a button for moving down the active scene.
The scene playback button 331 is a button for playing back an active normal scene.
The build button 332 is a button for compiling the created scenario into an actual machine format (NAV format) for use by the agent device.
[0162]
The main window shown in FIG. 28 is an example of a scenario being created, and the initial screen where the scenario editor (240-1-1) is started displays only the start point 308 on the scene development screen 305. Nothing is displayed on the scene screen 301, and the setting screen 303 is not set (default value is displayed).
[0163]
FIG. 29 shows the state of the main window when the branch scene is activated on the scene development screen 305.
As shown in FIG. 29, when a branch scene (branch scene 4 in the figure) is selected and activated, an additional condition classification display column 335 and an additional condition item column 337 are displayed in the area of the scene screen 301 (see FIG. 28). Is displayed.
In the branch condition classification display field 33, the classification of the additional condition item selected for the branch scene in the active state is displayed.
In the branch condition item column, an additional condition item for specifying a branch destination is displayed.
[0164]
FIG. 30 shows the flow of screen operations for editing scenario properties.
In the main window shown in FIG. 28, when the start point 308 displayed on the scene development screen 305 is double-clicked, the scenario property editing window shown in FIG. 30 is displayed over the main window.
[0165]
In this scenario property edit window, scenario name input, kana name input, icon selection, genre selection, priority setting, expiration date (upper limit of time lag from start condition to actual start) setting, running You can set medium execution conditions, scenario start conditions (in a separate window), standby process usage conditions, creator name input, and comment input. The scenario name input and kana name input entered on this screen are management data in the scenario data in the actual machine format.
When the decision button 402 is clicked in the scenario property editing window, the edited contents are reflected in the data, and the process returns to the main window. On the other hand, when the cancel button 403 is clicked, it is not reflected in the data and returns to the main window.
When the standby process use condition setting button 409 is clicked in the scenario property editing window (FIG. 30), a standby process condition screen is displayed, and it is possible to select whether or not to perform the standby process.
[0166]
When a start condition setting button 401 is selected in the scenario property edit window, a main edit window for a scenario start condition (automatic start condition) is displayed (not shown).
The main editing window of the scenario start condition can be set so that the user can start the scenario manually. In this case, uncheck the check box and set it not to start manually.
The automatic start condition (autonomous start condition) list in the main editing window of the scenario start condition displays a condition for the system to automatically start the scenario.
When the new creation button is clicked in the main editing window of the scenario start condition, an automatic start condition selection window (not shown) is displayed and a new start condition can be edited.
[0167]
In the automatic start condition selection window, a judgment condition item (category) to be set is selected, and when the decision is clicked, the process proceeds to a condition range selection window for automatic start. For example, if you want to start a scenario automatically while driving on an expressway (autonomous activation), select the “Choose type” item in “Select when the road condition starts”, and then select “ Select "Highway".
[0168]
Next, various operations for creating a scenario other than the autonomous activation condition will be described.
FIG. 31 shows a flow of screen operations for selecting a screen configuration to be displayed on the agent display screen 51 (see FIG. 14).
When the scene icon 307 displayed on the scene development screen 305 of the main window shown in FIG. 31A is selected and activated, a scene screen 310 corresponding to the selected scene icon is displayed. When the screen configuration change button 309 on the setting screen 303 is clicked, a screen configuration selection window (b) is displayed.
In this screen configuration selection window (b), a list of screen configurations that can be displayed on the scene display screen 54 (see FIG. 18) is displayed. A basic screen with nothing displayed, a 2-choice screen with two selection buttons by buttons, a button-choice screen with multiple selection buttons, for example, a list-selection screen that lists multiple items such as prefecture names Various selectable screens such as an image display screen for displaying image data are displayed.
Select one screen configuration from the listed screen configurations, and click the OK button to change the screen configuration in the confirmation dialog. If you want to change after confirmation, change to that screen configuration and change it to the main window ( Return to a). When returning to the main window, the scene screen 301 is changed to the newly selected screen configuration and displayed.
[0169]
The processes and operations based on FIGS. 32 to 35 form character display contents (images, sounds), screen element creation means for setting screen elements based on the processing contents, and character setting means.
FIG. 32 shows a flow of a screen operation for editing a character action (agent action) instruction.
When the agent display screen 311 is double-clicked with the mouse in the main window (FIG. 28) showing the editing state of the scene screen, the action instruction edit dialog (individual instruction) (FIG. 32 (a)) or the character action instruction edit dialog ( (Unification instruction) (FIG. 32B) is displayed.
Which window is displayed is the window used last time, and when the previous operation instruction is instructed by direct instruction for each character (FIG. 32A) is displayed and expressed in the previous character. When an instruction is given in a state that the user wants to make it, (FIG. 32B) is displayed. When used for the first time, a character action instruction edit dialog (unified instruction) is displayed.
[0170]
In the character action instruction edit dialog (individual instruction) in FIG. 32A, motion (action), facial expression (element of emotion expression), hairstyle (element of growth expression), clothes (element of TPO expression), scale (character display) If the area is a camera frame, the camera angle element), the range to be spoken (the range to which the dialogue is assigned), the operation instruction timing, and the background of the character display area are selected.
When a motion is selected from the motion list, it is displayed in the selected motion column on the right side. When the scene being created is executed, an individual motion image corresponding to the selected motion is reproduced. A plurality of motions can be selected, and individual motion images corresponding to the selected order (list display order of the selected motion column) are reproduced.
In the character action instruction editing dialog (individual instruction) in FIG. 32A, when the determination button is clicked, the edited content is reflected in the data and the process returns to the main window (FIG. 28). Clicking the Cancel button returns to the main window without being reflected in the data.
When the expression content designation button is clicked, the character action instruction edit dialog (unification instruction) is switched to FIG. 32B.
[0171]
When an action instruction (display state) is selected in the character action instruction edit dialog (individual instruction), a scene is defined as a character-specific action. In this case, the agent device 1 determines that it is not a unified action instruction that does not depend on the character in the character drawing / voice output processing by the drawing / voice output unit (101-5).
[0172]
In the character action instruction editing dialog (unified instruction) in FIG. 32 (b), as a state expressed by the character, a unified action instruction table (FIG. 32) that is independent of the characters stored in the common definition DB (240-2-1). 26, see FIG. 27), work element, mental state element, TPO expression element, growth expression element, scale element (when the character display area is a camera frame, the camera angle element) Displayed as selectable. In addition, a screen for selecting the operation instruction timing and the background of the character display area is displayed.
By selecting each display state displayed in the character action state instruction editing window, the user can select a scene in which the display state number corresponding to the display state selected as the action common to each character is set regardless of the character. Is set as the contents of
If the OK button is clicked in this window, the edited contents are reflected in the data and the process returns to the main window (a). Clicking the cancel button returns to the main window (a) without being reflected in the data.
When the direct instruction designation button is clicked, the character action instruction editing dialog (individual instruction) (b) is switched.
[0173]
In the character action instruction editing dialog shown in FIG. 32, a transition mode (quality mode, quick response mode) when an interruption event occurs can be defined in the character action quality column. By defining the transition mode by this character action instruction edit dialog, action interruption setting means for setting whether or not to interrupt the action expression of the character is formed.
When the pull-down button on the left side of the character motion quality column is clicked, selectable modes are “automatic selection”, “switch after waiting for motion” (corresponding to quality mode), “switch without waiting for motion end” ( (Corresponding to the quick response mode), and when one of them is selected, the transition mode corresponding to the individual motion image of the motion selected from the motion list is defined.
Note that by specifying the beginning (left side) and end (right side) of the line assignment range in the character action instruction editing dialog (individual instruction) in FIG. 32A, the individual action image corresponding to the motion in the specified range. Is associated with the dialogue (character voice) set in the scene being edited. As a result, the individual motion images in the designated range are reproduced by matching the associated dialogue.
For example, when five motions are selected from the motion list in the order of a, b, c, d, and e, and 2 to 4 are specified as ranges as the line assignment, the reproduction of the individual motion image a is finished. Later, the individual motion images from b to d are reproduced, and during this time, the character outputs speech as speech. Thereafter, the individual operation image e is reproduced.
[0174]
FIG. 33 is an explanatory diagram of the voice editing memo window shown when the dialogue editing button is selected in the main window.
When the dialogue editing button 313 is selected (clicked) in the main window of FIG. 28, the scenario editor 211 newly displays a voice editing memo window 600 shown in FIG.
Although described as the process of the scenario editor 211, what is actually displayed is the scenario editor 211 (program) and the CPU 101 cooperating to perform processing such as display, but in order to simplify the explanation, the operations of the two cooperated Will be described as processing and operation of the scenario editor 211. The following description and the process and operation of the synthesized speech editing dialog 214 will be described in the same manner.
[0175]
When the voice editing button 601 is selected in the voice editing memo window 600 of FIG. 33, the synthesized voice editing dialog 214 is activated, and the synthesized voice editing dialog 214 displays the voice editing main screen 608 shown in FIG.
When synthesized voice data is created on the voice editing main screen 608, the scenario editor 211 displays a text corresponding to the synthesized voice data on the balloon display portion 602 of the voice editing memo window 600.
It is also possible to directly enter text in the balloon display unit 602 without performing voice editing. In this case, since the synthesized voice data is not created, even if this scenario is executed by the agent device, no voice is output, and the text input from the balloon display unit 602 is displayed in the balloon 52.
[0176]
FIG. 34 shows the audio editing main screen 608.
The voice editing main screen 508 includes a voice specifying unit, a dialogue input unit, a front matching search unit, a result display unit, and a cancel button.
The voice specifying unit includes a voice type selection button 607 for selecting a voice type and an emotion selection button 605 for selecting an emotion.
The dialogue input unit includes a dialogue input box 610 and a conversion button 611.
The forward match search unit includes a check box 612, a candidate list box 613 in which forward match candidates are displayed as a list, a candidate number box 614 in which the number of all candidates including a candidate not listed is displayed, and candidates displayed in a list It is comprised by the candidate selection button 615 which selects.
The result display unit is a word string information box 619 that visually displays the connection of sounds by the synthesized voice data by a word surrounded by a frame and a silent line segment, a play button 620, a delete all button 621, a sentence registration button 622, A registered text list button 623, a selected word registration button 624, a new word registration button 625, a registered word list button 626, and an enter button 627 are configured.
[0177]
By inputting a speech that makes up the content of the conversation that the agent wants to pronounce in the speech input box 610 of the speech editing main screen 605, the corresponding synthesized speech data is created and edited. Hereinafter, the synthetic voice creation and editing processing operations will be described.
[0178]
When the voice type selection button 607 is selected, the synthesized voice editing dialog 214 displays a drop-down list of selectable voice types. As a selectable voice type, one of adult female, adult male,..., Automatic selection can be selected, and the selected voice type is stored in the memory 102 as synthesized voice data. The default sound type is defined for adult women.
When automatic selection is selected as the type, when the synthesized voice data created and edited in the synthesized voice editing dialog 214 is auditioned (when the playback button 620 is clicked), it is played back with the default type.
The agent device that executes the scenario also has a function to specify the voice. When free selection is selected, it conforms to the voice specified on the agent side, the voice specified by the agent device user, or the specified character. Voice (voice type) is output. On the other hand, when a voice type other than free selection is selected as the synthesized voice data of the scenario data, the voice type voice according to the synthesized voice data is preferentially output regardless of the designation by the agent device. .
[0179]
When the emotion selection button 605 is selected, the synthesized speech editing dialog 214 displays a drop-down menu of emotions indicating emotions such as fun, sad, energetic,.
When any emotion is selected by the user, the synthesized speech editing dialog 214 preferentially selects the speech code corresponding to the selected emotion from the unit speech data that exists for the same notation from the dialogue DB 221a. To search.
If no emotion is selected, the emotion “normal” is selected.
In this way, the designation means of the present invention is formed by designating at least one of emotion and voice type.
[0180]
When the dialogue input box 610 is designated and characters are input, the synthesized speech editing dialog 214 sequentially displays the input characters.
When the check box 612 is checked, the notation character portion of the dialogue DB 221a is searched for in front, the candidate notation is displayed in a list in the candidate list box 613, and the number of candidates listed is displayed in the candidate number box 614. indicate.
In the example displayed in FIG. 34, since “Today” is input in the dialogue input box 610, the synthesized speech editing dialog 214 displays “Today”, “Today”, and “Today” as candidates that “Today” matches forward. 16 candidates such as “is fine” are searched, and 8 of them are displayed. Candidates that are not displayed can be scrolled by moving the scroll button on the right side of the candidate list box 613.
For example, when “Today is sunny” is displayed in the dialogue input box 610 to which “has fine” is further input, as a result of the forward matching search, “Today is sunny”, “Today is sunny” and “ Three candidates, “It ’s sunny today,” are listed.
As described above, the forward matching search is automatically executed without any user operation in accordance with the text input and displayed in the dialogue input box 610.
[0181]
When any one of the forward matching candidate lists displayed in the candidate list box 613 is selected and determined, the word list information box 619 displays the dialogue input box 610, the candidate list box 613, and the candidate number box. The display of 614 is cleared.
The selected candidate is determined by mouse double-clicking the candidate, selecting a candidate, clicking the candidate selection button 615, selecting a candidate, and then selecting the candidate using the “Enter” key on the keyboard.
[0182]
Next, creation of synthesized speech data and word string display for visually displaying an input sentence displayed in the word string information box 619 will be described.
When the conversion button 611 is selected, the synthesized speech editing dialog 214 converts the text (input sentence) displayed in the dialogue input box 610 as a conversion target sentence in a batch.
If the text sentence to be displayed on the balloon screen 52 (see FIGS. 14 and 28) has already been input (the synthesized speech data may not be created), the dialogue edit button 313 in FIG. When clicked, the input text sentence is displayed on the balloon display unit 602. When the voice editing button 601 is selected in this state, the synthesized voice editing dialog 214 displays the text sentence displayed in the balloon display unit 602 in the dialogue input box 610. As a result, the synthesized voice data that has already been created can also be edited.
[0183]
FIG. 35 shows the flow of screen operations for editing the speech recognition dictionary.
This operation is to set a voice dictionary for recognizing a voice response returned from the user by the agent device when the agent device asks for a response based on the created scenario.
In the main window showing the editing state of the scene screen (FIG. 28), when a button part portion 315a (which may be a normal list box part portion depending on the screen configuration) displayed according to the selected screen configuration is double-clicked, the sound is displayed. A recognition dictionary selection window (FIG. 35A) is displayed. The speech recognition dictionary selection window is also displayed by double-clicking the dictionary list display section 315b recognized in the background.
[0184]
In the speech recognition dictionary selection window (FIG. 35 (a)), when a dictionary name in the dictionary candidate list display is double-clicked, it is displayed in the list selected as a general dictionary as using the speech recognition dictionary.
When the OK button is clicked, the edited content is reflected in the data and the screen returns to the main window (FIG. 28), and when the Cancel button is clicked, the data is not reflected in the data and the screen returns to the main window.
When the user-defined dictionary edit button is clicked, a voice recognition dictionary creation window (FIG. 35B) for creating a new voice recognition dictionary is displayed. In this window, when a dictionary name is input and the dictionary addition button is clicked, a window for creating a new speech recognition dictionary with the name and registering the word in the speech recognition dictionary (FIG. 35C) is displayed.
When the OK button is clicked in the speech recognition dictionary creation window, creation of the speech recognition dictionary is terminated, and the speech recognition dictionary selection window returns.
[0185]
In the window for registering words in the speech recognition dictionary (FIG. 35 (c)), the word to be registered is input into the reading field in half-width kana and the decision button is clicked. Next, a name (name to be displayed) is selected or newly entered, and a PCM voice for callback is selected (if none is selected, TTS is used for callback). After entering these three items, clicking the registration button will register the data and add it to the registered word list on the right.
When you have finished registering the words you want to register, click the Back button to return to the voice recognition dictionary creation window.
[0186]
Next, an operation for editing a scenario flow will be described.
In the main window shown in FIG. 28, the scene icon 307 being created is selected and activated. When the new scene creation button 323 is clicked in this state, a transition selection window (not shown) is displayed.
In this transition selection window, the condition for branching to the newly created scene is selected from the branch event list to determine the transition condition to the next scene (newly created scene), and the process returns to the main window.
A new scene is created on the scene development screen 305 of the main window after returning, and is displayed as NEW to distinguish it from other scene icons.
The branch events that can be selected in the branch event selection window are displayed in FIG.
As described above, by setting the conditions for shifting from one screen element to the next screen element, the transition condition setting means in the present invention and the time limit for shifting from one motion process of the character to the next motion process The transition time limit setting means for setting is formed.
[0187]
Next, an operation for editing the end position of the scenario will be described.
When the scenario end ID button 327 is clicked in the main window of FIG. 28, an end ID designation window (not shown) is displayed.
In this end ID designation window, the ID number of the end position mark is designated. Normally, it is automatically assigned, but the editor operator can also assign it by unchecking the check box written as automatic assignment. When the OK button is clicked, the ID number is determined and a branch event selection window (not shown) is displayed.
In the branch event selection window, the branch condition for ending the scenario is set in the same way as when creating a new scene. Additional conditions can be set in the same way. If an OK button is clicked in this window, the condition (transition condition) is determined and the process returns to the main window (transition condition setting means). At this time, a new end ID is newly created and displayed on the scene development screen 305 of the main window.
As described above, a screen element in which at least one of display contents and processing contents of a character (agent) is defined is defined as one screen element (scene), and the screen element is combined with the transition condition between the screen elements and the screen element. A screen element transition body creating means for creating a transition body (scenario) is formed.
Further, as described above, the character display processing setting means for setting the processing content of the character to be displayed on the display device in the vehicle is formed.
[0188]
FIG. 36 shows a flow of a screen operation for compiling the created scenario into a real machine format (NAV format) that can be used by the agent device.
When the build button 332 is clicked in the main window (FIG. 36A), a scenario compiler window (b) is displayed.
In this scenario compiler window (b), specify the name of the file that outputs the compiled data, select the scenario to be converted at the same time (convert the scenario checked in the scenario list), and click the compile button. The scenario compiler (240-1-2) starts data conversion. The data conversion status is displayed on the result display section.
When the end button is clicked, the data conversion is completed and the process returns to the main window (a).
[0189]
As described above, the screen element transition body creating means for creating the screen element transition body (scenario) by combining the screen element (scene), the transition condition, the branch element, and the branch condition is formed.
Further, as described above, the character display processing setting means for setting the processing content of the character to be displayed on the display device in the vehicle is formed.
[0190]
As described above, according to the scenario creation device of the present embodiment, the display state instructing the action of the character in each scene of the scenario is made common regardless of the type of the character, and thus can be executed without being bound by the character. Scenarios can be created, and scenarios created for each character can be combined into one, making scenario creation easier.
[0191]
In addition, according to the agent device of the embodiment described above, the long-term emotional element and the short-term emotional element are defined as the psychological state of the agent, and both the emotional elements are referred to, and the action is determined to make the agent more human Can behave.
In the scenario creation device, both emotion elements can be set as scenario transition conditions, and the scenario of an agent that behaves more like a human can be created by making both emotion conditions changeable in the scenario.
[0192]
In addition, according to the present embodiment, the process for determining whether the condition for autonomously starting (automatically appearing) the agent based on the scenario data created by the scenario creating device is satisfied periodically or in a specific state It can be executed when the condition is satisfied, and the agent can be made to appear automatically when the condition is satisfied.
On the other hand, according to the scenario creation device and the scenario editor of this embodiment, regardless of whether or not there is knowledge of the program, having a scenario editor makes it possible for agents to automatically appear and respond when a specific condition is met. Scenario data can be easily created and edited.
[0193]
Further, according to the present embodiment, since each individual motion image starts with the basic posture state image and ends with the basic posture state image, the posture of the character does not change abruptly between the individual motion images. , Can be more natural movement.
In addition, it is possible to adjust the time without performing an unnatural operation by configuring the individual motion images as a start moving image, a retained moving image, and an end moving image, and repeating the reproduction of the retained moving image.
If the response speed is more important than quality, the character's response can be made quicker by interrupting the individual motion image being reproduced and reproducing the next individual motion image when the interruption condition is satisfied. .
[0194]
Although the preferred embodiments of the present invention have been described above, various modifications can be made in the present invention.
For example, the reproduction after interruption in the quality mode may be the second quality mode II as shown in FIG.
Note that the second quality mode II may be adopted instead of the quality mode described with reference to FIG. 20 of the embodiment, and the quality mode of FIG. 20 and the second quality mode II may be used in combination. When used together, the second quality mode II is added to the selection object in the character action quality pull-down menu of FIG. Further, in the agent device, “quality-oriented” (corresponding to the quality mode in FIG. 20) and “reaction-oriented” (as shown in FIG. 13) are automatically selected for the operation switching determination data (10-2-3-8) (see FIG. 13). This is defined by adding “quality / intermediate reaction” (corresponding to the second quality mode II) to the quick response mode of FIG.
[0195]
FIG. 37 shows the reproduction state after interruption in the second quality mode II.
(1) When starting video playback
As shown in FIG. 37A, when an interruption event occurs during the reproduction of the start moving image, the starting moving image being reproduced is interrupted and the end moving image is reproduced from the middle.
The playback start position of the end video is the playback time of the playback video and the end video, and when the time from the playback of the start video to the occurrence of the interruption event is T2, the end video is after the time T1-T2 has elapsed. Start from the point. In this case, the playback time of the end moving image is also T2.
The start video and the end video are in a symmetrical relationship, that is, when the end video is played in the reverse direction from the basic posture state image, it becomes the same as the start video, so the image when the start video is interrupted and the end video are started It matches the image at the time. For this reason, the gap of the image at the time of interruption can be eliminated, and the image being reproduced can be ended early.
[0196]
(2) During playback of retained video
As shown in FIG. 37 (b), when an interruption event occurs during the reproduction of the retained moving image, the retained moving image being reproduced is interrupted and the end movie is reproduced, and then the process proceeds to the subsequent individual operation image. To do.
As a result, the remaining playback time of the retained moving image can be promptly adapted. In this case, since the retained moving image is slightly moved from the retained state image and the end moving image starts from the retained state image, the gap between the images is reduced. As a slight operation from the holding state images 12b1 and 12b4 in this case, the movement is within a range where the difference from the holding state images does not exceed 10%.
As a slight movement within the predetermined range, the difference from the previous image in unit time may be within 10%. Further, the difference range may be 5%, 15%, or 20% in addition to 10%.
(3) End video playback
As shown in FIG. 37 (c), when an interruption event occurs during the reproduction of the end moving image, the end moving image is reproduced as it is, and then the subsequent individual operation image is transferred. This operation is the same as the transition shown in FIG.
In the retained video for time adjustment in the case of the second quality mode II described above, the agent is operating because it performs a slight operation such as waving a small hand, blinking, squeezing the small neck, etc. This can be recognized by the user. Further, since the retained moving image has a slight movement in the retained state, the gap between the images does not increase even if the retained moving image is interrupted in the middle of repeated reproduction and is shifted to the end moving image.
[0197]
Moreover, although embodiment demonstrated demonstrated the case where there was one basic attitude state, you may make it provide two or more basic attitude states.
For example, when there are three basic posture states A, B, and C, individual motion images that start from the respective basic posture states A, B, and C, return to the basic posture states A, B, and C through the holding state Prepare. Each individual motion image is composed of a start moving image, a retained moving image, and an end moving image, as in the embodiment described above.
In addition, a basic posture change moving image for changing from one basic posture state to another basic posture state is separately prepared. If the number of basic posture states is Q, (Q 2 -Q) Required. For example, when there are three basic posture states A, B, and C, a basic posture change video that starts at A and ends at B, a basic posture change video that starts at B and ends at A, and starts at B and ends at C Basic posture change video that ends, basic posture change video that starts at C and ends at B, basic posture change video that starts at C and ends at A, and basic posture change video that starts at A and ends at C Prepare a posture change video.
Then, it is possible to continuously reproduce a moving image with no gap between images using the basic posture changing moving image and the individual operation image.
By providing a plurality of basic posture states in this way, it becomes possible to cause a character to perform a complicated motion.
[0198]
【The invention's effect】
According to the invention described in claims 1 to 3, one screen element of the screen element transition body Action expression video defined in If there is a predetermined instruction from the in-vehicle device or user during execution of Action expression Subsequent moving images can be reproduced with less unnaturalness with respect to the reproduction quality and response speed of the moving images.
According to invention of Claim 4, Claim 5, while creating the screen element transition body which a character communicates by being performed by a vehicle-mounted apparatus, and its starting condition, 1 Screen element Action expression video defined in Running ,car Loading device Or its user Character's motion expression when given instructions from Video Whether to interrupt About mode Can be set.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of an agent device according to an embodiment of the present invention.
FIG. 2 is a configuration diagram of various status detection devices in the agent device.
FIG. 3 is an explanatory diagram illustrating a relationship between an agent processing unit realized by a program being executed by a CPU and an overall processing unit.
FIG. 4 is an explanatory diagram showing a configuration of an agent processing unit.
FIG. 5 is an explanatory diagram conceptually showing information collected in an external storage medium.
FIG. 6 is an explanatory diagram showing the contents of mental model data in a conceptual manner.
FIG. 7 is an explanatory diagram conceptually showing long-term emotional elements.
FIG. 8 is an explanatory diagram exemplifying the contents of regulation of long-term emotion change conditions.
FIG. 9 is an explanatory diagram showing short-term emotional elements as providing concepts.
FIG. 10 is an explanatory view exemplifying the contents of provisions for short-term emotion change conditions.
FIG. 11 shows a configuration of actual machine format scenario data.
FIG. 12 is an explanatory diagram showing an example of the content of an individual action image representing an action in which a character raises his right hand.
FIG. 13 is an explanatory diagram conceptually showing the contents of operation switching determination data in agent data.
FIG. 14 is an explanatory diagram showing an example of a scene screen displayed on a display device based on scenario scene data.
FIG. 15 is a screen transition diagram showing scene screen transitions for each scene according to a guidance scenario transmitted by the inn to a prospective guest.
FIG. 16 is a flowchart showing an example of a flow of scenario execution processing.
FIG. 17 is a flowchart showing an example of the flow of scene processing.
FIG. 18 is a flowchart showing character drawing / sound output processing by a drawing / sound output unit (101-5).
FIG. 19 is an explanatory diagram showing a flow that can be transferred between a start moving image, a retained moving image, and an end moving image when an individual operation image is reproduced.
FIG. 20 is an explanatory diagram showing a reproduction state after interruption in the quality mode.
FIG. 21 is an explanatory diagram showing a reproduction state after interruption in the quick response mode.
FIG. 22 is a configuration diagram of a scenario creation device.
FIG. 23 conceptually shows the configuration of a scenario editing program and data.
FIG. 24 is an explanatory diagram conceptually showing conversion of a data format.
FIG. 25 is a development condition item table storing development condition items (transition conditions) for branching from one scene to the next scene (scene development).
FIG. 26 is an explanatory diagram conceptually showing a part of the contents of a character display state instruction table stored in a common definition DB.
FIG. 27 is an explanatory diagram conceptually showing another part of the contents of the character display state instruction table stored in the common definition DB.
FIG. 28 shows a configuration of a main window displayed on a display device when a scenario editor is activated.
FIG. 29 is an explanatory diagram showing the state of the main window when a branch scene on the scene development screen is activated.
FIG. 30 shows a flow of a screen operation for editing a scenario property.
FIG. 31 shows a flow of a screen operation for selecting a screen configuration to be displayed on the agent display screen.
FIG. 32 shows a flow of a screen operation for editing a character action (agent action) instruction.
FIG. 33 is an explanatory diagram of a voice editing memo window shown when a dialogue editing button is selected in the main window.
FIG. 34 is an explanatory diagram of a voice editing main screen.
FIG. 35 shows the flow of screen operations for editing a speech recognition dictionary.
FIG. 36 shows a flow of screen operations for compiling a created scenario into a format of an actual machine format that can be used for navigation.
FIG. 37 is an explanatory diagram showing a modified example of the reproduction state after interruption in the quality mode.
[Explanation of symbols]
1 Agent device
2 Scenario creation device
3 servers
(1) Central processing unit
(2) Display device
(3) Audio output device
(4) Voice input device
(5) Input device
(6) Various situation detection devices
(7) Various in-vehicle devices
(8) Communication control device
(9) Communication device
(10) External storage device
(200) Control unit
(210) Input device
(220) Output device
(230) Communication control device
(240) Storage device
(250) Storage medium drive
(260) Input / output I / F

Claims (5)

キャラクタの基本姿勢状態から表現内容を示す所定姿勢状態までの開始動画、前記所定姿勢状態を保持する保持動画、前記所定姿勢状態から基本姿勢状態までの終了動画の少なくとも3つの動画からなるキャラクタの動作表現動画を記憶する動作表現動画記憶手段と、
前記キャラクタの動作表現動画を含む表示内容が定義された画面要素を1画面要素とし、該画面要素を組み合わせて構成された画面要素推移体を記憶する画面要素推移記憶手段と、
前記画面要素推移体を実行する画面要素推移体実行手段と、
前記画面要素推移体の1画面要素で定義された動作表現動画の実行中に、車載装置又は使用者から所定の指示があった場合、当該実行中の動作表現動画を中断して次の画面要素を実行する即応モードと、当該実行中の動作表現動画が終了した後、次の画面要素を実行する品質モードと、を判断するモード判断手段と、
を備えることを特徴とする車載装置。
Start moving from the basic posture of the character to a predetermined posture state indicating a representation content, the predetermined posture state holding video for holding at least the operation of the character of three video ends moving from the predetermined posture to the basic posture state an operation expression moving image storage means for storing a representation videos,
Screen element transition body storage means for storing a screen element transition body configured by combining the screen elements with a screen element in which display content including a motion expression moving image of the character is defined as one screen element;
Screen element transition body executing means for executing the screen element transition body;
During execution of the defined operating expressed videos on one screen element of the screen element transition body, when a predetermined instruction from the vehicle device or the user, the next screen element to interrupt the operation expressions video being the execution a readiness mode in which the execution and the operation representation moving in the execution has been completed, the mode determining means for determining a quality mode for executing the next screen element, and
A vehicle-mounted device comprising:
前記モード判断手段は、車載装置又は使用者から所定指示があった場合、実行中の動作表現動画画面要素で規定されているモードから、即応モードか品質モードかを判断する
ことを特徴とする請求項1に記載の車載装置。
The mode determination means determines whether the mode is a quick response mode or a quality mode from a mode defined by one screen element of a motion expression video being executed when a predetermined instruction is received from an in-vehicle device or a user. The in-vehicle device according to claim 1.
前記モード判断手段は、車載装置又は使用者から所定指示があった場合、車載装置に規定されたテーブルに応じて、即応モードか品質モードかを判断する、
ことを特徴とする請求項1に記載の車載装置。
The mode determining means determines whether the mode is a quick response mode or a quality mode according to a table defined in the in- vehicle device when there is a predetermined instruction from the in-vehicle device or the user.
The in-vehicle device according to claim 1.
車載装置で実行される画面要素推移体を作成するデータ作成装置であって、
基本姿勢状態から表現内容を示す所定姿勢状態までの開始動画、前記所定姿勢状態を保持する保持動画、前記所定姿勢状態から基本姿勢状態までの終了動画の少なくとも3つの動画からなる段階で規定されるキャラクタの動作表現動画を含む表示内容が規定された画面要素を1画面要素として作成する画面要素作成手段と、
前記画面要素作成手段で作成された1画面要素から次の画面要素に移行するための移行条件を設定する移行条件設定手段と、
前記画面要素及び前記移行条件に基づき車載装置で実行される画面要素推移体を作成する画面要素推移体作成手段とを備え、
前記画面要素作成手段は、前記画面要素で定義された動作表現動画を実行中、車載装置又はその使用者からの所定指示がなされた場合に、キャラクタの動作表現動画を中断するか否かについてのモード、当該1画面要素に設定する動作中断設定手段を更に備える
ことを特徴とするデータ作成装置。
A data creation device for creating a screen element transition body executed by an in-vehicle device,
Specified in a stage comprising at least three moving images: a starting moving image from the basic posture state to a predetermined posture state indicating the contents of expression, a holding moving image that holds the predetermined posture state, and an ending moving image from the predetermined posture state to the basic posture state. A screen element creating means for creating a screen element in which display contents including a motion expression video of a character are defined as one screen element ;
Transition condition setting means for setting a transition condition for transitioning from one screen element created by the screen element creation means to the next one screen element;
Screen element transition body creating means for creating a screen element transition body to be executed by the in-vehicle device based on the one screen element and the transition condition;
It said screen element creation means, executing a defined operation expressed moving by the one screen element, when a predetermined instruction from the vehicle-mounted device or the user has been made, whether or not to interrupt the operation representation video Character A data creation apparatus, further comprising an operation interruption setting means for setting the mode of 1 to the one screen element .
前記動作中断設定手段は、実行中の動作表現動画中断して次の画面要素を実行する即応モード、実行中の動作表現動画を継続した後に次の画面要素を実行する品質モード、中断するか否かを車載装置側で判断する自動判断モードのいずれか1を設定する、
ことを特徴とする請求項4に記載のデータ作成装置。
The operation interruption setting means is an immediate mode for interrupting an action expression movie being executed and executing the next screen element, a quality mode for executing the next screen element after continuing the action expression movie being executed, whether to interrupt Set any one of the automatic determination modes to determine whether or not on- vehicle device side,
The data creation device according to claim 4.
JP2003139671A 2003-05-16 2003-05-16 In-vehicle device and data creation device Expired - Fee Related JP4206818B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003139671A JP4206818B2 (en) 2003-05-16 2003-05-16 In-vehicle device and data creation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003139671A JP4206818B2 (en) 2003-05-16 2003-05-16 In-vehicle device and data creation device

Publications (2)

Publication Number Publication Date
JP2004340836A JP2004340836A (en) 2004-12-02
JP4206818B2 true JP4206818B2 (en) 2009-01-14

Family

ID=33528641

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003139671A Expired - Fee Related JP4206818B2 (en) 2003-05-16 2003-05-16 In-vehicle device and data creation device

Country Status (1)

Country Link
JP (1) JP4206818B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007018208A (en) * 2005-07-07 2007-01-25 Matsushita Electric Ind Co Ltd Control unit for automatic vending machine
JP6678879B2 (en) * 2018-05-02 2020-04-15 株式会社ユピテル System and program
JP7510042B2 (en) * 2020-01-27 2024-07-03 株式会社Mixi Information processing system, terminal device, terminal device control method, and program
JP7104210B1 (en) 2021-04-27 2022-07-20 ビジョン ブイアール インク How to provide interactive virtual reality content and equipment

Also Published As

Publication number Publication date
JP2004340836A (en) 2004-12-02

Similar Documents

Publication Publication Date Title
JP6670350B2 (en) System and method for integrating a third party service with a digital assistant
EP1462317A1 (en) Data creation apparatus
JP5019145B2 (en) Driver information collection device
JP4259054B2 (en) In-vehicle device
CN110096712A (en) Pass through the user training of intelligent digital assistant
NL1031202C2 (en) Navigation device and method for receiving and playing sound samples.
JP2003109162A (en) Agent apparatus
JP3693326B2 (en) Map display system, voice guidance support device, map display device
JP4258607B2 (en) In-vehicle device
JP4206818B2 (en) In-vehicle device and data creation device
JP2004037953A (en) On-vehicle device, and device and program for data creation
JP2004054883A (en) Onboard agent system and interactive operation control system
JP7274404B2 (en) INFORMATION PROVIDING DEVICE, INFORMATION PROVIDING METHOD AND PROGRAM
JP2005190192A (en) Onboard system
JP4356450B2 (en) In-vehicle device
JP2004053251A (en) In-vehicle device, data creating device and data creation program
JP2003157489A (en) Operation control device
JP2004050975A (en) In-vehicle device, data preparation device, and data preparation program
JP2004301651A (en) Vehicle-mounted device and data preparation device
JP4059019B2 (en) In-vehicle device and data creation device
JP4449446B2 (en) In-vehicle device and data creation device
JP2004051074A (en) In-vehicle device, data preparation device, and data preparation program
JP2004061252A (en) On-vehicle device, data generation device and data generation program
JP2003106846A (en) Agent apparatus
JP2004302904A (en) Data preparing device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060324

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080624

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080825

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080924

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081007

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20111031

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121031

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20121031

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131031

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees