説明

対話装置、対話方法、対話プログラムおよびコンピュータに読み取り可能な記録媒体

【課題】1つのヒューマンインターフェースが備える処理機能を限定し、それにより処理中のヒューマンインターフェースで不要な処理を持つことによる処理負担の軽減を図ること。
【解決手段】対話装置は、車載装置が有する複数の機能のそれぞれに対応した、搭乗者との対話のための複数のヒューマンインターフェースの中から、所望の機能に対応したヒューマンインターフェースを一つ選択する選択部101と、選択部101によって選択されたヒューマンインターフェースからのメッセージを出力し、このヒューマンインターフェースが出力したメッセージに対する返答の入力を受け付けることにより対話を実行する対話部102と、対話部102によって実行された対話内容に基づいて、車載装置の機能を実行する実行部103と、を備えることを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、搭乗者との対話内容に基づいて車載装置の機能を実行する対話装置、対話方法、対話プログラムおよびコンピュータに読み取り可能な記録媒体に関する。ただし、この発明の利用は、上述の対話装置、対話方法、対話プログラムおよびコンピュータに読み取り可能な記録媒体に限らない。
【背景技術】
【0002】
カーナビゲーション装置において、車両の状況および車両の状況に対応する経路誘導や警告などの情報を、ディスプレイや音声で搭乗者に案内するエージェントがある。このエージェント機能には、状況に応じて2つのエージェント機能を出現させ、1つのエージェントよりもきめ細かく、運転者の習熟度など車両状況に応じて、メッセージを出せるようにするものがある(たとえば、特許文献1参照。)。
【0003】
【特許文献1】特開平11−250395号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
一方、上述の案内処理は、1つのエージェントで全体が管理される。2つのエージェントがある場合でも、2つのエージェントはそれぞれキャラクタが異なるというだけであって、2つのエージェントの両方がそれぞれ全体を管理する。まったく別系統の案内処理であっても一元的に処理されるので、処理効率が悪いという問題が一例として挙げられる。
【0005】
たとえば、多くの待ち受け語を1つのエージェントで用意しておく必要がある。オーディオ機能に対する案内処理では、「ロック」や「ジャズ」などの音楽のジャンルに関する待ち受け語が必要になるが、カーナビゲーションに対する案内処理では、音楽に関する待ち受け語を用意する必要がない。このように、不要な待ち受け語をもつことにより、処理負担が上がる場合があり、また、音声は似ているがまったく関係のない待ち受け語の間での誤認識が発生する場合があるという問題が一例として挙げられる。
【課題を解決するための手段】
【0006】
請求項1の発明にかかる対話装置は、車載装置が有する複数の機能のそれぞれに対応した、搭乗者との対話のための複数のヒューマンインターフェースの中から、所望の機能に対応したヒューマンインターフェースを一つ選択する選択手段と、前記選択手段によって選択されたヒューマンインターフェースからのメッセージを出力し、該ヒューマンインターフェースが出力したメッセージに対する返答の入力を受け付けることにより対話を実行する対話手段と、前記対話手段によって実行された対話内容に基づいて、前記車載装置の機能を実行する実行手段と、を備えることを特徴とする。
【0007】
また、請求項10の発明にかかる対話方法は、車載装置が有する複数の機能のそれぞれに対応した、搭乗者との対話のための複数のヒューマンインターフェースの中から、所望の機能に対応したヒューマンインターフェースを一つ選択する選択工程と、前記選択工程によって選択されたヒューマンインターフェースからのメッセージを出力し、該ヒューマンインターフェースが出力したメッセージに対する返答の入力を受け付けることにより対話を実行する対話工程と、前記対話工程によって実行された対話内容に基づいて、前記車載装置の機能を実行する実行工程と、を含むことを特徴とする。
【0008】
また、請求項11の発明にかかる対話プログラムは、請求項10に記載の対話方法をコンピュータに実行させることを特徴とする。
【0009】
また、請求項12の発明にかかるコンピュータに読み取り可能な記録媒体は、請求項11に記載の対話プログラムを記録したことを特徴とする。
【発明を実施するための最良の形態】
【0010】
以下に添付図面を参照して、この発明にかかる対話装置、対話方法、対話プログラムおよびコンピュータに読み取り可能な記録媒体の好適な実施の形態を詳細に説明する。図19は、この発明の実施の形態にかかる対話装置の機能的構成を示すブロック図である。この実施の形態の対話装置は、選択部101、対話部102、実行部103、履歴記録部104、履歴出力部105、指定部106、スクラップ記録部107、検索部108により構成されている。
【0011】
選択部101は、車載装置が有する複数の機能のそれぞれに対応した、搭乗者との対話のための複数のヒューマンインターフェースの中から、所望の機能に対応したヒューマンインターフェースを一つ選択する。ヒューマンインターフェースは、ユーザーとの対話によりユーザーの代わりに操作するエージェントとすることができ、たとえば、カーナビゲーション用のエージェントやオーディオ用のエージェントを含むことができる。
【0012】
対話部102は、選択部101によって選択されたヒューマンインターフェースからのメッセージを出力し、該ヒューマンインターフェースが出力したメッセージに対する返答の入力を受け付けることにより対話を実行する。メッセージの出力および返答の入力は、音声認識および音声出力により可能であるが、画面上へのテキストの表示により実行することもできる。
【0013】
実行部103は、対話部102によって実行された対話内容に基づいて、車載装置の機能を実行する。たとえば、車載機器がカーナビゲーション装置であり、選択されたヒューマンインターフェースがカーナビゲーション用のエージェントであるとする。対話の内容によりあるレストランへ向かうことになった場合、実行部103は、その対話の内容によって決定されたレストランへの経路を探索し、車両を目的地へ誘導する。
【0014】
履歴記録部104は、対話部102によって実行された対話の履歴を記録する。対話の履歴は、対話の内容そのものを記録することができるが、対話のメッセージの主体のあとにメッセージを続けたものを一つのメッセージとして、その集合を対話の履歴とすることができる。対話のメッセージの主体は、たとえばユーザーの場合はユーザーの名前、ヒューマンインターフェースの場合は、選択されたヒューマンインターフェースの名前とすることができる。
【0015】
履歴出力部105は、履歴記録部104によって記録された対話の履歴を出力する。出力の方法は、音声で全対話内容を出力することができる。また、テキストで出力することができる。また、テキストで出力する場合、文章だけで出力するのではなく、メッセージの内容に即した顔文字や画像をテキストに付加したものを出力することができる。
【0016】
指定部106は、履歴記録部104によって記録された対話の履歴において範囲を指定する。また、指定部106は、スクラップ記録部107によって記録されたスクラップに含まれるメッセージを指定する。この場合、対話部102は、指定部106によって指定されたメッセージの位置から、対話を再開する。
【0017】
スクラップ記録部107は、指定部106によって指定された範囲を、スクラップとして記録する。対話部102は、スクラップ記録部107によって記録されたスクラップの最後のメッセージから、対話を再開する。また、スクラップ記録部107は、スクラップ記録部107によって記録されたスクラップの中からさらに対話内容の範囲を指定し、指定した対話内容の範囲を、さらに新たなスクラップとして記録する。また、スクラップ記録部107は、スクラップ記録部107によって記録されたスクラップを複数繰り返したものを、さらに新たなスクラップとして記録する。
【0018】
検索部108は、スクラップ記録部107によって記録されたスクラップから、予め指定した条件に合致するスクラップを検索する。対話部102は、検索部108によって検索されたスクラップの最後のメッセージから、対話を再開する。また、検索部108は、前記スクラップの最後のメッセージが予め定めた所定のメッセージである場合に、条件に合致するスクラップであるとすることができる。
【0019】
最後のメッセージが所定のメッセージである複数のスクラップが検索結果として得られた場合には、対話部102は、該当するスクラップを区別する質問をメッセージとして出力して該メッセージに対する返答の入力を受け付け、検索部108は、メッセージに対する返答の内容に基づいて、条件に合致するスクラップを検索する。
【0020】
図1は、この発明の実施の形態にかかる対話方法の処理を示すフローチャートである。まず、選択部101は、ヒューマンインターフェースを一つ選択する(ステップS201)。すなわち、車載装置が有する複数の機能のそれぞれに対応した、搭乗者との対話のための複数のヒューマンインターフェースの中から、所望の機能に対応したヒューマンインターフェースを一つ選択する。このヒューマンインターフェースの機能により、人間とコンピュータの情報伝達を仲介することができる。
【0021】
次に、対話部102は対話を実行する(ステップS202)。すなわち、選択部101によって選択されたヒューマンインターフェースからのメッセージを出力し、該ヒューマンインターフェースが出力したメッセージに対する返答の入力を受け付けることにより対話を実行する。
【0022】
次に、この対話内容にしたがった処理を実行するか否かを判定し(ステップS203)、処理を実行する場合(ステップS203:Yes)、実行部103は、対話部102によって実行された対話内容に基づいて、車載装置の機能を実行し(ステップS204)、一連の処理を終了する。処理を実行しない場合(ステップS203:No)、履歴記録部104は、対話部102によって実行された対話の履歴を記録する(ステップS205)。そして、履歴出力部105は、履歴記録部104によって記録された対話の履歴を出力し(ステップS206)、一連の処理を終了する。
【0023】
図2は、この発明の実施の形態にかかる対話方法において、対話の履歴をスクラップする場合の処理を示すフローチャートである。まず、履歴記録部104によって記録された対話の履歴において、範囲を指定する(ステップS211)。スクラップ記録部107は、指定部106によって指定された範囲を、スクラップとして記録する(ステップS212)。
【0024】
次に、対話を再開するか否かを判定し(ステップS213)、対話を再開する場合(ステップS213:Yes)、メッセージを指定するか否かを判定する(ステップS214)。メッセージを指定する場合(ステップS214:Yes)、指定部106は、スクラップ記録部107によって記録されたスクラップに含まれるメッセージを指定する(ステップS215)。そして、対話部102は、指定されたメッセージの位置から対話を再開し(ステップS216)、一連の処理を終了する。メッセージを指定しない場合(ステップS214:No)、対話部102は、スクラップ記録部107によって記録されたスクラップの最後のメッセージから、対話を再開し(ステップS216)、一連の処理を終了する。
【0025】
次に、対話を再開しない場合(ステップS213:No)、再度スクラップするか否かを判定する(ステップS217)。再度スクラップしない場合(ステップS217:No)、ステップS219に進む。再度スクラップする場合(ステップS217:Yes)、スクラップ記録部107は、再度スクラップをする(ステップS218)。具体的には、スクラップ記録部107によって記録されたスクラップの中からさらに対話内容の範囲を指定し、指定した対話内容の範囲を、さらに新たなスクラップとして記録する。この再度のスクラップとして、スクラップ記録部107は、スクラップ記録部107によって記録されたスクラップを複数繰り返したものを、さらに新たなスクラップとして記録することもできる。
【0026】
次に、検索部108は、スクラップ記録部107によって記録されたスクラップから、予め指定した条件に合致するスクラップを検索する(ステップS219)。条件に合致するスクラップがない場合(ステップS220:No)、一連の処理を終了する。条件に合致するスクラップがある場合(ステップS220:Yes)、条件に合致するスクラップが複数のスクラップか否かを判定する(ステップS221)。条件の合致については、前記スクラップの最後のメッセージが予め定めた所定のメッセージである場合に、条件に合致するスクラップであるとすることができる。
【0027】
複数のスクラップでない場合(ステップS221:No)、対話部102は、検索部108によって検索されたスクラップの最後のメッセージから対話を再開する(ステップS216)。複数のスクラップである場合(ステップS221:Yes)、対話部102は、該当するスクラップを区別する質問をメッセージとして出力する(ステップS222)。そして、このメッセージから対話を再開し(ステップS216)、一連の処理を終了する。
【0028】
以上説明した実施の形態により、搭乗者は所望の機能に対応したヒューマンインターフェースを選択し、選択したヒューマンインターフェースとの対話により所望の機能を実行することができるので、1つのヒューマンインターフェースが備える処理機能を限定することができる。それにより処理中のヒューマンインターフェースで必要のない処理をする必要がなくなり、たとえば不要な待ち受け語を持つことによる誤認識を回避することができる。
【実施例】
【0029】
(ハードウエア構成)
図3は、この発明の実施例にかかる対話装置のハードウエア構成の一例を示すブロック図である。対話装置は、ナビゲーション制御部300と、ユーザー操作部301と、位置認識部302と、記録媒体303と、記録媒体デコード部304と、エージェント制御部310と、表示部311と、表示制御部312と、案内音出力部313と、スピーカ314と、マイク315と、音声認識部316と、エージェント記憶部320と、スクラップ記憶部330とを含む構成となっている。
【0030】
なお、ナビゲーション制御部300、エージェント制御部310、案内音出力部313、音声認識部316は、たとえば所定の演算処理を実行するCPU(Central Processing Unit)、各種制御プログラムを格納するROM(Read Only Memory)およびCPUのワークエリアとして機能するRAM(Random Access Memory)などによって構成されるマイクロコンピュータなどによって実現することができる。
【0031】
ナビゲーション制御部300は、ナビゲーション装置全体を制御する。また、任意の地点を検索し、得られた地点情報に基づいて、当該地点までの最適な経路を算出する。また、この経路と自車位置情報に基づいて、リアルタイムな経路誘導情報の生成をおこなう。図19に示した実行部103は、このナビゲーション制御部300によって実現される。ユーザー操作部301は、操作ボタン、リモコン、タッチパネルなどを含む。図19に示した指定部106はこのユーザー操作部301によって実現される。
【0032】
位置認識部302は、自車位置情報を取得する。ここで自車位置情報は、GPS衛星からの電波を受信し、GPS衛星との幾何学的位置を求めるものであり、地球上どこでも計測可能である。電波としては、C/A(Coarse and Access)コードおよび航法メッセージが乗っているL1電波を用いておこなわれる。これによって、現在の車両の位置(緯度および経度)を検知する。また、車速センサやジャイロセンサなど各種センサによって収集された情報を加味してもよい。
【0033】
記録媒体303は、たとえば、ハードディスク(HD)であり、その代わりにあるいはHDに加えて、DVD、コンパクトディスク(CD)などの着脱可能な記録媒体であってもよい。また、記録媒体デコード部304は、HD、DVD、CDを読み取り/書き込みの制御をおこなう。
【0034】
エージェント制御部310は、自車の目的地、現在位置、進行経路など、エージェント制御部310による制御内容に関する情報を、運転者との対話形式で運転者に伝えたり、運転者に回答を促したりするメッセージを作成する。作成したメッセージは案内音出力部313に出力する。
【0035】
エージェント制御部310は、ユーザーとの対話によりユーザーの代わりに操作するエージェントとしての動作を実行する。すなわち、このエージェントとしての動作は、人間とコンピュータの情報伝達を仲介する機能であり、ヒューマンインターフェースの一種である。以降、このエージェントとしての動作の主体をエージェントと呼ぶ。図19に示した選択部101、対話部102、履歴記録部104、履歴出力部105、スクラップ記録部107、検索部108は、このエージェント制御部310によって実現される。
【0036】
表示部311は、液晶ディスプレイや有機ELディスプレイなどを含む。表示制御部312は、エージェント制御部310から入力されたメッセージを表示部311の表示画面に表示する。表示制御部312は、位置認識部302によって算出された自車位置情報と、記録媒体303から記録媒体デコード部304を経由して得られた地図DB情報とに基づいて、表示部311の表示画面に地図上のどの位置を走行しているかを表示する。
【0037】
案内音出力部313は、パターンに対応したトーンと音声のデータを生成する。すなわち、エージェント制御部310で作成されたメッセージを音声のデータとして作成する。また、経路情報に基づいて、案内地点に対応した音声ガイダンス情報を生成する。そして、一つまたは複数のスピーカ314への出力を制御することによって、案内音を再生する。マイク315は、運転者の近くに配置され、運転者が話す音声を集音する。音声認識部316は、マイク315で集音された音声を解析して、集音された音声の内容を認識し、エージェント制御部310に出力する。
【0038】
エージェント記憶部320は、エージェント制御部310で実行されるエージェントの情報を記憶する。エージェント記憶部320は、エージェント情報321〜323を記憶し、それぞれが各エージェントの待ち受け語やキャラクタデータ、シナリオデータ、回答および質問するメッセージの内容を含む。エージェント制御部310は、このエージェント記憶部320に記憶されるエージェント情報321〜323のいずれかを読み出すことにより、エージェントとしての動作を実行する。
【0039】
エージェント情報321〜323は、たとえばカーナビ(カーナビゲーション装置)のエージェントや、オーディオのエージェント、携帯電話が接続されている場合(図示しない)、携帯電話のエージェントの情報とすることができる。なお、エージェント情報321〜323の3つを例に挙げて説明しているが、4つ以上であってもよい。
【0040】
スクラップ記憶部330は、スクラップ情報331〜333を記憶する。スクラップ情報331〜333は、ユーザーとエージェントの間の対話ログ(履歴)から一部切り取ったメッセージの集合を含む。なお、スクラップ情報331〜333の3つを例に挙げて説明しているが、4つ以上であってもよい。
【0041】
図4は、オーディオエージェントとの対話内容を説明する説明図である。オーディオエージェントは、図3で説明したエージェントの一例である。各エージェントはそれぞれ独立して存在しており、必要に応じて呼び出すことによりエージェント機能を実行することができる。オーディオエージェントは車両に備えられたオーディオの操作をするエージェントである。表示画面400には、オーディオエージェントの対話の内容が表示されており、表示画面400に示される対話の内容は、ログ401とログ402の通りである。
【0042】
ログ401に示す内容の対話をする場合について説明する。最初に、ユーザーはオーディオエージェントを呼び出す。オーディオエージェントには「オーディオ太郎」という名前がつけられており、ユーザーは「オーディオ太郎」と呼ぶことによりオーディオエージェントを呼び出すことができる。ユーザーからのメッセージの内容およびオーディオエージェントからのメッセージの内容は、ログ401に示されるように順次記録されていく。
【0043】
これに対し、オーディオエージェント(図中、オーディオ太郎)は、「何か用?」と返答する。これに対し、ユーザーは「ロック」と回答する。この指示は、ロックに分類された楽曲を選択する意味である。この回答を受けて、オーディオエージェントは、「ロックにするね。」と返答する。
【0044】
次に、オーディオエージェントは、「年代はどうする?」と返答する。これに対してユーザーは、「70年代」と回答する。これは、ロックに分類された楽曲の中から、さらに70年代に分類される楽曲を選択する意味である。この回答を受けて、オーディオエージェントは、「了解。」と回答する。
【0045】
ここで、ユーザーからオーディオエージェントに指示された内容は「ロック」「70年代」だけである。この指示を受けて、オーディオエージェントは、ロックで70年代の楽曲の中から該当する楽曲をさがして再生する。該当する楽曲が複数ある場合は、さらに質問をすすめるか、該当する楽曲の中から1つを選んで再生する。楽曲の選択は、ランダムでも、もっとも再生回数が多いものを優先することも、最近再生されたものを優先することもできる。
【0046】
次に、ログ402に示す内容の対話をする場合について説明する。再生した後または再生している間に、ユーザーは次の曲を選択することができる。ここで、ユーザーは再び「オーディオ太郎」と呼ぶことにより、オーディオエージェントを呼び出す。これに対し、オーディオエージェントは、呼び出され、「何?」と返答する。これに対し、ユーザーは「明るい曲」と回答する。この指示は、明るい曲に分類された楽曲を選択する意味である。この回答を受けて、オーディオエージェントは、「オッケー。」と返答する。
【0047】
さらに、オーディオエージェントは、「ジャンルは指定しなくていい?」と質問する。これに対し、ユーザーは、「はい」と回答する。そして、オーディオエージェントは、「了解。」と返答する。
【0048】
ここで、ユーザーからオーディオエージェントに指示された内容は「明るい曲」「ジャンルは指定しなくていい。」だけである。この指示を受けて、オーディオエージェントは、明るい曲ですべてのジャンルの楽曲の中から該当する楽曲をさがして再生する。該当する楽曲が複数ある場合は、さらに質問をすすめるか、該当する楽曲の中から1つを選んで再生する。楽曲の選択は、ランダムでも、もっとも再生回数が多いものを優先することも、最近再生されたものを優先することもできる。
【0049】
図5は、カーナビエージェントとの対話内容を説明する説明図である。カーナビエージェントも、オーディオエージェント同様に、図3で説明したエージェントの一例である。カーナビエージェントはカーナビゲーション装置の操作をするエージェントである。表示画面500には、カーナビエージェントの対話の内容が表示されており、表示画面500に示される対話の内容は、ログ501とログ502の通りである。
【0050】
まず、ログ501に示す内容の対話をする場合について説明する。最初に、ユーザーはカーナビエージェントを呼び出す。カーナビエージェントには「カーナビ花子」という名前がつけられており、ユーザーはその略称である「ナビ子」を呼ぶことにより、カーナビエージェントを呼び出すことができる。
【0051】
そして、カーナビエージェント(図中、ナビ子)が呼び出され、「何かご用ですか?」と返答する。これに対し、ユーザーは「自宅へ帰る」と回答する。この回答を受けて、カーナビエージェントは、「自宅へのルート設定をします。」と返答し、現在位置から自宅へのルートを探索する。
【0052】
次に、ログ502に示す内容の対話をする場合について説明する。ユーザーは同様に「ナビ子」と呼ぶことによりカーナビエージェントを呼び出す。そして、カーナビエージェントは、呼び出され「何でしょうか?」と返答する。これに対し、ユーザーは「周辺のレストラン」と回答する。この回答を受けて、カーナビエージェントは、「周辺のレストランを検索します。」と返答する。
【0053】
次に、カーナビエージェントは、「食べたいモノはありますか?」と質問する。これに対し、ユーザーは「カレー」と回答する。そして、カーナビエージェントは、「カレーのおいしいお店を検索します。」と返答する。
【0054】
カーナビエージェントは、以上の回答内容に基づいて、現在位置から所定の範囲内にあるカレーを提供するレストランを検索する。現在位置からの範囲は、所要時間でも、直線距離でも、最短経路の合計距離でも、いずれでもよい。カレーを提供するレストランは、カレー専門店でも、ファミリーレストランなどのカレーがメニューに含まれるレストランでも、いずれでもよい。検索を可能にするために、各レストランの情報に、「カレー」という検索項目を対応して記憶させておく。
【0055】
検索した結果、該当するレストランが1つだけの場合、そのレストランを提示するが、複数ある場合は、その中から1つを選ばせることになる。そこで、カーナビエージェントは、「いくつか候補がありますが、人気のあるお店にしましょうか?」と提案する。これに対し、ユーザーは「はい。」と回答する。そして、カーナビエージェントは、検索結果のレストランの中から人気のレストランを選択して提示し、選択されたレストランを目的地として経路を探索する。そして、探索された経路にしたがって車両の経路を誘導する。
【0056】
以上の各エージェントとの間の対話の内容は、対話ログの形で保存しておくことができる。この対話ログは、タッチパネルなどでスクロールすることができ、過去のメッセージを指定することにより、指定したメッセージから対話を再開することができる。
【0057】
また、音声認識により単語を認識し、認識された単語を対話ログの中から検索し、検索語に対応するメッセージを表示することもできる。その結果、エージェントからのメッセージを聞き逃したり、メッセージの内容を忘れたりした場合でも、対話ログから話の流れを再度確認することができる。また、対話ログをさかのぼって、さかのぼった時点から対話をやり直す、やり直し処理を実行することもできる。
【0058】
図6は、複数のエージェントの切り替え処理を説明するフローチャートである。ここで、2つのエージェントがあることを例に挙げて説明するが、上述のようにエージェントの数は3つ以上でもよい。まず、ユーザーからの入力によりエージェントを選択する(ステップS601)。ユーザーは、発話ボタンの入力またはワードスポッティングによってエージェントを選択することができる。次に、選択したエージェントはどのエージェントであるかを判別する(ステップS602)。
【0059】
選択したエージェントがオーディオエージェントの場合(ステップS602:オーディオ)、エージェント制御部310はオーディオエージェントを選択する(ステップS603)。そして、オーディオエージェントによってオーディオ操作の処理を実行し(ステップS604)、処理を終了する。
【0060】
選択したエージェントがカーナビエージェントの場合(ステップS602:カーナビ)、エージェント制御部310はカーナビエージェントを選択する(ステップS605)。そして、カーナビエージェントによってカーナビ操作を行い(ステップS606)、処理を終了する。
【0061】
以上のように、各エージェントがそれぞれ別の機能をもつので、たとえば、エージェントごとに待ち受け語を別々に持たせておくことができる。それにより、たとえば、オーディオエージェントでは「ロック」や「ジャズ」などの音楽のジャンルに関する待ち受け語を用意することにより所望の対話ができる一方で、カーナビエージェントでは音楽に関する待ち受け語を用意する必要がない。
【0062】
図7は、対話ログのやり直し処理を説明する説明図である。ここで、図4で説明した表示画面400に示すように対話し、メッセージ701から対話をやり直したい場合を例に挙げて説明する。表示画面400に示されるように、対話の内容は、ログ401とログ402の通りである。つまり、メッセージ701が示す「年代はどうする?」という質問に対して、ユーザーが「70年代」と回答したものの、その回答内容をやり直したいという場合である。
【0063】
このやり直し処理を実行した場合、表示画面700のようになる。表示画面700に示すように、ログ702とログ703に示す内容の対話が進行する。すなわち、ログ702に示すように、ログ401の途中のメッセージ701のところから対話を再開する。そこで、再びメッセージ701が示す「年代はどうする?」の質問に戻ることができる。
【0064】
ここで、ログ702に示す対話の内容は終了しているとして扱われる。そこで、ログ703に示すように、ユーザーは、「適当に」と回答することができる。これに対してオーディオエージェントは、「じゃあ、年代にこだわらずロックをかけるね。」と回答し、ロックに分類される楽曲の中から、ランダムに楽曲を選択する。
【0065】
図8は、対話ログのやり直し処理の流れを説明するフローチャートである。まず、画面に対話ログを表示する(ステップS801)。次に、対話ログの操作を受け付ける(ステップS802)。具体的には、やり直したい位置を選択すべく、画面に表示された対話ログを、ユーザーからの操作によりスクロールさせる。
【0066】
次に、対話ログからメッセージを選択する(ステップS803)。メッセージは、具体的にはエージェントによる質問語句、またはユーザーへの回答であり、スクロールさせた対話ログから、メッセージを選択する。
【0067】
次に、メッセージを決定する(ステップS804)。具体的には、選択した質問語句または回答を、ダブルクリックまたはエンターボタンを利用して決定する。そして、指定した対話ログのメッセージから対話を再開する(ステップS805)。この決定されたメッセージが、やり直し位置として決定され、やり直し位置から再び対話することができる。
【0068】
図9は、対話ログのスクラップ処理を説明する説明図である。ここで、図4で説明した表示画面400に示すように対話内容において、ログ401の一部をスクラップとして作成したい場合を例に挙げて説明する。表示画面400に示されるように、対話の内容は、ログ401とログ402の通りである。
【0069】
ここで、対話の内容は対話ログとして記録されているが、この対話ログの集合を一つにしたスクラップを作成し、このスクラップを指定して処理する。シナリオスクラップ900に示すように、ユーザーがログ401を呼び出し、楽曲のジャンルからロックを選択し、年代が問われるところまでの範囲901をスクラップ902にする。
【0070】
スクラップ902の他、スクラップ903〜905に示すように複数のスクラップを保存することができる。このスクラップ902〜905を選択することにより、ユーザーは、一連の対話を繰り返すことなく、同一の処理の必要な部分の実行を指示することができる。
【0071】
図10は、対話ログの範囲を指定してのスクラップ処理を説明する説明図である。図9で説明したようにスクラップ902〜905を作成することができるが、この一部を1つのスクラップとして作成することができる。まず、メッセージ1001により検索をかける。そして、図9に示すように、メッセージ1001を含むログ401を選択し、ログ401から終了位置1002を指定する。ログ401の最初から終了位置1002までの範囲により指定された、新たなスクラップ902が作成される。
【0072】
具体的に説明する。まず、ログ検索を実行する。ここで、「ロック」という検索語で検索され、ユーザーが「ロック」と回答するメッセージ1001を含むスクラップであるログ401が選択される。
【0073】
次に、スクラップしたい範囲を選択する。最初は「オーディオ太郎>了解。」が指定されており、この指定位置を変更することにより、指定範囲の最終行を決定することができる。ここで、終了位置1002に示すように、「オーディオ太郎>年代はどうする?」を指定する。
【0074】
その結果、「ユーザー>オーディオ太郎」から「オーディオ太郎>年代はどうする?」までを新しいスクラップの範囲として指定し、この指定された範囲が新たなスクラップ902として保存される。
【0075】
図11は、対話ログのスクラップ処理の流れを説明するフローチャートである。図9で説明したスクラップ処理と、図10で説明した範囲を指定してのスクラップ処理を、図11で説明する手順により実行することができる。
【0076】
まず、スクラップをGUI(Graphic User Interface)表示する(ステップS1101)。次に、条件指定によってスクラップを絞り込む(ステップS1102)。具体的には、ユーザーからの入力に基づいて条件指定し、この条件指定によってスクラップを絞り込む。次に、スクラップを選択する(ステップS1103)。具体的には、絞り込まれたスクラップが一覧表示され、ユーザーの選択により一覧表示されたスクラップから1つを選択する。
【0077】
次に、範囲指定をするか否かを判定する(ステップS1104)。範囲指定しない場合(ステップS1104:No)、選択したスクラップの最後の質問から対話が始まる(ステップS1105)。以上により、スクラップによりなされた対話の内容とその後の対話の内容から処理が選択され、途中で本来指示していない処理を省くことができ、ショートカット的な機能を実現することができる。
【0078】
範囲指定する場合(ステップS1104:Yes)、スクラップする範囲を指定する(ステップS1106)。スクラップする範囲は、図10で説明したように、ログ401の最初の行から終了位置1002までになる。スクラップを選択した時点では、スクラップの最終行が指定されているので、指定の行を上に移動させていくことにより、範囲指定の最終行を指定することができる。そして指定された範囲が新たなスクラップ902として保存され(ステップS1107)、一連の処理を終了する。
【0079】
図12は、対話ログの自動スクラップ処理を説明する説明図である。ユーザーは、エージェントとの対話によって対話ログを進行するが、発話トリガーによる対話の開始から、たとえば次の発話トリガーが入力されるなどの、対話の終了までを常に保存する。ここで、シナリオスクラップ900に示すように、スクラップ902〜905に示す複数のスクラップが保存される。
【0080】
スクラップ902〜905は、ジャンル、カテゴリなどによって分類してフォルダ区分し、フォルダ1201に保存することができる。ユーザーは、このフォルダ区分されたフォルダ階層からさがすようにすることもできる。つまり、フォルダ1201をさがし、フォルダ1201からスクラップ902または904をさがすことができる。さらに、スクラップをいくつか選び、選んだスクラップをユーザースクラップ1202として登録しておくことにより、すぐに選び出すようにすることができる。
【0081】
図13は、対話ログの繰り返し処理を説明するフローチャートである。対話ログの繰り返し処理は、1つの処理を複数回繰り返したときに、その繰り返し全体を1つのスクラップとして保存する処理である。まず、処理Aを実行する(ステップS1301)。処理Aは、たとえばスクラップ902により示される処理であるとする。この処理Aは繰り返し実行するように設定しておく。たとえば、処理Aを5回繰り返すとして設定する。
【0082】
処理中に、スクラップ操作を入力されたか否かを判定する(ステップS1302)。つまり、スクラップボタンや「スクラップ」の音声が入力されたか否かを判定する。スクラップ操作を入力された場合(ステップS1302:Yes)、スクラップ処理を実行し(ステップS1303)、一連の処理を終了する。具体的には、対話の開始から、現在の処理位置までを1つのまとまりとしてスクラップにする。たとえば、処理Aの処理が3回目である場合、処理Aの2回分と、3回目の途中までの処理を1つのまとまりのスクラップとして保存する。
【0083】
スクラップ操作が入力されていない場合(ステップS1302:No)、設定回数同じ処理Aを実行したか否か判定する(ステップS1304)。設定回数同じ処理Aを実行していない場合(ステップS1304:No)、ステップS1301に戻り、処理Aを設定回数まで繰り返す。
【0084】
設定回数同じ処理Aを実行した場合(ステップS1304:Yes)、たとえば上述の例では処理Aを5回終了した場合に、ユーザーに対してスクラップするか否かを判定する(ステップS1305)。具体的には、「何度も同じ処理を行っていますが、スクラップして簡単にこの処理を呼び出せるようにしましょうか。」というメッセージによりユーザーに対して確認し、その回答によって判定することができる。スクラップすると判定された場合(ステップS1305:Yes)、ステップS1303に戻る。スクラップしないと判定された場合(ステップS1305:No)、一連の処理を終了する。
【0085】
図14は、対話ログでスクラップを利用した対話飛ばしの処理を説明するフローチャートである。対話飛ばしとは、スクラップの最後のメッセージを検索し、検索されたメッセージから対話を開始することにより、最後のメッセージまでの一連の対話を飛ばして処理することである。
【0086】
まず、発話トリガーの入力を受け付ける(ステップS1401)。発話トリガーの入力に対して、エージェントから「何か用?」と返事される(ステップS1402)。次に、ユーザーは音声操作により、「年代はどうする?」から始めるよう指示する(ステップS1403)。エージェントは、複数のスクラップの中から「年代はどうする?」で終わるものを検索する(ステップS1404)。
【0087】
そして、検索されたスクラップの最後から処理を再開する(ステップS1405)。ここで、エージェントは、「年代はどうする?」というメッセージを出力し(ステップS1406)、ユーザーとの対話を開始する。これにより、「ロック」を選択する動作を省略することができる。また、ユーザースクラップなどで一意の呼び名をつけて呼び出すこともできる。
【0088】
図15は、対話ログで類似のスクラップがある場合のスクラップ飛ばし処理を説明する説明図である。スクラップを複数保存したとき、同じ質問で終了するスクラップ処理が存在する場合がある。図13で説明したように、検索によりスクラップを選択した場合、同一の質問で終了するものが複数挙がってくる場合があるので、その両者を区別する質問を、最後の質問の前に挿入する。
【0089】
たとえば、図15に示すように、「ロック」を選択して年代が問われた場合のスクラップ902と、「ジャズ」を選択して年代が問われた場合のスクラップ905は、オーディオエージェントにより「年代はどうする?」という問いで終了している点で同じである。そこで、音楽ジャンルを問う質問を挿入してスクラップ1500のようなメッセージを作成することにより区別する。
【0090】
図16は、対話ログで類似のスクラップがある場合のスクラップ飛ばし処理を説明するフローチャートである。まず、終了メッセージが同じスクラップを複数検索する(ステップS1601)。次に、検索された複数のスクラップについて、1つ前の質問にて、さらに違いがあるか否かを判定する(ステップS1602)。
【0091】
違いがない場合(ステップS1602:No)、さらに1つ前の質問にさかのぼる(ステップS1603)。それにより、さらに違いが見つかるまでさがす。違いがある場合(ステップS1602:Yes)、その違いのある質問について、必要とされる質問を選択する(ステップS1604)。
【0092】
そして、選択された質問を挿入する(ステップS1605)。なお、質問は自動で作成してもよいし、状況に応じて一意のシナリオにすることもできる。そして、シナリオ飛ばしを再開する(ステップS1606)。すなわち、エージェントが、その挿入された質問と最後の質問にユーザーが回答することにより、スクラップの処理を実行する。
【0093】
図17は、対話ログで顔文字表現する場合の処理を説明する説明図である。一般に、人間同士の伝え切れない感情を表現するために、メール、メッセンジャーにて顔文字、絵、記号が用いられている。図17に示すログ401では、ロック画像1701、顔文字1702〜1705が付加されて表示される。
【0094】
ロック画像1701は、ユーザーの回答である「ロック」に対応し、ロックアーティストの画像をメッセージ表示の近くに表示される。顔文字1702は、「何か用?」というメッセージに対応させて表示される。顔文字1703は、「ロックにするね。」というメッセージに対応させて表示される。顔文字1704は、「年代はどうする?」というメッセージに対応させて表示される。顔文字1705は、「了解。」というメッセージに対応させて表示される。
【0095】
この顔文字などをエージェントにも使用することにより、エージェントの意思を補完し、より自然でストレスのない対話にする。ユーザーの言葉について、イメージを自動的に検索してはめ込む。それにより、対話ログ検索がより容易になる。
【0096】
図18は、具体的な顔文字の例を説明する説明図である。質問メッセージ群1801に含まれる「何か用?」や「どうかした?」という問いに対しては、顔文字群1802が対応している。そこで、顔文字群1802に含まれる顔文字の中から、ランダムに1つを選択して顔文字1803を挿入する。
【0097】
また、回答メッセージ群1804に含まれる「了解」という了承のメッセージに対しては、顔文字群1805が対応している。そこで、顔文字群1805に含まれる顔文字の中から、ランダムに1つを選択して顔文字1806を挿入する。
【0098】
また、ユーザーからの回答には、メッセージ1810により示される「ロック」や、メッセージ1811により示される「ジャズ」が挙げられる。そこで、メッセージ1810およびメッセージ1811に対して、検索サイトのイメージ検索を用いて、単語に関連する画像を検索する。そして、メッセージ1810に対してはロック画像1812を、メッセージ1811に対してはジャズ画像1813を表示することにより、単語に関連するイメージを表現することができる。
【0099】
以上説明したように、各エージェントがそれぞれ別の機能をもつので、たとえば、エージェントごとに待ち受け語を別々に持たせておくことができる。それにより、多くの待ち受け語を持つことにより処理負担が上がるのを防ぐことができ、1つのエージェントが持つ待ち受け語を少なくしても、エージェントは適切に応答することができる。
【0100】
また、エージェントごとに待ち受け語を用意することから、余計な語句が減る。それにより、ユーザーはエージェントに対する操作目的とメッセージを明確に意識することができ、待ち受け語を絞ることができる。その結果、誤認識が減ると共に、誤認識時の誘導もやりやすくなる。また、名前呼びかけ時の認識率を向上させることができる。また、専門的な語句を増やすことにより、柔軟性を高めることもできる。その結果として、ユーザーに効率よい対話、情報を提供することができる。
【0101】
なお、本実施の形態で説明した対話方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーションなどのコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネットなどのネットワークを介して配布することが可能な伝送媒体でもよい。
【図面の簡単な説明】
【0102】
【図1】この発明の実施の形態にかかる対話方法の処理を示すフローチャートである。
【図2】この発明の実施の形態にかかる対話方法において、対話の履歴をスクラップする場合の処理を示すフローチャートである。
【図3】この発明の実施例にかかる対話装置のハードウエア構成の一例を示すブロック図である。
【図4】オーディオエージェントとの対話内容を説明する説明図である。
【図5】カーナビエージェントとの対話内容を説明する説明図である。
【図6】複数のエージェントの切り替え処理を説明するフローチャートである。
【図7】対話ログのやり直し処理を説明する説明図である。
【図8】対話ログのやり直し処理の流れを説明するフローチャートである。
【図9】対話ログのスクラップ処理を説明する説明図である。
【図10】対話ログの範囲を指定してのスクラップ処理を説明する説明図である。
【図11】対話ログのスクラップ処理の流れを説明するフローチャートである。
【図12】対話ログの自動スクラップ処理を説明する説明図である。
【図13】対話ログの繰り返し処理を説明するフローチャートである。
【図14】対話ログでスクラップを利用した対話飛ばしの処理を説明するフローチャートである。
【図15】対話ログで類似のスクラップがある場合のスクラップ飛ばし処理を説明する説明図である。
【図16】対話ログで類似のスクラップがある場合のスクラップ飛ばし処理を説明するフローチャートである。
【図17】対話ログで顔文字表現する場合の処理を説明する説明図である。
【図18】具体的な顔文字の例を説明する説明図である。
【図19】この発明の実施の形態にかかる対話装置の機能的構成を示すブロック図である。
【符号の説明】
【0103】
101 選択部
102 対話部
103 実行部
104 履歴記録部
105 履歴出力部
106 指定部
107 スクラップ記録部
108 検索部
300 ナビゲーション制御部
310 エージェント制御部
311 表示部
312 表示制御部
313 案内音出力部
314 スピーカ
315 マイク
316 音声認識部
320 エージェント記憶部
330 スクラップ記憶部



【特許請求の範囲】
【請求項1】
車載装置が有する複数の機能のそれぞれに対応した、搭乗者との対話のための複数のヒューマンインターフェースの中から、所望の機能に対応したヒューマンインターフェースを一つ選択する選択手段と、
前記選択手段によって選択されたヒューマンインターフェースからのメッセージを出力し、該ヒューマンインターフェースが出力したメッセージに対する返答の入力を受け付けることにより対話を実行する対話手段と、
前記対話手段によって実行された対話内容に基づいて、前記車載装置の機能を実行する実行手段と、
を備えることを特徴とする対話装置。
【請求項2】
前記対話手段によって実行された対話の履歴を記録する履歴記録手段と、
前記履歴記録手段によって記録された対話の履歴を出力する履歴出力手段と、
を備えることを特徴とする請求項1に記載の対話装置。
【請求項3】
前記履歴記録手段によって記録された対話の履歴において範囲を指定する指定手段と、
前記指定手段によって指定された範囲を、スクラップとして記録するスクラップ記録手段を備え、
前記対話手段は、前記スクラップ記録手段によって記録されたスクラップの最後のメッセージから、対話を再開することを特徴とする請求項2に記載の対話装置。
【請求項4】
前記指定手段は、前記スクラップ記録手段によって記録されたスクラップに含まれるメッセージを指定し、
前記対話手段は、前記指定手段によって指定されたメッセージの位置から、対話を再開することを特徴とする請求項3に記載の対話装置。
【請求項5】
前記スクラップ記録手段は、前記スクラップ記録手段によって記録されたスクラップの中からさらに対話内容の範囲を指定し、該指定した対話内容の範囲を、さらに新たなスクラップとして記録することを特徴とする請求項3または4に記載の対話装置。
【請求項6】
前記スクラップ記録手段は、前記スクラップ記録手段によって記録されたスクラップを複数繰り返したものを、さらに新たなスクラップとして記録することを特徴とする請求項3〜5のいずれか一つに記載の対話装置。
【請求項7】
前記スクラップ記録手段によって記録されたスクラップから、予め指定した条件に合致するスクラップを検索する検索手段と、
前記対話手段は、前記検索手段によって検索されたスクラップの最後のメッセージから、対話を再開することを特徴とする請求項3〜6のいずれか一つに記載の対話装置。
【請求項8】
前記検索手段は、前記スクラップの最後のメッセージが予め定めた所定のメッセージである場合に、条件に合致するスクラップであるとすることを特徴とする請求項7に記載の対話装置。
【請求項9】
前記対話手段は、前記検索手段によって最後のメッセージが所定のメッセージである複数のスクラップが検索結果として得られた場合には、該当するスクラップを区別する質問をメッセージとして出力して該メッセージに対する返答の入力を受け付け、
前記検索手段は、該メッセージに対する返答の内容に基づいて、前記条件に合致するスクラップを検索することを特徴とする請求項8に記載の対話装置。
【請求項10】
車載装置が有する複数の機能のそれぞれに対応した、搭乗者との対話のための複数のヒューマンインターフェースの中から、所望の機能に対応したヒューマンインターフェースを一つ選択する選択工程と、
前記選択工程によって選択されたヒューマンインターフェースからのメッセージを出力し、該ヒューマンインターフェースが出力したメッセージに対する返答の入力を受け付けることにより対話を実行する対話工程と、
前記対話工程によって実行された対話内容に基づいて、前記車載装置の機能を実行する実行工程と、
を含むことを特徴とする対話方法。
【請求項11】
請求項10に記載の対話方法をコンピュータに実行させることを特徴とする対話プログラム。
【請求項12】
請求項11に記載の対話プログラムを記録したことを特徴とするコンピュータに読み取り可能な記録媒体。



【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate


【公開番号】特開2006−188098(P2006−188098A)
【公開日】平成18年7月20日(2006.7.20)
【国際特許分類】
【出願番号】特願2004−382046(P2004−382046)
【出願日】平成16年12月28日(2004.12.28)
【出願人】(000005016)パイオニア株式会社 (3,620)
【Fターム(参考)】