JP2004301651A - Vehicle-mounted device and data preparation device - Google Patents

Vehicle-mounted device and data preparation device Download PDF

Info

Publication number
JP2004301651A
JP2004301651A JP2003094675A JP2003094675A JP2004301651A JP 2004301651 A JP2004301651 A JP 2004301651A JP 2003094675 A JP2003094675 A JP 2003094675A JP 2003094675 A JP2003094675 A JP 2003094675A JP 2004301651 A JP2004301651 A JP 2004301651A
Authority
JP
Japan
Prior art keywords
scenario
scene
data
screen
emotion
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.)
Pending
Application number
JP2003094675A
Other languages
Japanese (ja)
Inventor
Tomoki Kubota
智氣 窪田
Koji Hori
孝二 堀
Hiroaki Kondo
裕昭 近藤
Manabu Matsuda
松田  学
Kazuhide Adachi
和英 足立
Tadashi Hirano
正 平野
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 JP2003094675A priority Critical patent/JP2004301651A/en
Publication of JP2004301651A publication Critical patent/JP2004301651A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To change the feelings of a character by the situation of a vehicle or the instruction of a scenario. <P>SOLUTION: An agent device stores a lasting (long-term) feeling factor and a temporary (short-term) feeling factor as the mental state of the character. The long-term feeling factor includes, for example, a friendship degree, a self-confidence degree, a heavy and genuine degree, a vitality degree, and a moral degree. The value of the factor is increased/decreased according to the instruction of the scenario and the occurrence of an incident (change in the situation of the vehicle), and does not vary with the lapse of time. The short-term feeling factor includes, for example, joy, anger, sadness, and surprise. The value of the factor is increased/decreased according to the instruction of the scenario and the occurrence of the incident (change in the situation of the vehicle), and is decreased with the lapse of time. Respective values of both the feeling factors may be set as a transition condition from the scene to scene in the scenario. As the process in each scene, it can be set so that respective factor values of the long-term feeling factor and the short-term feeling factor stored in the vehicle-mounted device are changed as well as the operation of the agent. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、車載装置及びデータ作成装置に係り例えば、車両の搭乗者とのコミュニケーションにより会話をしたり機器操作等を自律的に行なうエージェント機能を備えた車載装置及びそのデータ作成装置に関する。
【0002】
【従来の技術】
例えば、犬などのペット型のロボットや、車室内においてナビゲーション装置等の機器操作の案内をしたり状況に応じた質問や提案等を行なうことで搭乗者との対話や対応をするエージェント装置が開発され、車載装置として車両に搭載されている(例えば、特許文献1、特許文献2参照)。
そして、装置に対して考えられる種々の状態を想定すると共に、想定した各状態を検出した場合にとるべき対応が、所定のデータやプログラムに従って規定されている。
【0003】
【特許文献1】
特開平6−12401号公報
【特許文献2】
特開2000−186942号公報
【0004】
特許文献1では、擬人化された人工エージェントに擬似的な感情モデルを与えて、人間らしく振舞わせるようにしている。
また特許文献2では、エージェントに心理状態設定し、設定された心理状態に即した行為をエージェントに行なわせると共に、運転者の対応や車両の走行状態等によって心理状態を変更するようにしている。
【0005】
【発明が解決しようとする課題】
特許文献1の人工エージェントでは、与えられた感情パラメータが時間と共に減少していくものであり、実際の人間の心理状態としては、時間と共にその感情が減少いくものと、減少しないものがある。例えば、怒る、哀しむ、などは時間と共に減少するものであるが、他者との友好度や従順度などは時間と共に減少するものではない。
また、特許文献1及び特許文献2では、感情パラメータや心理状態の変化は予めプログラムやシステムのデータとして作成されているため、プログラムを作成及び修正することでしか実現できなかった。そのため、プログラムの知識が無いと作成や変更することができず、また、開発に費やす時間や費用も多く必要であった。
【0006】
そこで、キャラクタの表示内容、処理内容が規定された画面要素推移体の作成者の意図に応じて、キャラクタの感情が変化する車載装置を提供することを第1の目的とする。
また、車載装置で実行することでエージェント機能を実現するための、キャラクタの表示内容、処理内容を規定した画面要素推移体を容易に作成でき、処理内容により車載装置におけるキャラクタの感情要素値を変更可能にすることを第2の目的とする。
【0007】
【課題を解決するための手段】
請求項1に記載した発明では、キャラクタの表示内容、処理内容及び持続的感情要素の増減の少なくとも1つが定義された画面要素を1画面要素とし、該画面要素と、画面要素間の移行条件と、キャラクタの一時的感情要素の増減が定義された画面要素の終了要素と、を組み合わせて構成された画面要素推移体を記憶する画面要素推移記憶手段と、キャラクタの持続的な感情を表す持続的感情要素及び一時的な感情を表す一時的感情要素の値を記憶する感情要素記憶手段と、車載の各種状況に基づき、前記画面要素推移記憶手段に記憶された画面要素推移体を実行する画面要素推移体実行手段と、前記実行した画面要素推移体の推移に基づき、前記感情要素記憶手段に記憶された持続的感情要素及び一時的感情要素の値を変更する感情変化手段と、を車載装置に具備させて前記第1の目的を達成する。
請求項2に記載の発明では、請求項1に記載の車載装置において、前記感情要素変化手段は、前記画面要素の指示に応じて前記持続的感情要素の値が増減し、前記終了要素の指示及び時間の経過に応じて一時的感情要素の値が増減することを特徴とする。
請求項3に記載の発明では、請求項1に記載の車載装置において、前記キャラクタの表示内容は、キャラクタの表情表示及び服装表示を含み、前記キャラクタの表情表示及び服装表示は、前記一時的感情要素の値により変化することを特徴とする。
【0008】
請求項4に記載の発明では、車載装置に表示する、キャラクタの表示内容、処理内容及び持続的感情要素の増減が定義された画面要素を作成する画面要素作成手段と、前記画面要素から次の画面要素へ移行する移行条件を、時間、場所、道路種別、車両状態、ナビゲーションの稼動状態、使用者データのうち少なくとも1つより設定する移行条件設定手段と、前記画面要素の終了要素に、前記キャラクタの一時的感情要素の増減を設定する終了要素設定手段と、前記画面要素、移行条件及び終了要素を組み合わせて画面要素推移体を作成する画面要素推移体作成手段と、をデータ作成装置に具備させて前記第2の目的を達成する。
請求項5に記載の発明では、請求項4に記載のデータ作成装置において、前記持続的感情要素及び一時的感情要素は、前記移行条件として設定することを特徴とするデータ作成装置。
【0009】
【発明の実施の形態】
以下、本発明の車載装置の好適な実施形態であるエージェント装置、データ作成装置の好適な実施形態であるシナリオ作成装置、及びデータ作成プログラムの好適な実施形態であるシナリオエディタについて、図1から図39を参照して詳細に説明する。
【0010】
(1)実施形態の概要
本実施形態のエージェント装置では、所定の容姿からなるエージェント(キャラクタ)の画像(平面的画像、ホログラフィ等の立体的画像等)を車両内に表示する。そして、エージェント装置の機能である、センサ等の検出結果から周囲の状態(人の動きや音声を含む)を認識、判断し、その結果に応じた動作や音声を出力するという機能を、このエージェントの容姿の動きや音声と連動して実行する。例えば、「どのジャンルの食事がすきですか」等の回答(和食、洋食等)を要求する問かけを行ない、この問いかけに対するユーザの回答内容を判別(回答音声の認識や、回答選択ボタン54aの選択から判別)して、次のシーン(画面要素)に応じた処理を実行する。このように、装置からの回答を要求する問いかけと、その回答に応じて、所定の操作の実行を開始するので、ユーザは、あたかも擬似人格を備えたエージェントが車両内に存在しているような体感をするようになる。以下の説明では、このようなエージェント装置の一連の機能の実行を、エージェントの行為や動作として説明する。
【0011】
本実施形態のエージェント装置では、このエージェントに運転者との各種コミュニケーションや、操作の代行を行なわせる。そしてエージェントが自律的に行なう様々な行為(各行為)を複数のシナリオ(画面要素推移体)で構成する。そして、エージェントによる一連の連続した行為の内容を規定した複数のシナリオと、各シナリオの展開を自律的に開始(起動)するための自律起動条件(起動条件)とにより規格化したシナリオデータを保存する。
さらに、エージェント装置では、エージェント(キャラクタ)の心理状態を表す複数の感情要素の各感情要素値を記憶し、この感情要素値を、実行したシナリオの指示や車両センサの検出値やナビゲーション装置による検出データに応じて変更する。
感情要素値としては、持続的感情要素(以下、長期的感情要素という(パラメータ))、一時的感情要素(以下、短期的感情要素という(パラメータ))が設定される。長期的感情要素には、例えば、友好度、自信度、重純度、元気度、モラル度があり、シナリオの指示とある事件の発生(車両状況の変化)により要素値が増減し、経時変化はない。一方、短期的感情要素には、例えば、喜び、怒り、哀しみ、驚きがあり、シナリオの指示とある事件の発生(車両状況の変化)により要素値が増減し、時間の経過とともに減少する。
この長期的感情要素と、短期的感情要素の各要素値は、シナリオ作成装置において、シーン間の移行条件として設定することができる。また、シナリオ作成装置では、各シーンにおける処理としてエージェントの動作と共に、車載装置に記憶されている長期的感情要素と短期的感情要素の各要素値を変更するように、設定することができる。
このように、エージェント装置では、長期的感情要素と短期的感情要素の両方を参照し、行動を決定することにより、より人間らしくエージェントを振舞わせることができる。
【0012】
シナリオは、シナリオ作成装置で作成され、シーン(画面要素)を最小単位として、1又は連続する複数のシーンで構成される。自律的に行なう処理内容とエージェントの画像及び音声の少なくとも1つから構成される場面が1シーンである。
シナリオは、所定のシーンから次のシーンに移行するための1の移行条件(連続条件)又は複数の移行条件(分岐条件(複数の状態が発生する場合の各状態毎へのシーンの移行するための条件))と、各移行条件に対応して移行先のシーンを特定する移行先データとから、各シーンの展開構成が規定されている。
【0013】
エージェント装置のユーザ等は、規定された規格に従って、独自のシナリオをシナリオ作成装置を使用して作成する。シナリオ作成装置は、シナリオ編集プログラムやデータをパーソナルコンピュータにインストールすることで構成することができる。
作成したシナリオは、インターネット等のネットワークを介してエージェント装置に送信し、又はダウンロードしてもらうことにより、また、所定の半導体メモリを介してエージェント装置に格納することで、自己(第三者)の希望通りの行為(コミュニケーションや処理)をエージェントに行なわせることが可能になる。更に、作成したシナリオをメールに添付してエージェント装置に送信することも可能である。
【0014】
作成するシナリオの最初のシーンに、例えば、人間に対する回答を要求する問いかけのシーンのシナリオとすることができる。そして、独自に作成したシナリオデータを、外部から入力装置を介して入力することが可能である。この場合の入力装置は、半導体メモリに追加するシナリオデータが格納されている場合には、半導体メモリの内容を読みとる記憶媒体駆動装置が該当し、インターネット等のネットワークを介して特定のサーバ等からダウンロードする場合には通信制御装置が該当する。この新たに入力したシナリオデータに従って、シナリオを実行する。
【0015】
エージェント装置は、メール、ブラウザソフトを備えることにより、ブラウザソフト等を使ってシナリオをダウンロードし、そのダウンロードしたファイルがエージェントを機能させるシナリオデータであるか否か判断し、シナリオデータであればエージェントプログラムに組み込んで使用できるようにする。また、メールに添付されている場合も同様に、添付のファイルがシナリオであるか否か判断し、シナリオであればエージェントシステムに組み込んで使用できるようにする。
これにより従来の手法以外にも、既存の通信インフラであるメール、ネットワーク等を使った通信とを使用することにより、また、半導体メモリ等を介することで、パーソナルコンピュータ等を使用して作成した独自のシナリオを追加することができるようになる。
このように、ユーザは自分の思い通りにエージェントを機能させるシナリオを独自にまた、容易に作成することが可能になるので、エージェント装置の自律的な動作に対する抵抗がなくなる。
【0016】
さらに、エージェント装置では、シナリオ作成装置で作成されたシナリオデータに基づいてエージェントを自律的に起動させる(自動で登場させる)条件を満たしたかを判断する処理を定期的に、もしくは特定の状態を満たしたときに実行し、条件を満たした場合にエージェントを自動で登場させることができるシステムを備えさせる。
これによりシナリオ作成装置では、作成するデータが規格化されているので、プログラムの知識の有無に関係無く、シナリオエディタを持つことで特定の条件を満たしたときに自動で登場して対応してくれるエージェントのシナリオデータを作成及び編集することができる。
例えば、オービスの設置してある2km手前の地点(東経北緯座標で指定)でかつ、道路種別が高速道路でかつ、車速が120km/h以上で走行している場合に自動で登場してオービスの警告をしてくれるシナリオの条件の中にある車速の条件を100km/h以上に変更するとか、毎年特定の日(例えばクリスマスイブ)にだけ起動するシナリオを作成することが可能となる。
【0017】
(2)実施形態の詳細
まず、開発者やユーザによって作成されたシナリオに従ってエージェントが自律的に機能するエージェント装置1について、その構成と動作を説明する。
図1は、本実施形態におけるエージェント装置1の構成を表したブロック図である。
本実施形態におけるエージェント装置1は、車両に搭載されおり、車両内のユーザとの間でコミュニケーションを行なう機能や車両に対して所定の処理を行なう車両制御機能等のエージェント機能の他、ユーザに走行経路の案内等を行なうナビゲーション機能も備えている。
本実施形態のエージェント装置1では、エージェント機能及び、ナビゲーション機能を実現するための中央処理装置(1)、表示装置(2)、音声出力装置(3)、音声入力装置(4)、入力装置(5)、各種状況検出装置(6)、各種車載装置(7)、通信制御装置(8)、通信装置(9)、外部記憶装置(10)を備えている。
【0018】
中央処理装置(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)を備えている。
【0019】
この中央処理装置(1)は、経路探索処理や、経路案内に必要な表示案内処理や、その他システム全体において必要な処理、本実施形態におけるエージェント処理(エージェントと運転者との各種コミュニケーションや操作代行、状況判断を行ないその結果に応じて自律的に行なう処理)を行なうようになっている。
更新処理を行なうプログラム(プログラム読み込み手段)は、ROM(1−3)以外にもフラッシュメモリ(1−2)に格納するようにしてもよい。
本実施形態におけるプログラムを含め、CPU(1−1)で実行される全てのプログラムは、外部記憶媒体(10−2)であるCD−ROM等に格納されてもよいし、それらプログラムの一部又は全てが本体側のROM(1−3)又はフラッシュメモリ(1−2)に格納するようにしてもよい。
この外部記憶媒体(10−2)に記憶されたデータやプログラムが外部信号として中央処理装置(1)に入力されて演算処理されることにより、種々のエージェント機能及びナビゲーション機能が実現されるようになっている。
また、本実施形態の中央処理装置(1)は、起動条件(自律起動条件)を満たしていると判断された場合、画面要素推移体(シナリオ)を実行する、画面要素推移体実行手段を形成している。
【0020】
表示装置(2)は、中央処理装置(1)の処理による経路案内用の道路地図や各種画像情報が表示されたり、キャラクタの各種行動(動画)及び画面構成のパーツで構成された画面要素推移体(シナリオ)が表示されたりするようになっている。表示装置(2)には、液晶表示装置、CRT等の各種表示装置が使用される。なお、この表示装置(2)は、例えばタッチパネル等の、入力装置(5)としての機能を兼ね備えたものとすることができる。
音声出力装置(3)は、中央処理装置(1)の処理によって声による経路案内を行なう場合の案内音声や、エージェントによる運転者との通常のコミュニケーション用の会話や運転者情報取得のための質問による音声や音が出力されるようになっている。音声出力装置(3)は、車内に配置された複数のスピーカで構成されている。これらは、オーディオ用のスピーカと兼用するようにしてもよい。
【0021】
音声入力装置(4)は、運転者の音声を的確に収集するために指向性のある専用のマイクが使用されたりする。この音声入力装置(4)から入力されたアナログ信号を変換したデジタルの音声入力信号を使ってCPU(1−1)で音声認識処理が実行されるようになっている。
音声認識の対象となる音声としては、例えば、ナビゲーション処理における目的地等の入力音声や、エージェントとの運転者の会話(運転者による応答を含む)等があげられ、音声入力装置はこれらの音声を入力する音声入力手段として機能する。
なお、音声認識が必要なシーンか否かについては各シーンデータにおいて、音声認識の指示が設定されている。そして、音声認識の指示が設定されているシーンのシーンデータには、音声認識の対象となる音声を認識するための辞書が指定されている。
シナリオには、この音声認識の結果(運転者の応答結果)に応じて、エージェントの感情要素の要素値の変更指示が規定されている場合がある。
【0022】
入力装置(5)は、目的地を設定する際に電話番号や地図上の座標などにて入力したり、目的地までの経路探索や経路案内を要求(リクエスト)するために使用される。また、入力装置(5)は、運転者情報を運転者が入力する場合や、エージェント機能の使用を開始する場合のトリガとしてとして使用される。更に入力装置(5)は、エージェント機能による、エージェントとのコミュニケーションにおいて、エージェントからの問い合わせ等に対して運転者が応答するための1つの応答手段としても機能するようになっている。
入力装置(5)には、タッチパネル(スイッチとして機能)、キーボード、マウス、ライトペン、ジョイスティックなどの各種の装置が使用可能である。
また、赤外線等を利用したリモコンと、リモコンから送信される各種信号を受信する受信部を備えてもよい。
また、上記の音声入力装置(4)を使った音声認識を入力装置の代わりに使用してもよい。
【0023】
図2は、各種状況検出装置(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か否によって走行中であるか否かを判断することにより、走行判断手段が形成される。
【0024】
現在位置検出装置(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)は運転操作状況検出手段としても機能する。
【0025】
交通状況情報受信装置(6−2)は、道路の混雑状況等を検出するためのものである。
交通情報受信装置(6−2)は、路上に配置されたビーコンから情報を受信するビーコン受信装置(6−2−1)と、FM放送電波を用いて情報を受信する装置(6−2−2)等が使用され、これらを用いて交通情報センターから渋滞情報や、交通規制情報等を受信する。
また、ビーコン受信装置(6−2−1)を現在位置検出手段として、現在位置検出装置(6−1)と併用してもよいものとする。
【0026】
ブレーキ検出器(6−3)は、フットブレーキが踏み込み状態か否かを検出する。
サイドブレーキ(パーキングブレーキ)検出器(6−4)は、運転者がサイドブレーキを操作中か否か、及びサイドブレーキの状態(ONかOFFか)を検出する。
アクセル開度検出器(6−5)は、運転者がアクセルペダルをどれぐらい踏み込んでいるかを検出する。
シフト位置検出器(6−6)は、運転者がA/Tのシフトレバーを操作中か否か、及びシフトレバー位置を検出する。
ワイパ検出器(6−7)は、運転者がワイパを使用しているか否かを検出する。
【0027】
方向指示器検出器(6−8)は、運転者が方向指示器の操作中であるか否か、及び方向指示器が点滅中か否かを検出する。
ハザード検出器(6−9)は、運転者がハザードを使用している状態か否かを検出する。
イグニッション検出器(6−10)は、イグニッションスイッチがONになっているか否かを検出する。
車速の検出には距離センサ(6−1−5)を使用することもできる。
各種状況検出装置(6)は、機器操作状況検出手段としてこれらの他にも、ヘッドランプやルームランプ等のランプ類の操作状況を検出するライト検出センサ、運転者のシートベルト着脱操作を検出するシートベルト検出センサ、その他のセンサを備えている。
【0028】
GPS受信装置(6−1−1)と、データ送受信装置(6−1−2)と、交通情報受信装置(6−2)は、図1の通信装置I/F部(1−11)に接続され、他は各種入力I/F部(1−10)に接続されている。
【0029】
図1において、通信装置I/F部(1−11)には、他にも通信制御装置(8)が接続できるようになっている。この通信制御装置(8)には、通信装置(9)(各種無線通信機器からなる携帯電話等)が接続されるようになっている。
これらを使って、電話回線による通話の他、例えば車内での通信カラオケのために使用するカラオケデータを提供するような情報提供局、交通情報を提供する情報基地局との通信や、エージェント処理に用いるシナリオデータを提供する情報提供局との通信ができるようにすることも可能である。
【0030】
本実施形態において中央処理装置(1)は、通信制御装置(8)を介してシナリオが添付された電子メールを受信することができるようになっている。
また、中央処理装置(1)には、インターネット上のホームページを表示するブラウザソフトを組み込み、CPU(1−1)で処理させることが可能であり、通信制御装置(8)を介してホームページからシナリオを含めたデータをダウンロードすることができるようになっている。
なお、通信制御装置(8)は、通信装置(9)と一体になったものを使用してもよい。
【0031】
また、中央処理装置(1)は、通信I/F部(1−11)を通して車内通信を行なうことで他の車載装置(7)の操作状況を受け取ったり、また、車載装置に対する各種制御を行なうようになっている。
例えば、中央処理装置(1)は、各種車載装置(7)であるエアコン装置の設定温度を上げる、下げるといったようにエアコン装置を制御を行なう。また、オーディオ装置から運転者がラジオ、CDプレーヤ、カセットプレーヤ等のオーディオ機器の出力音量を上げる、下げるといったようにオーディオ装置の制御を行なうようになっている。これらの車載装置に対する制御は、シナリオにおいて車載装置に対する制御が規定されている場合に、シナリオの実行に伴って行なわれる。
【0032】
外部記憶装置(10)は、外部記憶媒体駆動部(10−1)とその外部記憶媒体(10−2)を備えている。外部記憶装置(10)は、CPU(1−1)からの指示で外部記憶装置制御部(1−12)による制御のもとで外部記憶媒体(10−2)からデータやプログラムの読み込み、及び外部記憶媒体(10−2)へのデータやプログラムの書き込みを行なうようになっている。
外部記憶媒体(10−2)には、例えば、フレキシブルディスク、ハードディスク、CD−ROM、DVD−ROM、光ディスク、磁気テープ、ICカード類、光カード等の各種記憶媒体が使用され、使用する媒体毎にそれぞれの外部記憶媒体駆動装置(10−1)が使用される。
【0033】
外部記憶装置(10)は、システムにおいて複数個所持してもよいものとする。例えば、収集した個人情報である、運転者情報データ(10−2−3−6)と、学習項目データ及び応答データ(10−2−3−7)を持ち運びが容易なICカードやフレキシブルディスクで構成し、その他のデータをDVD−ROMで構成するといった例が考えられる。こうすることで、他の車両を運転する場合にこれらを記憶させたICカードからデータを読み出させて使用し、ユーザが過去に応対した状況を学習した状態のエージェントとコミュニケーションすることが可能になる。つまり、車両毎のエージェントではなく、運転者毎に固有な学習内容のエージェントを車両内に出現させることが可能になる。
また、シナリオデータ+シナリオで使用する画像データ(10−2−3−4)を一例としてDVD−ROMで持つ構成にした場合でも、ICカードを使って追加することも可能になっている。
これにより、ユーザ各自にとって固有のオリジナルシナリオを加えることが可能である。
このように、画面要素推移体(シナリオ)を外部から記憶することにより、本願発明の画面要素推移記憶手段が形成される。
【0034】
CPU(1−1)は各種エージェント機能やナビゲーション機能を実現するプログラム(10−2−1)や、演算処理に使用するエージェントデータ(10−2−3)とナビゲーションデータ(10−2−2)を、上記構成例で示すDVD−ROMやICカード等から別の外部記憶装置(例えばハードディスク装置等)に格納(インストール)し、この記憶装置から必要なプログラム等をフラッシュメモリ(1−2)に読み込んで(ロードして)実行するようにしてもよいし、演算処理に必要なデータをこの記憶装置からRAM(1−4)に読み込んで(ロードして)実行するようにしてもよい。
【0035】
次に、本発明におけるプログラムを含めたCPU(1−1)で実行されるプログラムの構成について説明する。
図3は、CPU(1−1)でプログラムが実行されることにより実現されるエージェント処理部(101)と、全体処理部(102)との関係を表したものである。
本実施例では、種々のナビゲーション機能を実現する全体処理部(102)に、エージェント機能を実現するエージェント処理部(101)を加えることでエージェント機能付きナビゲーション装置を実現する構成になっている。
【0036】
エージェント処理部(101)と全体処理部(102)は、互いの処理データをやり取りするためのI/F部をそれぞれが持っており、互いの処理データを取得し合えるようになっている。
例えば、エージェント処理部(101)は、シナリオデータに従って運転者とのコミュニケーションを実行した結果、運転者が設定したい目的地データを取得した場合に、このデータを全体処理部(102)に供給するようになっている。
全体処理部(102)では、取得した目的地データにより経路探索をし、作成した走行経路データに基づく経路案内を行なう。この経路案内処理において、画像や音声による進路変更方向等の案内を行なう場合に、案内に必要なデータを全体処理部(102)からエージェント処理部(101)に供給し、走行経路案内をするシナリオをデータ化したシナリオデータに従ってエージェントが案内することも可能である。
【0037】
図4は、エージェント処理部(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)は、シナリオの実行を管理し運転者に各種エージェント機能を提供するといったエージェント処理部の中心的な処理を行なう。
【0038】
自律起動判断部(101−2)は、シナリオデータ(10−2−3−4)にある各シナリオの自律起動条件データを保持し、エージェントOS部(101−8)から出される定期的な自律起動判断指示により、時間、車両が位置する場所、一般道や高速道路といった道路種別、走行中や停車中等の車両状態、ナビゲーション装置の操作中や案内中等の稼働状態等の各種条件と各種状況との比較、判断を行なっている。
条件が一致した場合に、自律起動判断部(101−2)はシナリオ駆動部(101−1)に対し、条件が一致したシナリオの実行要求の指示を出す。
自律起動条件と比較するための各種状況はエージェントOS部(101−8)及び学習部(101−3)から入手している。
【0039】
図4の学習部(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)は、運転者情報の保持・参照も兼務しているが、運転者情報部として独立させてもよい。
【0040】
キャラクタ心理部(101−4)は、エージェントOS部(101−8)が管理している現在状況を入手し、後述する長期的感情変化条件と短期的感情変化条件(図8、図10)に基づき、キャラクタの心理状態を長期的感情要素と短期的感情要素を自律的に変更する。
またキャラクタ心理部(101−4)は、エージェントOS(101−8)から、シナリオにおけるメンタルモデル変更指示(キャラクタの感情要素値変更の指示)を入手し、変更指示に応じて長期的感情要素と、短期的感情要素を変更する。
【0041】
描画・音声出力部(101−5)は、シナリオ駆動部(101−1)からの指示で選択ボタンやタイトル等のパーツから構成される画面を表示するための制御信号を作成する。また、シナリオ駆動部(101−1)からの指示で、シーンデータによる表示状態に対応するキャラクタの各種行動(動作)を表示するための制御信号も作成する。
本実施形態では、これらの制御信号は、エージェントOS部(101−8)に伝わり外部I/F部(101−9)から全体処理部(102)に伝わり、全体処理部(102)内にある画像プロセッサへの指示を行なう処理部を通して画像プロセッサ(1−6)へ伝わり画像処理を施し表示装置(2)に表示されるが、全体処理部(102)を通さずにエージェントOS部(101−8)において画像プロセッサへの指示を行なう処理部を持たせるようにしてもよい。
【0042】
描画・音声出力部(101−5)は、また、シナリオ駆動部(101−1)からの指示でエージェントが運転者とコミュニケーションを行なう際の台詞を出力するための制御信号を作成する。
本実施形態では、これらはエージェントOS部(101−8)に伝わり外部I/F部(101−9)から全体処理部(102)に伝わり、全体処理部(102)内にある音声プロセッサへの指示を行なう処理部を通して音声プロセッサ(1−8)へ伝わり、この音声出力制御信号をアナログ信号に変換して音声出力装置(3)に出力されるが、全体処理部(102)を通さずにエージェントOS部(101−8)において音声プロセッサへの指示を行なう処理部を持たせるようにしてもよい。
なお、本実施形態の描画・音声出力部(101−5)は、各シーンにおけるキャラクタの動作描画機能と音声出力機能を備えているが、描画部(描画機能部)と、音声出力部(音声出力機能部)とを別々に構成するようにしてもよい。
【0043】
音声認識部(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)に通知する。
以上の構成により、音声を認識する音声認識手段が形成される。
【0044】
エージェント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)は、他にも各種のライブラリを持っており、各処理部の間でデータのやり取りなどを行なうメッセージ通信の提供、及び現在時刻の提供、メモリの管理を行ない各処理部が処理を行なう際に必要なメモリの提供、外部記憶媒体からのデータ読み込みや書き込み機能の提供などを行なう。
【0045】
またエージェント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)に通知する。
【0046】
エージェントOS部(101−8)は、自律起動判断部(101−2)に対して、定期的に自律起動判断指示を出すようになっている。この定期的な自律起動判断指示は、所定時間毎に出される。所定時間としては、定期的に出される自律起動判断指示によって定期的に処理される自律起動判断処理が、中央処理装置(1)全体の他の処理に影響しない範囲でできるだけ短い時間であることが望ましく、本実施形態では5秒間隔に設定されている。この所定時間は入力装置(5)からの操作によってユーザが当該所定時間を任意に変更することができるようにしてもよい。
また、エージェントOS部(101−8)は、状況の変化が大きいと判断された場合にも、自律起動判断部(101−2)に対して、自律起動判断指示を出すようになっている。状況の変化が大きいとされる場合とは、例えば運転者が目的地設定を行なった場合、案内経路から車両がはずれた場合、シナリオデータが追加された場合、シナリオデータが削除された場合等であり、予め該当する項目が規定されRAM(1−4)等に記憶されている。
【0047】
外部I/F部(101−9)は、エージェント処理部(101)と全体処理部(102)との間のインターフェースになっている(全体処理部(102)には受け手であるエージェントI/F部が存在する)。エージェント処理において利用するナビゲーション情報等各種情報の取得と、エージェント処理部から全体処理部に制御信号を伝えてナビゲーションを制御したりする。
この外部I/F部(101−9)を通して全体処理部(102)に通知して行なっている、画像プロセッサ(1−6)への描画指示や、音声プロセッサ(1−8)への音声出力指示、入力装置I/F部(1−9)からの入力情報の取得等、他プロセッサ及びI/F部への指示を行なう処理部をエージェント処理部に持たせ直接指示をしたり情報を取得したりするようにしてもよい。
【0048】
図3における全体処理部(102)は、図示しないが地図描画部、経路探索部、経路案内部、現在位置計算部、目的地設定操作制御部等からなりナビゲーションの信号出力処理を行なうアプリケーション部、及び地図表示や経路案内に必要な表示出力制御、音声案内に必要な音声出力制御を行なうためのプログラム等のOS部等で構成されている。
また、この全体処理部(102)には音声認識を行なう音声認識処理部、テキストデータを音声データに変換する処理部も存在する。ブラウザ機能やメール機能を追加する場合の当該処理部はこの全体処理部(102)に追加される。
もしくは、エージェント処理部(101)がブラウザ機能やメール機能を持つような構成にしてもよい。
また、本実施形態ではエージェント処理を実行するための拡張機能が全体処理部(102)に加えられている。この拡張機能には、例えばナビゲーションデータの中にある道路データと現在位置から、走行中の道路の種別(高速道路、国道、等)を検出する手段や走行中の道路のカーブ状況(カーブ手前、カーブ終了)を検出する手段等が存在する。
これら検出された状況は、エージェント処理部に伝えられ、例えば、エージェントの感情要素の変更等に使用される。
【0049】
次に、外部記憶媒体(10−2)に格納されているデータ構成(プログラムを含む)について説明する。
図5は、外部記憶媒体(10−2)に集録されている情報を概念的に表したものである。
外部記憶媒体(10−2)には本実施形態による各種エージェント機能やナビゲーション機能を実現するプログラム(10−2−1)、及び必要な各種データとして、エージェントデータ(10−2−3)とナビゲーションデータ(10−2−2)が格納されている。
ナビゲーションデータ(10−2−2)は、地図描画、経路探索、経路案内、目的地設定操作等に必要な各種データで構成されている。例としては、経路案内に使用される地図データ(道路地図、住宅地図、建造物形状地図等)、交差点データ、ノードデータ、道路データ、写真データ、登録地点データ、目的地点データ、案内道路データ、詳細目的地データ、目的地読みデータ、電話番号データ、住所データ、その他のデータのファイルからなりナビゲーション装置に必要な全てのデータが記憶されている。また、必要に応じて通信地域データ等も記憶される。
【0050】
エージェントデータ(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)と、で構成されている。
【0051】
図6は、本発明の感情要素記憶手段として機能する、メンタルモデルデータ(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の感情要素値が変更される。
【0052】
図7は、長期的感情要素10−2−3−1aを概念的に表したものである。
図7(a)に示されるように、長期的感情要素10−2−3−1aは、友好度,従順度,自信度,モラル,元気度の各要素で表され、各感情要素値は、例えば、0〜100の値で表されるようになっている。長期的感情要素の数は、本実施形態では5つを採用しているが、その他の要素を加え、また、省略することで他の所定数としてもよい。
各要素の値はそれぞれ独立して、0〜100までの間で変化する。
長期的感情要素10−2−3−1aは、図8に示される変化条件を満たした場合、及び、実行されているシナリオにおいて短期的感情変化の指示(図38(a)参照)がされている場合に、それぞれ対応する値だけ変化する(更新される)。
【0053】
長期的感情要素10−2−3−1aは、各感情要素ともに基準値が50で、それより高くなるとその状態が強いことを表し、低くなると状態が弱いことを表している。
そして、シナリオによる分岐条件(移行条件)に対応して、各要素値が図7(b)に示されるように、「低い」「普通」「高い」の3段階に分割されている。なお、「極めて低い」と「極めて高い」を加えた5段階(各々の要素値の幅=25)としてもよい。また分割した各要素の範囲については、エージェント装置のユーザが設定値を変更できるようにしてもよい。
シナリオ作成装置において、5つの長期的感情要素をシーン分岐に使用することができ、個々の感情要素値を単独で使用してもよいが、複数の感情要素値を組み合わせて、シーン分岐条件(移行条件)に使用するもできる。
例えば、エージェントが挨拶するときに元気よくしゃべるときの条件を友好度が高いだけの場合にするよりも、友好度と元気度の両方高い場合とすると、より人間らしさを表現することができる。
【0054】
図8は、長期的感情変化条件10−2−3−1bの規定内容を例示したものである。
長期的感情変化条件10−2−3−1bには、ナビゲーション機能、車両状態等の状態や変化による条件の説明(項目の欄)と、その場合に変化する感情要素の変化値が規定されている。
図8に示されるように、項目欄には条件の説明が記載されているが、「エージェントの感情が変化する」の前の部分が条件に該当する。例えば、No.1の「車両が急加速したとき、エージェントの感情が変化する」の場合、前半部分の「車両が急加速したとき」が条件になる。
そして、この条件を満たした場合に、対応する右側の各長期的感情要素(友好度、自信度、重純度、元気度、モラル度)に規定されている値が、その感情要素値を変化させる値となる。
すなわち、No.1の場合、であれば、友好度とモラル度がそれぞれ1づつ減少する。なお、感情要素の変化値がマイナスの値の場合、その感情要素を減少させ、プラスの値の場合増加させる。図面では、−1と、1の場合について例示されているが、条件によっては2以上の増減を規定するようにしてもよい。
長期的感情変化条件10−2−3−1bに規定されている各長期的感情要素の変化値は、長期的な感情を変化させるものであるため、全体の変化範囲に対して数パーセント以下の値で変化することが望ましい。
【0055】
図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に変化する。
【0056】
短期的感情要素10−2−3−1cは、図10に示される変化条件を満たした場合、及び、実行されているシナリオにおいて短期的感情変化の指示(図38(b)参照)がされている場合に、それぞれ対応する値だけ変化する(更新される)。
また、新たに変化した短期的感情要素の値は、時間の経過とともに減少して最終的に0になる。例えば、感情が持続する時間を最大で1時間と規定すると、値が最大値100から最小値0に減少する時間が1時間ということになるので、3分毎に値が5ずつ減少ことになる。但し、所定時間t単位で所定値nづつ変化するように設定変更するようにしてもよい。
このように短期的感情要素10−2−3−1cの各感情要素の値は、瞬間的に感情的高ぶりが発生し時間と共に治まる、という人間の感情に対応して、全体の変化範囲に対して最大100パーセントまでの大きな値で変化し、所定時間t間隔で徐々に所定値nづつ減少する。これによりエージェントの短期的変化をより人間に近くすることができる。
【0057】
短期的感情要素10−2−3−1cの各感情要素の中で値が0より大きなもの(例えば、喜び)があるとき、エージェントの短期的感情はその値の要素(喜び)になる。全ての短期的感情要素が全て0の場合、エージェントの短期的感情は「普通」ということになる。
短期的感情要素10−2−3−1cの各感情要素の基準値は0で、それより高くなるにつれてその状態が強いこと表している。
短期的感情要素10−2−3−1cは、シナリオによる分岐条件(移行条件)に対応して、図9(b)に示されるように、「小」「中」「大」の3段階に分割されている。なお、「とても小さい」と「とても大きい」を加えた5段階(各々の要素値の幅=25)としてもよい。また分割した各要素の範囲については、エージェント装置のユーザが設定値を変更できるようにしてもよい。
【0058】
図10は、短期的感情変化条件10−2−3−1dの規定内容を例示したものである。
短期的感情変化条件10−2−3−1dには、ナビゲーション機能、車両状態等の状態や変化、シナリオの状態(操作を含む)による、変化条件の説明(項目の欄)と、その場合に変化する感情要素の変化値が規定されている。
図10に示されるように、項目欄には条件の説明が記載されているが、「エージェントの感情が変化する」の前の部分が条件に該当する。例えば、No.5の「シナリオが強制終了されると、エージェントの感情が変化する」の場合、前半部分の「シナリオが強制終了されると」が条件になる。
そして、この条件を満たした場合に、対応する右側の各短期的感情要素(喜び、怒り、哀しみ、驚き)に規定されている値が、その感情要素値を変化させる値となる。
すなわち、No.5の場合、であれば、哀しみが50だけ減少する。
【0059】
短期的感情変化条件10−2−3−1dに規定されている短期的感情要素の変化値は、長期的感情変化条件のようにマイナスの値をとることはなく、全てプラスの値である。また上述したように、全体の変化範囲(本実施形態では0〜100)に対して最大100パーセントまでの大きな値(本実施形態では30、50、80、100)が規定されている。
【0060】
以上のように、感情要素記憶手段に記憶された持続的(長期的)感情要素及び一時的(短期的)感情要素の値を変更(変化)することにより、本発明における感情変化手段が形成される。
【0061】
図5において、お勧め提案データ(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】
図11は、実機形式シナリオデータの構成を表したものである。
シナリオデータ(10−2−3−4)は、複数のシナリオで構成されており、それらを管理するためのデータと、個々のシナリオの内容を示すデータとで構成されている。
集録シナリオの管理データには、このシナリオデータの有効期限、作成された日や作成者等といった情報と、シナリオデータに収録されている個々のシナリオを全体的に管理するためのデータ(シナリオ番号、シナリオ名称、優先順位(プライオリティ))と、シナリオファイルに収録されているシナリオの自律起動条件データと、シナリオファイルに収録されているシナリオの中で運転者が入力装置(5)等を使って手動起動させることができるシナリオ一覧データが記されている。
【0064】
個々のシナリオの内容を示すデータには、それぞれのシナリオを管理する管理データと、シナリオを構成する個々のシーンの内容を示すシーンデータとで構成されている。
それぞれのシナリオを管理するデータ(「このシナリオの管理データ」)には、シナリオに関する情報と、このシナリオで使用する音声認識辞書を作成するためのテキスト情報と、シナリオを構成する各シーンデータを全体的に管理するためのデータが記されている。
【0065】
また、シナリオの管理データには、スタンバイ処理を行なうか否かを判断するデータが格納されている。スタンバイ処理は、自動起動の場合にスタンバイ状態により待機するスタンバイシーンを展開する処理である。
このスタンバイ状態は、シナリオ実行の告知と、実行してもよいか否かの確認をエージェントが行なうことで、ユーザがエージェントとのコミュニケーションの準備ができるまでシナリオの実行を待機させる状態である。例えば、地図の右上に小さいエージェントが登場し、「私にタッチしたら、お勧めの食事の場所を御紹介します。」とユーザに話し掛け、スタンバイ状態に入る。ユーザがエージェントにタッチすると、コミュニケーションモードになり、「進行方向の2km先に、○○屋があります。味に定評があるとんかつ屋です。ここに寄って行きますか?」と伝えるシナリオが展開される。
シナリオ実行の際にスタンバイ状態に移行するか否かは、ユーザが選択できるようになっている。
【0066】
シーンデータは、シーンを管理するデータと、画面構成データと、キャラクタ動作データと、各種処理データと、展開管理データとで構成されている。
シーンを管理するデータには、そのシーンに関する情報とシーンデータに属する各データセクションを管理するデータが記されている。
画面構成データには、このシーンにおいて表示装置(2)に表示する画面構成の各パーツのデータ(大きさや表示位置等)が記されている。
キャラクタ動作データには、このシーンにおいてキャラクタが行なう動作の指示データと、話す内容に関する指示データが記されている。動作の指示データには、シナリオデータで直接各キャラクタの表現手段で指示するものと、キャラクタに表現させたい状態で指示するものの2種類のうちどちらかで指示データが記されている。
各種処理データには、このシーンにおいて外部機器を制御(処理をさせる)する情報や、ナビゲーションを制御する情報や、他のシナリオを実行する指示や、タイマー設定情報や、キャラクタ心理を示すメンタルモデルの感情要素値を変化させる情報等が記されている。
【0067】
外部機器とは通信I/F部(1−11)に接続されている各機器等があり、例えば通信制御装置がある。制御する内容は、特定の電話番号に電話をかける処理や、通話を切断する処理等がある。
ナビゲーションの制御内容には、例えばこの地点を目的地に設定するといったものが存在する。
メンタルモデルの感情要素値を変化させる指示としては、長期的感情要素の「友好度」を1減少する、短期的感情要素の「喜び」を80にする等がある。
【0068】
展開管理データには、このシーンで何かイベントが発生した場合に、シナリオを終了するのか、次に進むシーンが何であるか、もしくは何も展開しないのか、といった情報(移行条件等)が記述されている。
ここでいうイベントとは、シーンの展開を次に進めるためのもので規定された何らかのアクションを示している。例えばキャラクタの台詞が終了した、設定しておいた時間が経過した、運転者がこのシーンで質問した内容に対して何らかの回答を選択した(例えば「はい」or「いいえ」の質問に「はい」と答えた)、等が存在する。
このイベントに加えて学習した結果によって展開を変えることもできる。
例えば、質問に対し運転者が「はい」を選択した場合で通算使用回数が10回未満の時といった使い方ができる。
学習した結果の他に、日時、メンタルモデルを使ったキャラクタの心理状態、運転者情報、等も使用して展開を変えることもできるようになっている。
【0069】
図12はキャラクタデータの内容を概念的に表したものである。
キャラクタデータ(10−2−3−5)には、複数のキャラクタのデータが格納されており、運転者の好みによって入力装置(5)等から選択することができるようになっている。
キャラクタデータ(10−2−3−5)は、各キャラクタA、B、…毎に、キャラクタ画像データ102351と、キャラクタ音声データ102352と、キャラクタ画像選択データ102353とを備えている。
【0070】
キャラクタ画像データ102351は、シナリオにより指定された各シーンで表示されるキャラクタの状態を表す静止画像や、動作を表す動画(アニメーション)等が格納されている。例えば、キャラクタがお辞儀をする動画、うなずく動画、右手を挙げる動画等が格納されている。
これらの各静止画像や動画には画像コードが付けられている。
キャラクタ画像データ102351は、画像記憶手段として機能する。
キャラクタ画像データ102351として使用するキャラクタ(エージェントの容姿)としては、人間(男性、女性)的な容姿である必要はない。例えば、非人間型のエージェントとして、動物自体の容姿や、ロボット的な容姿や、特定のキャラクタの容姿等であってもよい。
またエージェントの年齢としても一定である必要がなく、エージェントの学習機能として、最初は子供の容姿とし、時間の経過と共に成長していき容姿が変化していく(大人の容姿に変化し、更に老人の容姿に変化していく)ようにしてもよい。
また、前述の短期的感情要素の値により、キャラクタの表情や服装を変化させることも可能である。こうすることにより、例えば、短期的感情が「怒っている」値の場合、キャラクタの表情も怒った表情になり、よりキャラクタを人間らしく振舞わせることが可能となる。
【0071】
キャラクタ音声データ102352は、選択されたシナリオのシーンに従って、エージェントが運転者と会話等を行なうための音声データが格納されている。
エージェントによる会話の音声データは、エージェントが運転者情報を収集するための質問をするための音声データも格納されている。例としては、「こんにちは」、「よろしくね」、「またね」等が格納されている。
これらの各音声には音声コードが付けられている。
【0072】
キャラクタ画像選択データ102353は、個々の表示状態に対して各キャラクタの表現方法(動作)を表す画像データを割り当てた変換テーブルである。
シナリオデータ(10−2−3−4)は、キャラクタの種類によらない共通化した表示状態により各シーンの内容を規定している。
このためキャラクタ画像選択データ102353は、共通表現されたシーンの表示状態を、ユーザが選択したキャラクタに対する個別の動作内容を表示する画像データに変換するための変換テーブルであり、画像選択手段の一部として機能する。
【0073】
図13は、運転者情報データを概念的に示したものである。
運転者情報データ(10−2−3−6)は、運転者に関する情報で、エージェントのコミュニケーションをより運転者の希望や趣味、嗜好に合ったものとするために利用される。この運転者情報データは、シナリオの起動条件や、シーンの移行条件としても使用される。
運転者情報データ(10−2−3−6)には、運転者毎に情報を格納するための運転者のID(識別情報)、名前、年齢、性別、結婚(既婚か未婚か)、子供の有無と人数と年齢からなる運転者基礎データや、趣味嗜好データとが格納されるようになっている。
趣味嗜好データとしては、スポーツ、飲食、旅行等の大項目と、これら大項目の概念に含まれる詳細項目とから構成されている。例えば、大項目スポーツには、野球が好きか嫌いか、サッカーが好きか嫌いか、ゴルフが好きか嫌いか等のデータが格納されるようになっている。
運転者情報データ(10−2−3−6)は、その車両を運転する運転者が複数存在する場合には、運転者毎に作成される。そして、運転者を特定して該当する運転者情報が使用される。
【0074】
図5において、学習項目データ及び応答データ(10−2−3−7)は、エージェントとのコミュニケーションにおいて運転者の選択や応答によってエージェントが学習した結果を格納するデータである。
従って、学習項目データ及び応答データ(10−2−3−7)は、運転者毎にそのデータが格納・更新(学習)されるようになっている。
例えば、シナリオの使用状況として前回の選択結果や前回使用した日時、通算の使用回数等が格納される。
この学習内容に従って、例えば、毎回ナビ電源ON時に挨拶をするシナリオにおいて、前回使用から5分以内の場合に「つい先ほどにもお会いしましたね」と対応したり、逆に1ヶ月以上間があいている場合には「お久しぶりですね」と対応したりする。
【0075】
図14は、シナリオのシーンデータに基づいて表示装置(2)に表示されるシーン画面の一例を表したものである。
この図14に示されるシーン画面は、未入力の運転者情報である趣味嗜好(食事)を取得するために運転者から質問をする質問シナリオのシーン画面(シーン番号0x0001)である。
シーン画面は、図14に示されるように、エージェントの画像(静止画、動画)が表示されるエージェント表示画面51、エージェントの音声に対応した文字が表示される吹き出し画面52、タイトル画面53、及び、各シーン固有の画像データ(実画像データの画像や回答選択ボタン等)が表示されるシーン表示画面54から構成されている。
エージェント表示画面51に表示されるエージェントは、ユーザが選択したキャラクタ、又はデフォルトのキャラクタである。
【0076】
エージェント処理部(101)のシナリオ駆動部(101−1)は、趣味嗜好(食事)の質問シナリオを起動すると、最初にシーンヘッダで指定されるシーンの画面構成データをシナリオデータ+画像(10−2−3−4)から読み出してシーン画面を表示装置(2)に表示すると共に、質問文に相当する質問音声を音声出力装置(3)から出力するようになっている。
図14(a)の質問シナリオのシーン画面では、吹き出し画面52に「どのジャンルの食事が好きですか?」と表示される。なお、吹き出し画面52の表示に対応する音声が音声出力装置(3)から出力されるようになっている。
また、図14(a)のシーン画面におけるシーン表示画面54には、4つの回答選択ボタン54aの「和食」、「洋食」、「中華」、「特に無し」が表示されている。
【0077】
この運転者に対する質問のシーンには、運転者の回答に応じた複数のシーンが分岐して続くようになっている。各シーンの分岐及び続くシーンの特定については、各シーンの展開管理データに従って、運転者の回答に応じて決定される。
すなわち、図14(a)のシーン画面(シーン番号0x0001)で運転者が回答選択ボタン「和食」を選択すると、シナリオ駆動部(101−1)は、回答に応じたシーン画面(b)に分岐して表示される。このシーン画面(b)では、選択された「和食」がタイトル画面53に表示されると共に、吹き出し画面には「和食がすきなのですね。」と表示され、なお、分岐後の和食のシーン画面では、シナリオデータから読み出された和食の実画像54bがシーン表示画面54に表示される。そしてシナリオ駆動部(101−1)により、運転者の回答、例えば、「和食」が運転者情報として、運転者情報307の趣味嗜好データに格納されるようになっている。
このようにして、シナリオに規定された各シーン画像と音声が最後のシーンまで連続的に順次表示、出力されることで、1シナリオにおけるエージェントの行為が完了することになる。
【0078】
図15は、旅館が宿泊予定者に送信した案内シナリオによるシーン画面の遷移を各シーン毎に表したものである。
この案内シナリオは、複数のシーン画面のうち(a)〜(f)までのシーン画面で構成されてる。
シーン画面(c)に対するユーザの選択結果によって次のシーン画面が0x0004と0x0006に分岐している。また、図15の例では分岐していないが、シーン画面(d)においても選択した料理の種類に応じた料理をシーン表示画面54に表示するようにシーン画面を分岐させるようにしてもよい。
また、この案内シナリオには、ユーザによってスタンバイ処理が設定されている場合に表示されるスタンバイシーン(s)が設定されている。
【0079】
以下図15に従って予約シナリオによるエージェントの各行為について説明する。
以下の各シーン画面に対応して説明するエージェントの動作や画面の表示はいずれも、外部シナリオのシナリオデータに格納されているデータや画像及び指示に従って表示等されるものである。また、エージェントの動作として説明するが、実際にはエージェント処理部(101)のシナリオ駆動部(101−1)が処理を行なう。
【0080】
ユーザによってスタンバイ処理を使用しない設定が選択されている場合、予約シナリオが起動され、番号0x0001のシーンから展開される。
一方、スタンバイ処理を使用する設定が選択されている場合、図15のスタンバイシーン(s)が展開される。
図15に表示した例では、スタンバイ処理を行なう直前の画面、すなわち、ナビゲーション機能による経路案内のための地図画面が表示されている。この直前の画面上の右上に小さくエージェントがタッチパネル機能を持つ表示画面(2)に表示される。(キャラクタ表示手段)
そして、「私にタッチしたら、『予約された旅館の案内』をします。」というようにシナリオを実行する告知を行なうと共に、実行の許可を促す(実行の確認)を求める。なお、シナリオデータでエージェントの音声内容が規定されている場合にはその音声が出力される。
そして、実行の許可の催促に従って、運転手による、OKの意志表示が検出されると、通常のシナリオが一番最初のシーンから順次展開される。
なお、スタンバイシーンにおいて、OKの意志表示がないままナビ等の機器操作、及び、一定時間が経過すると、タイマー通知により、シナリオの実行が終了される。
【0081】
スタンバイシーンにおいてOKの意志表示がされた場合、又はスタンバイ処理が選択されていない場合、予約シナリオが起動される。
すなわち、まず番号0x0001のシーン画面が表示装置(2)に表示される。このシーンでは、エージェントOS部(101−8)で管理しているキャラクタのエージェントが、エージェント表示画面51に登場し、お辞儀をして音声による挨拶をする。音声による挨拶の内容は、吹き出し画面52に表示されている文章と同一である。
音声による挨拶は、旅館に代わってエージェントが代行して行なうことになるが、旅館の女将の写真画像をシーン表示画面54に表示することで旅館からの挨拶であることが表現されている。この女将の画像は、外部シナリオの一部として受信し追加した画像で、シナリオデータ(10−2−3−4)の実画像データとして格納されている。
エージェントの動作に対する指示は、キャラクタ動作指示データに格納されている指示に従う。
エージェントによる挨拶が終了すると、次のシーン0x002に遷移する。
【0082】
次のシーン0x0002では、シーン表示画面54に露天風呂の画像が表示される。そして、この露天風呂の絵をエージェントが指し示して、旅館の名物(ここが売りだということ)を、エージェントが音声と吹き出し画面52の表示で説明する。
エージェントの話が終了すると、次のシーン0x0003に遷移し、本日の食事の画像(懐石料理の画像)をシーン表示画面54に表示し、エージェントが料理の説明と、この料理でよいか否かを質問する。
そして、シーン0x0003のシーンデータにタイマー設定時間と、タイマー設定条件「走行中のみ設定する」が規定されているものとする。この場合、走行中であることを条件に、シーン開始時にタイマーによる計時が開始される。走行中か否かは車速センサ(6−11)又は、距離センサ(6−1−5)において、車速v=0が検出された場合に停車中と判断され、車速v≠0が検出された場合に走行中と判断される。
【0083】
そして、表示した料理を変更するか否かの質問に対する回答としてユーザが「はい」を選択した場合にはシーン0x0004に分岐し、「いいえ」を選択した場合にはシーン0x0006に分岐する。
一方、タイマー設定時間内に、ユーザが音声による回答も、画面に表示された選択ボタンの選択による回答もせずにタイマー通知(設定時間の経過)した場合、シーン0x0003のシーンデータで規定されているタイマー通知時の移行条件に従って、そのシナリオを終了させる。
このように、ユーザからの回答がない場合にも、無回答という選択がされたと判断して、無回答を移行条件とする次のシーン(図15の例では終了)に移行することで、擬人化されたキャラクタとのコミュニケーションをより人間同士のコミュニケーションに近づけることができる。
【0084】
シーン0x0004では、懐石料理以外の選択可能なリストをシーン表示画面54に表示する。エージェントは、シーン表示画面54のリストを指し示して、どの料理がよいかを質問する。
そして、ユーザがいずれか1つを選択したらシーン0x0005に遷移する。
シーン0x0005では、懐石料理から変更すべき人数のリストをシーン表示画面54に表示し、エージェントはこのリストを指し示して、人数の質問をする。そしてユーザがいずれか1つを選択したらシーン0x0006に遷移する。
【0085】
シーン0x0006では、シーン表示画面54に旅館の外観写真画像を表示し、エージェントがお辞儀をして挨拶をする。
そして、エージェントは、ユーザが選択してきた結果、図15の案内シナリオの場合には食事に関する回答結果を、通信制御部を介して実行中の外部シナリオを送信した第三者(旅館)に送信する。
このように、ユーザについての情報を取得したい場合には、外部シナリオの作成者は、取得したい情報が得られる質問のシーンをシナリオ中に設け、その回答を電子メールで送信するようにシナリオを作成する。なお、回答の送信が必要な場合には、作成者の電子メールアドレスをシナリオデータ中に含める。
最後のシーン(図15ではシーン0x0006)でのエージェントの話が終了すると、シナリオを終了させる。
【0086】
このようにして、シナリオ駆動部(101−1)は、シナリオに規定された各シーン画像と音声を最後のシーンまで順次表示、出力する。
起動したシナリオが終了すると、シナリオ駆動部(101−1)は、他のシナリオの起動要求が存在するか否かの判断を行なう。
【0087】
次に、このようなシナリオ駆動部(101−1)で実行される各種シナリオを自律的に起動するか否かの判断処理について説明する。
図16は、自律起動判断部によるシナリオの自律起動判断処理について表したものである。
この自律起動判断処理では、自律起動判断部(101−2)が装置の負荷を軽減するために、位置と日付に関する情報を受け取り、その受け取った位置と日付に近似する起動条件を、シナリオデータを保持している外部記憶装置(10)より読み出し(抽出手段)、RAM(1−4)に一時的に格納する処理を行なう。
すなわち、自律起動判断部(101−2)は、今現在置かれている状況情報を取得するため、エージェントI/Fを介し、エージェントOS部(101−8)より現在位置、時間などの状況情報を取得する(ステップ11)。
そして、自律起動判断部(101−2)は、取得した位置、時間などの状況情報が所定単位の変化があるか否かを判断する(ステップ12)。
判断の結果、所定単位の変化がありと判断された場合(ステップ12;Y)、自律起動判断部(101−2)は、その位置と時間などの条件に近似する条件を備えた自律起動条件を外部記憶装置(10)より読み出し、RAM(1−4)に一時的に格納する(ステップ13)。ここで、近似する条件とは、位置の場合、地図データの全範囲を所定単位の方形ブロックに区画し、現在の自車位置が存在するブロックと、そのブロックに隣接する8つのブロックに位置情報が含まれる条件をいい、日付の場合、その当日と翌日が該当する。そして、所定単位の変化とは、位置の場合には車両が他のブロックに移動した場合で、日付の場合には日付が変わった場合が該当する。
そして自律起動判断部(101−2)は、読み込まれた自律起動条件を、状況情報が満たしているか否かについての条件判断処理を行なう(ステップ14)。
なお、ステップ12の判断で所定単位の変化なしと判断された場合(;N)、予め読み出されていた起動条件を変更する必要がないため、ステップ14の処理に進む。
【0088】
図17は、条件判断処理(ステップ14)の処理内容を表したものである。
自律起動判断部(101−2)は、RAM(1−4)から、最初の自律起動条件を取得し(ステップ21)、ステップ12で入手した各種状況情報による状況が、取得した自律起動条件を満たしているか否かを判断する(ステップ22)。
自律起動条件を満たしている場合(ステップ22;Y)、自律起動判断部(101−2)は、その自律起動条件に対応するシナリオの実行要求メッセージを、シナリオ駆動部(101−1)に対して発行する(ステップ23)。
【0089】
次に自律起動判断部(101−2)は、次の自律起動条件がシナリオデータ(10−2−3−4)にあるか否かを判断し(ステップ24)、あれば(;Y)、次の自律起動条件を取得し(ステップ25)、以後ステップ22〜25の各処理を全ての自律起動条件に対する判断が終了するまで繰り返す。
ステップ24において、次の自律起動条件が存在しない場合(;N)、自律起動判断部(101−2)は、自律起動判断処理を終了する。
【0090】
次に、シナリオ駆動部(101−1)が、自律起動判断部(101−2)からシナリオ実行要求を受け取った場合のシナリオ実行処理について説明する。なお、以下に記す自律起動判断部の処理が、条件判断手段を構成する。
図18は、シナリオ実行処理の流れを表したフローチャートである。
なお図18では、シナリオを実行する場合の、エージェント処理部(101)の各部、及び全体処理部(102)による一連の代表的な動作を表したものであり、各部はそれぞれ独立した処理を行なうようになっている。すなわち、各部の独立した処理が、連続することで図18に示した代表的な流れになる。
具体的には、エージェント処理部(101)の各部、及び全体処理部(102)は、メッセージを受け取ったら、そのメッセージに対する処理を行ない、処理が完了したら次のメッセージを待つようになっている。
【0091】
シナリオ駆動部(101−1)は、自律起動判断部(101−2)からシナリオ実行要求を受け取ると、ワークメモリの確保、初期化によるエージェント開始準備処理を行なう(ステップ505−1)。
そして、シナリオ駆動部(101−1)は、シナリオの実行要求が手動起動か自動起動かを確認する(ステップ505−2)。手動起動は、ユーザが表示装置(2)のメニューからシナリオ起動を選択した場合で、自動起動は、シナリオの自律起動条件を満たした場合である。
シナリオの実行要求が手動起動の場合はメニューシナリオの要求処理を行なう(ステップ505−3)。その後、シナリオデータ読み込み処理(ステップ505−4)に移行する。
【0092】
一方、自動起動の場合には、自律起動条件を満たすことで実行要求されているシナリオが存在するので、そのままシナリオデータ読み込み処理(ステップ505−4)に移行する。
次にシナリオ駆動部(101−1)は、実行すべきシナリオデータをRAM(1−4)に読み込む(ステップ505−4)。シナリオデータを読み込む際、実行対象となっているシナリオが複数存在する場合(複数の自律起動条件が満たされた場合、手動起動要求と自動起動が重複した場合等)には、シナリオ駆動部(101−1)は、各シナリオに規定されている優先順位を判断し一番優先順位の高いシナリオデータを読み込む。優先順位が同じである場合には、自律起動判断部(101−2)から実行要求を受けた順に優先順位が高いものとして決定する。
【0093】
シナリオデータの読み込みが完了すると、シナリオ駆動部(101−1)は、次に、シナリオ開始処理を行なう(ステップ505−5)。
シナリオ開始処理においてシナリオ駆動部(101−1)は、まず、シナリオを開始するための初期化処理を行なう。さららrに、シナリオ駆動部(1011)は、スタンバイシーンが選択されていれば、図15(s)で説明したスタンバイシーンを実行してOKの意志表示が確認された場合、及び、スタンバイシーンが選択されていない場合に、シナリオ開始処理を終了する。
【0094】
シナリオ開始処理(ステップ505−5)の後に、シナリオ駆動部(101−1)は、シナリオを構成するシーンの内容に応じてキャラクタの描画や音声を処理するシーン処理を実行する(ステップ505−6)。シーン処理の詳細は図19により後述する。
シーン処理が完了すると、シナリオ駆動部(101−1)は、シナリオ終了か確認を行なう(ステップ505−7)。
シナリオ終了の場合、シナリオ駆動部(101−1)は、シナリオ終了処理を行なう(505−8)。このシナリオ終了処理において、学習部(101−3)が、終了の仕方を示すエンドIDを入手して応答データ(10−2−3−7)に格納する。
シナリオ終了でない場合(シナリオがまだ続く場合)、シナリオの終了位置まで、ステップ505−6に戻って次のシーン、次のシーン、…とシーン処理を繰り返す。
【0095】
シナリオの終了処理の後、シナリオ駆動部(101−1)は、他にシナリオの実行要求があるか否か確認し(ステップ505−9)、他のシナリオの実行要求が存在する場合は、シナリオデータの読み込み処理(ステップ505−4)に戻って同様に処理が実行される。
一方、他に実行するシナリオが存在しない場合、シナリオ駆動部(101−1)は、エージェント終了処理を実行する(ステップ505−10)。すなわち、エージェントOS部(101−8)に対して、要求された全てのシナリオの実行処理が終了したことを知らせる。
その後、表示装置(2)に表示される画面は通常のナビゲーション画面に戻るが、その後の処理はエージェントI/Fを介して全体処理部(102)に受け渡す。
【0096】
図19は、シーン処理(ステップ505−6)の流れを表したフローチャートである。
シナリオ駆動部(101−1)は、シーン処理において、開始するシーンの種類を確認し(ステップ505−6−1)、通常のシーン又はスタンバイシーンの場合は、シーンデータの解析処理(ステップ505−6−2)に進み、クローンシーンの場合は、各種処理の依頼を行なう処理(ステップ505−6−5)に進み、条件追加シーンの場合は、展開判断処理(ステップ505−6−12)に進む。
ここで、クローンシーンは、あるシーンnの終了の仕方によって、元のシーン(直前に終了したシーン)nと同一の画面を表示する場合で、例えば、設定時間内に入力がされなかった場合に、同一の画面のまま入力を促す音声を出力するような場合のシーンである。
また、条件追加シーンは、ある特定のシーンに推移して開始させるために、当該シーンの前に設けられたシーンで、画面表示がされずに画面推移(分岐)のための条件判断を行なうシーンである。
【0097】
開始するシーンが通常のシーン、もしくはスタンバイシーンの場合、シナリオ駆動部(101−1)は、開始するシーンのデータを、ステップ505−4(図18)で読み込んだシナリオデータがおかれているRAM(1−4)を参照し、表示する画面構成やキャラクタの動作指示、等を解析する(ステップ505−6−2)。
解析した結果、音声認識辞書が存在する場合、シナリオ駆動部(101−1)は、シーンデータ中に規定されている音声認識辞書の設定(初期化)依頼を音声認識部(101−7)に対して通知する(ステップ505−6−3)。
なお、スタンバイシーンの場合には、肯定か否定かの音声認識辞書が設定される。
【0098】
次に、シナリオ駆動部(101−1)は、描画・音声出力部(101−5)に対して画面描画の依頼を行なうための処理として、描画する画面の各パーツを決定する画面構成の画面データ作成処理を行なう(ステップ505−6−4)。
画面構成の画面データ作成処理では、例えば図14に示されるシーン画面のうち、エージェント表示画面51や、キャラクタの台詞が表示される吹き出し画面52等のキャラクタに関連する項目を決定する処理である。
【0099】
シナリオ駆動部(101−1)は、各種処理の指示を行なう(ステップ505−6−5)。
各種処理の指示とは、ナビや外部接続機器などへの処理、タイマーが設定されている場合には時間計測の依頼処理等である。
また、シナリオ駆動部(101−1)は、各種処理として、長期的感情要素、又は短期的感情要素の各要素値を変更する指示がそのシーンに対して設定されている場合には、設定された指示に対応してメンタルモデルデータ(10−2−3−1)の長期的感情要素10−2−3−1a及び短期的感情要素10−2−3−1aの変更をキャラクタ心理部(101−4)に指示する。
キャラクタ心理部(101−4)は、指示に従って、シーンで指定された変更値に応じて各感情要素の値を変更する。すなわち、長期的感情要素であれば、指示された変更値を加減算し、短期的感情要素であれば当該短期的感情要素の値を指示された変更値に変更すると共に他の短期的感情要素の値をゼロにする。
このように、エージェントの長期的な感情の変化や短期的な感情の変化をエージェント装置に予め決められた条件(長期的感情変化条件10−2−3−1b、短期的感情変化条件10−2−3−1d)に従って変化させるだけでなく、シナリオに設定された感情要素の変更指示に従って変更することが可能である。このため、シナリオの作成者の意図に沿ったエージェントの感情変化を実現することが可能になる。
【0100】
次に、シナリオ駆動部(101−1)は、シーンのキャラクタ動作や、台詞等の音声を決定し、決定したキャラクタの描画・音声出力の要求を描画・音声出力部に対して行ない、該要求に従って、描画音声出力部はキャラクタ描画・音声出力処理を行なう(ステップ505−6−6)。
シナリオ駆動部(101−1)によるキャラクタ描画データの作成は、作成するシナリオのパーツが画面構成のパーツかキャラクタに関するパーツかが異なる以外は、図14に示した画面構成の描画データ作成処理と同様に行なわれる。また、キャラクタ描画データの作成の場合、吹き出し画面52に表示する台詞に対応するキャラクタの音声や、効果音についての音声データの特定も行なわれる。
シナリオ駆動部(101−1)は、キャラクタ描画データ(音声データを含む)を作成すると、作成したキャラクタ描画データによるキャラクタ描画要求を描画・音声出力部(101−5)に対して行なう。
描画・音声出力部は(101−5)は、シナリオ駆動部(101−1)からの描画要求に従って、キャラクタの描画・音声出力の処理を行なう。キャラクタ描画・音声出力処理により、キャラクタがお辞儀をしたり、右方向や左方向を手で指したり、ユーザに話しかけたりするシーンが展開される。
また、スタンバイシーンの場合は、図15(S)に例示したような、通常(図15(a))よりも小さいキャラクタが表示される。
【0101】
描画・音声出力部(101−5)からシーンのキャラクタ描画・音声出力処理終了が通知された後に、シナリオ駆動部(101−1)は、処理中のシーンデータにおいて音声認識についての指示がされているか否かを確認し(ステップ505−6−7)、指示が無ければ、ステップ505−6−9に移行し、指示がある場合にはそのシーンデータで指定されている音声認識のための辞書を使用して音声認識処理を行なう(ステップ505−6−8)。
【0102】
シナリオ駆動部(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)が実行される。
【0103】
シナリオ駆動部(101−1)は、エージェントOS部(101−8)から、例えば、カーソルの移動に関する入力を受け取った場合、カーソルを移動させて、画面の描画依頼(画面スクロールの依頼)の処理を行なう(ステップ505−6−10)。
また、ユーザがシーン表示画面54(図14参照)に表示されているいずれかの回答選択ボタン54aを選択した場合、どの項目が選択されたか判断する(ステップ505−6−11)。
なお、上述したように、図18、図19の処理は、シナリオ処理の1例を示したものであり、実際には各部が独立して個別の処理を行なっている。このため、上の図19には示していないが、音声認識開始もしくは中止が入力された場合、音声認識部に対し音声認識処理の開始もしくは中止の依頼を行なう等、ユーザ入力の確認(ステップ505−6−9)を行なった後の処理は他にも存在する。また、描画・音声出力部(101−5)からシーンのキャラクタ描画・音声出力処理終了が通知をされる前、つまり、指示したキャラクタの動作が終了する前であっても、ユーザの入力の確認(ステップ505−6−9)をすることも可能である。
【0104】
次に、シナリオ駆動部(101−1)は、選択された項目の判断結果から、展開判断処理(ステップ505−6−12)において、シナリオデータの展開管理データ(図11参照)を参照して次の展開を判断する。
シナリオ駆動部(101−1)は、次の展開が存在しない場合は何も処理せずにユーザ入力判断に戻る。
一方、次の展開が存在する場合、シナリオ駆動部(101−1)は、ステップ505−6−11で判断した選択項目や、展開管理データに格納されているシーンの移行条件から、次に展開するシーンを判断する。シナリオ駆動部(101−1)は、シーンの移行条件に規定されている各項目の状態をキャラクタ心理部(101−4)やエージェントOS部(101−8)から受け取り、展開するシーンを決定する。
例えば、移行条件として長期的感情の友好度が「高い」場合に挨拶するシーンに展開し、高くない場合に挨拶をしないシーンに展開することが規定されているものとする。この場合、シナリオ駆動部(101−1)は、キャラクタ心理部(101−4)から、長期的感情要素(10−2−3−1a)の友好度の要素値を受け取り、その値が71〜100であれば、高いと判断(図7(b)参照)して、挨拶するシーンを決定し、70以下であれば挨拶をしないシーンを決定する。
このように、シナリオの長期的感情要素、短期的感情要素をシーン移行条件に規定されている場合に、その規定をシーンの展開の判断に使用するので、シナリオ作成者の意図にあった感情にエージェントの感情変化をさせながらシナリオを実行することで、より人間らしいエージェントとのコミュニケーションが可能になる。
【0105】
シナリオ駆動部(101−1)は、展開判断により次に展開するシーンを決定した後、次の展開に進めるためにシーン終了処理(ステップ505−6−13)に進む。
シーン終了処理(ステップ505−6−13)では、シナリオ駆動部(101−1)が他の処理部に依頼している処理があれば、その中止依頼を行ない(例えば音声認識処理の依頼をしていたら認識処理の中止依頼をする)、リターンする。リターンにより、図18のシナリオ終了判断(ステップ505−7)に移行する。
以上のように車両に搭載した機器の状況、ユーザからの入力操作、時間等に基づき、シナリオ(画面要素推移体)を実行することにより、本発明の画面要素推移体実行手段が形成される。
【0106】
以上説明したように、本実施形態のエージェント装置によれば、自動起動条件を満たした場合に、シナリオを実行を待機させ、実行の告知と確認を行なうスタンバイ処理を行なうようにしたので、エージェントがユーザとコミュニケーションを始める前にユーザは準備をする時間ができ、エージェントのコミュニケーション内容を充分に聞き取ることが可能となる。
また、エージェントの音声によりシナリオ実行の告知を行なうので、コミュニケーションの開始を単なる注意音や効果音を出力する場合に比べて、ユーザがキャラクタに対して親近感を得ることが可能となる。
【0107】
また、説明した実施形態によれば、シナリオ作成装置のユーザ(作成ユーザ)が作成したオリジナルのシナリオに組み込まれた自律起動条件を、シナリオの起動条件としてシナリオの実行を開始することができる。
従って、シナリオ作成装置のユーザに対して、エージェントの登場を含めた各種シナリオを、自分の好みに合わせたタイミングで起動させるようなシナリオを自由に作成する場を提供することができる。
また、シナリオエディタで作成したシナリオデータの指示に基づいてエージェントの長期的感情要素と短期的感情要素を変更するようにしたので、シナリオ作成者の意図にあった感情のエージェントによりコミュニケーションを取ることが可能になる。
【0108】
また、説明した実施形態によれば、エージェントの行為をシナリオデータで規定すると共に、このシナリオデータを複数の連続するシーンからなるシナリオによって規格化されているので、エージェント装置のユーザ及び第三者が自分でシナリオを作成し、組み込むことができる。
このように装置に予め格納されているデフォルトのシナリオに追加できるので、ユーザは自分に合った追加シナリオをインターネット等で探してダウンロードし、また自分でシナリオを作成することでエージェント装置をより快適に使用することができる。
【0109】
次に、ユーザや第三者が独自のシナリオを作成するシナリオ作成装置の構成とその動作について説明する。
図20は、シナリオ作成装置の構成を表したものである。
シナリオ作成装置は、制御部(200)と、入力装置(210)と、出力装置(220)と、通信制御装置(230)と、記憶装置(240)と、記憶媒体駆動装置(250)と、入出力I/F(260)とを備えている。これら各装置は、データバスや制御バス等のバスラインにより接続されている。
【0110】
制御部(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)がシナリオエディタ(シナリオ編集プログラム)に従ってシナリオデータを作成、編集、記憶等するためのエリアが確保可能になっている。
【0111】
入力装置(210)は、シナリオ作成装置に対して文字や数字その他の情報を入力するための装置であり、例えばキーボードやマウスなどにより構成されている。
キーボードは、主にカナや英文字などを入力するための入力装置である。
キーボートは、例えばユーザがシナリオ作成装置にログインするためのログインIDやパスワードを入力したり、シナリオ作成の際に音声合成や音声認識の対象となる文を入力したりする際などに使用される。
マウスは、ポインティングデバイスである。
GUI(Graphical User Interface)などを用いてシナリオ作成装置を操作する場合、表示装置上に表示されたボタンやアイコンなどをクリックすることにより、所定の情報の入力を行なうこと等に使用される入力装置である。
【0112】
出力装置(220)は、例えば表示装置や印刷装置などである。
表示装置は、例えばCRTディスプレイ、液晶ディスプレイ、プラズマディスプレイなどが使用される。
表示装置には、シナリオを作成するためのメイン画面や、各シーンにおける画面構成を選択するための画面等の各種画面が表示される。また、各画面において選択された情報や入力された情報が表示されるようになっている。
印刷装置は、例えば、インクジェットプリンタ、レーザプリンタ、熱転写プリンタ、ドットプリンタなどの各種プリンタ装置が使用される。
【0113】
通信制御装置(230)は、外部との間で各種データやプログラムを送受信するための装置であって、モデム、ターミナルアダプタその他の装置が使用される。
通信制御装置(230)は、例えばインターネットやLAN(Local Area Network)などに接続可能に構成されている。通信制御装置(230)は、これらのネットワークに接続した他の端末装置あるいはサーバ装置などと通信によって信号及びデータのやり取りを行なうことで、装置で作成したシナリオデータを送信したり、第3者が作成したシナリオデータを受信(ダウンロード)したり、更に、シナリオデータの作成に必要なデータを取得したりすることができるようになっている。
通信制御装置(230)はCPU(200−1)によって制御され、例えば、TCP/IPなどの所定のプロトコルに従ってこれら端末装置やサーバ装置との信号及びデータの送受信を行なう。
【0114】
記憶装置(240)は、読み書き可能な記憶媒体と、その記憶媒体に対してプログラムやデータを読み書きするための駆動装置によって構成されている。
当該記憶媒体として主にハードディスクが使用されるが、その他に、例えば、光磁気ディスク、磁気ディスク、半導体メモリなどの他の読み書き可能な記憶媒体によって構成することも可能である。
記憶装置(240)には、シナリオ編集プログラム(240−1)、シナリオ編集データ(240−2)、及びその他のプログラム・データ(240−3)が格納されている。その他のプログラムとして、例えば、通信制御装置(230)を制御し、シナリオ作成装置とネットワークでつながれた端末装置やサーバ装置との通信を維持する通信プログラムや、メモリ管理や入出力管理などのシナリオ作成装置を動作させるための基本ソフトウェアであるOS(Operating System)なども記憶装置(240)に格納されている。
【0115】
記憶媒体駆動装置(250)は、着脱可能な記憶媒体を駆動してデータの読み書きを行なうための駆動装置である。着脱可能な記憶媒体としては、例えば、光磁気ディスク、磁気ディスク、磁気テープ、ICカード類、データをパンチした紙テープ、CD−ROMなどがある。
本実施形態では、シナリオ作成装置で作成・編集したシナリオデータ(エージェント装置で使用する形態)は、主としてICカード類に書き込まれるようになっている。
シナリオ作成装置は、記憶媒体駆動装置(250)によって記憶媒体を駆動することにより、シナリオデータが格納された記憶媒体からシナリオを取得したり、あるいは、作成したシナリオデータを記憶媒体駆動装置から記憶媒体に格納したりすることができる。
【0116】
入出力I/F(260)は、例えば、シリアルインターフェースやその他の規格のインターフェースにより構成されている。
入出力I/F(260)に当該インターフェースに対応した外部機器を接続することにより、シナリオ作成装置の機能を拡張することができる。このような外部機器として例えば、ハードディスクなどの記憶装置、通信制御装置、スピーカ、マイクロフォンなどがある。
【0117】
次に、シナリオ編集プログラム(240−1)と、シナリオ編集データ(240−2)の構成について説明する。
図21は、シナリオ編集プログラムとデータの構成を概念的に表したものである。
シナリオ編集プログラム(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)は、シナリオデータを作成するアプリケーションプログラムである。
【0118】
シナリオコンパイラ(240−1−2)は、シナリオエディタ(240−1−1)で作成されたSCE形式シナリオデータ(240−2−3)を、エージェント装置で使用可能な実機形式シナリオデータ(240−2−4)に変換するアプリケーションプログラムで、変換手段として機能する。
図22は、データ形式の変換を概念的に表したものである。
この図22に示されるように、シナリオコンパイラ(240−1−2)は、1個以上のSCE形式シナリオデータ(240−2−3)を、1個の実機形式(NAV形式)シナリオデータ(240−2−4)に変換する。
【0119】
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)は、シナリオ作成者がシナリオデータを作成中に定義した画面構成が格納される。
【0120】
SCE形式シナリオデータ(240−2−3)は、シナリオエディタ(240−1−1)で作成されたデータである。
実機形式(NAV形式)シナリオデータ(240−2−4)は、シナリオコンパイラ(240−1−3)によってSCE形式シナリオデータ(240−2−3)からエージェント装置で使用するためのデータ形式に変換されたデータである。
【0121】
図23(a)は、自動起動項目として設定可能な項目を例示したものである
この自動起動項目は、エージェント装置で検出、認識、確認可能な各項目の種類のサンプルを概念的に一覧表示したものである。
この自動起動項目は、共通定義DB(240−2−1)に記述されており、シナリオエディタ(240−1−1)でシナリオを作成する際に、自律起動条件を設定するために、自動起動項目が共通定義DB(240−2−1)から読み出され、リスト表示される(提示手段)。作成者は、このリスト表示(一覧表示)された中から自動起動項目を選択する(選択手段)。
それぞれ選択された項目の種類に記されている内容によって数値入力を行なうウインドウが表示されたり、一覧から選択するウインドウが表示されたりして自動起動項目の判断条件を入力する。この操作を1又は複数回繰り返しシナリオを自律的に起動するための判断条件である自律起動条件のデータが作成される。
このように、画面要素推移体(シナリオ)の起動条件を設定することにより、起動条件設定手段が形成される。
【0122】
図23(b)、図23(c)は、自動起動項目に対して、自律起動条件として選択可能な選択可能項目を例示したものである。
選択可能項目も共通定義DB(240−2−1)に記述されている。図23(a)に例示した自動起動項目を示したテーブルのうち、種別の欄に一覧から選択と表記された項目について、更に下位の概念として選択可能な項目が、選択可能項目として図23(b)、図23(c)に規定されている。選択可能項目に規定されたグループと、自動起動項目の項目とは、一番左側のNo.の項目で対応付けられている。
表には示さないが他にもこれと同様に数値入力に関する定義テーブル等が存在し、時刻の入力ウインドウであったり、走行距離の入力ウインドウであったり、と異なった入力をするウインドウを作成することができるようになっている。
選択された自動起動項目と選択された選択可能項目及び入力された数値や時刻、距離等の組み合わせが、各シナリオに対する自律起動条件となる。例えば、ユーザによる選択が、自動起動項目「加速度」、選択可能項目「急減速状態」である場合、自律起動条件は「加速度−急減速」となる。
なお、本サンプルはあくまでもサンプルであり定義を変更してもよい。
例えば車速入力を一覧から選択にし、10km/h毎に区切られた項目の中から選択する形をとってもよい。
また、エージェント装置において新規にセンシングできる項目が増えた場合には、その項目を追加する事ができる。例えばシートベルト検知センサを組み込んだ場合、一覧から選択という入力手段でシートベルト状態という項目に対し、シートベルト未装着、シートベルトを装着しているといった項目が選択できる定義を組み込むことが考えられる。
これらの変更及び追加は、先に示したDB編集ツール(240−1−3)を使って行なう。
また、エージェント心理部からキャラクタの心理状態(長期的感情要素10−2−3−1aと短期的感情要素10−2−3−1d)を入手して自動起動判断の条件に加えてもよい。この場合も、DB編集ツール(240−1−3)を使って定義データを追加する。例えば、一覧から選択という入力手段で自動起動項目としてキャラクタの心理状態、長期的感情要素や短期的感情要素の各項目が選択できる定義を組み込むことが考えられる。
【0123】
図24は、シーンから次のシーンに分岐(シーン展開)をするための分岐項目(移行条件)が格納されたシーン分岐項目テーブルである。シーン分岐項目テーブルは、共通定義DB(240−2−1)に格納されている。
シーン分岐項目の各項目は、各シーンの展開構成を作成する際に読み出され、分岐イベントの選択ウィンドウ(図35(b))にリスト表示される。
このリスト表示された中から分岐条件項目を選択し、また、テーブルに格納されていない場合には別途分岐条件をDB編集ツール(240−1−3)を使って定義データを追加することにより、シーン展開構成が作成される。分岐条件項目の選択を繰り返すことで、複数の推移先を持つ(複数に分岐された)シーンを作成することができる。
【0124】
本実施形態では、エージェントの心理状態がエージェントメンタルモデル(AMM)による分岐として分類されており、シナリオ作成者はシーンの移行条件として長期的感情要素と短期的感情要素を選択することが可能になっている。
長期的感情要素は、図6、図7で説明した長期的感情要素10−2−3−1aに対応して5つの感情要素が規定されている。各長期的感情要素は、それぞれに対して図7(b)で分割され定義された内容(高い、低い、普通)が規定されている。
また、短期的感情要素は、図6、図9で説明した短期的感情要素10−2−3−1cに対応した4つの感情要素とノーマルの5項目が規定されている。ノーマルは、他の4つの感情要素が全てゼロの場合が該当する。短期的感情要素の5項目は、心理状態という項目の下層(長期的感情要素の高い、普通、低いと同一の階層)に規定されている。この短期的感情要素の4つの感情要素(ノーマル以外)は、図示していないが、更に、その下の層に、それぞれに対して図9(b)で分割され定義された内容(大、中、小)が規定されている。
このように、長期的感情要素と短期的感情要素をシーンの移行条件として使用する場合に、各感情要素の範囲を所定段階に分割した範囲で規定することで、シナリオ作成者は感覚的にエージェントの感情状態の程度を把握し、わかりやすく設定することができる。
【0125】
図25は、更に詳細に分岐条件を設定する場合の追加条件テーブルを表したものである。追加条件テーブルも共通定義DB(240−2−1)に格納されている。
追加条件項目は、前記のシーン展開をするアクション(分岐条件項目)に対して更に複数の展開を持たせるために使用する項目である。このとき分岐させるためのシーンを作成する。分岐させるためのシーンを作成すると、分岐させるためのシーンからの展開構成を作成する際には、追加判断項目が読み出される。分岐させるためのシーン1個に対し、1分類のみ選択でき、選択された分類の項目が一覧リスト表示されて選択する、もしくは数値入力で範囲指定する。複数の分類を論理積で掛け合わせたい場合は、分岐させるためのシーンを重ねることで容易に作成することができるようになっている。
この追加条件テーブルでは、図24と同様にAMMによるエージェントの心理状態も規定されている。これにより、他の分岐条件に追加してエージェントの感情要素を移行条件に使用することができる。
更にエージェント装置は、学習部((101−3):図4参照)により、シナリオが複数のシーンに分岐していて、それぞれ異なるシーンでシナリオが終了する場合の終了の仕方をエンドIDとして記録するようになっている。また、学習部(101−3)は、シナリオのなかでユーザの応答や、通算使用回数等を学習データといして記録することができるようになっている。
【0126】
図25に示す追加条件テーブルには、これら記録されたシナリオ終了状態(エンドID)や、シナリオの通算使用回数、ユーザ情報(運転者情報)、メンタルモデル、日時などのその他の分類項目と、各分類における選択できる項目一覧の作成方法が定義されており、これらを追加分岐条件として選択し、1個のシーン展開をするアクションに対して複数の展開を持たせることが可能になっている。シーン展開をするアクション項目及び追加判断項目に関する定義データも自律起動判断データと同様に、変更及び追加がDB編集ツール(240−1−3)を使って行なうことができるようになっている。
以上のように、画面要素(シーン)から次の画面要素へ移行する条件を設定することにより、本発明の移行条件設定手段が形成される。
【0127】
図26、図27は、共通定義DB(240−2−1)に格納されている、キャラクタによらない統一の動作指示テーブルの内容の一部を概念的に表したものである。
以下図26、図27の説明より、キャラクタ設定手段を形成する。
このテーブルは、キャラクタの種類によらずに共通した動作の表示状態が規定されており、キャラクタに表現させたい内容毎に分類されている。
キャラクタによらない統一の動作指示テーブルは、複数存在し、本実施形態では、仕事の状態(図26)、精神状態(図27)、TPO状態、成長状態、スケール状態の各表示状態指示テーブルが存在する。
図26、図27に示されるように、各表示状態指示テーブルは、複数のツリー構造になっており、後述するキャラクタ動作の状態指示編集ウィンドウ(図32(c))に各ツリー構造の形と分類名が表示されるようになっている。
【0128】
図26、図27に示されるように、表示状態指示テーブルのツリーの末端の項目毎に状態指示番号が付されている。この状態指示番号が、エージェント装置1のキャラクタ画像選択データ(変換テーブル)102353の状態指示番号(図9参照)に対応している。
【0129】
これらのテーブルでは、図26、図27でも示されているように、表示状態に対する下層で定義されているレベル(丁寧に行なう、普通に行なう、強、中、弱等)をシステム(エージェント装置)に自動で選択させる項目「自動」を設けている。
この自動を選択したシーンに対して、エージェント装置では、キャラクタ心理状態、日付や時刻、等によってキャラクタのどのレベルの表示状態を使用するかを判断して、いずれかの表示状態を選択し実行することになる。
【0130】
共通定義DB(240−2−1)には、その他、音声認識に使用する音声認識用データと、キャラクタの動作指示に使用するデータ(別途台詞の指示データも存在する)と、各シーンで設定した指示をプレビューして確認するためのキャラクタ画像データ及びキャラクタ台詞データ及びキャラクタによらない統一の指示に対する各キャラクタの表現方法への変換テーブルと、表示装置(2)に表示する各パーツデータ及びそれらをどのように配置するかが記された画面構成データと、シーンにおける処理内容として選択可能な項目、例えば、エージェントが処理可能な行為である、オーディオ装置のオン・オフやチャンネル選択、エアコン装置のオン・オフと温度設定、全体処理部(102)に供給する目的地の設定等の各種処理内容項目データ等が共通定義DB(240−2−1)に格納されている。
これら全ての定義データも、各定義データと同様に、変更及び追加がDB編集ツール(240−1−3)を使って行なうことができるようになっている。
【0131】
各シーンで設定した指示をプレビューして確認するためのキャラクタ画像データは、エージェント装置に格納されている各種キャラクタの画像データが格納されている。
なお、ユーザは、エージェント装置から他のキャラクタについてのキャラクタ画像データと、変換テーブルをICカード7、又は、サーバ3を介してシナリオ作成装置の共通定義DBに格納することも可能である。
【0132】
次に、このように構成されたシナリオ作成装置によるシナリオ作成の各動作について、画面の遷移に従って説明する。
図28は、シナリオエディタ(240−1−1)を起動した場合に表示装置に表示されるメインウィンドウの構成を表したものである。
この図28に示されるように、メインウィンドウは、作成中のシーン画面(エージェント装置(1)の表示装置(2)に表示されるシーン画面(図14参照))が表示されるシーン画面301と、各種設定を行なう設定項目が表示された設定画面303と、シーンの展開構成(分岐の状態)が各シーンを表すシーンアイコン307のツリー構造により表示されるシーン展開画面305で構成されている。
【0133】
シナリオエディタ(240−1−1)を起動すると、メインウインドウのシーン展開画面305には、スタートポイント308が表示される。このスタートポイント308を選択するとシナリオプロパティの編集ができる。選択は、例えば、マウスカーソルによるポイント位置を該当箇所に合わせて、マウスをダブルクリックすることで選択される。
画面構成の変更ボタン309は、表示したい画面構成を選択するボタン、効果音設定ボタン110は、シナリオの各シーン毎に効果音を設定する画面を表示するボタンである。
エージェント表示画面311を選択すると、エージェント(キャラクタ)の動作の編集画面が表示される。
台詞編集ボタン313は、キャラクタの台詞の指示を編集するボタンである。ボタンパーツとバックグラウンド音声認識辞書設定315を選択すると使用する音声認識辞書の編集ができる。シーン画面301の回答選択ボタン315a(54a)のマークで表示されている方を選択すると認識する単語の名称がシーン画面に表示され、バックグラウンドで認識する方315bを選択すると、音声認識の対象となるが認識する単語の名称は表示されない。
【0134】
タイマー設定ボタン317は、タイマー設定情報を設定、及び変更するためのボタンである。
外部機器等の制御指示編集319では、外部機器等(ナビも含む)の制御指示を設定する。
音声認識開始制御指示320aでは、作成中のシーンにおいて音声認識を行なう場合に、音声認識の開始をどのようにするかを規定する音声認識の指示を設定する。音声認識の指示としては、音声認識を「自動で開始する」、「自動で開始しない」、「エージェント装置(車載装置)が判断する(おまかせ)」、のうちのいずれかを選択可能になっている。
コールバック制御指示320bでは、音声認識の結果を確認するためのコールバックを行なうか否かについての指示を設定する。コールバックの指示としては、「コールバックする」、「コールバックしない」、エージェント装置が状況判断してコールバックをするかしないかを判断する「エージェント装置が判断(おまかせ)」のうちのいずれかを選択可能になっている。
AMMの変化の設定変更ボタン321は、後述するように、作成中のシーンでエージェントの各長期的感情要素を変更するためのボタンである。
【0135】
次のシーン作成ボタン322をクリックするとシナリオの流れを編集できる(次のシーンを作成する)。シーン作成ボタン322をクリックすると、現在選択しているシーンの次に展開するシーンの作成が可能になる。
シーン作成ボタン322でシナリオの流れを分岐させることで、各シーンの展開構成が作成される。例えば、シーンのアイコン1を選択した状態(アクティブ表示されている状態)で、次のシーン作成ボタン322をクリックするとシーン1に続くシーンのアイコンが下層側に表示され、複数回クリックすることでシーン1に続いて展開されるシーン2,3,…が分岐して作成される。
【0136】
すなわち、シーンmを選択した状態でシーン作成ボタン322をクリックすることで、シーンmに続く次のシーンm1が作成される。そして、再度シーンmを選択した状態で、シーン作成ボタン322をクリックするとシーンmに続く次のシーンm2が、シーンm1と並列に分岐して作成される。同様に再度シーンmを選択した状態でシーン作成ボタン322をクリックするとシーンm3が作成される。
そして、シーンm1に続くシーンを更に展開させたい場合には、シーンm1を選択した状態でシーン作成ボタンをクリックすることで、シーンm1に続く次のシーンm1−1が作成される。
そして、シーンm1−1を作成した状態で(シーンm1−1が選択されている状態)でシーン作成ボタン322をクリックすれば、シーンm1−1に続くシーンm1−1−1が作成され、シーンm1から分岐する別のシーンを作成する場合にはシーンm1を再度選択してシーン作成ボタン322をクリックすればシーンm1に続くシーンm1−2が作成される。
【0137】
シナリオの終了位置作成ボタン323をクリックするとシナリオの終了位置324を作成できる。作成した各シナリオの終了位置には、終了番号がエンドIDとして割り振られるようになっている。
作成したシナリオの終了位置324を選択すると、エンドプロパティ編集画面を表示し、この画面において、エージェントの各短期的感情要素を設定、及び変更することができる。
シナリオコンパイルボタン325をクリックすると作成したシナリオをエージェント装置で使うための実機形式(NAV形式)のフォーマットにコンパイルできる。
【0138】
なお、図28に示したメインウィンドウは、シナリオの作成途中を例示したもので、シナリオエディタ(240−1−1)を起動した当初の画面は、シーン展開画面305にスタートポイント308だけが表示され、シーン画面301には何も表示されていず、設定画面303も未設定(デフォルト値は表示されている)の状態である。
【0139】
図29は、シナリオプロパティを編集する画面操作の流れを表したものである。
図28に示したメインウインドウにおいて、シーン展開画面305に表示されているスタートポイント308をダブルクリックすると、図29に示すシナリオプロパティの編集ウインドウがメインウィンドウ上に重ねて表示される。
【0140】
このシナリオプロパティの編集ウィンドウにおいて、シナリオ名称入力,カナ名称入力,アイコン選択,ジャンル選択,プライオリティの設定,有効期限(開始条件を満たしてから実際に開始するまでのタイムラグの上限値)の設定,走行中実行条件の設定,シナリオの起動条件の設定(別ウインドウ),スタンバイ処理使用条件の設定,作成者名称入力,コメント入力が行なえる。この画面で入力されるシナリオ名称入力,カナ名称入力は、実機形式のシナリオデータにおける管理データ等となる。
シナリオプロパティの編集ウィンドウにおいて、決定ボタン402をクリックすると編集内容がデータに反映され、メインウインドウに戻る。一方、キャンセルボタン403をクリックするとデータに反映されなで、メインウインドウに戻る。
シナリオプロパティの編集ウィンドウ(図29)において、スタンバイ処理使用条件の設定ボタン409をクリックすると、スタンバイ処理の条件画面が表示され、スタンバイ処理を行なうか否かを選択できるようになっている。
【0141】
シナリオプロパティの編集ウィンドウにおいて、起動条件の設定ボタン401を選択すると、図30(a)に示す、シナリオ開始条件(自動起動条件)のメイン編集ウィンドウが表示される。
シナリオ開始条件のメイン編集ウインドウ(図30(a)では、ユーザがシナリオを手動で開始できるように設定できる。この事例ではチェックボックス406のチェックを外して手動で起動しないに設定する。
このシナリオ開始条件のメイン編集ウインドウ(a)の左側の自動起動条件(自律起動条件)一覧にはシステムがシナリオを自動で開始する条件が表示される。図30(a)の状態では、まだ何も設定されていないので空欄の状態である。シナリオ開始条件のメイン編集ウインドウ(図30(a))において、新規作成ボタン405をクリックすると、自動開始条件選択ウインドウ(図30(b))が表示され、新しい開始条件の編集ができる。
【0142】
自動開始条件選択ウインドウ(図30(b))において、設定したい判断条件項目(カテゴリ)を選択し、決定をクリックすると自動開始する条件範囲の選択ウインドウ(図30(c))へ進む。この図30(b)の例示では、高速道路走行中にシナリオを自動で開始(自律起動)したいので、「道路の状態がどのようなときに起動するか選択」の中の「種類を選択」の項目を選択し、決定をクリックする。
キャンセルをクリックするとシナリオ開始条件のメイン編集ウインドウ(図30(a))に戻る。
【0143】
この自動開始条件選択ウインドウ(図30(b))に表示し、選択できる項目は、図23(a)に表示した自動起動項目である。図30(b)において、「いつ起動させるかを選択」のフォルダ内を選択すると図23(a)のNo.1〜10の条件項目が1つ下の階層に表示される。
同様に、「どこで起動させるかを選択」のフォルダを選択するとNo.10〜16が、「道路の状態がどのようなときに起動させるかを選択」のフォルダを選択するとNo.21〜23が、「車の状態がどのようなときに起動させるかを選択」のフォルダを選択するとNo.17〜20が、「ナビの状態がどのようなときに起動させるかを選択」のフォルダを選択するとNo.21〜28が、「ユーザがどのようなときに起動させるかを選択」のフォルダを選択するとNo.29〜30が、それぞれ1つ下の階層に表示される。
【0144】
自動開始する条件範囲の選択ウインドウ(図30(c))では、前のウインドウ(b)で選択した判断条件項目(カテゴリ)によってウインドウの構成が変わる。図示した例では、道路の種類を選択する項目のウィンドウが表示されている。
自動開始する条件範囲の選択ウインドウ(図30(c))で、選択可能な項目は、自動開始条件選択ウインドウ(図30(b))で選択した自動起動項目に対応する、選択できる項目(図23(b))である。この選択できる項目は、選択項目欄408右側のマークをクリックすることで、プルダウンメニュー表示される。
自動で開始しても良い条件範囲を一覧から選択(又は数字で入力)し、追加ボタンをクリックすると選択した項目が設定されて下の欄に表示される。図示した例では、「高速道路」を選択して追加ボタンをクリックした場合が表示されている。
自動開始する条件範囲の選択ウインドウ(図30(c))で決定ボタンをクリックするとその設定状態に決定し、シナリオ起動条件のメイン編集ウインドウ(図30(d))に戻る。
キャンセルをクリックすると自動開始条件選択ウインドウ(図30(b))に戻る。
【0145】
図30(d)のシナリオ開始条件のメイン編集ウインドウでは、左側の自動起動条件一覧に、上記操作で設定した自動で開始する条件(道路の種類が高速道路だったら起動する)が表示されている。
また、自動起動の条件一覧画面に表示されている自動で開始する条件を選択して編集ボタンをクリックすると、選択した条件にさらに条件設定を追加するための自動開始条件選択ウインドウ(図30(b))が表示される。
【0146】
次に、自律起動条件以外の、シナリオを作成する各種操作について説明する。
図31は、エージェント表示画面51(図14参照)に表示したい画面構成を選択する画面操作の流れを表したものである。
この図31(a)に示されるメインウィンドウのシーン展開画面305に表示されているシーンアイコン307を選択してアクティブ状態にすると、選択したシーンアイコンに対応するシーン画面310が表示される。そして、設定画面303の画面構成の変更ボタン309をクリックすると、画面構成の選択ウインドウ(b)が表示される。
この画面構成の選択ウインドウ(b)では、シーン表示画面54(図14参照)に表示可能なる画面構成が一覧表示される。何も表示されない基本画面、ボタンによる選択ボタンが2つ表示された2択画面、選択ボタンが複数表示されたボタン選択画面、例えば、都道府県名等の複数の項目がリスト表示されるリスト選択画面、画像データを表示する画像表示画面等の各種選択可能な画面が表示される。
一覧表示された各画面構成の中から1の画面構成を選択し、決定ボタンをクリックすると画面構成を変更する場合は確認ダイアログで確認後変更する場合は、その画面構成に変更してメインウィンドウ(a)に戻る。メインウィンドウに戻ると、シーン画面301が新たに選択した画面構成に変更されて表示される。
【0147】
以下図32〜図34は、キャラクタの表示内容(画像、音声)、処理内容に基づいて画面要素を設定する画面要素設定手段、及び、キャラクタ設定手段を形成する。
図32は、キャラクタ動作(エージェントの動作)指示を編集する画面操作の流れを表したものである。
シーン画面の編集状態を表しているメインウィンドウ(図28)において、エージェント表示画面311をマウスでダブルクリックすると、動作指示編集ダイアログ(個別指示)(図32(a))又はキャラクタ動作指示編集ダイアログ(統一指示)(図32(b))が表示される。
いずれのウィンドウが表示されるかは、前回に使用したウィンドウが表示され、前回動作指示をキャラクタ毎の直接指示で指示しているときは(図32(a))が表示され、前回キャラクタに表現させたい状態で指示している場合は(図32(b))が表示される。最初に使用する場合には、キャラクタ動作指示編集ダイアログ(統一指示)が表示される。
【0148】
図32(a)のキャラクタ動作指示編集ダイアログ(個別指示)では、モーション(動作),表情(感情表現の要素),髪型(成長表現の要素),服装(TPO表現の要素),スケール(キャラクタ表示領域をカメラのフレームとするとそのカメラアングルの要素),口パクをする範囲(台詞を割り当てる範囲),動作の指示タイミング,及びキャラクタ表示領域の背景を選択する。
図32(a)のキャラクタ動作指示編集ダイアログ(個別指示)において、決定ボタンをクリックすると編集内容がデータに反映され、メインウィンドウ(図28)に戻る。キャンセルボタンをクリックするとデータに反映されなで、メインウィンドウに戻る。
また、表現内容指定ボタンをクリックすると、キャラクタ動作指示編集ダイアログ(統一指示)図32(b)切り替わる。
【0149】
キャラクタ動作指示編集ダイアログ(個別指示)で動作の指示(表示状態)が選択されると、キャラクタ固有の動作としてシーンが定義される。この場合、エージェント装置1では、描画・音声出力部(101−5)によるキャラクタ描画・音声出力処理において、キャラクタによらない統一の動作指示でないと判断される。
【0150】
図32(b)のキャラクタ動作指示編集ダイアログ(統一指示)では、キャラクタが表現する状態として、共通定義DB(240−2−1)に格納されているキャラクタによらない統一の動作指示テーブル(図26、図27参照)に対応して、仕事の要素,精神状態の要素,TPO表現の要素,成長表現の要素,スケール要素(キャラクタ表示領域をカメラのフレームとするとそのカメラアングルの要素),が選択可能に表示される。また、動作の指示タイミング,及びキャラクタ表示領域の背景の選択画面が表示される。
ユーザは、このキャラクタ動作の状態指示編集ウインドウに表示された各表示状態を選択することで、キャラクタによらず各キャラクタに共通した動作として選択した表示状態に対応する表示状態番号が設定中のシーンの内容として設定される。
このウィンドウで、決定ボタンをクリックすると編集内容がデータに反映され、メインウィンドウ(a)に戻る。キャンセルボタンをクリックするとデータに反映されなで、メインウィンドウ(a)に戻る。
直接指示指定ボタンをクリックすると、キャラクタ動作指示編集ダイアログ(個別指示)(b)に切り替わる。
【0151】
図33は、キャラクタ(エージェント)の台詞指示を編集する画面操作の流れを表したものである。
シーン画面の編集状態を表しているメインウィンドウ(図28)において、設定画面303の台詞編集ボタン313をクリックすると、図33(a)に示す台詞の編集ウインドウが表示される。
この台詞の編集ウインドウ1(a)では、「PCM」のタブ画面が表示され、PCM(録音されて用意されている肉声データ)の指示ができる。
台詞の編集ウインドウ1(a)で「TTS」タブを選択すると、台詞の編集ウインドウ2(図33(b))が表示され、TTS(合成音声)の指示ができる。
PCMの場合、台詞を全角ひらがなで入力(上記入力用ボックス)し該当する台詞があるか検索(検索ボタンをクリックする:前方一致と完全一致の2種類の検索方法を用意)し、検索結果(検索結果一覧表示欄が存在する)から選択しキャラクタに話させる台詞を設定(追加ボタンをクリックすると設定できる)していく。
TTSの場合は台詞名称(吹き出し表示用データ)とフリガナ(合成音声を作成するためのデータ)を入力しキャラクタに話させる台詞を設定(追加ボタンをクリックすると設定できる)していく。
図3(a)、(b)に示す台詞の編集ウインドウ1、2において、決定ボタンをクリックすると編集内容が吹き出し画面430のデータとして反映されて図28のメインウィンドウに戻り、キャンセルボタンをクリックするとデータに反映されなでメインウィンドウに戻る。
【0152】
図34は、音声認識辞書を編集する画面操作の流れを表したものである。
この操作は、作成したシナリオに基づいて回答を要求する問いかけをエージェント装置でした場合に、ユーザから返される音声による回答をエージェント装置で認識するための音声辞書を設定するものである。
シーン画面の編集状態を表しているメインウィンドウ(図28)において、選択された画面構成に従って表示されるボタンパーツ部315a(画面構成によっては通常リストボックスパーツ部の場合もある)をダブルクリックすると音声認識辞書選択ウインドウ(図34(a))が表示される。また、バックグラウンドで認識する辞書の一覧表示部315bをダブルクリックしても音声認識辞書選択ウインドウが表示される。
【0153】
音声認識辞書選択ウインドウ(図34(a))において、辞書候補の一覧表示にある辞書名称をダブルクリックするとその音声認識辞書を使うものとして、一般辞書として選択した一覧に表示される。
決定ボタンをクリックすると編集内容がデータに反映されてメインウィンドウ(図28)に戻り、キャンセルボタンをクリックするとデータに反映されなでメインウィンドウに戻る。
ユーザ定義辞書の編集ボタンをクリックすると、音声認識辞書を新規に作成する音声認識辞書作成ウインドウ(図34(b))が表示される。このウインドウにおいて、辞書の名称を入力して辞書追加ボタンをクリックするとその名称で音声認識辞書を新規に作成して音声認識辞書へ単語登録するウインドウ(図34(c))が表示される。
音声認識辞書作成ウインドウでOKボタンをクリックすると音声認識辞書の作成を終了し、音声認識辞書選択ウインドウに戻る。
【0154】
音声認識辞書へ単語登録するウインドウ(図34(c))では、登録したい単語を半角カナでフリガナ欄に入力し、決定ボタンをクリックする。次に名称(表示させたい名称)を選択もしくは新規入力し、コールバックをする際のPCM音声を選択(無しを選択すればコールバックする場合はTTSを使用する)する。これら3項目の入力をした後に登録ボタンをクリックするとデータ登録され右側の登録単語一覧に追加される。
登録したい単語の登録を全て終わったら戻るボタンをクリックすると音声認識辞書作成ウインドウに戻る。
【0155】
図35は、シナリオの流れを編集する画面操作の流れを表したものである。
図35(a)は、メインウィンドウ(図28)のシーン展開画面305に表示される、作成中のシーン展開構成(分岐の状態)を例示したものである。
シーン展開画面305にツリー構造により表示された各シーンアイコン307の中から、後続のシーンを分岐させたいシーンのシーンアイコン307(図35(a)ではアイコン1)を選択してアクティブ状態にする。この状態で、メインウィンドウの新規シーン作成ボタン322をクリックすると、分岐イベントの選択ウインドウ(図35(b))が表示される。
この分岐イベントの選択ウインドウ(図35(b))において、新規に作成するシーンへ分岐させる条件を分岐イベント一覧から選択することで次のシーン(新規作成するシーン)への移行条件が選択される。
【0156】
分岐イベントの選択ウィンドウ図35(b)において、次のシーン(新規作成するシーン)への移行条件を選択してOKボタンをクリックするとその条件(分岐イベント)に決定してメイン画面(a)へ戻る。
この分岐イベントの選択ウィンドウの分岐イベント画面327には、図24で説明したシーン分岐画項目が表示され、分岐させるための条件(移行条件)を選択する。
なお、図25で説明した追加条件テーブルは、分岐イベント選択ウィンドウの右側に表示された追加種別のプルダウンボタン328を選択することで、プルダウンメニューとしてリスト表示される。
分岐イベント画面327に表示されたシーン分岐項目をマウスクリックにより選択してOKボタンを選択すると、分岐の条件値を更に設定可能な項目である場合には、図35(c)、(d)に示す分岐条件値設定ウィンドウが開かれる。
【0157】
本実施形態のシナリオ作成装置では、エージェントの、エージェントの心理状態がエージェントメンタルモデル(AMM)による分岐として分類されており、図35(b)に示すように、分岐イベント画面327に表示されている。
作成者は、作成中のシーンの後に展開するシーンへの移行条件としてエージェントの感情を設定することができる。長期的感情要素(友好度、従順度、自信度、モラル度、元気度)を選択して(図では友好度が選択された状態を表示)、OKボタンを選択すると、図35(c)の分岐条件値入力ウィンドウが表示され、図7(c)に示すように長期的感情要素の要素値を3段階に分割した、長期的感情程度「高い」「普通」「低い」が表示される。
【0158】
一方、分岐イベント画面327において、短期的感情要素の「心理状態」を選択してOKボタンを選択すると、図35(d)の分岐条件値入力ウィンドウが表示される。
このウィンドウで示されるように、4つの短期的感情要素とノーマルの5条件が分岐条件値として選択することができる。ノーマルは、全ての短期的感情要素がゼロの場合なので、ノーマルを除く4つの短期的感情要素については、更にプルダウンメニューにより、図9(b)に示すように3段階に分割した短期的感情程度「大」「中」「小」を選択することがきる。短期的感情程度が選択されない場合には、選択した短期的感情要素の要素値が「ゼロでない」ことが移行条件となる。
【0159】
このように、長期的感情要素、短期的感情要素をシーンの移行条件として使用する場合に、各感情要素の範囲を所定段階に分割した範囲で規定し表示することで、シナリオ作成者は感覚的にエージェントの感情状態の程度を把握し、わかりやすく設定することができる。
【0160】
分岐イベント画面327で選択した分岐項目が分岐条件値を設定可能でない項目である場合、及び、分岐条件値入力ウィンドウで分岐条件値を選択して決定ボタンを選択した場合、図28のメインウィンドウに戻る。
戻った後のメインウィンドウのシーン展開画面305には、図35(e)に示されるように、設定した分岐条件を満たした場合のシーン(図ではシーンアイコン(4))が新規に作成され表示される。
新規に作成されたシーンアイコンでは、他のシーンアイコンと区別するため、NEWと表記される。
以上の図35で説明したように、1つの画面要素から次の画面要素に移行するための条件を設定することにより、本願発明における移行条件設定手段が形成される。
【0161】
図36は、エージェントの感情状態をシーン分岐の条件(移行条件)に設定した場合に、エージェント装置で実行されるシナリオの流れの一例を表したフローチャートである。
この場合のシナリオは、次のように作成されている。すなわち、実行途中のシーンにおいて、長期的感情要素の「友好度」の要素値が「高い」ことを移行条件として挨拶をするシーンに分岐し、「友好度」の要素値が「高い」でないことを移行条件として挨拶をしないシーンに分岐する。
さらに、短期的感情要素の「怒っている」が「ゼロでない」ことを移行条件として怒った台詞のシーンへ分岐し、「怒っている」がゼロであることを移行条件として通常のシーンに分岐し、終了する。
【0162】
エージェント装置のシナリオ駆動部(101−1)は、このシナリオの該当シーンに対するシーン処理(ステップ505−6:図18)の展開判断(ステップ505−6−12:図19)において、当該シーンの展開管理データ(図11参照)で指定されている移行条件に従って、長期的感情要素「友好度」の要素値を、キャラクタ心理部(101−4)から取得する(ステップ361)。
そして、取得した「友好度」の要素値が「高い」か否かを判断する(ステップ362)。高いか否かは、図7(b)による。
「友好度」の要素値が高い場合(ステップ362;Y)には、当該シーンの展開管理データから、次に展開するシーンとして挨拶をするシーンを決定する(ステップ363)。
一方、「友好度」の要素値が高くない場合(ステップ362;N)には展開管理データから挨拶をしないシーンを決定する(ステップ364)。
【0163】
その後、シナリオ駆動部(101−1)は、シーン終了処理(ステップ505−6−13)の後、決定したシーンに対するシーン処理(ステップ505−6)を行なう。
このシーン処理における展開判断(ステップ505−6−12)において、シナリオ駆動部(101−1)は、そのシーンで指定されている移行条件に従って、短期的感情要素の「怒っている」の要素値を取得し(ステップ365)、怒っているか否か、すなわち、要素値がゼロでないか確認する(ステップ366)。
シナリオ駆動部(101−1)は、要素値がゼロでない場合に怒っていると判断し(ステップ366、当該シーンの展開管理データから、次に展開するシーンとして怒った台詞のシーンを決定する(ステップ367)。
一方、短期的感情要素がゼロである場合に怒っていないと判断して、通常の台詞シーンを決定する(ステップ368)
以後、シナリオ駆動部(101−1)は、実行中のシナリオに従って各シーンの展開を行なう。
【0164】
図37は、シナリオの終了位置を編集する画面操作の流れを表したものである。
図28のメインウインドウのシーン展開画面305にツリー構造により表示された各シーンアイコン307の中から、シナリオを終了させたいシーンのシーンアイコン307(図37(a)ではアイコン4)を選択してアクティブ状態にする。この状態で、メインウィンドウのシナリオの終了位置作成ボタン323をクリックするとエンドID指定ウインドウ(図37(b))が表示される。
このエンドID指定ウインドウにおいて、終了位置マークの持つID番号を指定する。通常は自動割付するが、自動で割り付けると書かれたチェックボックスのチェックをはずせばエディタの操作者が自分で割り付けることができる。OKボタンをクリックするとID番号を決定し分岐イベント選択ウインドウ(図37(c))が表示される。
【0165】
分岐イベント選択ウインドウでは、新規シーン作成時(図35(b))と同様な画面が表示され、操作方法も同様にして、シナリオを終了するための分岐条件を設定する。追加条件設定も同様にできる。このウィンドウで、OKボタンをクリックするとその条件(移行条件)に決定してメインウィンドウ(d)へ戻る(移行条件設定手段)。
なお、このシナリオを終了させるための分岐条件においても、図37(c)の分岐イベント選択ウィンドウにおいて、エージェントの長期的感情要素と、短期的感情要素を指定することができる。例えば、エージェントの長期的感情要素の元気度が「低い」(0〜30)場合に終了させるように設定することができる。
メインウィンドウに戻った後のシーン展開画面305には、図37(d)に示されるように、選択したシナリオアイコン(図ではアイコン4)に続いて、新たにシナリオ終了位置433が作成され、表示される。
【0166】
図38は、エージェントの心理状態として規定されているエージェント装置の長期的感情要素10−2−3−1a及び短期的感情要素10−2−3−1a(図6参照)を変更するシナリオを作成する操作画面を表したものである。
図38(a)は、長期的感情要素を変更するシナリオを作成するためのAMMの変化編集ウィンドウを表したものである。この編集ウィンドウは、図28のメインウインドウのシーン展開画面305に表示された各シーンアイコン307の中から、そのシーンで感情を変更させたいシーンアイコン307を選択し、更に、AMMの変化の設定変更ボタン321を選択すると表示される。
このAMMの変化編集ウィンドウにおいて、AMMの各長期的感情要素に対する要素値の変更幅を設定し、決定ボタン選択すると、メインウィンドウ(図28)に戻り、AMMの変化の欄に設定した変更幅が反映される。
このシナリオが実行され該当シーンになると、エージェント装置のシナリオ駆動部(101−1)はシーン処理(ステップ505−6:図18)の各種処理の指示(ステップ505−6−5:図19)において、指示された長期的感情要素の値を変更値だけ増減する。
このように、車載装置に表示するための、キャラクタの表示内容、処理内容、及び持続的(長期的)感情要素の増減が定義された画面要素(シーン)を作成することにより、本発明の画面要素作成手段が形成される。
【0167】
図38(b)は、シナリオで短期的感情要素を変更するシナリオを作成するためのエンドプロパティ編集ウィンドウを表したものである。この編集ウィンドウは、図28のメインウインドウのシーン展開画面305に表示されたシナリオ終了位置324を選択することで表示される。
このように、短期的感情要素を変更する指示は、シナリオの終了の仕方によってそれぞれ異なる設定とすることができる。このように画面要素(シーン)の終了要素(終了位置)に、キャラクタの一時的(短期的)感情要素の増減を設定することにより、本発明の終了要素設定手段が形成される。
本実施形態のエージェント装置では、長期的感情要素が変更前の感情要素値を増減することでずつ変化するので、シーン毎に少しずつの変更が可能である。これに対して、短期的感情要素は変更前の感情要素値が反映されず新たな感情に対応した要素のみが設定され他はゼロになるので、シーン毎に変更するとエージェントの感情がめまぐるしく変化して、帰って人間らしくなくなる。このため、短期感情要素のシナリオによる変更は、シナリオ単位で設定することで、より人間らしい感情変化をするシナリオを作成することが可能になる。
図38(b)の編集ウィンドウにおいて、各短期的感情要素の下層に表示される変更の程度「少し」「普通に」「かなり」を設定する。変更の程度は、図9(b)の「小」「中」「大」に対応して分割されており、例えば、「少し」が30、「中」が70、「大」が100にそれぞれ変更値が規定されている。
【0168】
図39は、作成したシナリオをエージェント装置で使用可能な実機形式(NAV形式)のフォーマットにコンパイルするための画面操作の流れを表したものである。
メインウインドウ図39(a)において、シナリオコンパイルボタン325をクリックすると、シナリオコンパイラのウインドウ(b)が表示される。
このシナリオコンパイラのウインドウ(b)において、コンパイルしたデータを出力するファイルの名称を指定し、同時に変換するシナリオを選択(シナリオ一覧リストにチェックしたシナリオを同時に変換する)し、コンパイルボタンをクリックすると、シナリオコンパイラ(240−1−2)がデータ変換を開始する。データ変換の状況を結果表示部に表示する。
終了ボタンをクリックするとデータ変換を終了し、メインウィンドウ(a)に戻る。
【0169】
以上説明したように、画面要素、移行条件、及び終了要素を組み合わせて画面要素推移体(シナリオ)を作成する画面要素推移体作成手段が形成される。
また、以上説明したように、車両内の表示装置に表示するためのキャラクタの処理内容を設定するキャラクタ表示処理設定手段が形成される。
【0170】
以上説明したように、本実施形態のシナリオ作成装置によれば、シナリオの各シーンにおけるキャラクタの動作を指示する表示状態をキャラクタの種類によらずに共通化したので、キャラクタにとらわれずに実行できるシナリオを作成することができ、キャラクタ毎に作成していたシナリオを1個にまとめることができるため、シナリオ作成が容易になる。
【0171】
また説明した実施形態のエージェント装置によれば、エージェントの心理状態として長期的感情要素と短期的感情要素を規定し、両感情要素の両方を参照し、行動を決定することにより、より人間らしくエージェントを振舞わせることができる。
そして、シナリオ作成装置では、両感情要素をシナリオの移行条件として設定可能とし、また、シナリオにおいて両感情条件を変更可能にすることで、より人間らしく振舞うエージェントのシナリオを作成することができる。
【0172】
また、本実施形態によれば、シナリオ作成装置で作成されたシナリオデータに基づいてエージェントを自律的に起動させる(自動で登場させる)条件を満たしたかを判断する処理を定期的にもしくは特定の状態を満たしたときに実行し、条件を満たした場合にエージェントを自動で登場させることができる。
一方、本実施形態のシナリオ作成装置及びシナリオエディタによれば、プログラムの知識の有無に関係無く、シナリオエディタを持つことで特定の条件を満たしたときに自動で登場して対応してくれるエージェントのシナリオデータを容易に作成及び編集することができる。
【0173】
【発明の効果】
請求項1から請求項3に記載した車載装置によれば、キャラクタの表示内容、処理内容が規定された画面要素推移体応じて、キャラクタの感情要素値を変化させることができる。
請求項4、請求項5記載の発明によれば、車載装置で実行することでエージェント機能を実現するための、キャラクタの表示内容、処理内容を規定した画面要素推移体を容易に作成でき、処理内容により車載装置におけるキャラクタの感情要素値を変更することができる。
【図面の簡単な説明】
【図1】本発明の一実施形態におけるエージェント装置の構成を示すブロック図である。
【図2】同上、エージェント装置における各種状況検出装置の構成図である。
【図3】CPUでプログラムが実行されることにより実現されるエージェント処理部と、全体処理部との関係を表した説明図である。
【図4】エージェント処理部の構成を表した説明図である。
【図5】外部記憶媒体に集録されている情報を概念的に表した説明図である。
【図6】メンタルモデルデータの内容を概念提供に表した説明図である。
【図7】長期的感情要素を概念的に表した説明図である。
【図8】長期的感情変化条件の規定内容を例示した説明図である。
【図9】短期的感情要素を概念提供に表した説明図である。
【図10】短期的感情変化条件の規定内容を例示した説明図である。
【図11】実機形式シナリオデータの構成を表したものである。
【図12】キャラクタデータを概念的に表した説明図である。
【図13】運転者情報データを概念的に示した説明図である。
【図14】シナリオのシーンデータに基づいて表示装置に表示されるシーン画面の一例を表した説明図である。
【図15】旅館が宿泊予定者に送信した案内シナリオによるシーン画面の遷移を各シーン毎に表した画面遷移図である。
【図16】自律起動判断部によるシナリオの自律起動判断処理について表したフローチャートである。
【図17】条件判断処理の処理内容を表したフローチャートである。
【図18】シナリオ実行処理の流れの一例を表したフローチャートである。
【図19】シーン処理の流れの一例を表したフローチャートである。
【図20】シナリオ作成装置の構成図である。
【図21】シナリオ編集プログラムとデータの構成を概念的に表したものである。
【図22】データ形式の変換を概念的に表したものである。
【図23】自動起動項目として設定可能な項目を例示したものである。
【図24】シーンから次のシーンに分岐(シーン展開)をするための分岐項目(移行条件)が格納されたシーン分岐項目テーブルである。
【図25】追加条件テーブルを表したものである。
【図26】共通定義DBに格納されている、キャラクタの表示状態指示テーブルの内容の一部を概念的に表した説明図である。
【図27】共通定義DBに格納されている、キャラクタの表示状態指示テーブルの内容の他の一部を概念的に表した説明図である。
【図28】シナリオエディタを起動した場合に表示装置に表示されるメインウィンドウの構成を表したものである。
【図29】シナリオプロパティを編集する画面操作の流れを表したものである。
【図30】シナリオ開始条件のメイン編集ウィンドウから、シナリオ起動条件を編集する画面操作の流れを表したものである。
【図31】エージェント表示画面に表示したい画面構成を選択する画面操作の流れを表したものである。
【図32】キャラクタ動作(エージェントの動作)指示を編集する画面操作の流れを表したものである。
【図33】キャラクタ(エージェント)の台詞指示を編集する画面操作の流れを表したものである。
【図34】音声認識辞書を編集する画面操作の流れを表したものである。
【図35】シナリオの流れを編集する画面操作の流れを表したものである。
【図36】エージェントの感情状態をシーン分岐の条件(移行条件)に設定した場合に、エージェント装置で実行されるシナリオの流れの一例を表したフローチャートである。
【図37】シナリオの終了位置を編集する画面操作の流れを表したものである。
【図38】エージェントの心理状態として規定されているエージェント装置の長期的感情要素と短期的感情要素を変更するシナリオを作成する操作画面を表した説明図である。
【図39】作成したシナリオをナビゲーションで使用可能な実機形式のフォーマットにコンパイルするための画面操作の流れを表したものである。
【符号の説明】
1 エージェント装置装置
2 シナリオ作成装置
3 サーバ
(1) 中央処理装置
(2) 表示装置
(3) 音声出力装置
(4) 音声入力装置
(5) 入力装置
(6) 各種状況検出装置
(7)各種車載装置
(8)通信制御装置
(9)通信装置
(10)外部記憶装置
(200) 制御部
(210) 入力装置
(220) 出力装置
(230) 通信制御装置
(240) 記憶装置
(250) 記憶媒体駆動装置
(260) 入出力I/F
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an in-vehicle apparatus and a data creation apparatus, for example, an in-vehicle apparatus having an agent function of performing conversation by communication with a passenger of a vehicle and operating a device autonomously and a data creation apparatus thereof.
[0002]
[Prior art]
For example, a pet-type robot such as a dog, and an agent device that interacts with and responds to passengers by providing guidance on the operation of equipment such as a navigation device in the passenger compartment, and asking questions and making proposals according to the situation, have been developed. Then, it is mounted on a vehicle as an in-vehicle device (for example, see Patent Documents 1 and 2).
In addition, various possible states of the apparatus are assumed, and measures to be taken when each assumed state is detected are defined according to predetermined data and programs.
[0003]
[Patent Document 1]
JP-A-6-12401
[Patent Document 2]
JP 2000-186942 A
[0004]
In Patent Literature 1, a pseudo-emotional model is given to a personified artificial agent to behave like a human.
Further, in Patent Document 2, a mental state is set to an agent, an agent performs an action according to the set mental state, and the mental state is changed according to a driver's response, a running state of a vehicle, and the like.
[0005]
[Problems to be solved by the invention]
In the artificial agent of Patent Literature 1, a given emotion parameter decreases with time, and actual psychological states of a human include those whose emotion decreases with time and those whose emotion does not decrease. For example, anger, pity and the like decrease with time, but the degree of friendship and obedience with others do not decrease with time.
Further, in Patent Literature 1 and Patent Literature 2, changes in emotion parameters and psychological states are created in advance as data of programs and systems, and thus can be realized only by creating and modifying programs. For this reason, the program cannot be created or changed without knowledge of the program, and a lot of time and money are required for development.
[0006]
Therefore, a first object is to provide an in-vehicle device in which the emotion of the character changes according to the intention of the creator of the screen element transition body in which the display content and the processing content of the character are defined.
In addition, it is possible to easily create a screen element transition body that specifies the display contents of the character and the processing contents to realize the agent function by executing it on the in-vehicle device, and change the emotion element value of the character in the on-vehicle device according to the processing contents A second purpose is to make it possible.
[0007]
[Means for Solving the Problems]
According to the invention described in claim 1, a screen element in which at least one of the display content of the character, the processing content, and the increase / decrease of the continuous emotion element is defined as one screen element, and the screen element, a transition condition between the screen elements, A screen element transition storage means for storing a screen element transition body configured by combining an end element of a screen element in which an increase or decrease of a temporary emotion element of the character is defined; An emotion element storage unit for storing a value of an emotion element and a temporary emotion element representing a temporary emotion, and a screen element for executing a screen element transition body stored in the screen element transition storage unit based on various situations in the vehicle. A transition element executing means, and an emotion changing means for changing values of the persistent emotion element and the temporary emotion element stored in the emotion element storing means based on the transition of the executed screen element transition element. When the so provided in the vehicle-mounted device to achieve the first object.
In the invention described in claim 2, in the in-vehicle device according to claim 1, the emotion element changing unit increases or decreases the value of the persistent emotion element in response to the instruction of the screen element, and instructs the end element. And the value of the temporary emotion element increases or decreases as time passes.
According to a third aspect of the present invention, in the vehicle-mounted device according to the first aspect, the display content of the character includes a facial expression display and a clothing display of the character, and the facial expression display and the clothing display of the character include the temporary emotion. It is characterized by changing according to the value of the element.
[0008]
In the invention according to claim 4, a screen element creating means for creating a screen element to be displayed on the in-vehicle device, in which the display content of the character, the processing content, and the increase / decrease of the continuous emotion element are defined, A transition condition setting means for setting a transition condition for transitioning to a screen element from at least one of a time, a place, a road type, a vehicle state, a navigation operation state, and user data, and an end element of the screen element, An end element setting means for setting increase / decrease of a temporary emotion element of a character, and a screen element transition body creating means for creating a screen element transition body by combining the screen element, the transition condition and the end element are provided in the data creation device. Thus, the second object is achieved.
According to a fifth aspect of the present invention, in the data creating apparatus according to the fourth aspect, the persistent emotion element and the temporary emotion element are set as the transition condition.
[0009]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, an agent device which is a preferred embodiment of an in-vehicle device of the present invention, a scenario creation device which is a preferred embodiment of a data creation device, and a scenario editor which is a preferred embodiment of a data creation program will be described with reference to FIGS. This will be described in detail with reference to FIG.
[0010]
(1) Overview of the embodiment
In the agent device of the present embodiment, an image of an agent (character) having a predetermined appearance (a three-dimensional image such as a two-dimensional image and holography) is displayed in the vehicle. This agent device has a function of recognizing and judging surrounding conditions (including human motion and voice) from the detection result of a sensor or the like, and outputting an operation or voice according to the result. It is executed in conjunction with the appearance movement and voice. For example, a question requesting an answer (Japanese food, Western food, etc.) such as "What genre do you like?" Is determined, and the content of the user's answer to this question is determined (recognition of the answer voice, the answer selection button 54a). Then, processing corresponding to the next scene (screen element) is executed. In this way, since a request for an answer from the device and the execution of a predetermined operation are started in response to the answer, the user can be as if an agent with a pseudo personality is present in the vehicle. You will feel it. In the following description, execution of a series of functions of such an agent device will be described as an action or operation of an agent.
[0011]
In the agent device of the present embodiment, the agent performs various communications with the driver and substitutes for operations. Then, various actions (acts) autonomously performed by the agent are composed of a plurality of scenarios (screen element transition bodies). Then, scenario data standardized by a plurality of scenarios defining the contents of a series of continuous actions by the agent and autonomous start conditions (start conditions) for autonomously starting (starting) deployment of each scenario is stored. I do.
Further, the agent device stores each emotion element value of a plurality of emotion elements representing the psychological state of the agent (character), and detects the emotion element value according to the instruction of the executed scenario, the detection value of the vehicle sensor, and the detection by the navigation device. Change according to the data.
As the emotion element value, a persistent emotion element (hereinafter, a long-term emotion element (parameter)) and a temporary emotion element (hereinafter, a short-term emotion element (parameter)) are set. Long-term emotional elements include, for example, friendship, confidence, heavy purity, spirit, and morality. Element values increase and decrease according to scenario instructions and the occurrence of certain incidents (changes in vehicle conditions). Absent. On the other hand, short-term emotion elements include, for example, joy, anger, sadness, and surprise, and the element value increases and decreases according to the instruction of the scenario and occurrence of a certain case (change in vehicle situation), and decreases with time.
The element values of the long-term emotion element and the short-term emotion element can be set as transition conditions between scenes in the scenario creation device. Further, in the scenario creation device, it is possible to set so as to change each element value of the long-term emotion element and the short-term emotion element stored in the in-vehicle device together with the operation of the agent as a process in each scene.
In this way, the agent device can refer to both the long-term emotion element and the short-term emotion element and determine the action, thereby making the agent behave more humanly.
[0012]
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 minimum unit. One scene is composed of autonomous processing contents and at least one of an image and a sound of an agent.
The scenario includes one transition condition (continuous condition) for transitioning from a predetermined scene to the next scene or a plurality of transition conditions (branch condition (for transition of a scene to each state when a plurality of states occur). Condition)) and destination data for specifying a destination scene corresponding to each transition condition, the development configuration of each scene is defined.
[0013]
The user of the agent device or the like creates a unique scenario using the scenario creating device in accordance with a prescribed standard. The scenario creation device can be configured by installing a scenario editing program and data on a personal computer.
The created scenario is transmitted to the agent device via a network such as the Internet, or downloaded to the agent device, and stored in the agent device via a predetermined semiconductor memory, thereby enabling the self (third party) to store the scenario. It is possible to cause the agent to perform an action (communication and processing) as desired. Further, the created scenario can be attached to an e-mail and transmitted to the agent device.
[0014]
The first scene of the scenario to be created may be, for example, a scenario of a questioned scene requesting an answer to a human. Then, it is possible to input the independently created scenario data from outside via an input device. In this case, when the scenario data to be added to the semiconductor memory is stored, the input device corresponds to a storage medium drive that reads the contents of the semiconductor memory, and is downloaded from a specific server or the like via a network such as the Internet. If so, the communication control device corresponds. The scenario is executed according to the newly input scenario data.
[0015]
The agent device is provided with mail and browser software, downloads a scenario using browser software or the like, determines whether or not the downloaded file is scenario data that causes the agent to function, and if the downloaded data is scenario data, the agent program So that it can be used by incorporating it. Similarly, when the file is attached to an e-mail, it is determined whether or not the attached file is a scenario. If the file is a scenario, the file is incorporated into an agent system so that it can be used.
As a result, in addition to the conventional method, by using the existing communication infrastructure such as e-mail, communication using a network, etc. Scenarios can be added.
In this manner, the user can independently and easily create a scenario that allows the agent to function as he or she wants, and thus eliminates resistance to the autonomous operation of the agent device.
[0016]
Furthermore, the agent device performs processing 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, or periodically or when a specific state is satisfied. A system that can be executed when the condition is met and an agent can automatically appear when the condition is satisfied.
With this, in the scenario creation device, the data to be created is standardized, so if you have a scenario editor, it will automatically appear and respond when certain conditions are met, regardless of whether you have knowledge of the program Agent scenario data can be created and edited.
For example, when the vehicle is running at a point 2 km before the orbit where the Orvis is installed (designated by the north longitude and north latitude), the road type is Expressway, and the vehicle speed is 120 km / h or more, the vehicle automatically appears and the Orbis It is possible to change the vehicle speed condition among the conditions of the scenario that gives a warning to 100 km / h or more, or to create a scenario that is activated only on a specific day (for example, Christmas Eve) every year.
[0017]
(2) Details of the embodiment
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. 1 is a block diagram illustrating a configuration of the agent device 1 according to the present embodiment.
The agent device 1 according to the present embodiment is mounted on a vehicle and has 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 to provide route guidance and the like.
In the agent device 1 of the present embodiment, a central processing unit (1), a display device (2), a voice output device (3), a voice input device (4), an input device ( 5), various situation detection devices (6), various on-vehicle devices (7), a communication control device (8), a communication device (9), and an external storage device (10).
[0018]
The central processing unit (1) includes a CPU (1-1) for executing various arithmetic processing, a flash memory (1-2) for reading and storing programs from an 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 of the above, and a RAM (1-4) for temporarily storing data being processed by the CPU (1-1) as a working memory. ), A clock (1-5) used for measuring the passage of time for decreasing the element value of the short-term emotional element over time, and other time and time measurements, and a screen display on the display device (2). An image memory (1-7) in which image data to be used is stored, and image data is taken out from the image memory (1-7) based on a display output control signal from the CPU (1-1). An image processor (1-6) for performing processing and outputting to a display device (2); a process of converting an audio output control signal from the CPU (1-1) into an analog signal and outputting the analog signal to an audio output device (3); An audio processor (1-8) for converting an analog signal input from the audio input device (4) into a digital audio input signal, and an input device I / F ( 1-9), various input I / F sections (1-10) for receiving information from detectors for detecting various situations, and communication I / F sections (1--1) for exchanging information with other devices. 11) an external device for controlling an external storage device (10) for reading data and programs and writing data from an external storage medium (10-2) such as a CD-ROM, an IC card, a hard disk, etc. It includes 憶 device control section (1-12).
[0019]
The central processing unit (1) includes a route search process, a display guidance process necessary for route guidance, other processes necessary for the entire system, an agent process in the present embodiment (various communication between the agent and the driver, an operation agency operation). In other words, a process of judging a situation and performing autonomously according to the result is performed.
The program (program reading means) for performing the updating 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 programs in the present embodiment, may be stored in a CD-ROM or the like which is the external storage medium (10-2), or may be a part of those programs. Alternatively, all of them may be stored in the ROM (1-3) or the flash memory (1-2) of the main unit.
The data and programs stored in the external storage medium (10-2) are input to the central processing unit (1) as external signals and subjected to arithmetic processing, thereby realizing various agent functions and navigation functions. 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 activation condition (autonomous activation condition) is satisfied. are doing.
[0020]
The display device (2) displays a road map and various image information for route guidance by the processing of the central processing unit (1), and displays various behaviors of the character (moving images) and screen element transitions composed of screen configuration parts. The body (scenario) is displayed. Various display devices such as a liquid crystal display device and a CRT are used as 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 a question for obtaining driver information. Is output. The audio output device (3) is composed of a plurality of speakers arranged inside the vehicle. These may also be used as audio speakers.
[0021]
For the voice input device (4), a dedicated microphone having directivity may be used in order to accurately collect the voice of the driver. The voice recognition processing is executed by the CPU (1-1) using the digital voice input signal obtained by converting the analog signal input from the voice input device (4).
Examples of the voice to be subjected to voice recognition include an input voice of a destination in a navigation process, a conversation of a driver with an agent (including a response by the driver), and the like. Function as a voice input means for inputting the input.
Note that an instruction for voice recognition is set in each scene data as to whether or not the scene requires voice recognition. Then, a dictionary for recognizing the voice to be subjected to voice recognition is specified in the scene data of the scene for which the voice recognition instruction is set.
In some scenarios, an instruction to change the element value of the emotional element of the agent is specified in accordance with the result of the voice recognition (response result of the driver).
[0022]
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. Further, the input device (5) also functions as one response means for the driver to respond to an inquiry from the agent 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.
Further, a remote control using infrared rays or the like and a receiving unit for receiving various signals transmitted from the remote control may be provided.
Further, the voice recognition using the voice input device (4) may be used instead of the input device.
[0023]
FIG. 2 is a block diagram showing the configuration of the various situation detection devices (6).
The various situation detection devices constitute situation detection means for detecting various situations in the vehicle.
Various situation detecting devices (6) include a current position detecting device (6-1), a traffic situation information receiving device (6-2), and a brake detector (6-3) for detecting a situation such as a driving operation. , A side brake (parking brake) detector (6-4), an accelerator opening detector (6-5), an A / T shift position detector (6-6), and a 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, a detecting unit is formed by detecting various situations and conditions.
Further, the various situation detecting device (6) includes a vehicle speed sensor (6-11) for detecting the speed (vehicle speed information) of the vehicle, and determines whether the vehicle is traveling based on whether the vehicle speed detected by the vehicle speed sensor is 0 or not. By judging whether or not the vehicle is running, a traveling judgment means is formed.
[0024]
The current position detection device (6-1) is for detecting an absolute position (depending on latitude and longitude) of the vehicle, and is a GPS (Global Positioning System) receiving device that measures the position of the vehicle using an artificial satellite. (6-1-1), a data transmitting / receiving device (6-1-2) that receives a GPS correction signal, an azimuth sensor (6-1-3), and a steering angle sensor (6-1-4). , A distance sensor (6-1-5) or the like is used.
The distance sensor (6-1-5) and the steering angle sensor (6-1-4) also function as driving operation status detecting means.
[0025]
The traffic condition information receiving device (6-2) is for detecting a traffic congestion condition or the like of a road.
The traffic information receiving device (6-2) includes a beacon receiving device (6-2-1) for receiving information from beacons arranged on a road and a device (6-2-2) for receiving information using FM broadcast radio waves. 2) and the like are used, and congestion information, traffic regulation information, and the like are received from the traffic information center using these.
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.
[0026]
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 depresses the accelerator pedal.
The shift position detector (6-6) detects whether the driver is operating the A / T shift lever, and detects the shift lever position.
The wiper detector (6-7) detects whether the driver is using the wiper.
[0027]
The direction indicator detector (6-8) detects whether the driver is operating the direction indicator and whether the direction indicator is blinking.
The hazard detector (6-9) detects whether or not the driver is using the hazard.
An ignition detector (6-10) detects whether or not an ignition switch is turned on.
A distance sensor (6-1-5) can be used for detecting the vehicle speed.
The various situation detecting device (6) also serves as a device operation situation detecting means, in addition to these, a light detection sensor that detects an operation situation of lamps such as a head lamp and a room lamp, and detects a driver's seat belt attaching / detaching operation. A seat belt detection sensor and other sensors are provided.
[0028]
The GPS receiving device (6-1-1), the data transmitting / receiving device (6-1-2), and the traffic information receiving device (6-2) correspond to the communication device I / F unit (1-11) of FIG. Others are connected to various input I / F units (1-10).
[0029]
In FIG. 1, a communication control device (8) can be connected to the communication device I / F (1-11). The communication control device (8) is connected to a communication device (9) (such as a mobile phone including various wireless communication devices).
Using these, in addition to telephone line communication, for example, communication with an information providing station that provides karaoke data used for communication karaoke in a car, communication with an information base station that provides traffic information, and agent processing It is also possible to enable communication with an information providing station that provides scenario data to be used.
[0030]
In the present embodiment, the central processing unit (1) can receive an e-mail attached with a scenario via the communication control device (8).
Also, 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). You can download the data including.
The communication control device (8) may be integrated with the communication device (9).
[0031]
Further, the central processing unit (1) receives the operation status of another on-vehicle device (7) by performing in-vehicle communication through the communication I / F unit (1-11), and performs various controls on the on-vehicle device. It has become.
For example, the central processing unit (1) controls the air conditioner device such as raising or lowering the set temperature of the air conditioner device, which is various in-vehicle devices (7). Further, the driver controls the audio device from the audio device such that the output volume of an audio device such as a radio, a CD player, a cassette player, or the like is increased or decreased. The control for these in-vehicle devices is performed in conjunction with the execution of the scenario when the control for the in-vehicle devices is specified in the scenario.
[0032]
The external storage device (10) includes an external storage medium drive (10-1) and the 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 drive (10-1) is used.
[0033]
The system may have a plurality of external storage devices (10). For example, driver information data (10-2-3-6), learning item data and response data (10-2-3-7), which are collected personal information, can be easily carried with an IC card or a flexible disk. An example is conceivable in which a DVD-ROM is used for other data. In this way, when driving another vehicle, it is possible to read and use data from the IC card in which these are stored, and to communicate with an agent who has learned the situation in which the user has responded in the past. Become. That is, it is possible to cause an agent having learning content unique to each driver to appear in the vehicle instead of an agent for each vehicle.
Further, even in the case where the image data (10-2-3-4) used in the scenario data + scenario is stored in a DVD-ROM as an example, it is possible to add the data 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) from the outside, the screen element transition storage means of the present invention is formed.
[0034]
The CPU (1-1) is a program (10-2-1) for realizing various agent functions and navigation functions, agent data (10-2-3) and navigation data (10-2-2) used for arithmetic processing. Is stored (installed) in another external storage device (for example, a hard disk device or the like) from the DVD-ROM or IC card shown in the above configuration example, and the necessary programs and the like are stored in the flash memory (1-2) from this storage device. The data may be read (loaded) and executed, or data necessary for the arithmetic processing may be read from this storage device into the RAM (1-4) (loaded) and executed.
[0035]
Next, the configuration of a program executed by the CPU (1-1) including the program according to the present invention will be described.
FIG. 3 shows the relationship between the agent processing unit (101) realized by executing a program on the CPU (1-1) and the overall processing unit (102).
In the present embodiment, a navigation device with an agent function is realized by adding an agent processing unit (101) for realizing an agent function to the overall processing unit (102) for realizing various navigation functions.
[0036]
The agent processing unit (101) and the overall processing unit (102) each have an I / F unit for exchanging processing data with each other, and can acquire processing data from 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 the data to the overall processing unit (102). It has become.
The overall processing unit (102) performs a route search based on the acquired destination data, and performs route guidance based on the created travel route data. In this route guidance processing, when guidance such as a course change direction is provided by an image or voice, a scenario in which data necessary for guidance is supplied from the overall processing unit (102) to the agent processing unit (101) to provide a traveling route guidance. It is also possible for the agent to provide guidance in accordance with the scenario data obtained by converting the data into the data.
[0037]
FIG. 4 shows a 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 / It comprises 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).
The scenario driving unit (101-1) reads the scenario data (10-2-3-4), and instructs each processing unit based on the scenario data using message communication or the like (the function provided by each processing unit is provided). use. The scenario driving unit (101-1) performs central processing of an agent processing unit, such as managing execution of a scenario and providing various agent functions to a driver.
[0038]
The autonomous activation determining unit (101-2) holds the autonomous activation condition data of each scenario in the scenario data (10-2-3-4), and periodically executes the autonomous activation condition data output from the agent OS unit (101-8). According to the start determination instruction, various conditions and various conditions such as time, a place where the vehicle is located, a road type such as a general road and an expressway, a vehicle state such as running or stopped, an operation state such as operating a navigation device and guiding, and the like. Comparison and judgment.
When the conditions match, the autonomous activation determination unit (101-2) issues an instruction to the scenario driving unit (101-1) to request execution of a scenario whose conditions match.
Various conditions for comparison with the autonomous activation condition are obtained from the agent OS unit (101-8) and the learning unit (101-3).
[0039]
The learning unit (101-3) in FIG. 4 uses the driver information data (10-2-3-6) and the items (execution results and execution histories) obtained by the driver's selection and response in communication with the agent. It is stored as learning item data and response data (10-2-3-7). The learning unit (101-3) also obtains an end ID indicating a method of ending when the scenario ends in a different scene, and stores it as response data (10-2-3-7). These acquired items are stored in the RAM (1-4), but can also be output to an external storage medium (10-2) such as an IC card.
The learning unit (101-3) acquires a change in the situation from the agent OS unit (101-8) and records information on 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 situations such as a riding time zone and a riding frequency by the driver. The stored information is provided to, for example, the scenario driving unit (101-1), and is used for giving a change to the development of the scenario, or used for comparing autonomous activation determination.
In addition, although the learning unit (101-3) in the present embodiment also serves as holding and referencing the driver information, the learning unit (101-3) may be independent as the driver information unit.
[0040]
The character psychology unit (101-4) obtains the current situation managed by the agent OS unit (101-8), and sets the long-term emotion change condition and the short-term emotion change condition (FIGS. 8 and 10) described later. Based on this, the psychological state of the character is autonomously changed between a long-term emotion element and a short-term emotion element.
The character psychology unit (101-4) obtains a mental model change instruction (an instruction to change a character's emotion element value) in a scenario from the agent OS (101-8), and acquires a long-term emotion element according to the change instruction. Change short-term emotional elements.
[0041]
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 accordance with an instruction from the scenario driving unit (101-1). Further, in accordance with an instruction from the scenario driving unit (101-1), a control signal for displaying various actions (actions) of the character corresponding to the display state based on the scene data is also created.
In the present 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 information is transmitted to the image processor (1-6) through the processing unit for giving an instruction to the image processor, subjected to image processing, and displayed on the display device (2). In 8), a processing unit for giving an instruction to the image processor may be provided.
[0042]
The drawing / voice output unit (101-5) also generates a control signal for outputting a dialog when the agent communicates with the driver in accordance with an instruction from the scenario driving unit (101-1).
In the present 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 transmitted to the voice processor in the overall processing unit (102). The audio output control signal is transmitted to the audio processor (1-8) through a processing unit for giving an instruction, is converted into an analog signal, and is output to the audio output device (3). The agent OS unit (101-8) may have a processing unit for giving an instruction to the voice processor.
Note that the drawing / voice output unit (101-5) of the present embodiment has a function of drawing a motion of a character in each scene and a voice output function, but a drawing unit (drawing function unit) and a voice output unit (voice). Output function unit) may be configured separately.
[0043]
The speech recognition unit (101-7) issues a control signal for causing the speech recognition processing unit in the overall processing unit (102) to create a speech recognition dictionary in accordance with an instruction from the scenario driving unit (101-1). Further, the voice recognition unit (101-7) also issues a control signal for starting or stopping the voice recognition process in accordance with an instruction from the scenario driving unit (101-1).
In the present embodiment, these are transmitted to the agent OS unit (101-8) and transmitted from the external I / F unit (101-9) to the voice recognition processing unit in the overall processing unit (102).
The voice recognition processing unit transmits an instruction to start and stop the voice recognition processing to the voice processor (1-8), and the voice processor (1-8) transmits the 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 obtains the digital voice input signal, and based on the digital voice input signal, the voice recognition processing unit performs recognition processing. To the voice recognition unit (101-7). The speech recognition unit (101-7) notifies the scenario driving unit (101-1) of the speech recognition result.
With the above configuration, a voice recognition unit that recognizes voice is formed.
[0044]
The agent OS unit (101-8) manages the current situation by acquiring a change in the situation (including addition of a scenario) such as time, place, and various inputs, and sends a message as necessary to the change in the situation. Each processing unit such as the character psychology unit (101-4) is notified by communication. The status change is supplied from the overall processing unit (102) through the external I / F unit (101-9), or obtained by inquiring.
The information to be obtained is obtained by fetching the detection results and the like by the various situation detecting device (6) from various input I / F units (1-10) and the communication I / F unit (1-11) and RAM (1-4). It is written in. The contents input using the input device (5) are also supplied from the overall processing unit (102) through the external I / F unit (101-9), and the contents are transmitted to each processing unit by message communication as necessary. Notice.
The agent OS unit (101-8) has various other libraries, and provides message communication for exchanging data between the processing units, provides the current time, and manages the memory. It provides a memory necessary for each processing unit to perform processing, and provides a function of reading and writing data from an external storage medium.
[0045]
The agent OS unit (101-8) performs processing relating to time by using time information obtained from the clock (1-5), and serves as a timer to notify the elapse of a specific time. That is, the agent OS unit (101-8) functions as a timer, and counts the timer set time set in each scene of the scenario. The start of the timer and the timer setting time to be counted are notified from the scenario driving unit (101-1), and when the timer setting time elapses, the agent OS unit (101-8) notifies the scenario driving unit (101-1) that the setting time has elapsed. Notify -1).
Also, the agent OS unit (101-8) starts time measurement in response to a short-term change in the emotional element from the character psychology unit (101-4), and the character psychology unit elapses every predetermined time (for example, three minutes). The time information is notified to the section (101-4). The character psychology unit (101-4) decreases the value of the short-term emotion element by a predetermined value (for example, “3”) each time the time-lapse information is notified, and counts the time when the element value becomes “0”. The end instruction is notified to the agent OS unit (101-8).
[0046]
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 should be as short as possible within a range in which the autonomous start-up determination processing that is periodically performed according to the autonomous start-up determination instruction that is periodically issued does not affect other processing of the entire central processing unit (1). Desirably, in the present embodiment, the interval is set to 5 seconds. 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. The case where the change in the situation is large is, for example, when the driver sets a destination, when the vehicle deviates from the guidance route, when scenario data is added, or when the scenario data is deleted. The corresponding items are defined in advance and stored in the RAM (1-4) or the like.
[0047]
The external I / F unit (101-9) is an interface between the agent processing unit (101) and the overall processing unit (102) (the overall processing unit (102) has an agent I / F as a receiver). Department exists). It acquires various information such as navigation information used in the agent processing, and transmits a control signal from the agent processing unit to the overall processing unit to control navigation.
The drawing instruction to the image processor (1-6) and the sound output to the sound processor (1-8), which are notified and notified to the overall processing unit (102) through the external I / F unit (101-9). The agent processing unit is provided with a processing unit that performs instructions to other processors and the I / F unit, such as obtaining instructions and input information from the input device I / F unit (1-9). Or may be done.
[0048]
An overall processing unit (102) in FIG. 3 includes a map drawing unit, a route search unit, a route guidance unit, a current position calculation unit, a destination setting operation control unit, and the like, which are not shown, and performs an navigation signal output process. And an OS unit such as a program for performing display output control necessary for map display and route guidance and voice output control required for voice guidance.
The overall processing unit (102) also includes a voice recognition processing unit that performs voice recognition and a processing unit that converts text data into voice data. The processing unit for adding a browser function or a mail function is added to the overall processing unit (102).
Alternatively, the agent processing unit (101) may have a browser function or a mail function.
In the present embodiment, an extended function for executing the agent process is added to the overall processing unit (102). This extended function includes, for example, means for detecting the type of a traveling road (expressway, national road, etc.) from the road data in the navigation data and the current position, and the curve condition of the traveling road (before the curve, There are means for detecting the end of a curve.
These detected situations are transmitted to the agent processing unit, and are used, for example, to change the emotional elements of the agent.
[0049]
Next, a data configuration (including a program) stored in the external storage medium (10-2) will be described.
FIG. 5 conceptually shows information collected on the external storage medium (10-2).
The external storage medium (10-2) has 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) includes various data necessary for map drawing, route search, route guidance, destination setting operation, and the like. Examples include map data (road map, house map, building shape map, etc.) used for route guidance, intersection data, node data, road data, photograph data, registered point data, destination point data, guide road data, It consists of a file of detailed destination data, destination reading data, telephone number data, address data, and other data, and stores all data necessary for the navigation device. Also, communication area data and the like are stored as needed.
[0050]
The 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).
[0051]
FIG. 6 shows the content of the mental model data (10-2-3-1) serving as a concept provision, which functions as the emotion element storage means of the present invention, and shows a long-term emotion element 10-2-3-1a. , A long-term emotion change condition 10-2-3-1b, a short-term emotion element 10-2-3-1c, and a short-term emotion change condition 10-2-3-1d.
The long-term emotion element 10-2-3-1a and the short-term emotion element 10-2-3-1c store element values representing the mental state of the character. The long-term emotion change condition 10-2-3-1b and the short-term emotion change condition 10-2-3-1d are values of each emotion element based on a detection value of the various situation detection device (6) and data by the navigation function. Are stored, and the change value thereof is stored.
The emotion value of the long-term emotion element 10-2-3-1a and the emotion element value of the long-term emotion change condition 10-2-3-1b are determined by the change value corresponding to the change condition and the value of the emotion element change instruction according to the scenario. Is changed.
[0052]
FIG. 7 conceptually illustrates the long-term emotion element 10-2-3-1a.
As shown in FIG. 7A, the long-term emotion element 10-2-3-1a is represented by each of friendship, obedience, self-confidence, morality, and spirit. For example, it is represented by a value of 0 to 100. In the present embodiment, five long-term emotion elements are employed, but other predetermined elements may be added or omitted by adding other elements.
The value of each element varies independently from 0 to 100.
The long-term emotion element 10-2-3-1a satisfies the change condition shown in FIG. 8 and receives an instruction of a short-term emotion change (see FIG. 38A) in the executed scenario. , Change (update) by the corresponding value.
[0053]
The long-term emotion element 10-2-3-1a has a reference value of 50 for each emotion element. A higher value indicates that the state is strong, and a lower value indicates that the state is weak.
Each element value is divided into three stages of “low”, “normal”, and “high” as shown in FIG. 7B in accordance with the branch condition (transition condition) according to the scenario. In addition, it is good also as five steps (width of each element value = 25) which added "extremely low" and "extremely high". The range of each divided element may be changed by the user of the agent device.
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 agent speaks well when the conditions for speaking cheerfully are both high friendliness and cheerfulness, humanity can be expressed more.
[0054]
FIG. 8 illustrates the contents of the regulation of the long-term emotion change condition 10-2-3-1-1b.
In the long-term emotion change condition 10-2-3-1b, a description of a condition due to a state or change such as a navigation function and a vehicle state (item column) and a change value of an emotion element changing in that case are defined. I have.
As shown in FIG. 8, the description of the condition is described in the item column, but the part before “the emotion of the agent changes” corresponds to the condition. For example, no. In the case of 1, "when the vehicle suddenly accelerates, the emotion of the agent changes", the first half "when the vehicle rapidly accelerates" is a condition.
Then, when this condition is satisfied, the value specified in each corresponding long-term emotional element (friendship, confidence, heavy purity, energy, morality) on the right changes the emotional element value. Value.
That is, No. In the case of 1, if it is, the friendliness and the morality decrease by one each. When the change value of the emotion element is a negative value, the emotion element is decreased, and when the change value is a positive value, the emotion element is increased. In the drawings, cases of −1 and 1 are illustrated, but depending on conditions, two or more increases and decreases may be defined.
Since the change value of each long-term emotion element defined in the long-term emotion change condition 10-2-3-1b changes long-term emotion, the change value of the long-term emotion change is several percent or less of the entire change range. It is desirable to change with the value.
[0055]
FIG. 9 shows the short-term emotion element 10-2-3-1c in the concept provision.
As shown in FIG. 9, the short-term emotion element includes four elements: joy, anger, sadness, and surprise. Although the number of short-term emotion 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 emotion element 10-2-3-1c changes from 0 to 100, and only one of the elements takes a value larger than 0. That is, when a certain emotion element newly changes from 0 to a predetermined value (for example, 50), other emotion elements having a value before the change change to 0.
In this way, the short-term emotion element is the agent's emotion in the short term at the time corresponding to a certain situation or state, so it does not affect or accumulate the previous value like the long-term emotion element , Only one element takes a value. That is, by preventing a plurality of short-term emotions from being arranged at the same time, a more human-like feeling can be expressed.
However, other changes may be defined. For example, when the element A attempts to change 50, the element A changes to 50 if the other element B before the change is 50 or less, but the element A changes if the element B before the change is larger than 5. Not to be. In this case, of the value of the element B before the change and the value of the element A to be changed, the value may be changed to a value obtained by subtracting the smaller value that is larger than the larger value. For example, if element A is 50 and element B is 80, element A remains 0 and element B decreases to 30. If element A is 90 and element B is 40, element A changes to 50 and element B changes to 0.
[0056]
The short-term emotion element 10-2-3-1c satisfies the change condition shown in FIG. 10 and receives a short-term emotion change instruction (see FIG. 38B) in the scenario being executed. , Change (update) by the corresponding value.
Further, the value of the newly changed short-term emotion element decreases over time and eventually becomes zero. For example, if the time during which the emotion lasts is defined as a maximum of one hour, the time required for the value to decrease from the maximum value of 100 to the minimum value of 0 is one hour, so the value decreases by five every three minutes. . However, the setting may be changed so as to change by a predetermined value n in a predetermined time t unit.
In this way, the value of each emotion element of the short-term emotion element 10-2-3-1c corresponds to the human emotion that the emotional exaggeration occurs momentarily and subsides with time, Therefore, it changes at a large value up to 100%, and gradually decreases by a predetermined value n at a predetermined time t interval. Thereby, the short-term change of the agent can be made closer to a human.
[0057]
When there is one of the emotional elements of the short-term emotional elements 10-2-3-1c whose value is larger than 0 (for example, joy), the agent's short-term emotion becomes the element of that value (joy). If all the short-term emotion elements are all 0, the short-term emotion of the agent is “normal”.
The reference value of each emotion element of the short-term emotion element 10-2-3-1c is 0, and the higher the value, the stronger the state.
As shown in FIG. 9B, the short-term emotion element 10-2-3-1c is divided into three stages of “small”, “medium”, and “large” in accordance with the branch condition (transition condition) according to the scenario. Has been split. In addition, it is good also as five steps (width of each element value = 25) which added "very small" and "very large". The range of each divided element may be changed by the user of the agent device.
[0058]
FIG. 10 exemplifies the prescribed contents of the short-term emotion change condition 10-2-3-1d.
The short-term emotion change condition 10-2-3-1d includes a description (change column) of a change condition by a state or change such as a navigation function, a vehicle state, and a scenario state (including an operation). A change value of a changing emotion element is defined.
As shown in FIG. 10, the description of the condition is described in the item column, but the part before “the emotion of the agent changes” corresponds to the condition. For example, no. In the case of No. 5, “If the scenario is forcibly terminated, the emotion of the agent changes”, the first half “When the scenario is forcibly terminated” is a condition.
Then, when this condition is satisfied, the value specified in each corresponding short-term emotion element (joy, anger, sadness, surprise) on the right side is a value that changes the emotion element value.
That is, No. In the case of 5, the sorrow is reduced by 50.
[0059]
The change value of the short-term emotion element defined in the short-term emotion change condition 10-2-3-1d does not take a negative value unlike the long-term emotion change condition, but is a positive value. Further, as described above, a large value (30, 50, 80, 100 in the present embodiment) up to 100% is defined for the entire change range (0 to 100 in the present embodiment).
[0060]
As described above, by changing (changing) the values of the continuous (long-term) emotion element and the temporary (short-term) emotion element stored in the emotion element storage means, the emotion change means of the present invention is formed. You.
[0061]
In FIG. 5, recommendation proposal data (10-2-3-3) is used when a restaurant or the like is proposed to the driver as recommendation information. The recommended suggestion data (10-2-3-3) includes driver name, reading data, restaurant genre data, atmosphere data, fee data, point data,. Based on 3-6) and the knowledge data (10-2-3-2), a restaurant recommended to the driver is searched and suggested. There are sightseeing spots and rest places besides restaurants.
The knowledge data (10-2-3-2) is based on statistical data, and is based on age, gender, preference based on the presence or absence of a passenger, selection based on location, specialty based on location, time and time. Is a data of the tendency of the selection. There are various selection tendencies such as a tendency to select a restaurant, a tendency to select a sightseeing spot, a tendency to select a resting place, and so on.
[0062]
Scenario data (10-2-3-4) provides the agent's actions and questions according to the situation when the agent communicates with the driver, and provides information from the agent autonomously in any situation. Are performed, and a running execution condition that defines how to handle the execution of the scenario with respect to the running of the vehicle is defined.
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. 11 shows the configuration of actual machine type scenario data.
The scenario data (10-2-3-4) includes a plurality of scenarios, and includes data for managing the scenarios and data indicating the contents of each scenario.
The management data of the acquisition scenario includes information such as the expiration date of the scenario data, the date of creation, the creator, and the like, and data (scenario number, The scenario name, priority (priority)), the autonomous start condition data of the scenario recorded in the scenario file, and the driver manually using the input device (5) or the like in the scenario recorded in the scenario file. Lists scenario list data that can be started.
[0064]
The data indicating the content of each scenario includes management data for managing each scenario and scene data indicating the content of each scene constituting the scenario.
The data that manages each scenario (“management data for this scenario”) includes information about the scenario, text information for creating a speech recognition dictionary used in this scenario, and the entire scene data that makes up the scenario. The data for management is described.
[0065]
The scenario management data stores data for determining whether or not to perform standby processing. The standby process is a process of developing a standby scene that waits in a standby state in the case of automatic startup.
The standby state is a state in which the agent notifies the execution of the scenario and confirms whether or not to execute the scenario, and waits for the execution of the scenario until the user is ready for communication with the agent. For example, a small agent appears in the upper right corner of the map, talks to the user, "If you touch me, I will recommend a recommended meal place." When the user touches the agent, the mode is changed to the communication mode, and a scenario is developed that says "There is a XX shop 2 km ahead in the direction of travel. Tonkatsu shop has a reputation for taste. Would you like to stop here?" You.
The user can select whether or not to shift to the standby state when executing the scenario.
[0066]
The scene data includes data for managing the scene, screen configuration data, character motion data, various types of processing data, and development management data.
The data for managing the scene includes information on the scene and data for managing each data section belonging to the scene data.
The screen configuration data describes data (size, display position, etc.) of each part of the screen configuration displayed on the display device (2) in this scene.
In the character motion data, instruction data of an operation performed by the character in this scene and instruction data relating to the contents to be spoken are described. In the instruction data of the action, the instruction data is described as one of two types, that is, an instruction directly by the expression means of each character in the scenario data and an instruction in a state where the character is to be expressed.
Various processing data includes information for controlling (performing processing) external devices in this scene, information for controlling navigation, instructions for executing other scenarios, timer setting information, and a mental model for character psychology. Information for changing the emotion element value is described.
[0067]
The external device includes devices connected to the communication I / F unit (1-11), and includes, for example, a communication control device. The contents to be controlled include a process of making a call to a specific telephone number and a process of disconnecting a call.
The navigation control content includes, for example, setting this point as a destination.
The instruction to change the emotional element value of the mental model includes, for example, decreasing the "friendship degree" of the long-term emotional element by 1 and setting the "joy" of the short-term emotional element to 80.
[0068]
The deployment management data describes information (transition conditions, etc.) such as whether to end the scenario, what the next scene is, or not to deploy anything if any event occurs in this scene. ing.
The event referred to here indicates an action defined in order to advance the development of the scene to the next. For example, when the dialogue of the character has ended, the set time has elapsed, or the driver has selected any answer to the question asked in this scene (eg, "Yes" or "Yes" to the question "Yes" or "No") And so on).
In addition to this event, the development can be changed depending on the learning result.
For example, it can be used when the driver selects "Yes" to the question and the total number of uses is less than 10 times.
In addition to the learning result, the development can be changed using the date and time, the mental state of the character using the mental model, driver information, and the like.
[0069]
FIG. 12 conceptually shows the contents of the character data.
The 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 of the characters A, B,.
[0070]
The character image data 102351 stores a still image indicating a state of a character displayed in each scene specified by a scenario, a moving image (animation) indicating an action, and the like. For example, a moving image in which the character bows, a nodding moving image, a moving image of raising the right hand, and the like are stored.
Each of these still images and moving images is provided with an image code.
The character image data 102351 functions as an image storage unit.
The character (the appearance of the agent) used as the character image data 102351 does not need to have a human (male, female) appearance. For example, the non-human type agent may be the appearance of the animal itself, the appearance of a robot, or the appearance of a specific character.
In addition, the age of the agent does not need to be constant, and as a learning function of the agent, the appearance of the child is first changed to the appearance of a child, and the appearance changes over time (change to the appearance of an adult, May be changed).
Further, it is also possible to change the expression and clothes of the character according to the value of the short-term emotion element described above. By doing so, for example, when the short-term emotion is an “angry” value, the expression of the character also becomes an angry expression, and the character can behave more like a human.
[0071]
Character voice data 102352 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 a question for collecting driver information. As an example, "Hello", "I Regards", "And I", and the like are stored.
Each of these voices is provided with a voice code.
[0072]
The character image selection data 102353 is a conversion table in which image data representing an expression method (operation) of each character is assigned to each display state.
The scenario data (10-2-3-4) defines the contents of each scene by a common display state that does not depend on the type of character.
For this reason, the character image selection data 102353 is a conversion table for converting the display state of the commonly expressed scene into image data for displaying the details of individual actions for the character selected by the user. Function as
[0073]
FIG. 13 conceptually shows driver information data.
The driver information data (10-2-3-6) is information on the driver, and is used to make the communication of the agent more suitable for the driver's wishes, hobbies, and preferences. This driver information data is also used as a condition for starting a scenario and a condition for shifting a scene.
The driver information data (10-2-3-6) includes driver ID (identification information), name, age, gender, marriage (married or unmarried), child for storing information for each driver. Driver basic data including presence / absence, number of people, and age, and hobby / preference data are stored.
The hobby / taste data includes large items such as sports, eating and drinking, and traveling, and detailed items included in the concept of these large items. For example, large item sports store data such as whether or not they like baseball, whether or not they like soccer, and whether or not they like golf.
The driver information data (10-2-3-6) is created for each driver when a plurality of drivers drive the vehicle. Then, the driver is specified and the corresponding driver information is used.
[0074]
In FIG. 5, the learning item data and the response data (10-2-3-7) are data for storing the result of learning by the agent based on the driver's selection and response in communication with the agent.
Accordingly, the learning item data and the response data (10-2-3-7) are stored and updated (learned) for each driver.
For example, the result of the previous selection, the date and time of the last use, the total number of times of use, and the like are stored as the use state of the scenario.
According to this learning content, for example, in a scenario in which a greeting is given each time the navigation power is turned on, if the last use is less than 5 minutes, it will respond as "I met you just before" or conversely, more than one month If they are open, they respond to "It's been a long time".
[0075]
FIG. 14 illustrates an example of a scene screen displayed on the display device (2) based on scene data of a scenario.
The scene screen shown in FIG. 14 is a scene screen (scene number 0x0001) of a question scenario in which a question is asked from the driver in order to acquire a hobby preference (meal) which is driver information that has not been input.
As shown in FIG. 14, the scene screen includes an agent display screen 51 on which an image (still image, moving 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 And a scene display screen 54 on which image data (images of actual image data, answer selection buttons, etc.) specific to each scene are displayed.
The agent displayed on the agent display screen 51 is a character selected by the user or a default character.
[0076]
When the scenario driving unit (101-1) of the agent processing unit (101) starts the question scenario of hobbies and preferences (meals), first, the screen configuration data of the scene specified by the scene header is converted into scenario data + image (10- The scene screen read out from 2-3-4) is displayed on the display device (2), and a question voice corresponding to the question sentence is output from the voice output device (3).
On the scene screen of the question scenario of FIG. 14A, “Which genre of food do you like?” Is displayed on the balloon screen 52. Note that a sound corresponding to the display of the balloon screen 52 is output from the sound output device (3).
Further, the scene display screen 54 in the scene screen of FIG. 14A displays “Japanese food”, “Western food”, “Chinese food”, and “particularly none” of the four answer selection buttons 54a.
[0077]
A plurality of scenes corresponding to the driver's answer branch off and follow the scene of the question to the driver. The branch of each scene and the specification of the subsequent scene are determined according to the driver's answer in accordance with 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 "I like Japanese food" is displayed on the balloon screen, and in the scene of the Japanese food after branching, The actual image 54b of the Japanese food read from the scenario data is displayed on the scene display screen 54. The scenario driver (101-1) stores the driver's answer, for example, "Japanese food" as driver information in the hobby / preference data of the driver information 307.
In this way, by sequentially displaying and outputting each scene image and sound specified in the scenario up to the last scene, the action of the agent in one scenario is completed.
[0078]
FIG. 15 shows the transition of the scene screen according to the guide scenario transmitted by 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 branches to 0x0004 and 0x0006 according to the user's selection result for the scene screen (c). Although the branch is not made in the example of FIG. 15, the scene screen may be made to branch so that the dish according to the type of the selected dish is displayed on the scene display screen 54 also 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.
[0079]
Hereinafter, each action of the agent according to the reservation scenario will be described with reference to FIG.
The operations of the agents and the display of the screens described below corresponding to the respective scene screens are all displayed according to the data, images, and instructions stored in the scenario data of the external scenario. Although described as the operation of the agent, the scenario driving unit (101-1) of the agent processing unit (101) actually performs the processing.
[0080]
When the setting not to use the standby processing is selected by the user, the reservation scenario is activated and the scene is developed from the scene of number 0x0001.
On the other hand, when the setting to use the standby processing is selected, the standby scene (s) in FIG. 15 is developed.
In the example displayed in FIG. 15, a screen immediately before performing the standby process, that is, a map screen for route guidance by the navigation function is displayed. The agent is displayed on the display screen (2) having the touch panel function in a small size at the upper right on the screen immediately before this. (Character display means)
Then, the user is notified that the scenario is to be executed, for example, “If you touch me, I will give you a guide to the reserved inn” and ask for permission to execute (confirmation of execution). If the voice data of the agent is specified 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 execution permission, a normal scenario is sequentially developed from the very first scene.
In the standby scene, when a device operation such as navigation or a predetermined time elapses without displaying OK intention, the execution of the scenario is terminated by a timer notification.
[0081]
In the case where an OK intention is displayed in the standby scene, or when the standby process is not selected, the reservation scenario is activated.
That is, the scene screen of the number 0x0001 is first 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 by voice. The content of the greeting by voice is the same as the text displayed on the balloon screen 52.
Greeting by voice is performed by an agent on behalf of the inn, but by displaying a photographic image of a landlady at the inn on the scene display screen 54, it is expressed that the greeting is from the inn. The image of the landlady is an image received and added as a part of the external scenario, and is stored as actual image data of the scenario data (10-2-3-4).
The instruction for the operation of the agent follows the instruction stored in the character operation instruction data.
When the greeting by the agent ends, the state transits to the next scene 0x002.
[0082]
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 open-air bath, and the specialty of the inn (it is sold here) is explained by the agent and the display of the balloon screen 52.
When the talk of the agent is finished, the process transits to the next scene 0x0003, and displays the image of the meal of the day (image of kaiseki cuisine) on the scene display screen 54, and the agent explains the cuisine and whether or not this cuisine is acceptable. Question.
It is assumed that timer setting time and timer setting condition “set only during traveling” are defined in the scene data of scene 0x0003. In this case, the time measurement by the timer is started at the start of the scene on condition that the vehicle is running. It is determined that the vehicle is traveling if the vehicle speed sensor (6-11) or the distance sensor (6-1-5) detects the vehicle speed v = 0, and the vehicle is stopped, and the vehicle speed v ≠ 0 is detected. In this case, it is determined that the vehicle is running.
[0083]
If the user selects "Yes" as a response to the question as to whether to change the displayed dish, the process branches to scene 0x0004, and if the user selects "No", the process branches to scene 0x0006.
On the other hand, if the user gives a timer notification (elapse of the set time) without answering by voice or selecting a selection button displayed on the screen within the timer set time, it is defined by scene data of scene 0x0003. The scenario is terminated according to the transition condition at the time of the 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 transition to the next scene (the end in the example of FIG. 15) in which no answer is the transition condition enables the personification. The communication with the converted character can be made closer to the communication between humans.
[0084]
In 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 dish is better.
Then, when the user selects any one, the state transits to the scene 0x0005.
In the scene 0x0005, a list of the number of persons to be changed from kaiseki cuisine is displayed on the scene display screen 54, and the agent points to this list to ask a question of the number of persons. Then, when the user selects any one, the state transits to the scene 0x0006.
[0085]
In the scene 0x0006, an exterior photo image of the inn is displayed on the scene display screen 54, and the agent bows and greets.
Then, as a result of the user's selection, in the case of the guidance scenario shown in FIG. 15, the agent sends a response result on meals to the third party (inn) that transmitted the running external scenario via the communication control unit. .
As described above, when it is desired to obtain information about the user, the creator of the external scenario prepares a scene of a question in which the information to be obtained is obtained in the scenario, and creates the scenario such that the answer is transmitted by e-mail. I do. If a reply needs to be sent, the e-mail address of the creator is included in the scenario data.
When the story of the agent in the last scene (scene 0x0006 in FIG. 15) ends, the scenario ends.
[0086]
In this way, the scenario driving unit (101-1) sequentially displays and outputs each scene image and sound specified in the scenario up to the last scene.
When the activated scenario ends, the scenario driving unit (101-1) determines whether or not there is an activation request for another scenario.
[0087]
Next, a description will be given of a process of determining whether to autonomously activate various scenarios executed by such a scenario driving unit (101-1).
FIG. 16 illustrates an autonomous activation determination process of a scenario performed by the autonomous activation determination unit.
In this autonomous activation determination processing, the autonomous activation determination unit (101-2) receives information on the position and date in order to reduce the load on the device, and converts the start condition approximate to the received position and date into scenario data. A process of reading (extracting means) from the held external storage device (10) and temporarily storing it in the RAM (1-4) is performed.
In other words, the autonomous activation determination unit (101-2) obtains the status information that is presently located from the agent OS unit (101-8) via the agent I / F to obtain the status information such as the current position and time. Is acquired (step 11).
Then, the autonomous activation determination unit (101-2) determines whether the acquired status information such as the position and the time has changed by a predetermined unit (step 12).
As a result of the determination, when it is determined that there is a change of a predetermined unit (Step 12; Y), the autonomous activation determination unit (101-2) determines the autonomous activation condition having conditions that approximate conditions such as the position and time. Is read from the external storage device (10) and temporarily stored in the RAM (1-4) (step 13). Here, the approximate condition is that, in the case of a position, the entire range of the map data is divided into rectangular blocks of a predetermined unit, and the position information is stored in a block where the current vehicle position exists and eight blocks adjacent to the block. Is included, and in the case of a date, that day and the next day correspond. The change in the predetermined unit corresponds to a case where the vehicle moves to another block in the case of the position, and corresponds to a case where the date changes in the case of the date.
Then, the autonomous activation determination unit (101-2) performs a condition determination process as to whether the read autonomous activation condition is satisfied by the status information (step 14).
If it is determined in step 12 that there is no change in the predetermined unit (; N), the process proceeds to step 14 because there is no need to change the previously read activation condition.
[0088]
FIG. 17 shows the processing content of the condition determination processing (step 14).
The autonomous activation determination unit (101-2) acquires the first autonomous activation condition from the RAM (1-4) (step 21), and determines the status based on the various status information obtained in step 12 based on the acquired autonomous activation condition. It is determined whether or not the condition is satisfied (step 22).
When the autonomous activation condition is satisfied (Step 22; Y), the autonomous activation determination unit (101-2) sends a scenario execution request message corresponding to the autonomous activation condition to the scenario driving unit (101-1). Issued (step 23).
[0089]
Next, the autonomous activation determination unit (101-2) determines whether or not the next autonomous activation condition exists in the scenario data (10-2-3-4) (step 24). The next autonomous activation condition is obtained (step 25), and thereafter, the processes of steps 22 to 25 are repeated until the determination for all the autonomous activation conditions is completed.
In step 24, if the next autonomous activation condition does not exist (; N), the autonomous activation determination unit (101-2) ends the autonomous activation determination process.
[0090]
Next, a scenario execution process when the scenario driving unit (101-1) receives a scenario execution request from the autonomous activation determination unit (101-2) will be described. Note that the processing of the autonomous activation determination unit described below constitutes a condition determination unit.
FIG. 18 is a flowchart showing the flow of the scenario execution process.
Note that FIG. 18 shows a series of typical operations performed by each unit of the agent processing unit (101) and the overall processing unit (102) when executing a scenario, and each unit performs an independent process. It has become. In other words, the independent processing of each unit is continuous, resulting in the typical flow shown in FIG.
Specifically, each unit of the agent processing unit (101) and the overall processing unit (102) perform processing on the message upon receiving the message, and wait for the next message when the processing is completed.
[0091]
Upon receiving the scenario execution request from the autonomous activation determining unit (101-2), the scenario driving unit (101-1) performs agent start preparation processing by securing and initializing a work memory (step 505-1).
Then, the scenario driving unit (101-1) checks whether the execution request of the scenario is a manual start or an automatic start (step 505-2). The manual activation is when the user selects the scenario activation from the menu of the display device (2), and the automatic activation is when the autonomous activation condition of the scenario is satisfied.
If the execution request of the scenario is a manual start, a menu scenario request process is performed (step 505-3). Thereafter, the process proceeds to a scenario data reading process (step 505-4).
[0092]
On the other hand, in the case of the automatic startup, since there is a scenario whose execution is requested by satisfying the autonomous startup condition, the process directly proceeds to the scenario data reading process (step 505-4).
Next, the scenario driving section (101-1) reads the scenario data to be executed into the RAM (1-4) (step 505-4). When reading the scenario data, if there are a plurality of scenarios to be executed (when a plurality of autonomous activation conditions are satisfied, when a manual activation request and an automatic activation overlap, etc.), the scenario driving unit (101) -1) reads the scenario data having the highest priority by determining the priority specified for each scenario. If the priorities are the same, the priority is determined to be higher in the order in which the execution requests are received from the autonomous activation determination unit (101-2).
[0093]
When the reading of the scenario data is completed, the scenario driving section (101-1) performs a scenario start process (step 505-5).
In the scenario start process, the scenario driving section (101-1) first performs an initialization process for starting a scenario. Furthermore, if the standby scene is selected, the scenario driving unit (1011) executes the standby scene described with reference to FIG. 15 (s), confirms the OK intention display, and sets the standby scene to If it is not selected, the scenario start processing ends.
[0094]
After the scenario start process (step 505-5), the scenario driving unit (101-1) executes a scene process for processing the drawing and sound of the character according to the contents of the scenes constituting the scenario (step 505-6). ). The details of the scene processing will be described later with reference to FIG.
When the scene processing is completed, the scenario driving section (101-1) checks whether the scenario has ended (step 505-7).
When the scenario ends, the scenario driving unit (101-1) performs a scenario end process (505-8). In the scenario ending process, the learning unit (101-3) obtains an end ID indicating a method of ending and stores it in response data (10-2-3-7).
If the scenario has not ended (if the scenario still continues), the process returns to step 505-6 and repeats the next scene, next scene,... Until the scenario end position.
[0095]
After the scenario end processing, the scenario driving unit (101-1) checks whether there is another execution request for the scenario (step 505-9). 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 the 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.
[0096]
FIG. 19 is a flowchart showing the flow of the scene processing (step 505-6).
The scenario driving unit (101-1) checks the type of the scene to be started in the scene processing (step 505-6-1), and in the case of a normal scene or a standby scene, analyzes the scene data (step 505-5-1). The process proceeds to 6-2). In the case of a clone scene, the process proceeds to a process of requesting various processes (step 505-6-5). In the case of a condition-added scene, the process proceeds to a development determination process (step 505-6-12). move on.
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 the certain scene n ends, for example, when no input is made within the set time. This is a scene in which a voice prompting an input is output on the same screen.
In addition, the condition addition scene is a scene provided before the scene to make a transition to a specific scene and start, and a scene for performing a condition determination for a screen transition (branch) without being displayed on the screen. It is.
[0097]
If the starting scene is a normal scene or a standby scene, the scenario driving unit (101-1) stores the starting scene data in the RAM in which the scenario data read in step 505-4 (FIG. 18) is stored. With reference to (1-4), the screen configuration to be displayed, the motion instruction of the character, and the like are analyzed (step 505-6-2).
As a result of the analysis, if a speech recognition dictionary exists, the scenario driving unit (101-1) sends a request (setting) for setting (initializing) the speech recognition dictionary specified in the scene data to the speech recognition unit (101-7). Notification is made to the user (step 505-6-3).
In the case of the standby scene, an affirmative or negative voice recognition dictionary is set.
[0098]
Next, the scenario driving unit (101-1) performs a process for requesting the drawing / sound output unit (101-5) to draw a screen, as a process of determining each part of the screen to be drawn. A data creation process 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. 14, items related to the character such as the agent display screen 51 and the balloon screen 52 in which the dialogue of the character is displayed are determined.
[0099]
The scenario driving section (101-1) issues various processing instructions (step 505-6-5).
The instructions for various processes include processes for a navigation system and an externally connected device, and a request process for time measurement when a timer is set.
In addition, the scenario driving unit (101-1) is set as an instruction for changing each element value of the long-term emotion element or the short-term emotion element as the various processing when the instruction is set for the scene. In response to the instruction, the change of the long-term emotion element 10-2-3-1a and the short-term emotion element 10-2-3-1a of the mental model data (10-2-3-1) is changed by the character psychology unit (101). -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 the element is a long-term emotion element, the specified change value is added or subtracted. If the element is a short-term emotion element, the value of the short-term emotion element is changed to the specified change value, and another short-term emotion element is changed. Set the value to zero.
As described above, the long-term emotional change and the short-term emotional change of the agent are stored in the agent device in accordance with the predetermined conditions (the long-term emotional change condition 10-2-3-1b, the short-term emotional change condition 10-2). In addition to the change according to -3-1d), it is possible to change according to the change instruction of the emotion element set in the scenario. For this reason, it is possible to change the emotion of the agent according to the intention of the creator of the scenario.
[0100]
Next, the scenario driving unit (101-1) determines the character motion of the scene and the voice such as dialogue, and makes a request for drawing and voice output of the determined character to the drawing / voice output unit. , 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 driving unit (101-1) is the same as the drawing data creation processing of the screen configuration shown in FIG. 14 except that the part of the scenario to be created is a part having a screen configuration or a part relating to a character. It is performed in. In the case of creating the character drawing data, the voice of the character corresponding to the speech displayed on the balloon screen 52 and the voice data of the sound effect are also specified.
After creating the character drawing data (including voice data), the scenario driving unit (101-1) issues a character drawing request to the drawing / voice output unit (101-5) based on the generated character drawing data.
The drawing / voice output unit (101-5) performs character drawing / voice output processing in accordance with the drawing request from the scenario driving unit (101-1). The character drawing / voice output process develops a scene in which the character bows, points right or left by hand, or speaks to the user.
In the case of the standby scene, a character smaller than normal (FIG. 15A) is displayed as illustrated in FIG.
[0101]
After the drawing / voice output unit (101-5) notifies the end of the scene character drawing / voice output process, the scenario driving unit (101-1) issues an instruction for voice recognition in the scene data being processed. (Step 505-6-7). If there is no instruction, the process proceeds to step 505-6-9. If there is an instruction, a dictionary for speech recognition specified by the scene data is used. (Step 505-6-8).
[0102]
The scenario driving unit (101-1) notifies the user of the user input from the agent OS unit (101-8) when there is no voice recognition instruction and after the voice recognition processing (step 505-6-8) is completed. Upon receipt, it confirms what the input is (step 505-6-9) and performs processing corresponding to the input.
As described above, since each process is executed independently, even if an input is notified from the agent OS unit (101-8) even during the voice recognition process (step 505-6-8). , A process corresponding to the input is executed in parallel. Therefore, if the user selects the speech recognition selection button and is notified from the agent OS unit (101-8) during the speech recognition processing, the next processing (step 505-6) is performed regardless of the processing stage of the speech recognition processing. -9) is executed.
For example, in the case of a standby scene, it is possible to determine whether or not the driver has indicated the intention of OK (affirmation) based on whether or not the screen of the display device has been touched. Regardless of the processing stage of the voice recognition processing, the next processing (step 505-6-9) is executed.
[0103]
For example, when receiving an input related to cursor movement from the agent OS unit (101-8), the scenario driving unit (101-1) moves the cursor and processes a screen drawing request (screen scroll request). Is performed (step 505-6-10).
When the user selects any one of the answer selection buttons 54a displayed on the scene display screen 54 (see FIG. 14), it is determined which item has been selected (step 505-6-11).
As described above, the processing in FIGS. 18 and 19 is an example of the scenario processing, and in actuality, each unit independently performs individual processing. For this reason, although not shown in FIG. 19 above, when the start or stop of the speech recognition is input, confirmation of the user input, such as requesting the speech recognition unit to start or stop the speech recognition processing (step 505) There are other processes after performing -6-9). Also, before the drawing / sound output unit (101-5) notifies the end of the character drawing / sound output processing of the scene, that is, before the action of the instructed character is completed, the user's input is confirmed. (Step 505-6-9) can also be performed.
[0104]
Next, the scenario driving unit (101-1) refers to the scenario management data (see FIG. 11) in the deployment determination process (step 505-6-12) based on the determination result of the selected item. Determine the next development.
When there is no next development, the scenario driving unit (101-1) returns to the user input determination without performing any processing.
On the other hand, when the next development exists, the scenario driving unit (101-1) determines the next development based on the selection item determined in step 505-6-11 and the scene transition condition stored in the development management data. The scene to be performed. The scenario driving unit (101-1) receives the state of each item specified in the scene transition condition from the character psychology unit (101-4) and the agent OS unit (101-8), and determines a scene to be developed. .
For example, it is supposed that the transition condition is to develop to a scene where a greeting is given when the friendship of long-term emotion is “high”, and to develop a scene where no greeting is given when the friendship of the long-term emotion is not high. In this case, the scenario driving unit (101-1) receives the element value of the friendship degree of the long-term emotion element (10-2-3-1a) from the character psychology unit (101-4), and the value is 71 to 71. If it is 100, it is determined that the scene is high (see FIG. 7B), and the scene to greet is determined. If it is 70 or less, the scene to greet is determined.
As described above, when the long-term emotional element and the short-term emotional element of the scenario are specified in the scene transition condition, the rules are used to determine the development of the scene. By executing the scenario while changing the agent's emotions, it becomes possible to communicate with a more human agent.
[0105]
After determining the next scene to be developed based on the deployment determination, the scenario driving unit (101-1) proceeds to a scene end process (step 505-6-13) to proceed to the next deployment.
In the scene end process (step 505-6-13), if there is a process that the scenario driving unit (101-1) requests to another processing unit, a request to stop it is made (for example, a request for voice recognition processing is made. If so, a request to stop the recognition process is made), and the process returns. Upon return, the process moves to the scenario end determination (step 505-7) in FIG.
As described above, by executing the scenario (screen element transition body) based on the status of the devices mounted on the vehicle, the input operation from the user, the time, and the like, the screen element transition body execution means of the present invention is formed.
[0106]
As described above, according to the agent device of the present embodiment, when the automatic start condition is satisfied, the execution of the scenario is made to wait, and the standby process for notifying and confirming the execution is performed. Before starting communication with the user, the user has time to prepare and can fully hear the communication content of the agent.
Further, since the execution of the scenario is notified by the voice of the agent, it becomes possible for the user to get closer to the character as compared to a case where the communication is started by simply outputting a caution sound or a sound effect.
[0107]
Further, according to the embodiment described above, the execution of the scenario can be started using the autonomous start condition incorporated in the original scenario created by the user (creating user) of the scenario creating device as the scenario start condition.
Therefore, it is possible to provide a user of the scenario creating apparatus with a place to freely create a scenario that starts various scenarios including appearance of an agent at a timing according to the user's preference.
In addition, the long-term and short-term emotional elements of the agent are changed based on the instructions in the scenario data created by the scenario editor, so that the agent can communicate with the emotions that the scenario creator intended. Will be possible.
[0108]
Further, according to the embodiment described above, the action of the agent is defined by the scenario data, and the scenario data is standardized by a scenario including a plurality of continuous scenes. You can create and incorporate your own scenarios.
In this way, since the user can add to the default scenario stored in the device in advance, the user searches for an additional scenario suitable for the user on the Internet or the like, downloads the scenario, and creates the scenario by himself to make the agent device more comfortable. Can be used.
[0109]
Next, the configuration and operation of a scenario creation device in which a user or a third party creates an original scenario will be described.
FIG. 20 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), An input / output I / F (260). These devices are connected by bus lines such as a data bus and a control bus.
[0110]
The control unit (200) controls the entire scenario creation device.
The scenario creation device can execute not only a scenario editing program but also other programs (for example, a word processor or a spreadsheet). The control unit (200) includes a CPU (200-1), a memory (200-2), and the like.
The CPU (200-1) is a processor that executes various arithmetic processing.
The memory (200-2) is used as a working memory when the CPU (200-1) executes various arithmetic processing.
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.
[0111]
The input device (210) is a device for inputting characters, numerals, and other information to the scenario creation device, and is constituted by, for example, a keyboard and a mouse.
The keyboard is an input device for mainly inputting kana and English characters.
The keyboard is used, for example, when the user inputs a login ID or password for logging in to the scenario creation device, or inputs a sentence to be subjected to speech synthesis or speech recognition when creating a scenario.
The 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 or the like by clicking a button or icon displayed on a display device. It is.
[0112]
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, the selected information and the input information are displayed on each screen.
As the printing device, for example, various printer devices such as an ink jet printer, a laser printer, a thermal transfer printer, and a dot printer are used.
[0113]
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) transmits scenario data created by the device by exchanging signals and data with other terminal devices or server devices connected to these networks by communication, or by a third party. The created scenario data can be received (downloaded), and further, data necessary for creating the scenario data can be obtained.
The communication control device (230) is controlled by the CPU (200-1), and transmits and receives signals and data to and from these terminal devices and server devices according to a predetermined protocol such as TCP / IP.
[0114]
The storage device (240) includes a readable and writable storage medium and a drive device for reading and writing programs and data from and to the storage medium.
A hard disk is mainly used as the storage medium, but it can also be constituted by another readable / writable storage medium 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). As other programs, for example, a communication program for controlling the communication control device (230) and maintaining communication with a terminal device or a server device connected to the scenario creation device via a network, or scenario creation such as memory management and input / output management An OS (Operating System), which is basic software for operating the device, is also stored in the storage device (240).
[0115]
The storage medium drive (250) is a drive for driving a removable storage medium to read and write data. Examples of the removable storage medium include a magneto-optical disk, a magnetic disk, a magnetic tape, an IC card, a paper tape punched with data, and a CD-ROM.
In the present embodiment, the scenario data created and edited by the scenario creation device (the form used by the agent device) is mainly written in IC cards.
The scenario creation device obtains a scenario from the storage medium storing the scenario data by driving the storage medium by the storage medium drive (250), or transfers the created scenario data from the storage medium drive to the storage medium. Or can be stored.
[0116]
The input / output I / F (260) is configured by, for example, a serial interface or an interface of another standard.
By connecting an external device corresponding to the interface to the input / output I / F (260), the function of the scenario creation device can be extended. Examples of such external devices include a storage device such as a hard disk, a communication control device, a speaker, and a microphone.
[0117]
Next, the configuration of the scenario editing program (240-1) and the scenario editing data (240-2) will be described.
FIG. 21 conceptually shows a configuration of a 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 editing data (240-2) includes a common definition DB (240-2-1), a local definition DB (240-2-2), and SCE format scenario data (240-2-3) created by a 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 for creating scenario data.
[0118]
The scenario compiler (240-1-2) converts the scenario data (240-2-3) in SCE format created by the scenario editor (240-1-1) into real scenario data (240- This is an application program for converting to 2-4) and functions as a conversion unit.
FIG. 22 conceptually illustrates data format conversion.
As shown in FIG. 22, the scenario compiler (240-1-2) converts one or more SCE format scenario data (240-2-3) into one real machine format (NAV format) scenario data (240 -2-4).
[0119]
The DB editing tool (240-1-3) is an application program for editing and 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 an automatic activation condition item, a scene branch item and an additional condition item (transition condition) for defining scene development, and a character display state instruction table, which will be described later. 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 creation device connected by a local area network (LAN) to create scenario data using the common common definition DB (240-2-1).
The local definition DB (240-2-2) stores a screen configuration defined by the scenario creator while creating the scenario data.
[0120]
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) into a data format for use in the agent device by a scenario compiler (240-1-3). Data.
[0121]
FIG. 23A illustrates items that can be set as automatic start items.
The automatic activation items conceptually display a list of sample types of items that can be detected, recognized, and confirmed by the agent device.
This automatic start item is described in the common definition DB (240-2-1). When a scenario is created by the scenario editor (240-1-1), the automatic start item is set to set an autonomous start condition. Items are read from the common definition DB (240-2-1) and displayed in a list (presentation means). The creator selects an automatic activation item from the list display (list display) (selection means).
A window for inputting a numerical value or a window for selecting from a list is displayed according to the contents described in the type of the selected item, and a determination condition of the automatic start item is input. This operation is repeated one or more times to create autonomous start condition data, which is a determination condition for autonomously starting the scenario.
In this way, by setting the start condition of the screen element transition body (scenario), a start condition setting unit is formed.
[0122]
FIGS. 23B and 23C illustrate selectable items that can be selected as autonomous activation conditions for the automatic activation item.
Selectable items are also described in the common definition DB (240-2-1). In the table showing the automatic activation items illustrated in FIG. 23A, the items that can be selected as lower-order concepts of the items described as “selection from the list” in the type column are selected as the selectable items in FIG. b) and FIG. 23 (c). The group specified in the selectable item and the item of the automatic start item are the leftmost No. Are associated with each other.
Although not shown in the table, there are other definition tables and the like relating to numerical input in the same manner, and a window for inputting a time different from a time or an input window for a mileage is created. You can do it.
The combination of the selected automatic start item, the selected selectable item, the input numerical value, time, distance, and the like is the autonomous start condition for each scenario. For example, when the selection by the user is the automatic start item “acceleration” and the selectable item “sudden deceleration state”, the autonomous start condition is “acceleration−sudden deceleration”.
Note that this sample is merely a sample, and the definition may be changed.
For example, the vehicle speed input may be selected from a list and selected from items separated every 10 km / h.
Also, when the number of items that can be newly sensed in the agent device increases, the items can be added. For example, when a seat belt detection sensor is incorporated, it is conceivable to incorporate a definition that allows selection of items such as seat belt non-wearing and seat belt wearing with respect to the item of seat belt status by input means of selection from a list.
These changes and additions are made using the DB editing tool (240-1-3) described above.
Alternatively, the psychological state of the character (the long-term emotional element 10-2-3-1a and the short-term emotional element 10-2-3-1d) may be obtained from the agent psychology unit and added to the condition for automatic activation determination. Also in this case, the definition data is added using the DB editing tool (240-1-3). For example, it is conceivable to incorporate a definition for selecting items such as a psychological state of a character, a long-term emotional element, and a short-term emotional element as automatic activation items by an input means of selection from a list.
[0123]
FIG. 24 is a scene branch item table in which branch items (transition conditions) for branching (scene development) from one scene to the next scene are stored. The scene branch item table is stored in the common definition DB (240-2-1).
Each of the scene branch items is read out when creating a development configuration of each scene, and is displayed in a list in a branch event selection window (FIG. 35B).
By selecting a branch condition item from the displayed list, and adding a branch condition separately using a DB editing tool (240-1-3) if the branch condition item is not stored in the table, A scene development configuration is created. By repeating the selection of the branch condition item, a scene having a plurality of transition destinations (branched into a plurality) can be created.
[0124]
In the present embodiment, the psychological state of the agent is classified as a branch based on an agent mental model (AMM), and the scenario creator can select a long-term emotion element and a short-term emotion element as scene transition conditions. ing.
As the long-term emotion element, five emotion elements are defined corresponding to the long-term emotion element 10-2-3-1a described with reference to FIGS. For each long-term emotion element, the content (high, low, ordinary) defined by being divided in FIG. 7B is defined.
As the short-term emotion element, four emotion elements corresponding to the short-term emotion element 10-2-3-1c described with reference to FIGS. 6 and 9 and five normal items are defined. Normal corresponds to a case where all other four emotion elements are zero. The five items of the short-term emotion element are defined below the item of the psychological state (the same level as the high, normal, and low long-term emotion elements). The four emotional elements (other than the normal) of the short-term emotional elements are not shown, but are further divided in the lower layers into the contents defined in FIG. 9B (large, medium). , Small).
As described above, when using the long-term emotion element and the short-term emotion element as scene transition conditions, by defining the range of each emotion element in a range divided into predetermined steps, the scenario creator can intuitively sense the agent. It is possible to understand the degree of the emotional state of the person and set it in an easy-to-understand manner.
[0125]
FIG. 25 shows an additional condition table for setting branch conditions in more detail. The additional condition table is also stored in the common definition DB (240-2-1).
The additional condition item is an item used to provide a plurality of developments to the action (branch condition item) for developing the scene. At this time, a scene for branching is created. When a scene for branching is created, an additional judgment item is read when creating a development configuration from the scene for branching. Only one category can be selected for one scene for branching, and a list of items of the selected category is displayed and selected, or a range is designated by numerical input. When it is desired to multiply a plurality of classifications by a logical product, it is possible to easily create a scene by overlapping scenes for branching.
In this additional condition table, the psychological state of the agent by the AMM is defined similarly to FIG. As a result, the agent's emotion element can be used as the transition condition in addition to the other branch conditions.
Further, in the agent device, the learning unit ((101-3): refer to FIG. 4) records, as an end ID, an end method when the scenario is branched into a plurality of scenes and the scenario ends in different scenes. It has become. Further, the learning unit (101-3) can record the response of the user, the total number of times of use, and the like as the learning data in the scenario.
[0126]
The additional condition table shown in FIG. 25 includes the recorded scenario end state (end ID), the total number of times of use of the scenario, user information (driver information), mental model, date and time, and other classification items. A method for creating a selectable item list in the classification is defined, and it is possible to select these as additional branch conditions and provide a plurality of developments for an action for developing one scene. The definition data relating to the action item for developing the scene and the additional determination item can be changed and added using the DB editing tool (240-1-3), similarly to the autonomous activation determination data.
As described above, the transition condition setting means of the present invention is formed by setting the condition for transition from the screen element (scene) to the next screen element.
[0127]
FIG. 26 and FIG. 27 conceptually show a part of the contents of the unified action instruction table independent of characters stored in the common definition DB (240-2-1).
The character setting means will be described below with reference to FIGS. 26 and 27.
In this table, the display state of the common action is defined regardless of the type of the character, and the table is classified according to the content to be expressed by the character.
There are a plurality of unified motion instruction tables that do not depend on the character. In the present embodiment, each of the display state instruction tables for the work state (FIG. 26), mental state (FIG. 27), TPO state, growth state, and scale state is included. Exists.
As shown in FIGS. 26 and 27, each display state instruction table has a plurality of tree structures, and a character movement state instruction edit window (FIG. 32 (c)), which will be described later, shows the shape of each tree structure. The classification name is displayed.
[0128]
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 of the character image selection data (conversion table) 102353 of the agent device 1 (see FIG. 9).
[0129]
In these tables, as shown in FIG. 26 and FIG. 27, the levels (careful, ordinary, strong, medium, weak, etc.) defined in the lower layer with respect to the display state are represented by the system (agent device). Is provided with an item "automatic" to be automatically selected.
For the scene in which automatic is selected, the agent device determines which level of the display state of the character to use based on the character mental state, date and time, etc., and selects and executes one of the display states. Will be.
[0130]
The common definition DB (240-2-1) further includes voice recognition data used for voice recognition, data used for character motion instructions (separate speech instruction data also exists), and settings for each scene. Character image data and character dialogue data for previewing and confirming a given instruction, a conversion table for each character's expression method for unified instructions independent of the character, and each part data to be displayed on the display device (2) and the like. Screen configuration data describing how to arrange the items, and items that can be selected as processing contents in the scene, for example, on / off and channel selection of an audio device, an action that can be processed by an agent, and an air conditioner device. Various processing contents such as ON / OFF and temperature setting, setting of destination to be supplied to the whole processing unit (102), etc. Data, etc. are stored in the common definition DB (240-2-1).
All of these definition data can be changed and added using the DB editing tool (240-1-3), similarly to each definition data.
[0131]
Character image data for previewing and confirming an instruction set in each scene includes image data of various characters stored in the agent device.
The user can also store character image data of another character and a conversion table from the agent device in the common definition DB of the scenario creation device via the IC card 7 or the server 3.
[0132]
Next, each operation of scenario creation by the scenario creation apparatus configured as described above will be described according to screen transitions.
FIG. 28 illustrates a configuration of a 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 for various settings are displayed, and a scene development screen 305 in which a scene development configuration (branch state) is displayed in a tree structure of scene icons 307 representing each scene.
[0133]
When the scenario editor (240-1-1) is started, a start point 308 is displayed on the scene development screen 305 of the main window. When this start point 308 is selected, the scenario properties can be edited. The selection is made, for example, by double-clicking the mouse with the point position of the mouse cursor set at the corresponding position.
The screen configuration change button 309 is a button for selecting a screen configuration to be displayed, and the sound effect setting button 110 is a button for displaying a screen for setting a sound effect for each scene of a scenario.
When the agent display screen 311 is selected, an editing screen of the operation of the agent (character) is displayed.
The dialogue edit button 313 is a button for editing the instruction of the character's dialogue. When the button part and the background voice recognition dictionary setting 315 are selected, the voice recognition dictionary to be used can be edited. When the one displayed with the mark of the answer selection button 315a (54a) on the scene screen 301 is selected, the name of the word to be recognized is displayed on the scene screen, and when the person 315b to be recognized in the background is selected, the voice recognition target is displayed. The name of the recognized word is not displayed.
[0134]
The timer setting button 317 is a button for setting and changing timer setting information.
In the control instruction edit 319 for external devices and the like, control instructions for external devices and the like (including navigation) are set.
In the voice recognition start control instruction 320a, a voice recognition instruction that defines how to start voice recognition when performing voice recognition in a scene being created is set. As the voice recognition instruction, any one of “start automatically”, “do not start automatically”, and “determine by agent device (vehicle device) (automatically)” can be selected. I have.
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. The instruction of the callback may be any one of “call back”, “do not call back”, and “agent device determines (relies on agent)” in which the agent device determines the situation and determines whether or not to perform callback. Can be selected.
The AMM change setting change button 321 is a button for changing each long-term emotional element of the agent in the scene being created, as described later.
[0135]
When the next scene creation button 322 is clicked, the flow of the scenario can be edited (the next scene is created). When the scene creation button 322 is clicked, a 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 322, a development configuration of each scene is created. For example, when the icon 1 of the scene is selected (actively displayed), when the next scene creation button 322 is clicked, the icon of the scene subsequent to the scene 1 is displayed on the lower layer side. The scenes 2, 3,... To be developed following 1 are branched and created.
[0136]
That is, by clicking the scene creation button 322 with the scene m selected, the next scene m1 following the scene m is created. Then, when the scene creation button 322 is clicked while the scene m is selected again, the next scene m2 following the scene m is branched and created in parallel with the scene m1. Similarly, when the scene creation button 322 is clicked with the scene m selected again, a scene m3 is created.
Then, when the user wants to further develop the scene following the scene m1, by clicking the scene creation button with the scene m1 selected, the next scene m1-1 following the scene m1 is created.
When the scene creation button 322 is clicked in a state where the scene m1-1 is created (a state where the scene m1-1 is selected), a scene m1-1-1 following the scene m1-1 is created, and the scene m1-1-1 is created. To create another scene that branches off from m1, if the scene m1 is selected again and the scene creation button 322 is clicked, a scene m1-2 following the scene m1 is created.
[0137]
By clicking the scenario end position creation button 323, the scenario end position 324 can be created. An end number is assigned to the end position of each created scenario as an end ID.
When the end position 324 of the created scenario is selected, an end property editing screen is displayed. On this screen, each short-term emotional element of the agent can be set and changed.
When the scenario compilation button 325 is clicked, the created scenario can be compiled into a real machine format (NAV format) for use in the agent device.
[0138]
Note that the main window shown in FIG. 28 is an example of a scenario being created, and only the start point 308 is displayed on the scene development screen 305 when the scenario editor (240-1-1) is started. Nothing is displayed on the scene screen 301, and the setting screen 303 is not yet set (default values are displayed).
[0139]
FIG. 29 illustrates a flow of a screen operation for editing a scenario property.
In the main window shown in FIG. 28, when the start point 308 displayed on the scene development screen 305 is double-clicked, a scenario property editing window shown in FIG. 29 is displayed over the main window.
[0140]
In the scenario property edit window, enter the scenario name, enter the kana name, select the icon, select the genre, set the priority, set the expiration date (the upper limit of the time lag from when the start condition is satisfied until the actual start), and run You can set the middle execution condition, set the scenario start condition (separate window), set the standby processing use condition, enter the creator name, and enter a comment. The input of the scenario name and the input of the kana name input on this screen are management data and the like in the scenario data in the actual machine format.
When the user clicks the OK button 402 in the scenario property editing window, the edited content is reflected in the data, and the process returns to the main window. On the other hand, if the cancel button 403 is clicked, the data returns to the main window without being reflected in the data.
When the user clicks a standby processing use condition setting button 409 in the scenario property editing window (FIG. 29), a standby processing condition screen is displayed, and it is possible to select whether or not to perform standby processing.
[0141]
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) shown in FIG. 30A is displayed.
In the main edit window of the scenario start condition (FIG. 30A), it is possible to set so that the user can manually start the scenario. In this case, the check box 406 is cleared so that the scenario is not started manually.
The automatic start condition (autonomous start condition) list on the left side of the main edit window (a) of the scenario start condition displays conditions under which the system automatically starts the scenario. In the state of FIG. 30A, nothing has been set yet, so that the state is blank. When a new creation button 405 is clicked in the main scenario start condition editing window (FIG. 30A), an automatic start condition selection window (FIG. 30B) is displayed, and a new start condition can be edited.
[0142]
In the automatic start condition selection window (FIG. 30 (b)), 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 automatically starting (FIG. 30 (c)). In the example of FIG. 30B, the user wants to automatically start (autonomously start) the scenario while driving on the highway, so “select type” in “select when the state of the road starts” is selected. Item and click OK.
When cancel is clicked, the screen returns to the main window for editing the scenario start condition (FIG. 30A).
[0143]
Items that can be displayed and selected in the automatic start condition selection window (FIG. 30B) are the automatic start items displayed in FIG. In FIG. 30 (b), when the folder "select when to activate" is selected, the folder No. in FIG. The condition items 1 to 10 are displayed at the next lower level.
Similarly, when the folder “Select where to start” is selected, the folder No. When the folders 10 to 16 select the folder “Select when the road condition is activated”, No. When the folders 21 to 23 select the folder “Select when the state of the car should be activated”, No. Nos. 17 to 20 select the folder "Select when to activate the navigation state". When the user selects the folder “Select when the user should activate”, No. 29 to 30 are displayed one level below.
[0144]
In the condition range selection window (FIG. 30C) for automatically starting, the configuration of the window changes depending on the judgment condition item (category) selected in the previous window (b). In the illustrated example, a window of an item for selecting the type of road is displayed.
Items that can be selected in the condition range selection window for automatic start (FIG. 30C) correspond to the selectable items (FIG. 30B) corresponding to the automatic start items selected in the automatic start condition selection window (FIG. 30B). 23 (b)). This selectable item is displayed in a pull-down menu by clicking the mark on the right side of the selection item column 408.
Select a condition range that can be started automatically from the list (or input it with a number), and click the add button to set the selected item and display it in the lower column. In the illustrated example, a case where “Expressway” is selected and the add button is clicked is displayed.
When the decision button is clicked in the condition range selection window for automatically starting (FIG. 30C), the setting state is determined, and the screen returns to the scenario start condition main edit window (FIG. 30D).
Clicking cancel returns to the automatic start condition selection window (FIG. 30B).
[0145]
In the main edit window of the scenario start condition in FIG. 30D, the automatic start condition set by the above operation (start if the type of road is a highway) is displayed in the automatic start condition list on the left side. .
Further, when a condition to be automatically started displayed on the condition list screen for automatic activation is selected and an edit button is clicked, an automatic start condition selection window (FIG. 30 (b)) for adding a condition setting to the selected condition is added. )) Is displayed.
[0146]
Next, various operations for creating a scenario other than the autonomous activation condition will be described.
FIG. 31 shows a flow of a screen operation for selecting a screen configuration to be displayed on the agent display screen 51 (see FIG. 14).
When a 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. Then, when the screen configuration change button 309 of the setting screen 303 is clicked, a screen configuration selection window (b) is displayed.
In the screen configuration selection window (b), a list of screen configurations that can be displayed on the scene display screen 54 (see FIG. 14) is displayed. A basic screen in which nothing is displayed, a two-select screen in which two selection buttons are displayed, a button selection screen in which a plurality of selection buttons are displayed, for example, a list selection screen in which a plurality of items such as a prefecture name are displayed in a list In addition, various selectable screens such as an image display screen for displaying image data are displayed.
Select one screen configuration from each screen configuration displayed in the list, and click the OK button. If you want to change the screen configuration, confirm it with a confirmation dialog, and if you want to change it, change to that screen configuration and change 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.
[0147]
32 to 34 form a screen element setting means for setting a screen element based on the display contents (image and sound) of the character and the processing contents, and a character setting means.
FIG. 32 shows a flow of a screen operation for editing a character motion (agent motion) instruction.
When the agent display screen 311 is double-clicked with a mouse in the main window (FIG. 28) showing the editing state of the scene screen, an action instruction edit dialog (individual instruction) (FIG. 32A) or a character action instruction edit dialog (FIG. The unification instruction) (FIG. 32B) is displayed.
Which window is to be displayed is the window used last time. If the previous operation instruction is given by direct instruction for each character, (FIG. 32 (a)) is displayed and expressed to the previous character. If the instruction is given in a state in which the user wants to make it appear, (FIG. 32B) is displayed. When used for the first time, a character motion instruction editing dialog (unified instruction) is displayed.
[0148]
In the character motion instruction edit dialog (individual instruction) shown in FIG. 32A, motion (motion), facial expression (element of emotion expression), hairstyle (element of growth expression), clothing (element of TPO expression), scale (character display) If the area is a frame of a camera, the camera angle element), the area in which the user speaks (the area to which dialogue is allocated), the operation instruction timing, and the background of the character display area are selected.
In the character motion instruction editing dialog (individual instruction) shown in FIG. 32A, when the enter button is clicked, the edited content is reflected on the data, and the display returns to the main window (FIG. 28). Clicking the Cancel button returns to the main window without reflecting the data.
When the expression content designation button is clicked, the character action instruction editing dialog (unification instruction) is switched to FIG. 32 (b).
[0149]
When a motion instruction (display state) is selected in the character motion instruction edit dialog (individual instruction), a scene is defined as a character-specific motion. In this case, in the agent device 1, in the character drawing / voice output process by the drawing / voice output unit (101-5), it is determined that the unified operation instruction is not based on the character.
[0150]
In the character movement instruction edit dialog (unification instruction) shown in FIG. 32B, the unified movement instruction table (FIG. 26, see FIG. 27), the work element, the mental state element, the TPO expression element, the growth expression element, and the scale element (the camera angle element when the character display area is a camera frame) Displayed as selectable. In addition, a screen for selecting an operation instruction timing and a background of the character display area is displayed.
The user selects each of the display states displayed in the character movement state instruction editing window, so that the display state number corresponding to the display state selected as the movement common to each character regardless of the character is being set. Is set as the content of
In this window, when the enter button is clicked, the edited content is reflected in the data, and the screen 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 designation button is clicked, the display switches to a character movement instruction edit dialog (individual instruction) (b).
[0151]
FIG. 33 shows a flow of a screen operation for editing a speech instruction of a character (agent).
When the dialogue edit button 313 on the setting screen 303 is clicked on the main window (FIG. 28) showing the editing state of the scene screen, a dialogue edit window shown in FIG. 33A is displayed.
In the dialogue editing window 1 (a), a tab screen of "PCM" is displayed, and the PCM (recorded and prepared real voice data) can be instructed.
When the "TTS" tab is selected in the dialogue editing window 1 (a), a dialogue editing window 2 (FIG. 33 (b)) is displayed, and a TTS (synthesized voice) can be specified.
In the case of PCM, the dialogue is input in full-width hiragana (the above-mentioned input box), and a search is made for the corresponding dialogue (click the search button: two types of search methods, head match and exact match are prepared), and the search result ( The dialogue to be selected and selected from the search result list display field) and spoken to the character is set (can be set by clicking the add button).
In the case of the TTS, the dialogue name (data for speech balloon display) and the reading (data for creating a synthesized voice) are input, and the dialogue to be spoken to the character is set (can be set by clicking an add button).
In the dialogue editing windows 1 and 2 shown in FIGS. 3A and 3B, when the OK button is clicked, the edited content is reflected as data on the balloon screen 430, the screen returns to the main window in FIG. 28, and the cancel button is clicked. Returns to the main window without being reflected in the data.
[0152]
FIG. 34 shows a flow of a screen operation for editing the speech recognition dictionary.
This operation is to set a voice dictionary for the agent device to recognize the voice response returned from the user when the agent device requests the answer based on the created scenario.
In the main window (FIG. 28) showing the editing state of the scene screen, when a button part 315a (depending on the screen structure, it may be a normal list box part) is double-clicked on a button part part 315a displayed according to the selected screen structure. A recognition dictionary selection window (FIG. 34A) is displayed. Also, a double-click on the dictionary list display section 315b to be recognized in the background displays a speech recognition dictionary selection window.
[0153]
When a dictionary name in the list of dictionary candidates is double-clicked in the voice recognition dictionary selection window (FIG. 34A), the dictionary is displayed in the list selected as a general dictionary as using the voice recognition dictionary.
When the OK button is clicked, the edited content is reflected in the data and returns to the main window (FIG. 28). When the Cancel button is clicked, the screen returns to the main window without being reflected in the data.
When a user-defined dictionary edit button is clicked, a speech recognition dictionary creation window (FIG. 34B) for newly creating a speech recognition dictionary is displayed. In this window, when a dictionary name is input and a dictionary addition button is clicked, a window for creating a new speech recognition dictionary with the name and registering words in the speech recognition dictionary (FIG. 34 (c)) is displayed.
When the OK button is clicked in the speech recognition dictionary creation window, creation of the speech recognition dictionary ends, and the screen returns to the speech recognition dictionary selection window.
[0154]
In the window for registering a word in the voice recognition dictionary (FIG. 34 (c)), the word to be registered is entered in the reading field using half-width kana, and the enter button is clicked. Next, a name (a name to be displayed) is selected or newly input, and a PCM voice for callback is selected (if no is selected, TTS is used for callback). After entering these three items, clicking the register button will register the data and add it to the registered word list on the right.
When all the words to be registered have been registered, click the back button to return to the speech recognition dictionary creation window.
[0155]
FIG. 35 shows the flow of screen operation for editing the flow of a scenario.
FIG. 35A exemplifies a scene development configuration (branch state) being created, which is displayed on the scene development screen 305 of the main window (FIG. 28).
From among the scene icons 307 displayed in a tree structure on the scene development screen 305, a scene icon 307 (icon 1 in FIG. 35A) of a scene from which a subsequent scene is to be branched is selected and activated. When a new scene creation button 322 in the main window is clicked in this state, a branch event selection window (FIG. 35B) is displayed.
In the branch event selection window (FIG. 35B), a condition for branching to a scene to be newly created is selected from the branch event list, so that a transition condition to the next scene (scene to be newly created) is selected. .
[0156]
Selection window for branch event In FIG. 35 (b), when the transition condition to the next scene (scene to be newly created) is selected and the OK button is clicked, the condition (branch event) is determined and the main screen (a) is displayed. Return.
On the branch event screen 327 of the branch event selection window, the scene branch image item described with reference to FIG. 24 is displayed, and a condition (branch condition) for branching is selected.
The additional condition table described with reference to FIG. 25 is displayed as a pull-down menu in a list by selecting the pull-down button 328 of the additional type displayed on the right side of the branch event selection window.
When the scene branch item displayed on the branch event screen 327 is selected by mouse click and the OK button is selected, if the branch condition value can be further set, the items are changed as shown in FIGS. 35 (c) and (d). The indicated branch condition value setting window is opened.
[0157]
In the scenario creation device of this embodiment, the psychological state of the agent is classified as a branch by the agent mental model (AMM), and is displayed on the branch event screen 327 as shown in FIG. .
The creator can set the agent's emotion as a condition for transitioning to a scene developed after the scene being created. When a long-term emotional element (friendship, obedience, confidence, morality, energy) is selected (in the figure, the friendship is selected), and the OK button is selected, the result shown in FIG. The branch condition value input window is displayed, and as shown in FIG. 7C, the long-term emotion degree “high”, “normal”, and “low” are displayed by dividing the element value of the long-term emotion element into three stages.
[0158]
On the other hand, when the “psychological state” of the short-term emotion element is selected on the branch event screen 327 and the OK button is selected, a branch condition value input window shown in FIG. 35D is displayed.
As shown in this window, four short-term emotion elements and five normal conditions can be selected as branch condition values. Normal means that all the short-term emotion elements are zero, so for the four short-term emotion elements other than normal, the degree of the short-term emotion is divided into three levels as shown in FIG. "Large", "Medium" and "Small" can be selected. If the short-term emotion degree is not selected, the transition condition is that the element value of the selected short-term emotion element is “not zero”.
[0159]
As described above, when the long-term emotion element and the short-term emotion element are used as the transition condition of the scene, by defining and displaying the range of each emotion element in a range divided into predetermined stages, the scenario creator can provide an intuitive feeling. In addition, the degree of the emotional state of the agent can be grasped and set easily.
[0160]
When the branch item selected on the branch event screen 327 is an item for which the branch condition value cannot be set, or when the branch condition value is selected in the branch condition value input window and the enter button is selected, the main window of FIG. 28 is displayed. Return.
As shown in FIG. 35 (e), a scene (scene icon (4) in the figure) newly created when the set branch condition is satisfied is displayed on the scene development screen 305 of the main window after returning. Is done.
A newly created scene icon is described as NEW to distinguish it from other scene icons.
As described above with reference to FIG. 35, by setting conditions for shifting from one screen element to the next screen element, a shift condition setting unit in the present invention is formed.
[0161]
FIG. 36 is a flowchart illustrating an example of a flow of a scenario executed by the agent device when the emotional state of the agent is set as a scene branch condition (transition condition).
The scenario in this case is created as follows. In other words, in the middle of execution, the scene branches to a greeting where the long-term emotion element “Friendship” element value is “High” as the transition condition, and the “Friendship” element value is not “High”. Branch to a scene in which no greeting is made under the transition condition.
Furthermore, the transition to the angry dialogue scene is made under the condition that the short-term emotion element “angry” is “non-zero”, and the scene is branched to the normal scene under the transition condition that “angry” is zero. And exit.
[0162]
The scenario driving unit (101-1) of the agent device determines the development of the scene (step 505-6: FIG. 18) for the scene corresponding to this scenario (step 505-6-12: FIG. 19) and develops the scene. According to the transition condition specified by the management data (see FIG. 11), the element value of the long-term emotion element “friendship” is acquired from the character psychology unit (101-4) (step 361).
Then, it is determined whether or not the acquired element value of “friendship degree” is “high” (step 362). Whether it is high or not depends on FIG. 7B.
If the element value of the "friendship degree" is high (step 362; Y), a scene to greet as a scene to be developed next is determined from the development management data of the scene (step 363).
On the other hand, if the element value of “friendship” is not high (step 362; N), a scene in which no greeting is given is determined from the development management data (step 364).
[0163]
Then, after the scene end processing (step 505-6-13), the scenario driving section (101-1) performs the scene processing (step 505-6) on the determined scene.
In the development judgment (step 505-6-12) in the scene processing, the scenario driving section (101-1) determines the element value of the “angry” short-term emotion element according to the transition condition specified in the scene. Is obtained (step 365), and it is confirmed whether the user is angry, that is, whether the element value is not zero (step 366).
When the element value is not zero, the scenario driving unit (101-1) determines that the user is angry (step 366, and determines the scene of the angry dialogue as the next scene to be developed from the development management data of the scene (step 366). Step 367).
On the other hand, when the short-term emotion element is zero, it is determined that the person is not angry, and a normal dialog scene is determined (step 368).
Thereafter, the scenario driving unit (101-1) develops each scene according to the scenario being executed.
[0164]
FIG. 37 shows a flow of a screen operation for editing a scenario end position.
From the scene icons 307 displayed in a tree structure on the scene development screen 305 of the main window in FIG. 28, a scene icon 307 (icon 4 in FIG. 37A) of the scene for which the scenario is to be ended is selected and activated. State. In this state, when the scenario end position creation button 323 in the main window is clicked, an end ID designation window (FIG. 37B) is displayed.
In this end ID designation window, the ID number of the end position mark is designated. Normally, automatic assignment is performed, but the operator of the editor can assign by himself by unchecking the check box indicating that automatic assignment is performed. When the OK button is clicked, the ID number is determined, and a branch event selection window (FIG. 37 (c)) is displayed.
[0165]
In the branch event selection window, a screen similar to that at the time of creating a new scene (FIG. 35 (b)) is displayed, and a branch condition for ending the scenario is set in the same manner as in the operation method. Additional conditions can be set in the same manner. In this window, when the OK button is clicked, the condition (transition condition) is determined and the process returns to the main window (d) (transition condition setting means).
In the branch condition for ending this scenario, a long-term emotion element and a short-term emotion element of the agent can be specified in the branch event selection window of FIG. For example, it can be set to end when the long-term emotional component of the agent is “low” (0 to 30).
On the scene development screen 305 after returning to the main window, a new scenario end position 433 is created and displayed following the selected scenario icon (icon 4 in the figure) as shown in FIG. Is done.
[0166]
FIG. 38 shows a scenario in which the long-term emotion element 10-2-3-1a and the short-term emotion element 10-2-3-1a (see FIG. 6) of the agent device defined as the psychological state of the agent are created. 5 shows an operation screen to be operated.
FIG. 38A shows a change edit window of the AMM for creating a scenario for changing a long-term emotion element. This editing window is used to select a scene icon 307 whose emotion is to be changed in the scene from among the scene icons 307 displayed on the scene development screen 305 of the main window in FIG. Displayed when button 321 is selected.
In the AMM change edit window, the change width of the element value for each long-term emotion element of the AMM is set, and when the enter button is selected, the screen returns to the main window (FIG. 28) and the change width set in the AMM change column is displayed. Will be reflected.
When the scenario is executed and the corresponding scene is reached, the scenario driving unit (101-1) of the agent apparatus issues instructions (step 505-6-5: FIG. 19) for various processes of the scene processing (step 505-6: FIG. 18). Then, the value of the designated long-term emotion element is increased or decreased by the changed value.
As described above, by creating a screen element (scene) in which the display content of the character, the processing content, and the increase / decrease of the continuous (long-term) emotion element for display on the in-vehicle apparatus are created, the screen of the present invention is created. Element creation means is formed.
[0167]
FIG. 38B shows an end property editing window for creating a scenario in which a short-term emotion element is changed in the scenario. This editing window is displayed by selecting the scenario end position 324 displayed on the scene development screen 305 of the main window in FIG.
In this way, the instruction to change the short-term emotion element can be set differently depending on the way of ending the scenario. As described above, the end element (end position) of the screen element (scene) is set to increase or decrease the temporary (short-term) emotion element of the character, thereby forming the end element setting means of the present invention.
In the agent device of the present embodiment, since the long-term emotion element changes by increasing or decreasing the emotion element value before the change, it can be changed little by little for each scene. On the other hand, the short-term emotion element does not reflect the emotion element value before the change, only the element corresponding to the new emotion is set, and the others become zero, so if it is changed for each scene, the agent's emotion changes rapidly. When you return, you're not human. For this reason, by changing the short-term emotional element according to the scenario, it is possible to create a scenario in which a more human-like emotional change is performed by setting the scenario.
In the editing window of FIG. 38B, the degree of change displayed in the lower layer of each short-term emotion element is set to “slight”, “normal”, and “pretty”. The degree of change is divided corresponding to “small”, “medium”, and “large” in FIG. 9B. For example, “slight” is 30, “medium” is 70, and “large” is 100. Change values are specified.
[0168]
FIG. 39 shows a flow of a screen operation for compiling the created scenario into a real machine format (NAV format) usable by the agent device.
When the scenario compile button 325 is clicked in FIG. 39A, a scenario compiler window (b) is displayed.
In the scenario compiler window (b), specify the name of the file to output the compiled data, select the scenario to be converted at the same time (convert the scenarios checked in the scenario list at the same time), and click the compile button. The scenario compiler (240-1-2) starts data conversion. The data conversion status is displayed on the result display unit.
When the end button is clicked, the data conversion ends and the process returns to the main window (a).
[0169]
As described above, a screen element transition body creation unit that creates a screen element transition body (scenario) by combining the screen element, the transition condition, and the end element 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.
[0170]
As described above, according to the scenario creation device of the present embodiment, the display state instructing the movement of the character in each scene of the scenario is shared irrespective of the type of the character, so that the execution can be performed irrespective of the character. Scenarios can be created, and scenarios created for each character can be combined into one, which facilitates scenario creation.
[0171]
Further, according to the agent device of the embodiment described above, the long-term emotion element and the short-term emotion element are defined as the psychological state of the agent, the behavior is determined by referring to both the emotion elements, and the agent can be made more human-like. You can behave.
The scenario creation device can create a scenario of an agent that behaves more humanely by enabling both emotional elements to be set as scenario transition conditions, and by enabling both emotional conditions to be changed in the scenario.
[0172]
Further, according to the present embodiment, the process of judging whether the condition for autonomously activating (automatically appearing) the agent based on the scenario data created by the scenario creating device is satisfied is performed periodically or in a specific state. Is executed when the condition is satisfied, and the agent can automatically appear when the condition is satisfied.
On the other hand, according to the scenario creation device and the scenario editor of the present embodiment, regardless of the knowledge of the program, by having the scenario editor, the agent that automatically appears and responds when a specific condition is satisfied. Scenario data can be easily created and edited.
[0173]
【The invention's effect】
According to the in-vehicle device according to the first to third aspects, it is possible to change the emotion element value of the character according to the screen element transition body in which the display content and the processing content of the character are defined.
According to the fourth and fifth aspects of the present invention, it is possible to easily create a screen element transition body defining the display contents and processing contents of a character for realizing the agent function by executing the processing on the on-vehicle apparatus. The emotion element value of the character in the vehicle-mounted device can be changed depending on the content.
[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 situation detection devices in the agent device according to the first embodiment;
FIG. 3 is an explanatory diagram showing a relationship between an agent processing unit realized by executing a program 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 recorded on an external storage medium.
FIG. 6 is an explanatory diagram showing the contents of mental model data in the concept provision.
FIG. 7 is an explanatory diagram conceptually showing a long-term emotion element.
FIG. 8 is an explanatory diagram exemplifying prescribed contents of a long-term emotion change condition.
FIG. 9 is an explanatory diagram showing a short-term emotion element in concept provision.
FIG. 10 is an explanatory diagram exemplifying prescribed contents of a short-term emotion change condition.
FIG. 11 shows a configuration of real machine format scenario data.
FIG. 12 is an explanatory diagram conceptually showing character data.
FIG. 13 is an explanatory diagram conceptually showing driver information data.
FIG. 14 is an explanatory diagram illustrating an example of a scene screen displayed on a display device based on scene data of a scenario.
FIG. 15 is a screen transition diagram showing, for each scene, transition of a scene screen according to a guidance scenario transmitted from a ryokan to a staying guest.
FIG. 16 is a flowchart illustrating a scenario autonomous activation determination process performed by an autonomous activation determination unit.
FIG. 17 is a flowchart showing the contents of a condition determination process.
FIG. 18 is a flowchart illustrating an example of the flow of a scenario execution process.
FIG. 19 is a flowchart illustrating an example of a flow of a scene process.
FIG. 20 is a configuration diagram of a scenario creation device.
FIG. 21 conceptually shows a configuration of a scenario editing program and data.
FIG. 22 conceptually shows data format conversion.
FIG. 23 illustrates items that can be set as automatic start items.
FIG. 24 is a scene branch item table storing branch items (transition conditions) for branching (scene development) from one scene to the next scene.
FIG. 25 illustrates an additional condition table.
FIG. 26 is an explanatory diagram conceptually showing a part of the content 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 content of the character display state instruction table stored in the common definition DB.
FIG. 28 illustrates a configuration of a main window displayed on a display device when a scenario editor is activated.
FIG. 29 illustrates a flow of a screen operation for editing a scenario property.
FIG. 30 illustrates a flow of a screen operation for editing a scenario start condition from a main edit window of a scenario start condition.
FIG. 31 illustrates a flow of a screen operation for selecting a screen configuration to be displayed on the agent display screen.
FIG. 32 illustrates a flow of a screen operation for editing a character motion (agent operation) instruction.
FIG. 33 illustrates a flow of a screen operation for editing a speech instruction of a character (agent).
FIG. 34 illustrates a flow of a screen operation for editing the voice recognition dictionary.
FIG. 35 illustrates a flow of a screen operation for editing a flow of a scenario.
FIG. 36 is a flowchart illustrating an example of a flow of a scenario executed by an agent device when an emotional state of an agent is set as a scene branch condition (transition condition).
FIG. 37 illustrates a flow of a screen operation for editing a scenario end position.
FIG. 38 is an explanatory diagram showing an operation screen for creating a scenario for changing a long-term emotional element and a short-term emotional element of an agent device defined as a psychological state of an agent.
FIG. 39 illustrates a flow of a screen operation for compiling the created scenario into a format of a real machine format usable for navigation.
[Explanation of symbols]
1 agent device
2 Scenario creation device
3 server
(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)

キャラクタの表示内容、処理内容及び持続的感情要素の増減の少なくとも1つが定義された画面要素を1画面要素とし、該画面要素と、画面要素間の移行条件と、キャラクタの一時的感情要素の増減が定義された画面要素の終了要素と、を組み合わせて構成された画面要素推移体を記憶する画面要素推移記憶手段と、
キャラクタの持続的な感情を表す持続的感情要素及び一時的な感情を表す一時的感情要素の値を記憶する感情要素記憶手段と、
車載の各種状況に基づき、前記画面要素推移記憶手段に記憶された画面要素推移体を実行する画面要素推移体実行手段と、
前記実行した画面要素推移体の推移に基づき、前記感情要素記憶手段に記憶された持続的感情要素及び一時的感情要素の値を変更する感情変化手段と、
を具備することを特徴とする車載装置。
A screen element in which at least one of the display content of the character, the processing content, and the increase / decrease of the continuous emotion element is defined as one screen element, the screen element, the transition condition between the screen elements, and the increase / decrease of the temporary emotion element of the character Screen element transition storage means for storing a screen element transition body configured by combining the end element of the screen element defined by
Emotion element storage means for storing a value of a persistent emotion element representing a persistent emotion of the character and a temporary emotion element representing a temporary emotion;
Screen element transition body execution means for executing the screen element transition body stored in the screen element transition storage means based on various conditions of the vehicle,
Based on the transition of the executed screen element transition body, emotion changing means for changing the value of the persistent emotion element and the temporary emotion element stored in the emotion element storage means,
An in-vehicle device comprising:
前記感情要素変化手段は、
前記画面要素の指示に応じて前記持続的感情要素の値が増減し、
前記終了要素の指示及び時間の経過に応じて一時的感情要素の値が増減する
ことを特徴とする請求項1に記載の車載装置。
The emotion element changing means,
The value of the persistent emotion element increases or decreases according to the instruction of the screen element,
The in-vehicle device according to claim 1, wherein the value of the temporary emotion element increases or decreases according to the instruction of the end element and the passage of time.
前記キャラクタの表示内容は、キャラクタの表情表示及び服装表示を含み、
前記キャラクタの表情表示及び服装表示は、前記一時的感情要素の値により変化する
ことを特徴とする請求項1に記載の車載装置。
The display content of the character includes a character expression display and a clothing display,
The in-vehicle device according to claim 1, wherein the expression display and the clothing display of the character change according to the value of the temporary emotion element.
車載装置に表示する、キャラクタの表示内容、処理内容及び持続的感情要素の増減が定義された画面要素を作成する画面要素作成手段と、
前記画面要素から次の画面要素へ移行する移行条件を、時間、場所、道路種別、車両状態、ナビゲーションの稼動状態、使用者データのうち少なくとも1つより設定する移行条件設定手段と、
前記画面要素の終了要素に、前記キャラクタの一時的感情要素の増減を設定する終了要素設定手段と、
前記画面要素、移行条件及び終了要素を組み合わせて画面要素推移体を作成する画面要素推移体作成手段と、
を具備することを特徴とするデータ作成装置。
Screen element creating means for creating a screen element in which the display content of the character, the processing content, and the increase / decrease of the continuous emotion element to be displayed on the in-vehicle device are defined,
Transition condition setting means for setting a transition condition for transitioning from the screen element to the next screen element from at least one of time, place, road type, vehicle state, navigation operation state, and user data;
End element setting means for setting an increase or decrease of the temporary emotion element of the character as an end element of the screen element,
A screen element transition body creating means for creating a screen element transition body by combining the screen element, the transition condition, and the end element;
A data creation device comprising:
前記持続的感情要素及び一時的感情要素は、前記移行条件として設定する
ことを特徴とする請求項4に記載のデータ作成装置。
The data creation apparatus according to claim 4, wherein the persistent emotion element and the temporary emotion element are set as the transition condition.
JP2003094675A 2003-03-31 2003-03-31 Vehicle-mounted device and data preparation device Pending JP2004301651A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003094675A JP2004301651A (en) 2003-03-31 2003-03-31 Vehicle-mounted device and data preparation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003094675A JP2004301651A (en) 2003-03-31 2003-03-31 Vehicle-mounted device and data preparation device

Publications (1)

Publication Number Publication Date
JP2004301651A true JP2004301651A (en) 2004-10-28

Family

ID=33407189

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003094675A Pending JP2004301651A (en) 2003-03-31 2003-03-31 Vehicle-mounted device and data preparation device

Country Status (1)

Country Link
JP (1) JP2004301651A (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012242187A (en) * 2011-05-17 2012-12-10 Yupiteru Corp System and program
JP2016165999A (en) * 2016-04-01 2016-09-15 株式会社ユピテル System and program
JP2017037077A (en) * 2016-08-30 2017-02-16 株式会社ユピテル System and program
JP2017151394A (en) * 2016-02-26 2017-08-31 シャープ株式会社 Control device, method for controlling control device, and display device
JP2018083583A (en) * 2016-11-25 2018-05-31 本田技研工業株式会社 Vehicle emotion display device, vehicle emotion display method and vehicle emotion display program
JP2018163158A (en) * 2018-05-02 2018-10-18 株式会社ユピテル System and program

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012242187A (en) * 2011-05-17 2012-12-10 Yupiteru Corp System and program
JP2017151394A (en) * 2016-02-26 2017-08-31 シャープ株式会社 Control device, method for controlling control device, and display device
JP2016165999A (en) * 2016-04-01 2016-09-15 株式会社ユピテル System and program
JP2017037077A (en) * 2016-08-30 2017-02-16 株式会社ユピテル System and program
JP2018083583A (en) * 2016-11-25 2018-05-31 本田技研工業株式会社 Vehicle emotion display device, vehicle emotion display method and vehicle emotion display program
JP2018163158A (en) * 2018-05-02 2018-10-18 株式会社ユピテル System and program

Similar Documents

Publication Publication Date Title
US20040225416A1 (en) Data creation apparatus
JP5019145B2 (en) Driver information collection device
JP6397067B2 (en) System and method for integrating third party services with a digital assistant
CN101939740B (en) Natural language speech user interface is provided in integrating language navigation Service environment
JP4193300B2 (en) Agent device
JP2008290714A (en) On-vehicle apparatus
JP4259054B2 (en) In-vehicle device
JP4441939B2 (en) Destination setting device
JP2001235343A (en) Information output device
JP2004037953A (en) On-vehicle device, and device and program for data creation
JP4258607B2 (en) In-vehicle device
JP4253918B2 (en) Agent device
JP2004301651A (en) Vehicle-mounted device and data preparation device
JP2005190192A (en) Onboard system
JP2004054883A (en) Onboard agent system and interactive operation control system
JP4284733B2 (en) Agent device
JP7274404B2 (en) INFORMATION PROVIDING DEVICE, INFORMATION PROVIDING METHOD AND PROGRAM
JP4356450B2 (en) In-vehicle device
JP2003157489A (en) Operation control device
JP2004053251A (en) In-vehicle device, data creating device and data creation program
JP2004050975A (en) In-vehicle device, data preparation device, and data preparation program
JP2004302904A (en) Data preparing device
JP4059019B2 (en) In-vehicle device and data creation device
JP2004061252A (en) On-vehicle device, data generation device and data generation program
JP2004051074A (en) In-vehicle device, data preparation device, and data preparation program