(57)【特許請求の範囲】
【請求項１】
複数のゾーンのうちの各ゾーンに当該各ゾーン内の複数の装置によって共用される一の音声認識システムがそれぞれ配置されるようにした分散データ処理システムにおいて、前記複数のゾーンのうちの第１のゾーンに配置された一の装置を音声コマンドにより制御するための方法であって、
前記一の装置が前記分散データ処理システムにリンクされたときに、前記一の装置を前記分散データ処理システムに登録するステップと、
登録時に前記一の装置から文法シーケンスのセットおよび対応する装置コマンドのセットを受信するステップと、
前記分散データ処理システムで前記一の装置のための音声コマンドを受信するステップと、
前記受信した音声コマンドを文法シーケンスに変換するステップと、
前記変換した文法シーケンスが前記文法シーケンスのセット内の文法シーケンスと一致する場合、対応する装置コマンドを前記一の装置に発行するステップとを含み、
前記一の装置を前記複数のゾーンのうちの第２のゾーンから制御する際に、前記変換するステップが、前記変換した文法シーケンス内の装置名が前記第２のゾーンに配置された音声認識システムによって認識されるかどうかを決定することを含み、装置名が認識されない場合、当該文法シーケンスが前記第２のゾーンを除く前記複数のゾーンのうちの各ゾーンに配置された音声認識システムに転送される、方法。
【請求項２】
前記一の装置がサービス・ディスカバリー・プロトコルを介して登録される、請求項１に記載の方法。
【請求項３】
前記一の装置から受信した前記文法シーケンスのセットおよび前記対応する装置コマンドのセットが、前記第１のゾーン内の複数の装置から受信した文法シーケンスのセットおよび対応する装置コマンドのセットと組み合わされて、文法シーケンスと対応する装置コマンドの複合セットになる、請求項１に記載の方法。
【請求項４】
前記一の装置と前記分散データ処理システムとの間のリンクがもはや確立されなくなったときに、前記一の装置に固有に対応付けられる前記文法シーケンスのセットおよび前記対応する装置コマンドのセットが、文法シーケンスと対応する装置コマンドの前記複合セットから除去される、請求項３に記載の方法。
【請求項５】
前記分散データ処理システムが、前記複数のゾーンのうちの各ゾーンにそれぞれ配置された一の音声生成システムを備え、当該音声生成システムが当該各ゾーン内の複数の装置によって共用される、請求項１に記載の方法。
【請求項６】
前記変換するステップが、前記変換した文法シーケンス内の装置名が認識されるかどうかを決定することを含み、装置名は認識されるが当該文法シーケンスが不完全である場合、ヘルプ・メッセージが出力されて、前記音声コマンドを完成するために利用可能な代替的選択肢が提供される、請求項１に記載の方法。
【請求項７】
複数のゾーンのうちの各ゾーンに当該各ゾーン内の複数の装置によって共用される一の音声認識システムがそれぞれ配置され、前記複数のゾーンのうちの第１のゾーンに配置された一の装置を音声コマンドにより制御するための分散データ処理システムであって、
前記一の装置が前記分散データ処理システムにリンクされたときに、前記一の装置を前記分散データ処理システムに登録するための登録手段と、
登録時に前記一の装置から文法シーケンスのセットおよび対応する装置コマンドのセットを受信するための受信手段と、
前記分散データ処理システムで前記一の装置に対する音声コマンドを検出するための検出手段と、
前記検出した音声コマンドを文法シーケンスに変換するための変換手段と、
前記変換した文法シーケンスが前記文法シーケンスのセット内の文法シーケンスと一致する場合、対応する装置コマンドを前記一の装置に発行するための発行手段とを備え、
前記一の装置を前記複数のゾーンのうちの第２のゾーンから制御する際に、前記変換手段が、前記変換した文法シーケンス内の装置名が前記第２のゾーンに配置された音声認識システムによって認識されるかどうかを決定することを含み、装置名が認識されない場合、当該文法シーケンスが前記第２のゾーンを除く前記複数のゾーンのうちの各ゾーンに配置された音声認識システムに転送される、分散データ処理システム。
【請求項８】
前記登録手段がサービス・ディスカバリー・プロトコルである、請求項７に記載の分散データ処理システム。
【請求項９】
前記一の装置から受信した前記文法シーケンスのセットおよび前記対応する装置コマンドのセットが、前記第１のゾーン内の複数の装置から受信した文法シーケンスのセットおよび対応する装置コマンドのセットと組み合わされて、文法シーケンスと対応する装置コマンドの複合セットになる、請求項７に記載の分散データ処理システム。
【請求項１０】
前記一の装置と前記分散データ処理システムとの間のリンクがもはや確立されなくなったときに、前記一の装置に固有に対応付けられる前記文法シーケンスのセットおよび前記対応する装置コマンドのセットが、前記文法シーケンスと対応する装置コマンドの前記複合セットから除去される、請求項９に記載の分散データ処理システム。
【請求項１１】
前記複数のゾーンのうちの各ゾーンにそれぞれ配置された一の音声生成システムを備え、当該音声生成システムが当該各ゾーン内の複数の装置によって共用される、請求項７に記載の分散データ処理システム。
【請求項１２】
前記変換手段が、前記変換した文法シーケンス内の装置名が認識されるかどうかを決定することを含み、装置名は認識されるが、当該文法シーケンスが不完全である場合、ヘルプ・メッセージが出力されて、前記音声コマンドを完成するために利用可能な代替的選択肢が提供される、請求項７に記載の分散データ処理システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一般に、家庭および職場における改善された自動化に関し、詳しくは、装置の音声制御のための方法およびシステムに関する。さらに詳しくは、本発明は、ネットワークで利用可能なサービス・ディスカバリー機構を活用したプラグ・アンド・プレイ音声制御機能のための方法およびシステムを提供する。
【０００２】
【従来の技術】
装置の音声制御はかなりの期間研究されており、簡単なコマンドに応答できる装置が市販されている。例えば、携帯電話は音声制御電話帳を持つことができ、そこでは、電話をかける相手の人の名前を言うことによって、電話番号が自動的にダイヤルされる。しばしばこれらの装置はかなり単純であり、限定された数のコマンドにしか応答できない。そのような装置が複雑な音声コマンドのシーケンスによりユーザーに対するガイドを提供することはまれである。
【０００３】
音声制御の技術はかなりよく理解されているが、ユーザーとの口頭での対話をサポートする精巧なコマンドと制御のシステムは、非常に高価になりかねない。そのようなシステムにおいて最小限、マイクロホン、音声認識システム、音声コマンドによって実行される操作のための制御システム、音声生成システム、スピーカ、および様々な作業を調整するマイクロプロセッサが必要になる。このレベルの精巧さを電子レンジなどの単純な家電装置、またはディクテーション・マシンなどの単純な事務用装置に埋め込むことは、ひどく高価につくであろう。
【０００４】
【発明が解決しようとする課題】
したがって、精巧な音声制御を行い、ユーザーと対話することができ、プラグを差し込むと直ちに作動する音声使用可能装置であって、しかも一般的な消費者にとって手頃な値段の装置を持つことは、好都合である。
【０００５】
【課題を解決するための手段】
本発明による方法およびシステムは、ユーザーの音声コマンドによる一連の装置の制御を提供する。装置は、サービス・ディスカバリー・プロトコルを使用して、ゾーン内に登録される。登録時に、装置は、組み合わせて文法シーケンスおよびヘルプ・シーケンスの複合セットとするために、文法およびヘルプ・シーケンスのセットをゾーン内の制御ユニットへ送る。一般的に、伝送は、装置のプラグを差し込むか接続したときに、電力線情報転送プロトコルにより行われるが、どんなデータ通信手段でも十分である。音声認識および音声生成のハードウェアおよびソフトウェアは、ゾーン内の全ての装置間で共用される。ユーザーによって発行された音声コマンドが認識されると、適切なメソッド呼出しが装置に送られて、希望する操作が実行される。音声コマンド内の装置は認識されたが操作が認識されない場合には、装置の操作を適切に実行する方法に関するヘルプ・シーケンスがユーザーに提供される。装置が認識されなければ、コマンドは、装置が見つかるかそのような装置が無いことがつき止められるまで、ゾーンのセット内の別のゾーンに転送される。この音声コマンド・システムは、複数の住宅ゾーン、複数の職場ゾーン、または自動車などユーザーに占有される複数のどんな「空間」ゾーンでも使用することができる。
【０００６】
【発明の実施の形態】
今、図面を参照し、特に図１を参照すると、幾つかの制御ゾーンに分割された典型的な家の図が示されている。部屋は、部屋の機能性に基づいて、異なる制御ゾーンに分割されている。特に、ゾーン１  １０２は、居間およびダイニング・ルームを含めた台所および食事領域を含む。ゾーン２  １０４は居間領域を含む。ゾーン３  １０６は、主寝室、マスタ・バス（master bath）、およびウォークイン・クローゼットを含む主スイート領域である。ゾーン４  １０８は子供領域であり、子供用の２つの寝室と浴室を含む。ゾーン５  １１０は車庫領域である。
【０００７】
図１に示したゾーンの様々な部屋は描きやすいように連続しているが、家庭内配置構成における論理ゾーンは、物理的に相互に隣り合う必要はなく、多重階層住宅の場合には、同一階層にある必要すらない。例えば、ユーティリティ・ルームは、図示するように、たとえゾーン１に隣接していなくても、ゾーン１の一部とみなすことができる。また、ゾーンを図示するよりもっと局所化することもできる。例えばゾーン１は実際、ダイニング・ルームに１つ、台所に１つ、居間に１つと、３つの別個のゾーンを含むことができる。他のゾーンも、マイクロホンおよびスピーカの配置によって、同様のやり方で分解することができる。
【０００８】
今、図２を参照すると、図１に示した種々の制御ゾーンが１つのサービス・ディスカバリー・ネットワークに編成され、各ゾーンに種々の装置が示されている。各ゾーンはそれ自体のローカル・サービス・ディスカバリー・ネットワークを有し、これは、マイクロソフトのユニバーサル・プラグ・アンド・プレイまたはサン・マイクロシステムのJiniなど、サービス・ディスカバリー・プロトコルを実現するソフトウェアにより増強された通常のデータ通信ネットワークである。これらのサービス・ディスカバリー・ネットワークの各々を結合し、家全体を網羅する連合サービス・ディスカバリー・ネットワークを形成することができる。図１のゾーンの各々は、ハウス・ネットワーク内の各々のノードになる。ゾーン１〜５は、それぞれノード２０２、２０４、２０６、２０８、および２１０に対応する。各装置または器具は、これらのノードの１つに接続される。これらの装置は、１つまたはそれ以上の共通マイクロホンを共用して、音声コマンドを捕捉する。一部の器具は、全てのゾーンに共通しているという意味で、「汎用」である。「汎用」装置の例として、照明器具、有線放送音楽または部屋間連絡のためのインターコムなどの音声装置、暖房および冷房などの空調装置、ならびに防犯装置がある。ゾーン１〜５に付随する他の装置は、それぞれグループ２１２、２１４、２１６、２１８、および２２０に示す。これらのゾーンは相互接続され、防犯システムなど一部の装置は、図示する管理センタ２２５など中央制御を持つことができる。
【０００９】
本発明は、音声コマンドを通して装置を制御することができ、コマンドおよび制御のハードウェアおよびソフトウェアは個々の装置間で共用される。サービス・ディスカバリー機構は各装置を捜し出す。図示した全ての装置は電力を必要とするので、装置のプラグを差し込んだときに、装置は、サン・マイクロシステムのJiniなど、何らかのプロトコルを通してネットワークに自動的に接続することができる。他の一般的に見られるディスカバリー・プロトコルとして、マイクロソフトによる「ユニバーサル・プラグ・アンド・プレイ」およびインターネット技術特別調査委員会（ＩＥＴＦ）によるサービス・ロケーション・プロトコルがある。一部の装置は、ゾーン１  ２０２の冷蔵庫など、特定のゾーンに置かれることが多いだろうが、他の装置は持ち運び可能であり、ゾーン４  ２０８に図示されたビデオ・ゲーム・コントローラのように、ゾーンからゾーンへ移動することができる。ネットワークに接続される各装置は、ネットワークに接続されたときにサービス・ディスカバリー・プロトコルに参加し、かつ装置を登録するために、マイクロコントローラおよびソフトウェアを含むことが望ましい。装置は、ユーザーが音声コマンドを発行した結果、データ通信ネットワークを介して送信されたコマンドまたはメッセージを受信（し、かつそれに応答）することができなければならない。
【００１０】
今、図３を参照すると、簡単な配置図に、組込みマイクロコントローラの主要機能領域が示される。マイクロコントローラの心臓部は、マイクロコントロール（μＣ）論理回路３０２、もしくはデジタル信号処理（ＤＳＰ）用の論理回路であってもよい。プログラムおよびデータは、ＤＲＡＭ（ダイナミック・ランダム・アクセス・メモリ）またはＳＲＡＭ（スタティック・ランダム・アクセス・メモリ）などのランダム・アクセス・メモリ３０４に格納される。プログラムの構成を変更しないのであれば、読出し専用メモリ（ＲＯＭ）３０６に記憶させることができる。ＲＯＭの幾つかの変型として、ワンタイム・プログラマブル（ＯＴＰ）メモリまたはＦＬＡＳＨメモリがある。ＦＬＡＳＨメモリはブロック単位で書き込むことができるが、ランダム・アクセス・メモリのように、一度に１バイトを書き込むことはできない。最後に、組込みマイクロコントローラは、周辺装置へのインタフェースを持たなければならない。これは、特定用途向け集積回路（ＡＳＩＣ）３０８の形を取ることができる。本発明の場合、マイクロコントローラがネットワーク・アクセス能力を持つことが重要である。
【００１１】
音声コマンドにより装置を制御することは、目新しいことではない。例えば、一部の電子電話および一部の携帯電話では、ユーザーが電話をかける相手の人の名前をただ言うだけで、番号をダイヤルすることが可能である。本発明特有の事項は、個々の装置がネットワーク接続を介して音声認識および音声生成のハードウェアおよびソフトウェアを共用し、個々の装置がサービス・ディスカバリー・プロトコルを用いて装置をつなぐネットワークに追加され、かつゾーン内の全ての装置の文法シーケンスおよびヘルプ・シーケンスが文法シーケンスおよびヘルプ・シーケンスの複合セットに併合されることである。尚、本発明において文法シーケンスとは、音声認識された語のセットをいう。従って、文法シーケンスは１つ或いはそれ以上の語を含む。そして文法シーケンスは、装置に対するコマンドを表す。文法シーケンスは登録され、ユーザーによってあるシーケンスが発声され、それがシステムに認識された時、当該文法シーケンスに対応する機能がその装置によって実行される。別の言い方をすると、文法シーケンスは、ユーザーにより与えられたコマンドに対応する、語（ワード）の組（セット）である。すなわち、当語ワードの組はそのコマンドにマッピングされている。１つ或いはそれ以上のセットを１つのコマンドにマッピングすることも可能であり、そうすれば、同じコマンドに対して複数のアクセス経路が確保されることになる。
【００１２】
ハードウェアおよびソフトウェアを共用することによって、図２のゾーン１の装置２１２に示すトースタなど単純な低コストの装置でさえ、独立した音声認識および生成システムに要求される全てのハードウェアおよびソフトウェアを含むことなく、音声コマンドに応答できることが実現可能になる。音声生成は、コマンドが認識されない場合に、またはシステムの使用時にユーザーを誘導するために、ユーザーに支援を提供するために使用される。この音声認識および生成は、サービス・ディスカバリー・ネットワークとともに実行される。サービス・ディスカバリーはネットワークへの装置の動的着脱を提供し、その結果、所与のゾーン内にある装置に対するコマンドおよび制御文法を更新するためのイベントおよびデータを提供する。
【００１３】
図４は、台所のローカル・ネットワークへのトースタの接続を示す。トースタ４０２は、図３に示したようなマイクロコントローラを含む。ネットワークへの接続は電力コードを介して行われると想定されるので、ユーザーは単にトースタのプラグを差し込むことが必要なだけであり、信号は、電力に接続するのと同じ線を用いて、トースタへ、およびトースタから送られる。電力線をベースにするデータ通信プロトコルＸ．１０は、電力線を通信に使用できるプロトコル例である。Jini、ユニバーサル・プラグ・アンド・プレイ、またはサービス・ロケーション・プロトコルなどのディスカバリー・プロトコルは、トースタ４０２をサービス・ディスカバリー・プロトコル・レジストリ４０４に登録させる。
【００１４】
台所のローカル・ネットワークは、コントローラ４０６、マイクロホン４０８、音声認識システム４１０、音声生成システム４１２、およびスピーカ４１４を含む。このハードウェアおよびソフトウェアは、音声コマンドに応答できる台所内の全ての装置によって共用される。これは、各装置がこれらの機能を複製することを要さず、したがって各装置がより簡単になり、消費者にとって受け入れられるコスト範囲内に収まることを意味する。
【００１５】
本発明の好ましい実施形態は電力線を通信のために使用するが、当技術分野における通常の熟練者が理解される通り、多種多様な有線および無線通信媒体が可能である。有線接続は、電力線をベースとするシステム、汎用シリアル・バス（ＵＳＢ）、ファイヤワイヤ（ＩＥＥＥ  １３９４）、および所有権があるワイヤリング・システムを含むが、これらに限定されない。無線通信は、赤外線データ転送、９００ＭＨｚコードレス電話転送、２．４ＧＨｚコードレス電話転送、および所有権がある無線システムを含むが、これらに限定されない。
【００１６】
今、図５を参照すると、トースタを制御するシステムによって認識されるコマンドのサブセットが示されている。左側の欄は、Java（Ｒ）音声マークアップ言語（ＪＳＭＬ）の認識されるコマンド・シーケンスを示す。各々の認識されるコマンド・シーケンスに対応付けられるのは、装置を命令された通りに機能させるために呼び出すことができるJava（Ｒ）メソッドである。例えば、「Toaster pop up（トースタ・ポップ・アップ）」によって生成されるコマンド・シーケンスは、結果的にコマンドおよび制御ソフトウェアを立ち上げさせ、サービス・ディスカバリー・レジスタと協働して、「popUp()」メソッドを呼び出す。このメソッド呼出しは装置に送信され、装置は電子的または機械的に適切な操作を実行することができなければならない。例えば、トースタにおける「popUp()」メソッドは、トースタ内の支持トレーを上昇させ、加熱装置への電力を除去させる。ネットワーク内の各音声使用可能な装置は、音声コマンドによって指定された操作を実行するための適切な手段を必要とする。
【００１７】
当技術分野の通常の熟練者が理解する通り、マークアップ言語プロトコルはＪＳＭＬとは異なるものにすることができ、メソッドを実現するプログラミング言語は、Java（Ｒ）とは異なるものにすることができる。別のコマンド形式でも同じ操作をトリガできることに注目することが重要である。例えば、コマンド「toaster increase temperature（トースタ温度上昇）」は、「incrementTemperature()」メソッドを呼び出させる。コマンド「toaster increase darkness」もまた、「incrementTemperature()」メソッドを呼び出させる。このような語彙の柔軟性を使用して、システムを英語／スペイン語／フランス語など多言語用にすることもできる。
【００１８】
本発明は、ユーザーがシステムを訓練することなく簡単なコマンドを話すことができる、自動電話応答システムに見られるのと同様の１話者に依存しない環境で、使用することができる。限られた数の語彙によるコマンドに対しても、そのようなシステムは、許容できる範囲の正しい認識率を達成することができる。本発明は、音声認識システムの精度を高めるために、個々のユーザーからの音声コマンドを認識する訓練を提供するシステムと共に使用することもできる。これは、同じ居住者が長期間継続的にシステムを使用する家庭環境では、望ましいことかもしれない。
【００１９】
図５は、図４の音声認識システム４１０によって認識されるコマンドのシーケンスと、動作を実行させるためにターゲット装置で呼び出されるメソッドとの間の対応付けを示す。図６の動作図では、この対応付けが音声制御システムの典型的な使用の一部始終を解説するシナリオに組み入れられている。オブジェクト６００は、図４のオブジェクト４０４、４０２、４１４、４１２、４０６、４１０および４０８に対応して、レジストリ、トースタ、スピーカ、音声生成システム、ローカル・ネットワーク・コントローラ、音声認識システム、およびマイクロホンを含む。右側に示すユーザーもまた、このシナリオにおけるオブジェクトまたは動作者である。
【００２０】
ユーザーは最初にトースタをプラグで接続する（動作６０２）。トースタは、それがサービス・ディスカバリー・ネットワークに接続（リンク）されたことを検出すると、登録のための信号を送出することによって、直ちにサービス・ディスカバリー・プロトコルへの参加を開始する。ディスカバリー・プロトコルは、トースタをサービス・ディスカバリー・プロトコル・レジストリ（登録手段）に登録させる（動作６０４）。トースタの登録は認識された語の文法シーケンスを含むので、この情報は、登録の時に音声認識モジュールによりインストールされる（ステップ６０６）。音声生成ユニットにより登録されるヘルプ・コマンドおよび制御スクリプトがあってもよい（ステップ６０８）。図６では、登録が成功したものと想定する。
【００２１】
次にユーザーがコマンド「toaster begin（トースタ始動）」と発声する（動作６１０）。マイクロホンのアナログ信号がデジタル信号に変換され、音声認識システムに送信される（動作６１２）。音声認識システムは装置「toaster（トースタ）」を識別するが、操作「begin（始動）」を認識し損なう（動作６１４）。操作が認識されなかったので、オブジェクトのトースタに対するヘルプ・ルーチンが音声生成システムに送信される（動作６１６）。このメッセージはデジタルからアナログに変換され、スピーカに送信される（動作６１８）。ユーザーは、これらの指示を聞く（動作６２０）。
【００２２】
ユーザーは今、適切なコマンドを認識していて、「toaster pop down（トースタ・ポップ・ダウン）」と発声する（動作６２２）。このアナログ信号はデジタル化され（動作６２４）、３語全部が音声認識システムによって認識される（動作６２６）。これにより、「popDown()」メソッド呼出しがトースタへ送信される（動作６２８）。動作６２８は、図５に示す２行目のＪＳＭＬとメソッド呼出しの対に対応する。
【００２３】
図６は、ユーザーが音声コマンドを装置へ直接発行しようとした場合を示す。コマンドが認識されなかったので、システムが指示を提供した。本発明は別の態様でも使用することができる。すなわちユーザーは、システムに正しい応答パターンを案内させることができる。これを図７に示す。
【００２４】
３つの装置、すなわちトースタ７０２、オーブン７０４、および電子レンジ７０６を備えた、図２の台所ゾーン２０２が図示されている。マイクロホン７０８は、ユーザー・コマンドを受信し、スピーカ７１０はデジタル化された音声を使用して、ユーザー７１２と対話する。ユーザーのコマンド７１４とシステムの応答７１６による仮定的な対話を図示する。制御される装置は電子レンジ７０６である。この装置はトースタより多くのコマンドを有する。ユーザー７１２は、応答を求めるプロンプトをシステムに出させるよう選択している。
【００２５】
ユーザーは「microwave（電子レンジ）」と言い、次いで間をおく。システムはこの間を検出し、「Normal, defrost, or special?（通常、解凍、それとも特別ですか）」と応答することによって、ユーザーに指示メッセージを出す。ユーザーは「defrost（解凍）」と応答し、次いで間をおいて、再び指示メッセージを出させる。７１４および７１６に示す残りの対話は特に説明を要さない。ユーザー７１２がこのコマンド・シーケンスに慣れている場合には、彼女は間をおかずに、「microwave defrost later five fifteen PM three point two pounds（電子レンジ、解凍、後で、午後５時１５分に、３．２ポンド）」のように、直接コマンドを言うことができる。
【００２６】
図６および図７に示した対話は、単に解説を目的とするものにすぎない。装置、語彙、およびコマンドの形式は変えることができる。単純なコマンド・システムは、「toaster pop down」のように装置名の後に動作を続ける必要があるかもしれない。より精巧な言語を理解するシステムは、「Plase start the toaster」（トースタを始動して）のような自然言語の文を解析し、これがトースタの「popDown()」メソッドを呼び出すものであることを判断することができるかもしれない。
【００２７】
同様のやり方で、ヘルプ・シーケンスも複雑さを変化させることができる。最も簡単な実施形態では、全てのヘルプ・シーケンスは、登録時に装置からコントローラへ転送される文法シーケンスから生成することができる。例えば、図５に示すように、文法シーケンス「Toaster pop up」、「Toaster pop down」、「Toaster increase temperature」、「Toaster decrease darkness」、および「Toaster help」が登録されている。ユーザーが「toaster help（トースタ・ヘルプ）」と言うと、コントローラはヘルプ・メッセージすなわち「Please select one of the following operations - pop, increase, or decrease（次の操作の１つを選択してください−ポップ、増加、または減少）」を生成することができる。ユーザーが「pop（ポップ）」というと、ヘルプは「up or down?（アップ、それともダウン？）」と続けることができる。これらの簡単なヘルプ・シーケンスは、登録時にネットワークに転送された文法シーケンスのみに依存する。当技術分野の通常の熟練者が理解する通り、図５はトースタに可能なコマンドのサブセットを提示するにすぎない。
【００２８】
より精巧なシステム、例えば自動車のナビゲーション・システムでは、登録の時に、特殊化されたヘルプ・シーケンスを装置からコントローラへ転送することができる。本発明で記載するサービス・ディスカバリー・ネットワークに基づく音声使用可能装置は、多種多様のヘルプ・シナリオに適応させることができる。
【００２９】
図７に示した３つの調理用装置に戻ると、語彙に含まれる多くの語が類似しており（例えば「温度」、「増加」、「減少」）、他の語は特定の装置に特有である（例えばトースタの場合の「ポップ」）ことがあり得る。各装置はそれ自体の文法シーケンスおよび対応する装置コマンドを有し、この情報は、図３に示すようなマイクロコントローラに格納される。装置が登録されるときに、この情報は、図４の音声認識システム４１０に送信される。言い換えると、ゾーン内の各装置からの情報は組み合わされて、音声認識および生成システムによって使用される文法シーケンスと対応する装置コマンドの複合セットになる。この複合セットは、ゾーン内の全ての装置を制御する。
【００３０】
装置がネットワークから除去されると、その装置に特有の情報は複合セットから除去される。装置除去の検出は、使用しているサービス・ディスカバリー・プロトコルによって異なる。パーソナル・コンピュータに見られるように、精巧な停止手順を備えた高度な装置の場合、コマンドを中央制御装置に送り、装置をネットワークから除去するように指示することができる。トースタなど、より簡単な装置では、除去信号をコントローラに送る前にプラグを抜くことができる。この場合、コマンドが装置に送られ、装置が応答しなければ、コントローラはゾーン内で装置を探索し、見つからなければ、他のゾーンで探索し、装置がどうしても見つからなければ、装置がもはやネットワーク上に無いことがユーザーに通知され、この装置に固有に関連する情報は、複合セットから除去されるようにしてもよい。
【００３１】
多くのサービス・ディスカバリー・プロトコルは、もはやネットワークに接続していない装置を検出し、そのエントリをレジストリから除去する「自己回復」機能を含む。例えば、Jiniは、リース機構（leasing mechanism）を使用する。レジストリが装置のリースを更新できなくなったときに、レジストリは、装置がもはやネットワークに接続されていないとみなして、装置の記録をそのデータベースから消去する。
【００３２】
今、図８を参照すると、幾つかの器具のプラグがホーム・ネットワークの台所ゾーンに差し込まれた後の複合セットが示される。理解を容易にするために、これらの語は様々な語型にグループ化されている。しかし、当技術分野の通常の熟練者が理解する通り、システム内で語は、アルファベット順など、異なる仕方で編成することができる。図４にオブジェクト４０２として示したトースタは、まだプラグを差し込まれていないと想定されている。
【００３３】
トースタは、それ自体のマイクロコントローラ内に、それが認識する文法シーケンスおよび対応する装置コマンドを含む。ユーザーを誘導するヘルプ・メッセージを格納することが可能である。ローカル・ネットワーク・コントローラは、図５に示すように、コマンド・シーケンスをメソッド呼出しに翻訳しなければならない。装置の語彙内の全ての語は、図６のステップ６０６および６０８に示すように、装置が登録されるときに、音声認識および音声生成システムに送られる。図９は、複合セットにもはや含まれていないトースタに独特な幾つかの語を示す。言うまでもなく、「独特」な語は、複合セットにすでに保存されている語によって異なる。これが接続される最初の装置であり、文法が空である場合には、トースタに関連付けられる全ての語が「独特」であり、複合セットに追加される。これに替えて、いずれかの個々の装置のプラグが差し込まれる前から認識される、読み上げられた数字など、幾つかの語を基本システムに組み込んでおくこともできる。図４、図８、および図９に示す語は、解説を目的とするだけであり、開示する発明の範囲を限定するつもりはない。
【００３４】
図２に示したゾーンを接続して、ゾーンの連合を形成することができる。このやり方で、１つのゾーン内にある装置を、実際には別のゾーンにいながら制御することが可能になる。例えば、ユーザーが車庫の扉を開けたいと思っているが、現在主寝室にいる場合を仮定する。正しいコマンド・シーケンスは、「garage door open（車庫扉開ける）」であるかもしれない。主スイート用のゾーン３の音声認識システムが装置「garage door（車庫扉）」を認識しないとき、それは、家中の他のゾーンに質問して、装置が認識されるかどうかを調べることができる。ゾーン５は、「garage door」という名前の装置を認知し、操作「open」を実行することができる。この連合ネットワークは、情報がリング中を通過するリング状のゾーンに編成することができ、或いは家レベルの中央制御装置を備えた階層構造に編成することができる。
【００３５】
本発明を家庭環境の文脈で説明したが、同じシステムおよび方法を、オフィス環境など種々の異なる環境で、コピー機またはファックス装置など、種々の異なる装置に使用することができる。本発明の好ましい実施形態では、ネットワークに対し、またはネットワークから信号を送信するのに電力コードを使用したが、無線媒体を含む他の媒体を使用することができる。
【００３６】
本発明について、完全に機能するデータ処理システムの文脈で説明したが、本発明のプロセスが、コンピュータ読取可能な媒体の指示の形および種々の形で分散することができ、かつ本発明が、分散を実行するために実際に使用される特定の種類の信号運搬媒体に関係なく、同等に適用されることを、当技術分野の通常の熟練者が理解されるであろうという点に注目することが重要である。コンピュータ読取可能な媒体の例には、フロッピー（Ｒ）・ディスク、ハード・ディスク・ドライブ、ＲＡＭ、ＣＤ−ＲＯＭなどの記録可能型媒体と、デジタルおよびアナログ通信リンクなどの伝送型媒体が含まれる。
【００３７】
本発明の説明は、解説の目的のために提示したものであり、説明で全てを網羅することや、発明を開示する形に限定することは意図していない。当技術分野の通常の熟練者には、多くの変更や変形が明らかであろう。例えば、自動車業界では、オーディオ・システム、ナビゲーション・システム、および通信システムなど、多くの装置が、輸入業者や販売業者のレベルで追加されたり変更される。これらの装置の各々が、音声コマンド・システムから大きな利益を得るが、製造の時点では、ユーザーがどの装置を選択するかが不明である。サービス・ディスカバリー・ネットワークのプラグ・アンド・プレイの柔軟性により、音声制御機能は、これらの音声制御装置が自動車に追加されるときに、自動的に新しいコマンドおよびヘルプ・シーケンスに適応する。本発明の原理および実際の適用例を最も良く説明するため、そして当技術分野の他の通常の熟練者が本発明を理解して、考えられる特定の用途に適合するように様々な変形を加えた種々の実施形態が可能となるように、実施形態を選択して説明した。
【図面の簡単な説明】
【図１】  本発明を様々な制御ゾーンで実現できる典型的な家庭の間取り図である。
【図２】  本発明の好ましい実施形態による、図１の制御ゾーンの装置のネットワークを示す線図である。
【図３】  本発明を実現するために使用できる組込みマイクロコントローラの主要な機能領域を示すブロック図である。
【図４】  本発明の好ましい実施形態による、台所のローカル・ネットワークへの音声使用可能トースタの接続を示す線図である。
【図５】  本発明の好ましい実施形態に従ってトースタを制御するシステムによって認識されるコマンドのサブセットを示す表である。
【図６】  本発明の好ましい実施形態にしたがって音声制御システムを使用する完全なシナリオを示す図表である。
【図７】  本発明の好ましい実施形態に従ってプロンプト・メッセージにより音声制御システムを使用する代替的シナリオを示す図表である。
【図８】  本発明の好ましい実施形態に従って幾つかの器具をホーム・ネットワークの台所ゾーンにプラグで接続した後の複合セットを示す表である。
【図９】  本発明の好ましい実施形態に従って、図８に示した複合セットにまだ含まれていないトースタに特有の幾つかの語を示す表である。
【図１】
0003924133.tif 000002
【図２】
0003924133.tif 000003
【図３】
0003924133.tif 000004
【図４】
0003924133.tif 000005
【図５】
0003924133.tif 000006
【図６】
0003924133.tif 000007
【図７】
0003924133.tif 000008
【図８】
0003924133.tif 000009
【図９】
0003924133.tif 000010