(57)【要約】  学習デバイスの非集中システム内の学習能力を修正するための様々な実施形態が提供され、方法は、学習デバイスにおいて付近のデバイスから信号を受信することと、受信された信号が受信された信号内のデータに基づき学習モディファイア信号であるかどうかを決定することと、受信された信号が学習モディファイア信号であると決定したことに応答して学習能力の１つまたは複数を修正することとを含む。この方法は、その後の学習モディファイア信号が受信されたかどうかを決定することと、その後の学習モディファイア信号が受信されていないと決定したことに応答して学習能力の修正された１つまたは複数をリセットすることとをさらに含み得る。学習能力を修正することは、学習デバイスの学習モードを有効化または無効化すること、および／またはリフレックスのトリガー重みを計算するために使用される変数の値を調整することを含み得る。その後の学習モディファイア信号が受信されないときに、学習デバイスは、修正された学習能力をリセットし得る。
2016524226.tif 000002
【特許請求の範囲】
【請求項１】
学習デバイスの非集中システム内の学習能力を修正するための、
学習デバイスで、付近のデバイスから信号を受信することと、
前記学習デバイスにおいて、前記受信された信号が前記受信された信号内のデータに基づき学習モディファイア信号であるかどうかを決定することと、
前記受信された信号が前記学習モディファイア信号であると決定したことに応答して前記学習デバイスの１つまたは複数の学習能力を修正することとを備える方法。
【請求項２】
前記学習デバイスにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することと、
その後の学習モディファイア信号が受信されていないと決定したことに応答して前記学習デバイスの修正された１つまたは複数の学習能力をリセットすることをさらに備える請求項１に記載の方法。
【請求項３】
前記学習デバイスの前記１つまたは複数の学習能力を修正することは、前記学習デバイスの学習モードを有効化することを備え、
前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記学習デバイスの前記学習モードを無効化することを備える請求項２に記載の方法。
【請求項４】
前記学習デバイスの前記１つまたは複数の学習能力を修正することは、前記学習デバイスの学習モードを無効化することを備え、
前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記学習デバイスの前記学習モードを有効化することを備える請求項２に記載の方法。
【請求項５】
前記学習デバイスの前記１つまたは複数の学習能力を修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される変数の値を調整することを備え、
前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記リフレックスの前記トリガー重みを計算するために使用される前記変数の値を既定値に調整することを備える請求項２に記載の方法。
【請求項６】
前記学習デバイス内のタイマーを初期化することと、
前記受信された信号が前記学習モディファイア信号であると決定したことおよび前記その後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットすることとをさらに備え、
ここにおいて、前記学習デバイスにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することは、前記学習デバイスにおいて、前記タイマーが切れる前にその後の学習モディファイア信号が受信されたかどうかを決定することを備える請求項２に記載の方法。
【請求項７】
前記タイマーは、前記学習モディファイア信号からのデータに基づき設定される請求項６に記載の方法。
【請求項８】
前記学習モディファイア信号は、前記学習デバイスが学習率を大きくするか、または小さくするべきかを指示する学習率モディファイア値、前記学習モディファイア信号の影響を受ける学習デバイスのタイプを指示するデバイスタイプ、前記学習デバイスが学習モードを有効化するか、または無効化するべきかを指示する学習モードアクティブ設定、学習モディファイア信号の影響を受ける計算の特定のタイプを指示する学習率モディファイアタイプ、および前記付近のデバイスが前記学習モディファイア信号をどれだけ頻繁に送信するかを指示する送信頻度のうちの１つまたは複数を含む請求項１に記載の方法。
【請求項９】
学習デバイスの非集中システム内の付近のデバイスから信号を受信するための手段と、
前記受信された信号が前記受信された信号内のデータに基づき学習モディファイア信号であるかどうかを決定するための手段と、
前記受信された信号が前記学習モディファイア信号であると決定したことに応答して前記コンピューティングデバイスの１つまたは複数の学習能力を修正するための手段とを備えるコンピューティングデバイス。
【請求項１０】
その後の学習モディファイア信号が受信されたかどうかを決定するための手段と、
前記その後の学習モディファイア信号が受信されていないと決定したことに応答して前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段とをさらに備える請求項９に記載のコンピューティングデバイス。
【請求項１１】
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正するための手段は、前記コンピューティングデバイスの学習モードを有効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段は、前記コンピューティングデバイスの前記学習モードを無効化することを備える請求項１０に記載のコンピューティングデバイス。
【請求項１２】
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正するための手段は、前記コンピューティングデバイスの学習モードを無効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段は、前記コンピューティングデバイスの前記学習モードを有効化することを備える請求項１０に記載のコンピューティングデバイス。
【請求項１３】
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正するための手段は、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される変数の値を調整することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段は、前記リフレックスの前記トリガー重みを計算するために使用される前記変数の値を既定値に調整することを備える請求項１０に記載のコンピューティングデバイス。
【請求項１４】
タイマーを初期化するための手段と、
前記受信された信号が前記学習モディファイア信号であると決定したことおよびその後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットするための手段とをさらに備え、
ここにおいて、その後の学習モディファイア信号が受信されたかどうかを決定するための手段は、前記タイマーが切れる前にその後の学習モディファイア信号が受信されたかどうかを決定するための手段を備える請求項１０に記載のコンピューティングデバイス。
【請求項１５】
前記タイマーは、前記学習モディファイア信号からのデータに基づき設定される請求項１４に記載のコンピューティングデバイス。
【請求項１６】
前記学習モディファイア信号は、前記コンピューティングデバイスが学習率を大きくするか、または小さくするべきかを指示する学習率モディファイア値、前記学習モディファイア信号の影響を受ける学習デバイスのタイプを指示するデバイスタイプ、前記コンピューティングデバイスが学習モードを有効化するか、または無効化するべきかを指示する学習モードアクティブ設定、学習モディファイア信号の影響を受ける計算の特定のタイプを指示する学習率モディファイアタイプ、および前記付近のデバイスが前記学習モディファイア信号をどれだけ頻繁に送信するかを指示する送信頻度のうちの１つまたは複数を含む請求項９に記載のコンピューティングデバイス。
【請求項１７】
プロセッサ実行可能命令とともに、
学習デバイスの非集中システム内の付近のデバイスから信号を受信することと、
前記受信された信号が前記受信された信号内のデータに基づき学習モディファイア信号であるかどうかを決定することと、
前記受信された信号が前記学習モディファイア信号であると決定したことに応答してコンピューティングデバイスの１つまたは複数の学習能力を修正することとを備えるオペレーションを実行するように構成されたプロセッサを備えるコンピューティングデバイス。
【請求項１８】
前記プロセッサは、プロセッサ実行可能命令とともに
その後の学習モディファイア信号が受信されたかどうかを決定することと、
その後の学習モディファイア信号が受信されていないと決定したことに応答して前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることとをさらに備えるオペレーションを実行するように構成される請求項１７に記載のコンピューティングデバイス。
【請求項１９】
前記プロセッサは、プロセッサ実行可能命令とともに
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを有効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを無効化することを備えるようなオペレーションを実行するように構成される請求項１８に記載のコンピューティングデバイス。
【請求項２０】
前記プロセッサは、プロセッサ実行可能命令とともに
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを無効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを有効化することを備えるようなオペレーションを実行するように構成される請求項１８に記載のコンピューティングデバイス。
【請求項２１】
前記プロセッサは、プロセッサ実行可能命令とともに
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される変数の値を調整することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記リフレックスの前記トリガー重みを計算するために使用される前記変数の値を既定値に調整することを備えるようなオペレーションを実行するように構成される請求項１８に記載のコンピューティングデバイス。
【請求項２２】
タイマーをさらに備え、ここにおいて、前記プロセッサは、プロセッサ実行可能命令とともに、
前記タイマーを初期化することと、
前記受信された信号が前記学習モディファイア信号であると決定したことおよびその後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットすることとをさらに備えるオペレーションを実行するように構成され、
ここにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することは、前記タイマーが切れる前にその後の学習モディファイア信号が受信されたかどうかを決定することを備える請求項１８に記載のコンピューティングデバイス。
【請求項２３】
前記タイマーは、前記学習モディファイア信号からのデータに基づき設定される請求項２２に記載のコンピューティングデバイス。
【請求項２４】
前記学習モディファイア信号は、前記コンピューティングデバイスが学習率を大きくするか、または小さくするべきかを指示する学習率モディファイア値、前記学習モディファイア信号の影響を受ける学習デバイスのタイプを指示するデバイスタイプ、前記コンピューティングデバイスが学習モードを有効化するか、または無効化するべきかを指示する学習モードアクティブ設定、学習モディファイア信号の影響を受ける計算の特定のタイプを指示する学習率モディファイアタイプ、および前記付近のデバイスが前記学習モディファイア信号をどれだけ頻繁に送信するかを指示する送信頻度のうちの１つまたは複数を含む請求項１７に記載のコンピューティングデバイス。
【請求項２５】
プロセッサ実行可能命令が記憶され、前記プロセッサ実行可能命令はコンピューティングデバイスのプロセッサが
学習デバイスの非集中システム内の付近のデバイスから信号を受信することと、
前記受信された信号が前記受信された信号内のデータに基づき学習モディファイア信号であるかどうかを決定することと、
前記受信された信号が前記学習モディファイア信号であると決定したことに応答して前記コンピューティングデバイスの１つまたは複数の学習能力を修正することとを備えるオペレーションを実行することを引き起こすように構成される非一時的プロセッサ可読記憶媒体。
【請求項２６】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
その後の学習モディファイア信号が受信されたかどうかを決定することと、
前記その後の学習モディファイア信号が受信されていないと決定したことに応答して前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることとをさらに備えるオペレーションを実行することを引き起こすように構成される請求項２５に記載の非一時的プロセッサ可読記憶媒体。
【請求項２７】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
前記コンピューティングの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを有効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを無効化することを備えるようなオペレーションを実行することを引き起こすように構成される請求項２６に記載の非一時的プロセッサ可読記憶媒体。
【請求項２８】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを無効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを有効化することを備えるようなオペレーションを実行することを引き起こすように構成される請求項２６に記載の非一時的プロセッサ可読記憶媒体。
【請求項２９】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される変数の値を調整することを備え、
前記コンピューティングデバイスの前記学習能力のうちの前記修正された１つまたは複数をリセットすることは、前記リフレックスの前記トリガー重みを計算するために使用される前記変数の値を既定値に調整することを備えるようなオペレーションを実行することを引き起こすように構成される請求項２６に記載の非一時的プロセッサ可読記憶媒体。
【請求項３０】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
タイマーを初期化することと、
前記受信された信号が前記学習モディファイア信号であると決定したことおよびその後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットすることとをさらに備えるオペレーションを実行することを引き起こすように構成され、
ここにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することは、前記タイマーが切れる前にその後の学習モディファイア信号が受信されたかどうかを決定することを備える請求項２６に記載の非一時的プロセッサ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
[0001]本出願は、すべての目的に関して内容全体が参照により本明細書に組み込まれている、２０１３年５月２４日に出願した米国仮出願第６１／８２７，１４１号、名称「Ａ  Ｍｅｔｈｏｄ  ａｎｄ  Ａｐｐａｒａｔｕｓ  ｆｏｒ  Ｃｏｎｔｉｎｕｏｕｓ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  ｏｆ  ａ  Ｄｅｖｉｃｅ」の優先権の利益を主張するものである。
【０００２】
[0002]本出願は、学習デバイス（learning device）に関するさらなる詳細について参照により内容全体が組み込まれている本出願と同時出願されている米国特許出願第１４／２８６，２４４号、名称「Ｌｅａｒｎｉｎｇ  Ｄｅｖｉｃｅ  Ｗｉｔｈ  Ｃｏｎｔｉｎｕｏｕｓ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｃａｐａｂｉｌｉｔｙ」にも関係する。
【背景技術】
【０００３】
[0003]いくつかのスマートデバイスは、受信されたトリガーに基づきアクションを実行することを学習し得る。しかしながら、いくつかの状況において、スマートデバイスの学習挙動は、ユーザにとって十分または望ましいものでない場合がある。たとえば、新しいスマートデバイスがある環境内に持ち込まれたときに、ユーザは、その新しいスマートデバイスの使用をすぐに開始させるためにその新しいスマートデバイスに加速された学習率を持たせたい場合がある。ユーザは、スマートデバイスの学習能力を制御または調整するための都合のよい方法を必要とし得る。
【発明の概要】
【０００４】
[0004]様々な実施形態が、学習デバイスの非集中システム内の学習能力を修正するためのシステムと、コンピューティングデバイスと、非一時的プロセッサ可読記憶媒体と、方法とを提供する。学習デバイスであるコンピューティングデバイスのプロセッサによって実行され得る一実施形態の方法は、付近のデバイスから信号を受信することと、受信された信号が学習モディファイア信号（learning modifier signal）であるかどうかを受信された信号内のデータに基づき決定することと、受信された信号が学習モディファイア信号であると決定したことに応答して学習デバイスの１つまたは複数の学習能力を修正することとを含み得る。いくつかの実施形態では、この方法は、その後の学習モディファイア信号が受信されたかどうかを決定することと、その後の学習モディファイア信号が受信されていないと決定したことに応答して学習デバイスの修正された１つまたは複数の学習能力をリセットすることとをさらに含み得る。いくつかの実施形態では、学習デバイスの１つまたは複数の学習能力を修正することは、学習デバイスの学習モードを有効化することを含むものとしてよく、学習デバイスの修正された１つまたは複数の学習能力をリセットすることは、学習デバイスの学習モードを無効化することを含むものとしてよい。
【０００５】
[0005]いくつかの実施形態では、学習デバイスの１つまたは複数の学習能力を修正することは、学習デバイスの学習モードを無効化することを含むものとしてよく、学習デバイスの修正された１つまたは複数の学習能力をリセットすることは、学習デバイスの学習モードを有効化することを含むものとしてよい。いくつかの実施形態では、学習デバイスの１つまたは複数の学習能力を修正することは、学習モディファイア信号に基づきリフレックスのトリガーの重みを計算するために使用される変数の値を調整することを含むものとしてよく、学習デバイスの修正された１つまたは複数の学習能力をリセットすることは、リフレックスのトリガー重みを計算するために使用される変数の値を既定値に調整することを含むものとしてよい。
【０００６】
[0006]いくつかの実施形態では、この方法は、タイマーを初期化することと、受信された信号が学習モディファイア信号であると決定したことまたはその後の学習モディファイア信号が受信されたと決定したことに応答してタイマーをアクティブ化するか、またはリセットすることとをさらに含み得る。そのような実施形態では、その後の学習モディファイア信号が受信されたかどうかを決定することは、タイマーが切れる前にその後の学習モディファイア信号が受信されたかどうかを決定することを含み得る。いくつかの実施形態では、タイマーは、学習モディファイア信号からのデータに基づき設定され得る。いくつかの実施形態では、学習モディファイア信号は、学習デバイスが学習率を大きくするか、または小さくするべきかを指示する学習率モディファイア値、学習モディファイア信号の影響を受ける学習デバイスのタイプを指示するデバイスタイプ、学習デバイスが学習モードを有効化するか、または無効化するべきかを指示する学習モードアクティブ設定（learning mode active setting）、学習モディファイア信号の影響を受ける計算の特定のタイプを指示する学習率モディファイアタイプ（learning rate modifier type）、および付近のデバイスが学習モディファイア信号をどれだけ頻繁に送信するかを指示する送信頻度のうちの１つまたは複数を含み得る。
【０００７】
[0007]様々な実施形態は、上で説明されている方法のオペレーションを実行するようにプロセッサ実行可能命令とともに構成されたコンピューティングデバイスを含み得る。様々な実施形態は、上で説明されている方法のオペレーションの機能を実行するための手段を有するコンピューティングデバイスを含み得る。様々な実施形態は、コンピューティングデバイスのプロセッサが上で説明されている方法のオペレーションを実行することを引き起こすように構成されたプロセッサ実行可能な命令が記憶されている非一時的なプロセッサ可読記憶媒体を含み得る。様々な実施形態は、上で説明されている方法のオペレーションを実行するように構成された１つまたは複数の学習デバイスを備え得るシステムを含み得る。
【０００８】
[0008]本明細書に組み込まれ、本明細書の一部をなす添付の図面は、本発明の例示的な実施形態を示し、上記の概略的な説明および下記の発明を実施するための形態とともに、本発明の特徴を説明するのに役立つ。
【図面の簡単な説明】
【０００９】
【図１Ａ】[0009]様々な実施形態を実装する例示的なシステムを示すシステムブロック図。
【図１Ｂ】様々な実施形態を実装する例示的なシステムを示すシステムブロック図。
【図１Ｃ】[0010]様々な実施形態で使用するのに適している一実施形態の学習デバイスのコンポーネントブロック図。
【図１Ｄ】[0011]様々な実施形態で使用するのに適している学習モディファイアデバイスのコンポーネントブロック図。
【図２】[0012]様々な実施形態とともに使用するのに適している一実施形態の学習デバイスのコンポーネントブロック図。
【図３Ａ】[0013]様々な実施形態とともに使用するのに適している様々なコンポーネントを備える一実施形態のイベントレポートメッセージ構造のコンポーネントブロック図。
【図３Ｂ】[0014]様々な実施形態とともに使用するのに適している様々なコンポーネントを備える一実施形態のイベントデータ構造のコンポーネントブロック図。
【図３Ｃ】[0015]様々な実施形態で使用するのに適しているイベントのパターンを識別し、および／または相関させるためにスマートボックス（または学習デバイス）によって利用され得る例示的な時間ウィンドウの図。
【図３Ｄ】様々な実施形態で使用するのに適しているイベントのパターンを識別し、および／または相関させるためにスマートボックス（または学習デバイス）によって利用され得る例示的な時間ウィンドウの図。
【図３Ｅ】様々な実施形態で使用するのに適しているイベントのパターンを識別し、および／または相関させるためにスマートボックス（または学習デバイス）によって利用され得る例示的な時間ウィンドウの図。
【図３Ｆ】様々な実施形態で使用するのに適しているイベントのパターンを識別し、および／または相関させるためにスマートボックス（または学習デバイス）によって利用され得る例示的な時間ウィンドウの図。
【図３Ｇ】様々な実施形態で使用するのに適しているイベントのパターンを識別し、および／または相関させるためにスマートボックス（または学習デバイス）によって利用され得る例示的な時間ウィンドウの図。
【図３Ｈ】様々な実施形態で使用するのに適しているイベントのパターンを識別し、および／または相関させるためにスマートボックス（または学習デバイス）によって利用され得る例示的な時間ウィンドウの図。
【図４】[0016]様々な実施形態で使用するのに適している４つのパターンからなる実施形態のリフレックスのコンポーネントブロック図。
【図５】[0017]様々な実施形態で使用するのに適しているイベントを生成したことに応答して状態を変化させるリフレックスシステムの例示的なタイムライン図。
【図６】[0018]様々な実施形態で使用するのに適している既存のリフレックスに基づく新しいリフレックスの作成を示す例示的なタイムライン図。
【図７】[0019]様々な実施形態で使用するのに適している新規作成されたリフレックスのトレーニング（training）を示す例示的なタイムライン図。
【図８】[0020]様々な実施形態で使用するのに適している学習デバイスに対する２つの例示的な学習率の図。
【図９】[0021]様々な実施形態で使用するのに適している繰返しを通じて知られているリフレックスのトリガー重みを増加させることによって学習デバイスをトレーニングするための報酬信号を示す例示的なタイムライン図。
【図１０】[0022]様々な実施形態で使用するのに適している繰返しを通じて知られているリフレックスのトリガー重みを減少させることによって学習デバイスをトレーニングするための補正信号を示す例示的なタイムライン図。
【図１１】[0023]アクションを実行するか、またはアクションをトリガーに関連付けるイベントを生成し、処理する一実施形態の方法を示すプロセスフロー図。
【図１２】[0024]学習と学習解除（unlearning）のためのトリガー重みを調整するための一実施形態のオペレーションを示すプロセスフロー図。
【図１３Ａ】[0025]ユーザが学習能力を調整するために一実施形態の学習モディファイアデバイスを様々な学習デバイスの近接範囲内に持ち運ぶ状況を示す図。
【図１３Ｂ】ユーザが学習能力を調整するために一実施形態の学習モディファイアデバイスを様々な学習デバイスの近接範囲内に持ち運ぶ状況を示す図。
【図１３Ｃ】ユーザが学習能力を調整するために一実施形態の学習モディファイアデバイスを様々な学習デバイスの近接範囲内に持ち運ぶ状況を示す図。
【図１３Ｄ】[0026]様々な学習デバイスの近接範囲内に位置決めされ、様々な接続を受信したことに応答して学習モディファイア信号を送信するように構成された一実施形態の学習モディファイアデバイスを示す図。
【図１３Ｅ】様々な学習デバイスの近接範囲内に位置決めされ、様々な接続を受信したことに応答して学習モディファイア信号を送信するように構成された一実施形態の学習モディファイアデバイスを示す図。
【図１３Ｆ】様々な学習デバイスの近接範囲内に位置決めされ、様々な接続を受信したことに応答して学習モディファイア信号を送信するように構成された一実施形態の学習モディファイアデバイスを示す図。
【図１４Ａ】[0027]様々な実施形態により学習デバイスが様々な学習状態にあるときに報酬信号を知られているリフレックスのトリガー重みに適用することを示す例示的なタイムラインの図。
【図１４Ｂ】様々な実施形態により学習デバイスが様々な学習状態にあるときに報酬信号を知られているリフレックスのトリガー重みに適用することを示す例示的なタイムラインの図。
【図１４Ｃ】様々な実施形態により学習デバイスが様々な学習状態にあるときに報酬信号を知られているリフレックスのトリガー重みに適用することを示す例示的なタイムラインの図。
【図１４Ｄ】様々な実施形態により学習デバイスが様々な学習状態にあるときに報酬信号を知られているリフレックスのトリガー重みに適用することを示す例示的なタイムラインの図。
【図１５Ａ】[0028]様々な実施形態により学習デバイスが様々な学習状態にあるときに補正信号を知られているリフレックスのトリガー重みに適用することを示す例示的なタイムラインの図。
【図１５Ｂ】様々な実施形態により学習デバイスが様々な学習状態にあるときに補正信号を知られているリフレックスのトリガー重みに適用することを示す例示的なタイムラインの図。
【図１５Ｃ】様々な実施形態により学習デバイスが様々な学習状態にあるときに補正信号を知られているリフレックスのトリガー重みに適用することを示す例示的なタイムラインの図。
【図１５Ｄ】様々な実施形態により学習デバイスが様々な学習状態にあるときに補正信号を知られているリフレックスのトリガー重みに適用することを示す例示的なタイムラインの図。
【図１６】[0029]学習モディファイア信号の実施形態のデータ構造のコンポーネントブロック図。
【図１７Ａ】[0030]学習デバイスが学習モディファイアデバイスから信号を受信したことに応答してその学習能力を変更するための実施形態の方法を示すプロセスフロー図。
【図１７Ｂ】学習デバイスが学習モディファイアデバイスから信号を受信したことに応答してその学習能力を変更するための実施形態の方法を示すプロセスフロー図。
【図１８Ａ】[0031]学習デバイスが学習モディファイアデバイスから信号を受信したことに応答して学習モードを有効化または無効化することによってその学習能力を変更するための実施形態の方法を示すプロセスフロー図。
【図１８Ｂ】学習デバイスが学習モディファイアデバイスから信号を受信したことに応答して学習モードを有効化または無効化することによってその学習能力を変更するための実施形態の方法を示すプロセスフロー図。
【図１９】[0032]学習デバイスが学習モディファイアデバイスから信号を受信したことに応答してトリガー重みを計算する際に使用される変数値を調整することによってその学習率を変更するための一実施形態の方法を示すプロセスフロー図。
【発明を実施するための形態】
【００１０】
[0033]様々な実施形態は、添付の図面を参照しながら詳細に説明される。可能な場合はいつでも、同じまたは同様の部分を指すために図面全体にわたって同じ参照番号を使用する。特定の例および実装形態になされる言及は、説明のためであり、本発明の範囲または特許請求の範囲を限定するものではない。
【００１１】
[0034]「例示的な」という単語は、本明細書では、「一例、事例、または例示として使用する」ことを意味するために使用される。本明細書に「例示的」と記載されたいかなる実装態様も、必ずしも他の実装態様よりも好ましいまたは有利であると解釈されるべきではない。
【００１２】
[0035]「学習デバイス（複数可）」、「スマートデバイス（複数可）」、および「スマートボックス（複数可）」という用語は、本明細書では事前定義されたアクションをユーザ入力、状態の検出された変化、受信された信号または送信、およびデバイス側に取得され得る他の情報などの、トリガーに関係する情報と相関させることによって観察された情報から挙動を学習することができるコンピューティングデバイスを指す。学習デバイスは、時間の経過によって生じるトリガーと事前定義されたアクションとの間の新しい関係または相関を記憶するように構成され得る。事前定義されたアクションにすでに相関しているトリガーを検出したことに応答して、学習デバイスは、事前定義されたアクションを実行するか、または代替的に、他の関連付けられているデバイスが相関するアクションを実行することを引き起こすオペレーションを実行し得る。本開示全体を通して、修飾語「スマート」は、アプライアンス（たとえば、ランプ）が学習デバイスであることを指示するために使用され得る。たとえば、「スマートランプ」という用語は、学習デバイスとなるように構成され、学習デバイスに結合され、制御されるか、または他の何らかの形で学習デバイスのコンポーネントを備えるランプを指す。
【００１３】
[0036]「イベント」という用語は、本明細書では、１つまたは複数の学習デバイスによって検出または生成されたアクション、条件、および／または状況を表すデータ（たとえば、オブジェクトもしくは他のデータ構造）を指すために使用される。イベントは、アクションまたは条件の発生を指示する情報（本明細書では「発生データ」と称される）を取得したことに応答してローカルの学習デバイス上で生成され（または他の何らかの形で取得され）、記憶され得る。発生データは、アクションまたは条件を記述し、さらにはデバイス識別子、タイムスタンプ、優先度情報、利得情報、状態識別子などの、アクションまたは条件を実行または検出したデバイスを識別する様々なデータを含み得る。発生データは、学習デバイス（たとえば、学習デバイスのプロセッサもしくはコアに直接結合されたセンサーなど）に接続された、または学習デバイス（たとえば、非プログラム可能ランプなど）によって他の何らかの形で制御されるデバイスからの信号もしくは他の情報から学習デバイスによって受信されるか、または取得され得る。発生データは、他の付近のデバイスから受信されたブロードキャストメッセージ（本明細書では「イベントレポートメッセージ」と称される）からも学習デバイスによって受信されるか、または取得され得る。たとえば、ローカルで遭遇したセンサーデータに基づき第１のイベントを生成した後に、第１の学習デバイスは、第２の学習デバイスがイベントレポートメッセージ内のデータに基づき第１のイベントも生成することを有効化され得るように第１のイベントが発生したことを指示する発生データとともにイベントレポートメッセージをブロードキャストし得る。
【００１４】
[0037]「リフレックス」という用語は、本明細書では、トリガーと学習デバイスが実行するように構成されているアクションとの間の少なくとも１つの相関または関係を指示する学習デバイス内の記憶されている情報を指すために使用される。リフレックスの記憶されている情報は、学習デバイスがリフレックスのアクションを実行すること、および／またはリフレックス（たとえばトリガー重み）に関して記憶されている永続的データを調整することを引き起こすために所定の時間ウィンドウ内に生成されるイベントとマッチングされ得るパターンを含み得る。イベントは、リフレックス内のパターンの構成単位と考えられ得る。たとえば、リフレックス内に記憶されているトリガーパターンは、１つまたは複数のイベントからなるものとしてよい。
【００１５】
[0038]学習デバイスは、通常動作中に連続的であり維持される学習プロセスを通じて継続する構成を受けるように構成され得る（すなわち、構成は、通常動作とは別の定義されたトレーニングプロセスに限定されない）。そのような学習プロセスは、生体系をエミュレートし、それにより学習デバイスがユーザのインタラクティブな操作を観察することによっておよび／または直観的トレーニング方法を通じて容易に構成されることを可能にし得る。学習デバイスは、ユーザアクションの結果として生成され得るイベント、他の学習デバイスの状態の変化などに応答して望ましい仕方で反応するように容易に構成され得る。単純な繰返しを通じて、プリコンディショニングまたはプログラマーインターフェースを必要とすることなく様々な挙動が複数の学習デバイスの非集中システムによって学習され、したがってその非集中システム内に実装され得る。繰り返される報酬トレーニング入力（rewarding training input）を使用することで、ユーザは、様々なトリガーに応答して事前定義されたタスクを自動的に実行するように学習デバイスを容易にトレーニングすることができる。同様の仕方で、ユーザは、繰り返される補正入力を使用することによって他のトリガーに応答して特定のタスクを自動的に実行することを停止するように学習デバイスを容易にトレーニングすることができる。学習デバイスは、アクションを実行するためにイベントまたはイベントに関係するコンテキストの深い理解を有している必要はない。その代わりに、学習デバイスは、単純に、トリガーおよび関係する事前定義された挙動を検出するために１つまたは複数のデバイスによって送信されるイベントのパターンのマッチングを行うようにトレーニングされ得る。そのようなトレーニングは、それが込み入った、または退屈なセットアップもしくはプログラミングを回避するので有益である。
【００１６】
[0039]非集中システム内の学習デバイスは、トリガーとデバイスの様々な機能の実行との間の新しい関連付けを継続的に学習するように構成され得る。たとえば、スマートステレオは、「オン」にする、「オフ」にする、ラジオ局を変更する、音量を調整するなどのステレオの前定義されたアクションとペアリングされ得る付近のデバイスからの受信された信号に対する受信機回路を継続的に監視し得る。しかしながら、学習がすべて、ユーザが望んでいるものとは限らない。たとえば、スマートＴＶは、「オン」にする（またはアクティブ化する）ことを付近のデバイスからの信号によって報告される様々なトリガーに関連付けることを学習するように構成され得る。時間の経過とともに、スマートＴＶは、ユーザがセンサーを装備するソファに座っていることを指示する信号（たとえば、ユーザが座ったときに圧力を検出するセンサーからの信号など）と、ユーザが歩いて部屋の中に入ったことを指示する信号（すなわち、モーションセンサーからの信号など）と、ユーザが「ＴＶ  ＯＮ」といったことを指示する信号（たとえば、マイクロフォンが取り付けられているデバイスからの信号など）とを受信したことに応答してオンになることを学習し得る。しかし、ユーザは、ソファに座っている間、または部屋に入ったときに他の活動を行うことを好むことがあり、したがって、自分が「ＴＶ  ＯＮ」と行ったことに応答する場合を除きスマートＴＶにアクティブ化して欲しくない、または必要とし得ない。スマートＴＶは、新しい、有益な関連付けを学習することを常時試みているので、スマートＴＶが何を学習し、何を学習しないかをユーザ側で制御することは困難であり得る。これらの理由から、ユーザは、学習デバイスが実際に学習する率を調整し、さらには学習を選択的に有効化または無効化するための手段を有することを望むことがある。
【００１７】
[0040]様々な実施形態が、学習デバイスの非集中システム内の学習能力を修正するためのデバイスと、方法と、プロトコルと、システムと、非一時的プロセッサ可読記憶媒体とを提供する。「学習モディファイアデバイス」と称される、専用デバイスは、付近の学習デバイスが、学習を抑制するか、またはトリガーとトリガーに応答して学習デバイスによって実行されるアクションとの間の関連付けを学習デバイスが強めるか、または弱めることを行うかどうか、またどれだけ行うかを決定するパラメータを調整することなどによって、学習する率ｔを調整することを引き起こし得る。学習モディファイアデバイスが、学習デバイス（たとえば、スマートＴＶ、スマートランプなど）の近接範囲内にあるときに、学習モディファイアデバイスによって送信された信号は、新しい挙動の学習に関連付けられている修正されたオペレーションを利用するように学習デバイスを一時的に再構成することができる。たとえば、学習モディファイアデバイスの近くにあるときに、スマートランプは、オンになることを学習する前により少ない「オン」イベント信号がスマート壁面スイッチから受信されることを必要とすることによって学習モディファイアデバイスによって送信された信号に応答し得る。別の例として、スマートランプは、スマートＴＶの「オン」イベント信号に応答してオンになることを停止することを学習するためより少ない補正信号を必要とし得る。別の例として、スマートランプは、受信された信号で指示されるイベントとスマートランプが実行し得るアクション（たとえば、オンになる）との間の新しい関連付けを作成することを停止するか、または開始し得る。したがって、学習モディファイアデバイスが、その信号の範囲内にあるときに、学習デバイスは、事前に関連付けられているトリガーに応答してアクションを実行することを（または実行を停止することを）より速く、または遅く学習し、および／または何かを学習する能力を単純に有効化するか、または無効化することができる。
【００１８】
[0041]学習モディファイアデバイスは、受信する学習デバイスがその学習能力を調整することを引き起こすメッセージ（本明細書では「学習モディファイア信号」と称される）をアクティブ化されたときに定期的に送信するように構成され得る。そのような学習モディファイア信号は、Ｂｌｕｅｔｏｏｔｈ（登録商標）  ＬＥブロードキャストパケットまたはＷｉＦｉ（登録商標）などの、有線もしくはワイヤレス媒体を介して送信され得る。いくつかの実施形態では、学習モディファイア信号は、リフレックスに対するトリガー重み（またはトリガー重み変化）を計算するときに学習デバイスによって利用され得るスカラー、乗数、増幅係数、および／または、減衰係数などの、受信側学習デバイスがその学習（または学習率）を調整すべき程度を指示するデータを含み得る。たとえば、学習モディファイア信号は、トリガー重み計算を行うために学習デバイスによって使用される１つまたは複数の変数（または値）との乗算、除算、加算、または減算が行われ得る整数または浮動小数点値を含み、これは、トリガー重みがその学習デバイスに対して標準であるのとは異なる仕方で計算されることを引き起こし得る（たとえば、トリガー重みは計算ごとにより大きくなる、など）。様々な実施形態において、学習モディファイア信号は、学習デバイスが関連付けられているアクションを実際に実行することを学習する前により多くの、またはより少ない数のトリガーイベントを検出する（または受信する）必要があり得るようにリフレックスのトリガー重みを計算する際に使用される利得に対する一時的変更を引き起こし得る。
【００１９】
[0042]一例として、スマートステレオは、スマートステレオ内のＦＭチューナーをアクティブ化することを、スマート壁面スイッチからの「オン」イベント信号とソファ内のセンサーからの圧力イベント信号の両方に関連付けることをすでに学習している。言い換えれば、第１の関連付けは、第１のトリガー重みが第１の閾値より高い第１のリフレックスとして記憶され、第２の関連付けは、第２のトリガー重みが第２の閾値より高い第２のリフレックスとして記憶され得る。しかしながら、ユーザは、スマート壁面スイッチからの「オン」イベント信号に応答してスマートステレオにそのＦＭチューナーをアクティブ化させることのみを望んでいる場合がある。これが行わせるようにするために、第２のリフレックスの第２のトリガー重みは、ＦＭチューナーが圧力イベント信号に応答してアクティブ化しないように第２の閾値より低くされる必要があり得る。通常、ユーザは、圧力イベント信号とＦＭチューナーをアクティブ化することとの間の関連付けを「ティーチング解除する」ために補正手続きを複数回繰り返さなければならない場合がある。たとえば、ユーザは、ソファに座り、ステレオがＦＭチューナーを自動的にアクティブ化するのを待ち、次いで、スマートステレオが第２のリフレックスに対する第２のトリガー重みを第２の閾値より低く下げるまでスマートステレオ上の「補正」パターンを押すことを繰返し行わなければならない場合がある。この通常プロセスは、単調で、時間のかかる作業であり、ユーザは実行したくない場合がある。
【００２０】
[0043]引き続きこの例について、ユーザは、学習モディファイアデバイスを使用して、スマートステレオの学習率を調整し、それによって、圧力イベント信号とＦＭチューナーをアクティブ化することとの間の関連付けをティーチング解除する時間をスピードアップすることができる。特に、ユーザが学習モディファイアデバイスをスマートステレオの近接範囲内に持ち込み、これはスマートステレオがトリガー重みを計算するのに使用される変数を調整することを引き起こし得る。次いで、ユーザがソファに座り、これは圧力イベント信号がＦＭチューナーのアクティブ化をトリガーするスマートステレオに受信されることを引き起こし得る。次いで、ユーザが「補正」ボタンを押し、これはスマートステレオが学習モディファイア信号に基づき調整された変数を使用して第２のリフレックスに対する新しいトリガー重みを計算することを引き起こし得る。その後、ユーザがソファに座ったときに、スマートデバイスは、学習率が調整されているため関連付けをティーチング解除するのに「補正」ボタンを１回押すだけで十分であったので、ＦＭチューナーをアクティブ化し得ない。
【００２１】
[0044]様々な実施形態において、学習モディファイアデバイスは、スマートフォン、専用シグナリングデバイスもしくは送信機（たとえば、「魔法の杖」デバイス）、または付近の学習デバイスによる受信用に構成された信号をブロードキャストすることができる別のプログラム可能なデバイスであってよい。いくつかの実施形態では、学習モディファイアデバイスは、他の信号またはユーザ入力を受信したことに応答して学習モディファイア信号を送信し得る。たとえば、学習モディファイアデバイスは、ＷｉＦｉルーターを介してインターネットまたはローカルエリアネットワーク上でコマンドを受信したことに応答して信号ブロードキャストすることを開始または停止することができる。別の例として、学習モディファイアデバイスは、ユーザが開始ボタンを押すか、または学習モディファイアデバイス上にアプリケーションをロードするか、アクセスするか、または他の何らかの形でアクティブ化したことに応答して学習モディファイア信号を送信することを開始または停止することができる。いくつかの実施形態では、学習モディファイアデバイスは、ペアリングされたＢｌｕｅｔｏｏｔｈデバイス（たとえば、電話機）とのリンクを介するなど、短距離シグナリングを介して、事前関連付けされたユーザデバイスに接続されたときに学習モディファイア信号を送信し得る。
【００２２】
[0045]いくつかの実施形態では、学習モディファイアデバイスによって送信される学習モディファイア信号は、受信側学習デバイスが、学習デバイスがトリガーとアクションとの間の新しい関連付けを生成すること、および／またはすでに存在しているリフレックスのトリガー重みを調整することとを行える学習モードを有効化または無効化（すなわち、入るか、または出る）べきであることを指示し得る。たとえば、スマートステレオが、既定の設定で、トリガーと実行されるべきアクションとの間の関連付けの新しいリフレックスを生成することができないときに、ユーザは、学習モディファイアデバイスを使用して、一時的にスマートステレオを有効化された学習モードにして、ステレオが付近のスマート壁面スイッチから「オン」イベント信号を受信したことに応答して「オン」になることを学習するようにできる。さらなる例として、ユーザが、スマートステレオに他の関連付けを学習させたくない（したがってリフレックスを記憶させたくない）ときに、ユーザは、部屋から学習モディファイアデバイスを取り除き（またはそれをオフにし）、スマートステレオを無効化された学習モードにすることができる。このようにして、学習モディファイアデバイスが、ある場所から取り除かれたときに、その場所にある学習デバイスは、意図しない学習から保護され得る。たとえば、客が訪問したときに、家の主人が、スマートＴＶが客の活動に基づく関連付けをうっかり学習することをさせないために、学習モディファイアデバイスをＴＶ室から取り除くことができる。
【００２３】
[0046]様々な実施形態において、いくつかの学習デバイスは、学習モディファイア信号内のデータおよび／または学習モディファイアデバイスの近接に基づき学習モディファイアデバイスの影響を受けることも受けないこともあり得る。たとえば、学習モディファイア信号が、スマートＴＶのみがその学習率を調整すべきであることを指示するデータを含むときに、スマート壁面スイッチは、学習モディファイア信号を受信したことに応答してその学習率を調整し得ない。
【００２４】
[0047]いくつかの実施形態では、学習モディファイア信号は、付近の学習デバイスによるなりすましまたは他の意図されない学習を禁止するために暗号化されるか、または他の何らかの形で保護され得る。たとえば、ブロードキャストされた学習モディファイア信号は、ユーザのスマートデバイスとのみ共有される秘密復号鍵を使用して生成されたハッシュを含み得る。そのような保護対策は、学習モディファイアデバイスがアパートまたはタウンハウスなどの、複数家族が住む建物内で使用されるときに有益であり得る。
【００２５】
[0048]次の説明では、学習デバイスは、１つまたは複数スマートボックスとして参照されるものとしてよく、これらは、図１Ｃおよび図２を参照しつつ以下で説明されているコンポーネントを有する学習デバイスの特定の実施形態である。しかしながら、類似のコンポーネントおよび機能を有する他の学習デバイスまたはスマートデバイスも、本開示において説明されているように様々な実施形態を利用するように構成され得ることは理解されるであろう。
【００２６】
[0049]図１は、様々なデバイス１０２、１０４、１０６、１１４、１１５、１１６が信号を互いに送受信するスマートボックス１０３ａ〜１０３ｅによって制御され得る一実施形態のシステム１００を示している。スマートボックス１０３ａ〜１０３ｅの間で伝達される信号は、各スマートボックスが信号をシステム１００内の特定のアクションまたは条件の発生に関係するものとして認識することを可能にするデータまたは他の情報を含み得る。特に、スマートボックス１０３ａ〜１０３ｅは、無線周波数（ＲＦ）送信１１２またはワイヤレス通信リンクを介して、図３Ａを参照しつつ以下で説明されているような発生データを含むイベントレポートメッセージをブロードキャストすることができる。スマートボックス１０３ａ〜１０３ｅは、代替的に、またはそれに加えて、有線接続、光、音、またはそのような媒体の組合せを介して互いに通信することができる。
【００２７】
[0050]一例として、様々な実施形態によって使用可能にされるシステム１００は、スマートボックス１０３ａに接続された壁面スイッチ１０２を備え、スマートボックス１０３ａは壁面スイッチ１０２が他のデバイスによる応答を制御する（たとえば、フロアランプ１０４をオンにする）ことを可能にする信号を送信する。壁面スイッチ１０２は、有線接続１１０によってスマートボックス１０３ａに接続されるか、またはスマートボックス１０３ａおよび壁面スイッチ１０２は、単一のユニットに組み合わされ得る。壁面スイッチ１０２がトグルされると、その関連付けられているスマートボックス１０３ａは、状態のこの変化を検出し、ＲＦ送信１１２を介してイベントレポートメッセージを発行し、これは送信するスマートボックス１０３ａの半径内にある他のスマートボックス１０３ｂから１０３ｅのうちのどれかによって受信され得る。１つのそのような受信するスマートボックス１０３ｂは、有線接続１１０ｂを介してフロアランプ１０４に接続され得る。例として、フロアランプのスマートボックス１０３ｂは、フロアランプ１０４がオンになることを引き起こすイベントを生成することによって「オン」位置に移動される壁面スイッチ１０２に対応するイベントレポートメッセージに応答するようにトレーニングされ得る。フロアランプ１０４がオンになると、そのスマートボックス１０３ｂは、イベントを指示する発生データを含み、他の付近のスマートボックス１０３ｃ〜１０３ｅさらには壁面スイッチ１０２に接続されているスマートボックス１０３ａによって受信され得るイベントレポートメッセージをブロードキャストし得る。代替的に、またはそれに加えて、スマートボックス１０３ａ、１０３ｃ〜１０３ｅは、ランプをオンにすることが発生／条件／アクションを指示する信号として処理され得るようにフロアランプ１０４からの光を感知し得る光センサーを備えることができる。
【００２８】
[0051]図１Ａに示されているように、電気スタンド１１５、ステレオ１０６、携帯電話１１４、およびセンサー１１６などの、様々なデバイスがスマートボックスに結合され得る。スマートボックス１０３ａ〜１０３ｅは、個別のデバイス１０２、１０４、１１５、１１６から分離しているように図示されているけれども、各デバイスは、内部スマートボックスを備えるものとしてよく、１つのデバイス内のスマートボックスは、分離しているデバイスに結合され得る。説明を簡単にするため、フロアランプ１０４、壁面スイッチ１０２、電気スタンド１１５、センサー１１６、およびステレオ１０６への参照は、断りのない限りその対応するスマートボックスも参照し得る。
【００２９】
[0052]図１Ａには示されていないけれども、システム全体を通して他の学習デバイスまたはスマートボックスによって受信され処理され得る信号（すなわち、イベントレポートメッセージ）を送信するために非学習デバイスがシステム１００内に備えられてもよい。たとえば、壁面スイッチ１０２は、図示されているスマートボックス１０３ａの代わりに送信機を有していてもよい。オンにトグルされたとき、壁面スイッチは符号化された「オン」信号（たとえば、１ビットイベントレポートメッセージ）を送信するものとしてよく、壁面スイッチがオフにトグルされたとき、これは、異なる符号化された「オフ」信号（たとえば、２ビットイベントレポートメッセージ）を送信し得る。システム内の別のスマートボックス（たとえば、フロアランプ１０４に接続されたスマートボックス１０３ｂ）は、いずれかの信号を受信し、これをイベントに変換することができ、これは記憶されているリフレックスの関連付けられているアクションに対応し得る。
【００３０】
[0053]スマートボックスは、典型的には、スマートボックスで、またはスマートボックスによって実行されたアクションおよび／またはスマートボックスで検出された条件（たとえば、センサーデータ）などの、スマートボックスにおいてイベントを指示するイベントレポートメッセージをブロードキャストするか、または他の何らかの形で送信するように構成され得る。たとえば、スマートボックスまたはスマートボックスにワイヤレス方式で接続されている送信機（「レポーター」）は、ガレージのドアが開かれていることを指示するデータを含む信号をブロードキャストすることができる。スマートボックスは、典型的にはある場所の他のスマートボックスに直接に関与するようには構成されないが、その代わりに、請求応答なしで、および／または他のデバイスのオペレーションを考慮することなく、発生データを単に報告するだけであってもよいことは理解されるであろう。しかしながら、いくつかの実施形態では、スマートボックスは、そのような送信１１２を介して互いに直接通信することができる。たとえば、ある場所（たとえば、家庭、オフィスなど）に置かれた新しいスマートボックスは、お気に入りの（または最も頻繁に遭遇する）イベントを指示するデータを求める信号をその場所における他の学習デバイスに送信することができ、他のデバイスから応答信号受信したことに応答して、新しいスマートボックスは、バイアスを設定するように構成され得る。
【００３１】
[0054]システム１００は、システム１００内の様々なスマートボックス１０３ａ〜１０３ｅによる受信のために有線またはワイヤレス信号を送信することができる学習モディファイアデバイス１５０をさらに備えることができる。特に、学習モディファイアデバイス１５０は、学習モディファイア信号を、Ｂｌｕｅｔｏｏｔｈ  ＬＥ、ＷｉＦｉ  Ｄｉｒｅｃｔ（登録商標）、ＲＦなどの、ワイヤレス送信１１２’を介して、スマートボックス１０３ａ〜１０３ｅに送信することができる。たとえば、学習モディファイアデバイス１５０は、第１のスマートボックス１０３ａがリフレックスに対するトリガー重みを計算する際に使用される学習率を大きくすることを引き起こす学習モディファイア信号を定期的にブロードキャストするように構成され得る。別の例として、学習モディファイアデバイス１５０は、第１のスマートボックス１０３ａが学習モードを無効化または有効化する（たとえば、新しいリフレックスを生成すること、および／または既存のリフレックスに対するトリガー重みを変更することを行えるようになる、または行えなくなる、など）ことを引き起こす学習モディファイア信号を送信し得る。
【００３２】
[0055]いくつかの実施形態では、学習モディファイアデバイス１５０は、ワイヤレスまたは有線リンク１５３を介してインターネット１５２との接続を提供するように構成されたネットワークインターフェースを適宜備えることができる。たとえば、ネットワークインターフェースは、ワイドエリアネットワーク（ＷＡＮ）と通信することができるトランシーバ（たとえば、ＷｉＦｉ無線、セルラーネットワーク無線など）であってよい。インターネット１５２との接続に基づき、学習モディファイアデバイス１５０は、接続１５５を介してインターネット１５２に接続されているリモートサーバ１５４などの、様々なデバイスおよびデータソースとインターネットプロトコルを介して通信することができる。リモートサーバ１５４は、ウェブサーバ、クラウドコンピューティングサーバ、またはサードパーティに関連付けられている他のサーバデバイスであってよい。たとえば、リモートサーバ１５４は、ウェブサイトまたはポータル、または学習モディファイアデバイス１５０上にダウンロードされ、使用され得るプログラム、アプリ（またはアプリケーション）、コマンド、命令、スクリプト、ルーチン、構成、もしくは他の情報を配布するデータソースに関連付けられているサーバであってよい。
【００３３】
[0056]図１Ｂは、システム１００’内の壁面スイッチ１０２がスマートボックス１０３ａに、内部的に、または有線接続１１０ａなどの別の接続によって、接続され得ることを示している。壁面スイッチ１０２は、タッチセンサー１１９またはトグルを有することができる。タッチセンサー１１９がタッチされるか、またはトグルされたときに（たとえば、壁面スイッチ１０２がオンにされたときに）、状態の変化が発生データとしてスマートボックス１０３ａに有線接続１１０ａを介して伝達され得る。スマートボックス１０３ａは、発生データによってイベントとして指示される状態の変化を解釈し、ＲＦ送信１１２ａ、１１２ｂなどによって、イベントに関連付けられているイベントレポートメッセージをワイヤレス方式で送信することができる。イベントレポートメッセージは、壁面スイッチ１０２の受信範囲１２３内にあるスマートボックスによって受信され得る。いくつかの実施形態では、フロアランプ１０４は、ＲＦ送信１１２ａを受信するスマートボックス１０３ｂを備えるか、またはそれに結合され得る。ときには、ＲＦ送信１１２ａを介してイベントレポートメッセージを受信した後に、フロアランプ１０４上のランプスイッチ１２６が、ユーザによってオンにされ、これにより、照明１２４がオンになるものとしてよい。フロアランプ１０４は、そのスマートボックス１０３ｂに、現在「オン」状態になっていることを信号で知らせ、スマートボックス１０３ｂは、この信号を発生データとして解釈し得る。この信号は、ランプスイッチ１２６とスマートボックス１０３ｂとの間の有線接続１１０ｂによって、またはワイヤレス方式で（たとえば、Ｂｌｕｅｔｏｏｔｈデータリンクを介して）送信され得る。スマートボックス１０３ｂが、ランプを通電するスイッチを備える場合、このシグナリングは、このスイッチの作動であってよい。
【００３４】
[0057]様々な実施形態において、フロアランプ１０４に関連付けられているスマートボックス１０３ｂは、壁面スイッチ１０２をトグルする直前またはトグルした直後に（たとえば、５〜１０秒以内に）ユーザが手動でフロアランプ１０４をオンにすることによって壁面スイッチのスマートボックス１０３ａからトグル信号（すなわち、トグルアクションを指示する発生データを含むイベントレポートメッセージ）を受信したことに応答してフロアランプ１０４を通電するか、またはフロアランプ１０４がオンになることを引き起こすようにトレーニングされ得る。このような学習を遂行するために、スマートボックス１０３ｂは、所定の時間ウィンドウ内で壁面スイッチのトグル（イベントレポートメッセージで報告されるような）およびフロアランプ１０４の作動に関係するイベント（フロアランプ１０４から取得された発生データを介して報告されるような）がいつ生じたかを認識することができる。これは、少なくとも一部は、所定の時間ウィンドウに対する取得された発生データから生成されたイベントをバッファリングすることと、バッファに記憶されているイベントを処理し、相関させることと、その後、バッファからイベントを削除することとによって遂行され得る。たとえば、フロアランプ１０４に接続されているスマートボックス１０３ｂは、壁面スイッチ１０２の「オン」イベントをフロアランプ１０４のランプスイッチ１２６の「オン」イベントに関連付けることを、これら２つのイベントが生成されるか、または所定の時間ウィンドウ内で生じるときに行うことができ、実際、将来の壁面スイッチ１０２の「オン」イベントがフロアランプ１０４の作動をトリガーすべきであることを学習する。いくつかの実施形態では、イベントの順序は、重要であるが、いくつかの実施形態では、イベントの順序は問題にならず、したがって、イベントの順序は、イベントが所定の時間ウィンドウ内で生じる（または生成される）限り逆にされ得る。たとえば、壁面スイッチ１０２に接続されているスマートボックス１０３ａは、フロアランプ１０４のランプスイッチ１２６の「オン」イベントを後続する壁面スイッチ１０２の「オン」イベント（たとえば、タッチセンサー１１９へのタッチ）に関連付けることができ、実際、将来の壁面スイッチ１０２の「オン」イベントがフロアランプ１０４の作動をトリガーすべきであることをそのまま学習する。以下でより詳しく説明されているように、そのようなトレーニングは、望ましくない挙動をうっかり学習してしまうことを回避するためある程度の繰返しを必要とし得る。
【００３５】
[0058]図１Ｃに示されているように、一実施形態のスマートボックス１０３は、信号受信機１４２から受信されたイベントレポートメッセージを処理するように構成されたプロセッサ１３２（図１Ｃにおいて、中央演算処理装置（ＣＰＵ）と称される）を備えることができる。スマートボックス１０３は、他の学習デバイスまたはスマートボックスによって受信され得るＲＦ信号を介してイベントレポートメッセージで発生データを送信するように構成された信号送信機１３６を備えることができる。上で説明されているように、そのようなイベントレポートメッセージ内の発生データは、スマートボックス１０３において遭遇した条件または実行されたアクションを定義または特徴付けることができる（すなわち、イベントレポートメッセージが、スマートボックス１０３において生成されたイベントを特徴付けることができる）。さらに、その信号受信機１４２を介して、スマートボックス１０３は、他のデバイスから類似の送信されたＲＦ信号を介してイベントレポートメッセージを受信することができ、以下で説明されているようなデータ構造を使用して受信された信号からの受信された発生データをイベントとしてメモリ１３８内のバッファに保存することができる。いくつかの実施形態では、メモリ１３８は、本開示全体を通して説明されているような関連付けられているパターンを有するリフレックスを記憶するためのある量（たとえば、３２キロバイト（ＫＢ）、６４ＫＢなど）の記憶装置（たとえば、ランダムアクセスメモリ（ＲＡＭ）、フラッシュなど）を備え得る。この実施形態のスマートボックス１０３は、スマートボックス１０３によって検出された状態の変化を指示する発生データを取得するためのセンサーエンコーダ１３４を備えることができる。たとえば、スマートボックス１０３が、フロアランプに接続され、フロアランプがオンにされた場合、接続されているスマートボックス１０３内のセンサーエンコーダ１３４は、状態の変化をデジタル方式で識別するか、またはマップするために発生データを生成し得る。この発生データは、スマートボックス１０３のメモリ１３８に記憶され、そのブロードキャスト範囲内の他の学習デバイス（たとえば、スマートボックス）に対してイベントレポートメッセージ内でブロードキャストされ得る。他の学習デバイスは、その信号受信機を通じて発生データを含むイベントレポートメッセージを受信し、最終的に本明細書で説明されている様々な学習アルゴリズムによって関係するイベントを処理することができる。いくつかの実施形態では、メモリ１３８は、揮発性ランダムアクセスメモリ（ＲＡＭ）ユニット（複数可）と不揮発性フラッシュメモリユニット（複数可）とを含むものとしてよい。そのような実施形態では、ＲＡＭユニットは、スマートボックス１０３の様々な機能を動作させるために使用され、フラッシュユニットは、永続的データ（たとえば、リフレックスなど）とログデータ（たとえば、取得されたイベント、信号など）を記憶するために使用され得る。いくつかの実施形態では、リフレックス（以下で説明されているような）は、フラッシュメモリに記憶され得ないが、その代わりに、揮発性ＲＡＭに記憶され、これにより、学習された挙動の再設定を効率的に簡単に行えるようにすることができる（たとえば、電源をオフにすることによって未トレーニング状態にリセットし、ＲＡＭ内のすべてのリフレックスを消去する）。いくつかの実施形態では、フラッシュメモリは、サイズが様々であり、また他の点で、オプションであってもよい。たとえば、フラッシュメモリは、６４ＭＢ  ＲＡＭユニットに等しい６４ＭＢ記憶ユニットであってもよく、両方とも図１Ｃに表されているようにメモリ１３８内に含まれ得る。
【００３６】
[0059]それに加えて、スマートボックス１０３は、補正されたトリガーに応答して学習されたリフレックスアクションとし接続されているデバイス上で物理的アクションを実行するためのモーター駆動装置１４０を備え得る。たとえば、スマートボックス１０３が、フロアランプに接続され、受信されたイベントレポートメッセージに応答して生成されたイベントに基づきフロアランプがオンになるべきであると決定した場合、スマートボックス１０３のプロセッサ１３２は、モーター駆動装置１４０に信号を送りフロアランプの電源スイッチを作動させることができる。モーター駆動装置１４０の代わりに（またはそれに加えて）、スマートボックス１０３は、補正されたトリガーに応答して学習されたリフレックスアクションとしてアプライアンスを外部電源（たとえば、１２０Ｖの交流電源）に接続するように構成されたリレーを備えることができる。
【００３７】
[0060]いくつかの実施形態では、スマートボックス１０３は、スマートボックス１０３のコンポーネントに結合された電池１４３（たとえば、充電式リチウムイオン電池など）を備え得る。いくつかの実施形態では、スマートボックス１０３は、それに加えて、電流を受けて充電式電池１４３を充電するか、またはスマートボックス１０３の様々なコンポーネントに他の何らかの形で電力を供給するための電線または他のインターフェース１４４（たとえば、交流（ＡＣ）電源コンセントに接続するためのプラグまたはプロング）を備えることができる。
【００３８】
[0061]図１Ｄは、リモートサーバからのデータダウンロード情報および／または入力データなどの、様々なデータを処理するように構成されたプロセッサ１８０を備え得る一実施形態の学習モディファイアデバイス１５０を示している。学習モディファイアデバイス１５０は、Ｂｌｕｅｔｏｏｔｈアドバタイズメントパケットなどの、短距離信号を交換するように構成されている信号トランシーバ１８８を備え得る。たとえば、学習モディファイアデバイス１５０は、付近のスマートボックスによる受信のために学習モディファイア信号を送信するためのＢｌｕｅｔｏｏｔｈまたはＷｉＦｉ無線を備え得る。学習モディファイアデバイス１５０は、様々な通信ネットワークと通信するためにオプションネットワークインターフェース１８４も備え得る。たとえば、ネットワークインターフェース１８４は、ワイドエリアネットワークトランシーバ、イーサネット（登録商標）インターフェース、セルラーネットワークチップ、および／または学習モディファイアデバイス１５０がインターネットプロトコルを介してメッセージングを交換することを可能にする機能を有する他のコンポーネントであってよい。学習モディファイアデバイス１５０は、ユーザ入力を受信するように構成されたタッチスクリーン、情報を表示することができる画面、および／またはユーザ側で学習モディファイアデバイス１５０によって学習モディファイア信号の送信を制御もしくは変更するための周辺機器などの、ユーザインターフェースコンポーネント１８６を含み得る。さらに、学習モディファイアデバイス１５０は、メモリ１８２のバッファ内にデータ（たとえば、ユーザ入力データ、リモートサーバからダウンロードされたデータ、など）を保存することができる。たとえば、学習モディファイアデバイス１５０は、イベントデータ構造をメモリ１８２に記憶することができる。いくつかの実施形態では、学習モディファイアデバイス１５０は、学習モディファイアデバイス１５０のコンポーネントに結合された電池１９０（たとえば、充電式リチウムイオン電池など）を備え得る。他の実施形態では、学習モディファイアデバイス１５０は、それに加えて、電流を受けて充電式電池１９０を充電するか、または学習モディファイアデバイス１５０の様々なコンポーネントに他の何らかの形で電力を供給するための電線または他のインターフェース１９２（たとえば、交流（ＡＣ）電源コンセントに接続するためのプラグまたはプロング）を備えることができる。
【００３９】
[0062]図２は、イベントから新しい挙動を学習し、その後のイベントに応答して学習された挙動を実行するために様々な機能コンポーネントがどのように一緒に結合されるか、または通信するかを示す一例を図示するスマートボックス１０３の一実施形態のアーキテクチャ２００を示している。スマートボックス１０３は、イベント生成器２０２と、センサーエンコーダ１３４と、信号受信機１４２とを備え得る。イベント生成器２０２は、知られているイベントパターン（たとえば、すでに学習されている、または事前プログラミングされているパターン）を指示するデータを受信したことに応答してイベントまたは１つもしくは複数のイベントのシーケンスを生成することができる。たとえば、イベントのパターンがスマートボックス１０３に接続されているフロアランプをオンにする事前定義されたアクションに関連付けられている場合、イベント生成器２０２は、イベントパターン記憶装置２０４に記憶されているパターンを有する信号内の受信された発生データから生成されるイベントとマッチしたことに応答して「ランプオン」イベントを生成し得る。次いで、生成されたイベントは、イベントバス２１４を介してモーター駆動装置１４０に伝達され、スマートボックス１０３に接続されているフロアランプのライトをオンにする。
【００４０】
[0063]スマートボックス１０３は、信号受信機１４２を介して別のスマートボックスから信号内の発生データ（たとえば、イベントレポートメッセージ）を受信することもできる。信号受信機１４２によって受信された信号からのデータは、イベントバス２１４を介して、イベントレコーダー２０６などの、他のデバイスコンポーネントにイベントとしてトランスポートされ得る。
【００４１】
[0064]スマートボックス１０３は、センサーエンコーダ１３４からのイベントも認識することができ、このエンコーダは、イベントバス２１４を介してイベントを他のコンポーネントに伝達し得る。たとえば、ユーザがスマートボックス１０３に接続されているフロアランプを手動でオンにする場合、状態の変化を示す発生データ（たとえば、ライトを「オフ」から「オン」にする）は、センサーエンコーダ１３４によってデジタル符号化され、状態の変化をイベントに変換することができる。
【００４２】
[0065]信号送信機１３６は、その後、イベントレポートメッセージを介して別のスマートボックスによって発生データも受信され得るようにイベントバス２１４を介して受信されたイベントに基づき発生データを送信することができる。これは、一方のスマートボックス１０３から他方のスマートボックスへのイベントに関する情報の転送を可能にし、これにより、スマートボックスが互いから学習し、各それぞれのスマートボックスによって学習された挙動に基づき複雑なシステム挙動を作成することを可能にし得る。イベントに関係するデータ（すなわち、イベントレポートメッセージ内の発生データ）の再送またはブロードキャストは、スマートボックスがデージーチェーンで一緒につながれ与えられたスマートボックスの信号範囲を拡張することを可能にし得る。
【００４３】
[0066]イベントレコーダー２０６は、イベントバス２１４からイベントを受信し、そのイベントをイベントパターン記憶装置２０４に保存し得る。いくつかの実施形態では、イベントレコーダー２０６は、発生データを受信し、受信されたデータに基づきイベントを作成し、イベントパターン記憶装置２０４に記憶することができる。イベントセレクター２１０は、イベントレコーダー２０６から１つまたは複数のイベントを受信することができる。イベントの特定の組合せを受信したことに応答して、セレクター２１０は、ストアパターンコマンドを生成し、ストアパターンコマンドをイベントレコーダー２０６に送信し、イベントの組合せをパターンとしてイベントパターン記憶装置２０４内に記憶することをそれに指令することができる。いくつかの実施形態では、イベントセレクター２１０は、イベントバス２１４から直接イベントを受信することができる。
【００４４】
[0067]コンポーネントのオペレーションおよびスマートボックス１０３に対するインタラクティブな操作は、次の例に示されている。フロアランプに接続されたスマートボックス１０３は、信号受信機１４２を通じてスマートボックス１０３で受信される、壁面スイッチからのイベントレポートメッセージを介して状態の変化を指示する発生データを受信し得る。信号受信機１４２を介したスマートボックス１０３は、壁面スイッチの状態の変化に関係するイベントをイベントバス２１４を介してイベントレコーダー２０６に伝達することができる。その後まもなく、ユーザは、スマートボックス１０３に接続されているフロアランプのライト１２４を手動でオンにすることができ、それに応答して、センサーエンコーダ１３４が、この状態の変化をイベントに変換して、そのイベントをイベントバス２１４を介してイベントレコーダー２０６に伝達し得る。イベントレコーダー２０６は、それらのイベントを、受信されるとともにセレクター２１０に送信し得る。セレクター２１０は、学習アルゴリズムを用いて、壁面スイッチのトグルに基づき生成される、イベントのパターンと、フロアランプの手動のライトオン発生データとを処理することができる。イベントを処理した後、セレクター２１０は、ストアパターンコマンドを通じてイベントのパターンをイベントパターン記憶装置２０４に記憶するようにイベントレコーダー２０６に指令することができる。イベントパターン記憶装置２０４は、イベント間の学習された関連付けをリフレックスとして特定の重み関連付けとともに記憶し得る。いくつかの実施形態では、イベントパターン記憶装置２０４は、補正パターンと、報酬パターンと、トリガーパターンと、アクションパターンとを生成するために使用されるパターンもしくはイベントなどの所定のパターンおよび／またはイベントも同様に記憶することができる。
【００４５】
[0068]観察されたイベントとアクションとの間の関連付けに応じて、セレクター２１０は、以下で説明されているように、利得調整器２１２と連携して、観察されたアクションパターン（たとえば、ユーザがフロアランプをオンにしたことの観察）および／または重み（すなわち、バイアス、スケール、など）の方程式および／または計算に関係する他の特性に関連付けられているイベントの重みを変更する（たとえば、トリガーイベントのトリガー重みを増加させる）ことができる。
【００４６】
[0069]適宜、センサーエンコーダ２５２は、指令されたアクションの開始に基づき追加のイベントを提供し得る。これらの追加のイベントは、指令されたイベントが実際に発生した（たとえば、「オン」アクションが実行されたことに応答してライトが実際に点灯した、など）ことの確認であるものとしてよく、スマートボックス１０３がイベントとアクションとの間の関連付けを学習するのを助ける報酬イベント（またはパターン）として処理することができる。
【００４７】
[0070]図３Ａは、発生データを特徴付けるために使用され得るデータ構造３００を示している。発生データは、フォーマットコンポーネント３０１と、識別コンポーネント３０２と、状態コンポーネント３０３とを含むようにデータレコード内に反映され得る。スマートボックス（たとえば、図１Ｃに示されているような）のプロセッサ１３２（またはＣＰＵ）は、復号情報をフォーマットコンポーネント３０１として記録し得る。これは、プロトコルバージョン、暗号化タイプ、シーケンス番号、トランザクション識別子（たとえば、指示なしで様々な発生データを次のデータから区別するために使用され得る情報、方向、順序、またはシーケンス）、記録時間、送信時間などを含み得る。しかしながら、記録時間および送信時間は、フォーマットコンポーネント３０１におけるオプションフィールドであり得る。いくつかの実施形態では、トランザクション識別子（またはＩＤ）は、値に関して連続していないか、または他の何らかの形で順序番号（たとえば、シーケンス内で増加または減少）を指示し得る。上で説明されているように、スマートボックスは、データ構造３００を少なくとも含む信号（すなわち、イベントレポートメッセージ）を送信するように構成されるものとしてよく、また他の学習デバイスは、そのような信号を受信し、このフォーマットコンポーネント３０１を使用してデータ構造３００の発生データの残りを読み取るように構成され得る。識別コンポーネント３０２は、発生データの発生元のデバイスを指示するものとしてよく、状態コンポーネント３０３は、発生データが表す状態または状態の変化に対応し得る。いくつかの実施形態では、状態コンポーネント３０３は、デバイスの動作状態（たとえば、「オン」、「オフ」など）に加えてボルト（たとえば、０．０２）などの、アナログ状態データを含み得る。
【００４８】
[0071]たとえば、発生データに対するデータ構造３００は、「Ｖ２．１」のフォーマットコンポーネント３０１と、「ＷＡＬＬＳＷＩＴＣＨ１０２」の識別コンポーネント３０２と、「ＯＮ」の状態コンポーネント３０３とを含み得る。これは、壁面スイッチに接続されているスマートボックスで２．１のデータフォーマットバージョンを表し、また壁面スイッチが「オフ」から「オン」にトグル式に切り替えられたことを表し得る。さらにこの例において、発生データおよび関連付けられているイベントは、壁面スイッチ（図１Ａに示されている）のところで生成され得る。生成された後、発生データは、イベントレポートメッセージで、そのブロードキャスト範囲内にあるすべてのスマートボックスによって受信されるように壁面スイッチに関連付けられているスマートボックスからブロードキャストされ得る。フロアランプに関連付けられている付近のスマートボックスは、ブロードキャストされた発生データを受信して処理することができる。発生データは、後で説明されるイベントデータ構造３５０（図３Ｂ）と類似のデータコンポーネントを有し得るので、受信するスマートボックスは、発生データを利用してイベントを生成し復号することができる。これは、イベントのフィルタリングおよびパターン生成を円滑にするのに役立ち得る。
【００４９】
[0072]図３Ｂは、イベントを記録するか、または特徴付けるために使用され得るデータ構造３５０を示している。データ構造３５０は、適宜、上で説明されているようなフォーマットコンポーネント３０１を含み得る。イベントは、時間コンポーネント３５１と、識別コンポーネント３５２と、状態コンポーネント３５３とを含むようにデータレコード内に反映され得る。イベントデータ構造３５０は、発生データに関して図３Ａにおいて上で説明されているようなデータ構造３００に類似しており、イベントは、発生データと同時に生成され得る。データ構造３００（すなわち、発生データ）は、データ構造３５０（すなわち、イベント）を生成するためにスマートボックスによって使用され、またその逆もあり得る。スマートボックスが、イベント発生源（たとえば、信号受信機１４２）を通じてイベントに対する発生データを受信したときに、イベントに関連付けられている時間コンポーネント３５１を記録することができる、イベントレコーダー２０６内のイベントを特徴付けるデータを記憶することができる。時間コンポーネント３５１は、受信するスマートボックスによってイベントが作成されるか、または観察された時間であってよい。代替的に、時間コンポーネント３５１は、イベントの発生データを送信する前に発生元のスマートボックスによって割り当てられた時間（すなわち、アクションが実行された、または条件が観察されたときなど）を示し得る。識別コンポーネント３５２は、イベントの発生データの発生元のデバイスを指示するものとしてよく、状態コンポーネント３５３は、イベントが表す状態または状態の変化に対応し得る。
【００５０】
[0073]たとえば、イベントは、１７：１２：０２の時間コンポーネント３５１と、「ＷＡＬＬＳＷＩＴＣＨ１０２」の識別コンポーネント３５２と、「ＯＮ」の状態コンポーネントとを含み得る。これは、壁面スイッチに接続されているスマートボックス上で１７：１２：０２に作成されたイベントを表し、また壁面スイッチが「オフ」から「オン」にトグル式に切り替えられたことを表し得る。引き続きこの例示において、そのようなイベントを記述する発生データは、イベントレポートメッセージで、壁面スイッチに関連付けられているスマートボックスからそのブロードキャスト範囲内にあるどれかのスマートボックスにブロードキャストされ得る。フロアランプに関連付けられているスマートボックスは、以下で説明されているように、ブロードキャストされたイベントレポートメッセージを受信し、含まれている発生データを処理して学習アルゴリズムによる処理のためのイベントを生成することができる。
【００５１】
[0074]イベントパターンは、取得されるか、生成されるか、または他の何らかの形で時間ウィンドウもしくはシーケンス内で遭遇する１つまたは複数のイベントを含み得る。たとえば、特定のイベントパターンが、学習デバイス（たとえば、スマートフロアランプなど）によって内部で生成された第１のイベントと、別のデバイス（たとえば、スマート壁面スイッチなど）から受信される信号を受信したことに応答して学習デバイスによって取得された第２のイベントとを含み得る。後で説明されているように、イベントパターンは、トリガーパターン、アクションパターン、補正パターン、または報酬パターンであってよい。どのタイプかに関係なく、イベントパターンは、順序依存であるものとしてよく、したがって特定のイベントが受信される順序がパターンを構成する。代替的に、イベントパターンは順序独立であってよく、その場合、パターンは、イベントの処理順序から独立している。たとえば、第１のイベント（イベントＡと称される）は、時刻０に取得され（たとえば、受信された発生データに基づき生成される）、第２および第３のイベント（それぞれイベントＢおよびイベントＣと称される）は、その後の時刻１に同時に取得され得る（Ａ：０、Ｂ：１、Ｃ：１と表される）。順序依存パターンでは、学習デバイスは、イベントＡが最初に取得され、イベントＢおよびＣがイベントＡの後に同時に取得される場合にのみパターンを認識し得る（Ａ：０、Ｂ：１、Ｃ：１と表される）。しかしながら、イベントＣが時刻１ではなく時刻２において取得された場合、パターン（Ａ：０、Ｂ：１、Ｃ：２）は、イベントＣが時刻１ではなく時刻２において取得されたので、パターンＡ：０、Ｂ：１、Ｃ：１に等しくなり得ない。したがって、時刻１にイベントＣを取得することによって作成される第１のパターン（Ａ：０、Ｂ：１、Ｃ：１）および時刻２にイベントＣを取得することによって作成されるパターン（Ａ：０、Ｂ：１、Ｃ：２）は、イベントＣを取得する時刻が異なるので異なる。順序独立パターンでは、学習デバイスは、取得されたイベントＡ：０、Ｂ：１、Ｃ：１を取得されたイベントＡ：０、Ｂ：１、Ｃ：２と同じように処理し得るが、それは、Ｃの時刻は、イベントＣがイベントＡおよびイベントＢと同じ所定の時間ウィンドウ内で取得される限り重要でないからである。言い換えれば、順序独立の場合、同じベントは、特定の時間ウィンドウ内で取得されるだけでよい。スマートボックスまたは学習デバイスによって観察される時間ウィンドウは、図３Ｃ〜図３Ｈを参照しつつ以下でさらに説明される。
【００５２】
[0075]いくつかの実施形態では、複数のスマートボックスまたは学習デバイスが、パターン（たとえば、トリガーパターンおよびアクションパターン）を生成し、単一のイベントに基づきアクションを実行することができる。たとえば、ユーザは、壁面スイッチを「オフ」から「オン」にトグルし、壁面スイッチが単一の第１のイベントを生成することを引き起こすことができる。第１のイベントを生成した後、壁面スイッチは、関係するイベントレポートメッセージをワイヤレス方式ですべての付近の学習デバイスにブロードキャストし得る。第１の付近の学習デバイスは、たとえば、フロアランプであってよく、これは受信されたイベントレポートメッセージに基づき第１のイベントを生成し、それをトリガーパターンに変換し得る。トリガーパターンに応答して、フロアランプは、アクションパターンを生成し、このアクションパターンに基づきライトをアクティブ化することができる。同時に、付近のステレオが、同じイベントレポートメッセージを受信し、それと同時に、受信されたイベントレポートメッセージに基づき第１のイベントを同様に生成し、それをトリガーパターンに変換し、フロアランプと異なる関連付けられているアクションパターンを生成し、異なるアクションパターンに基づき音楽を再生することができる。したがって、この例において第１のパターンに関係する単一のブロードキャストされたイベントレポートメッセージは、フロアランプがそのライトをアクティブ化し、ステレオが音楽を再生することを引き起こした。
【００５３】
[0076]いくつかの実施形態では、複数のスマートボックスは、アクションパターンを生成し、複数の個別のイベントに関係する複数のイベントレポートメッセージを受信することに基づき対応するアクションを実行することができる。たとえば、ユーザは、図１Ａからの壁面スイッチを「オフ」から「オン」にトグルし、壁面スイッチにおいて第１のイベントを生成する。ユーザは、スマートフロアランプのランプスイッチをオフから「オン」にトグルすることもでき、これは、スマートフロアランプがスマートフロアランプにおいて第２のイベントを生成することを引き起こす。第１および第２のイベントに関係するイベントレポートメッセージ（すなわち、それぞれ第１および第２のイベントに対する発生データを含む）は、５〜１０秒の時間ウィンドウ内でそれぞれのスマートボックスからブロードキャストされ得る。なおもその時間ウィンドウ内で、付近のスマートステレオおよびスマート電気スタンドは、第１および第２のイベントに関係する両方のイベントレポートメッセージを受信し得る。スマートステレオは、第１および第２のイベントに関係するイベントレポートメッセージを受信することに基づきトリガーパターンと、対応するアクションパターンとを生成し得る。アクションパターン生成は、たとえば、ステレオがオンになり、音楽の再生を開始することを引き起こすことができる。それと同時に、スマート電気スタンドは、同じ２つのイベントに関係するイベントレポートメッセージを受信することに基づきトリガーパターンと、異なるアクションパターンとを生成する。アクションパターンを生成した後、スマート電気スタンドは、たとえば、そのライトをオンにすることができる。
【００５４】
[0077]図３Ｃ〜図３Ｈは、様々な実施形態の学習デバイスがイベントのパターンを識別し、および／または補正するために時間をロールオーバーする時間ウィンドウ３６２をどのように使用するかを示している。上で説明されているように、そのような時間ウィンドウ３６２は、与えられた時刻にパターンまたはパターンの一部として識別されることに対して適格であり得るイベントに対して時間的制限を加えることができる、秒数（たとえば、５〜１０秒）などの、所定の時間量であってよい。言い換えれば、時間ウィンドウ３６２内に発生するか、またはスマートボックスによって取得されるイベント（たとえば、時間ウィンドウ３６２内に収まる図３Ｂにおいて上で説明されているような時間コンポーネント３５１を有するイベント）が組み合わされて、以下で説明されているようにアクションをトリガーし、および／またはリフレックスに対するトリガー重みを調整する際に使用するためのパターンを生成し得る。いくつかの実施形態では、スマートボックスは、取得されたイベントを、そのような取得されたイベントが所定の時間ウィンドウ３６２内にもはや収まっていないときにメモリ、バッファ、または他の記憶装置から削除するように構成され得る。
【００５５】
[0078]図３Ｃは、タイムライン３６０に対する例示的な時間ウィンドウ３６２を示している。取得されるか、または観察されたイベント３７０〜３７４（図３Ｃ〜図３ＦにおいてイベントＡ〜Ｅと称される）は、第１の時刻３８０ａおよび第２の時刻３８０ｂに関して時間ウィンドウ３６２内でスマートボックスによって遭遇されているものとしてよい。時間ウィンドウ３６２の長さは、第１の時刻３８０ａと第２の時刻３８０ｂとの間の時間の長さとすることができる。そのため、第２の時刻３８０ｂにおいて、スマートボックスは、取得されたイベント３７０〜３７４のうちのどれかを任意の組合せまたは順序で使用して、記憶されているリフレックス内の事前定義されたパターンとマッチされ得るパターンを生成し得る。たとえば、スマートボックスは、「Ａ，Ｂ，Ｃ，Ｄ，Ｅ」、「Ａ，Ｂ，Ｃ，Ｄ，」「Ａ，Ｂ，Ｃ，」「Ａ，Ｂ」「Ａ」、「Ａ，Ｂ，Ｃ，Ｄ，Ｅ」、「Ａ，Ｃ，Ｅ」、「Ｅ，Ｃ，Ａ」、「Ａ，Ｅ，Ｃ」などの、イベントＡ〜Ｅの任意の組合せおよび／または順序を使用してパターンを生成することができる。
【００５６】
[0079]図３Ｄは、第３の時刻３８１ａと第４の時刻３８１ｂとの間の時間ウィンドウ３６２内で取得されたイベント３７１〜３７５（図３ＤにおいてイベントＢ〜Ｆと称される）を示している。たとえば、第４の時刻３８１ｂにおいて、イベント「Ａ」３７０は、もはや、時間ウィンドウ３６２内にはないが（すなわち、イベント「Ａ」３７０は、第３の時刻３８１ａよりも早い時刻に対応し得る）、イベントＢ〜Ｆ３７１〜３７５の任意の組合せは、スマートボックスに記憶されているリフレックス内の事前定義された情報とマッチし得るパターンを生成するように組み合わされ得る。いくつかの実施形態では、イベント「Ａ」３７０は、第４の時刻３８１ｂにおいてメモリ、バッファ、または他の記憶装置から削除されるか、または他の何らかの形で取り除かれ得る。
【００５７】
[0080]同様に、図３Ｅは、第５の時刻３８２ａと第６の時刻３８２ｂとの間の時間ウィンドウ３６２内でスマートボックスによって取得され得るイベント３７２〜３７６（図３ＥにおいてイベントＣ〜Ｇと称される）を示している。たとえば、第６の時刻３８２ｂにおいて、イベント「Ａ」３７０およびイベント「Ｂ」３７１は、もはや、時間ウィンドウ３６２内に入っていないが、イベントＣ〜Ｇ３７２〜３７６の任意の組合せは、スマートボックスに記憶されているリフレックス内の事前定義された情報とマッチし得るパターンを生成するように組み合わされ得る。いくつかの実施形態では、イベント「Ｂ」３７１は、第６の時刻３８２において（すなわち、時間ウィンドウ３６２の外であるとき）メモリ、バッファ、または他の記憶装置から削除されるか、または他の何らかの形で取り除かれ得る。スマートボックスは、同様の方式で時間ウィンドウ３６２をロールする（または進ませる）ことを続け、時間ウィンドウ３６２内に収まるイベントを継続的に評価し、イベントが事前定義されたパターンに対応しているかどうかを決定することができる。
【００５８】
[0081]図３Ｆ〜図３Ｈは、識別されたパターンに関する様々な他の例示的な時間ウィンドウを示している。本明細書で説明されているように、スマートボックス（または学習デバイス）は、フロアランプの「オン」イベントまたは壁面スイッチの「オン」イベントなどのイベントを識別されたトリガーまたはそのような事前定義された時間ウィンドウ内で発生する他のパターンに相関させ得る。たとえば、特定のリフレックス（たとえば、取得された壁面スイッチの「オン」イベント）のトリガーパターンの発生を検出したことに応答して、スマートボックスは、リフレックスの関係する報酬パターンまたは補正パターンもトリガーパターンから５〜１０秒の時間ウィンドウ内で発生したかどうかを決定し得る。スマートボックスは、関係するパターンにも遭遇したかどうかを決定するために識別されたパターン（たとえば、トリガーパターン）の前および／または後に取得される取得済みイベントを評価し得る。
【００５９】
[0082]図３Ｆ〜図３Ｈは、イベント「Ｄ」３７３および識別されたパターンに関連付けられている時刻３８９（図３Ｆ〜３Ｈでは「Ｔｉｍｅ  ｏｆ  ｉｄ’ｄ  ｐａｔｔｅｒｎ」と称されている）からなる識別されたパターンに関する様々な時間ウィンドウ３６２ａ〜３６２ｃを示している。図３Ｆは、識別されたパターン（すなわち、イベント「Ｄ」３７３）に関連付けられている時刻３８９の前に生じる第１の期間３９２ａを含むように構成され、識別されたパターンに関連付けられている時刻３８９の後に生じる第２の期間３９２ｂに等しい第１の時間ウィンドウ３６２ａを示している。スマートボックスは、識別されたパターンに関連付けられている時刻３８９から第２の期間３９２ｂが経過した後に生じる第１の終了時刻３９０ａまでに識別されたパターンに相関され得るイベントを取得し、バッファリングする（または他の何らかの形で記憶する）ように構成され得る。第１の期間３９２ａおよび第２の期間３９２ｂが同じ持続時間である場合に、等しい数のイベントが、潜在的に、識別されたパターンに関連付けられている時刻３８９の前および後に生じる期間３９２ａ、３９２ｂ内に取得され得る。言い換えれば、第１の時間ウィンドウ３６２ａにより、スマートボックスは、イベント「Ｂ」３７１、イベント「Ｃ」３７２、イベント「Ｅ」３７４、およびイベント「Ｆ」３７５のうちのどれかまたはすべてをイベント「Ｄ」３７３の識別されたパターンに相関させることができるものとしてよい。別の例として、スマートボックスは、イベント「Ｄ」３７３の識別されたパターンをイベント「Ｂ」３７１とイベント「Ｆ」３７５とを含む報酬パターンなどと相関させることができる。
【００６０】
[0083]図３Ｇは、識別されたパターンに関連付けられている時刻３８９の後に生じる第４の期間３９３ｂより短い（または時間的に小さい）識別されたパターン（すなわち、イベント「Ｄ」３７３）に関連付けられている時刻３８９の前に生じる第３の期間３９３ａを含むように構成されている第２の時間ウィンドウ３６２ｂを示している。スマートボックスは、識別されたパターンに関連付けられている時刻３８９から第４の期間３９３ｂが経過した後に生じる第２の終了時刻３９０ｂまでに識別されたパターンに相関され得るイベントを取得し、バッファリングする（または他の何らかの形で記憶する）ように構成され得る。したがって、識別されたパターンの後に生じる第４の期間３９３ｂ内で、より多くの数のイベントが潜在的に取得され得る。言い換えれば、第２の時間ウィンドウ３６２ｂにより、スマートボックスは、イベント「Ｃ」３７２、イベント「Ｅ」３７４、イベント「Ｆ」３７５、およびイベント「Ｇ」３７６のうちのどれかまたはすべてをイベント「Ｄ」３７３の識別されたパターンに相関させることができるものとしてよい。たとえば、スマートボックスは、イベント「Ｄ」３７３の識別されたパターンをイベント「Ｃ」３７２と、イベント「Ｅ」３７４と、イベント「Ｇ」３７６を含む補正パターンなどと相関させることができる。
【００６１】
[0084]図３Ｈは、識別されたパターンに関連付けられている時刻３８９の後に生じる第６の期間３９４ｂより長い（または時間的に大きい）識別されたパターン（すなわち、イベント「Ｄ」３７３）に関連付けられている時刻３８９の前に生じる第５の期間３９４ａを含むように構成されている第３の時間ウィンドウ３６２ｃを示している。スマートボックスは、識別されたパターンに関連付けられている時刻３８９から第６の期間３９４ｂが経過した後に生じる第３の終了時刻３９０ｃまでに識別されたパターンに相関され得るイベントを取得し、バッファリングする（または他の何らかの形で記憶する）ように構成され得る。したがって、識別されたパターンの前に生じる第５の期間３９４ａ内で、より多くの数のイベントが潜在的に取得され、バッファリングされ得る。言い換えれば、第３の時間ウィンドウ３６２ｃにより、スマートボックスは、イベント「Ａ」３７０、イベント「Ｂ」３７１、イベント「Ｃ」３７２、およびイベント「Ｅ」３７４のうちのどれかまたはすべてをイベント「Ｄ」３７３の識別されたパターンに相関させることができるものとしてよい。たとえば、スマートボックスは、イベント「Ｄ」３７３の識別されたパターンをイベント「Ｃ」３７２と、イベント「Ｅ」３７４とを含む補正パターンなどと相関させることができる。
【００６２】
[0085]上で説明されているように、リフレックスは、スマートボックスが関連付けられているトリガーを検出したことに応答して実行するか、または開始することができる事前定義されたアクションを指示する記憶されている情報であるものとしてよい。図４に示されているように、４つのパターンは、リフレックス４００、特にトリガーパターン４０２と、アクションパターン４０４と、報酬パターン４０６と、補正パターン４０８とを構成し得る。パターンは、１つまたは複数のイベントを含み、イベントは、データに関連付けられ得る。しかしながら、いくつかの実施形態では、パターンは、１ビット信号に関係付けられ得る（たとえば、割り込み信号線がＨｉｇｈレベルになる）。たとえば、１ビット信号は、報酬パターンに変換され、スマートボックスの論理イベントバス上に出され得る報酬信号であるものとしてよい。割り込みセンサーは一種のセンサーエンコーダであってよいので、そのような１ビット信号報酬パターンは、センサーエンコーダ経路を、上で説明されているように取り得る。他のパターンタイプ（たとえば、アクション、トリガーなど）は、単純な信号（たとえば、１ビット信号または割り込み）によっても定義され得る。
【００６３】
[0086]スマートボックスが知られているリフレックスの知られているトリガーパターンとマッチするイベント（または複数のイベント）を取得したときに、スマートボックスは、対応するアクションパターン４０４を生成し得る。リフレックスは、所定の報酬パターンおよび所定の補正パターンを有することができる。スマートボックスが、学習を許されたときに報酬パターンを受け取った場合、スマートボックスは、トリガーパターン４０２とアクションパターン４０４との間の関連付けに対する重み付け（すなわち、トリガー重み）を増加させ得る。関連付け重み付けが、閾値量を超えると、スマートボックスは、トリガーパターンに応答してアクションパターンを実行し得る。同様に、リフレックス４００は、所定の補正パターン４０８を有することができ、スマートボックスが、学習を許されたときに補正パターンを受け取った場合、スマートボックスは、トリガーパターン４０２とアクションパターン４０４との間の関連付け重み付けを減少させ得る。補正パターン４０８の処理で、関連付け重み付けの修正を、関連付け重み付けが閾値量よりも低くなり得、スマートボックスが事実上トリガーパターン４０２に応答してアクションパターン４０４を実行しないことを学習する十分な回数だけ行うことができる。この仕方で、スマートボックスは、トリガーパターン４０２と対応するアクションパターン４０４との間の関連付けを学習し、望ましくないトリガー／アクション関連付けを学習解除することができる。様々な実施形態において、補正パターン４０８および／または報酬パターン４０６は、アクションを実行すること、入力を受信することなどに応答してイベントレポートメッセージを発行する付近のデバイスなどの別のスマートボックスデバイスからスマートボックスによって受信されたデータに基づき取得され得る。
【００６４】
[0087]いくつかの実施形態では、スマートボックスのリフレックス４００の事前定義されたアクションパターン４０４をトリガーパターンに関連付けるために、スマートボックスに対する「学習を許された」状態（または学習モード）を有効化する方法が使用され得る。そのような学習モードは、スマートボックスがリフレックス４００のトリガー重みを変更することを可能にされ得る間のスマートボックスの動作状態であるものとしてよい。取得されたパターンが知られているリフレックス４００のトリガーパターン４０２にマッチした後、リフレックスは学習モードに入り得る。他の実施形態では、スマートボックスは、アクションパターン４０４が生成されるときに学習モードに入り得る。他の実施形態では、スマートボックスは、大域的学習モードまたは状態に入り、これはトリガー（たとえば、学習スイッチをオンにする）から独立しているものとしてよく、またそのときに、スマートボックスは様々なリフレックスに対するトリガー重みを変更するか、または他の何らかの形で、取得されたイベントに基づき新しいリフレックスを生成することができる。様々な実施形態において、リフレックス４００は、リフレックス４００がアクティブな監視モード、トリガーされたモード、学習モードなどに入っているかどうかを指示するビット、フラグ、または他のインジケータなどの、様々なモードのステータスを指示するデータを含み得る。
【００６５】
[0088]スマートボックスは、スマートボックスの所定の知られている能力に対するアクションパターンを有する１つまたは複数のリフレックスとともに構成され得る。スマートボックスは、複数のリフレックスを異なる対応するアクションとともに利用することができるけれども、いくつかの実施形態では、スマートボックスは、製造業者によって提供されるデータにおいて指示されるアクションパターンなどの、スマートボックスの知られている能力またはアクションの静的セットの外部のアクションを実行するように構成され得ない。そのため、スマートボックスは、知られているアクションに相関する知られていないトリガーを有する新しいリフレックスを生成するように構成され得るが、事前定義されていないアクションを有する新しいリフレックスを生成するように構成され得ない。
【００６６】
[0089]例示として、ステレオ学習デバイス（または学習デバイスまたはスマートボックスに結合されているステレオ）は、音量レベルを音量レベル値の有限の範囲（たとえば、０〜１０など）内の値に設定する、ラジオ（またはラジオチューナー）を「オン」にアクティブ化する、ラジオ（またはラジオチューナー）を非アクティブ化する、ラジオ放送局をラジオ放送局の値の有限の範囲（たとえば、８８．１〜１２１．９など）内の値に設定する、周波数変調（ＦＭ）構成または振幅変調（ＡＭ）構成を設定するなどの所定のアクションとともに構成され得る。ステレオ学習デバイスは、様々なトリガーパターンを有するこれらの所定のアクションの各々に対するリフレックスを記憶することができる。たとえば、ステレオ学習デバイスは、ラジオ放送局を第１の値（たとえば、９２．３ＦＭ）に設定するアクションパターンとランプ「オン」イベントのトリガーパターンとを有する第１のリフレックス、ラジオ放送局を第２の値（たとえば、１０１．５ＦＭ）に設定するアクションパターンと壁面スイッチ「オン」イベントのトリガーパターンとを有する第２のリフレックス、音量レベルを８に設定するアクションパターンとランプ「オン」イベントのトリガーパターンとを有する第３のリフレックス、などを記憶することができる。
【００６７】
[0090]パターンは、センサー（たとえば、光センサー、スイッチ視覚センサーなど）によって取得された発生データに基づき生成されるイベントおよび／または信号受信機１４２によって受信された発生データに基づき生成される１つまたは複数のイベントなどの、スマートボックスで取得される１つまたは複数のイベント（たとえば、時間コンポーネント、デバイスコンポーネント、など）から作成され得る。イベントは、メモリ１３８内に記憶され、パターンを作成または認識するためにイベントレコーダー２０６によって使用され得る。パターンを作成または認識するためにイベントを評価する前に、フィルタがイベントに適用され、これにより、考慮され得るイベントのセットを縮小することができる。たとえば、フロアランプのスマートボックスは、ステレオからのイベントレポートメッセージに関係するイベントを無視することができる。代替的な一例として、ステレオは、午後１１時などの、ある時以降に取得されるか、または生成されたイベントを無視することができる。スマートボックスが、イベントのパターンを生成した後、これは、そのパターンが記憶されているリフレックスに対応する知られているトリガーパターンとマッチするかどうかを決定することができる。
【００６８】
[0091]識別されたパターンがリフレックス内の記憶されているトリガーパターンとマッチし、関係するトリガー重みが特定の閾値に等しいか、またはそれ以上である場合に、対にされたアクションパターンが生成され得る。特定のリフレックス（Ｒｅｆｌｅｘi）に対する現在のトリガー重み（Ｗi）は、次の式に基づき計算され得る。
【００６９】
【数１】
2016524226.tif 000003
【００７０】
[0092]ただし、ｉは、リフレックスカウンターまたは識別子であり、ｎは、リフレックスのトリガーパターンに関連付けられているイベントの数であり、ｋは、リフレックスのトリガーパターン内の個別のイベントに対するカウンターを識別し、ｍは、リフレックスのトリガーパターン内の個別のイベントに対するイベントマッチインジケータであり、ｘは、リフレックスのトリガーパターン内の個別のイベントに関連付けられているマッチ重みであり、ｓは、リフレックスのトリガーパターン内の個別のイベントに適用されるスケール係数であり、ｂは、リフレックスのトリガーパターン内の個別のイベントに適用される重みマッチ全体に対するバイアスである。したがって、Ｒｅｆｌｅｘiの現在のトリガー重みＷiは、イベントマッチ（ｍ）にマッチ重み（ｘ）とスケール係数（ｓ）とを掛けて取った総和にＲｅｆｌｅｘiに関連付けられているトリガーパターンにおけるバイアスｂを加えたものに等しい。いくつかの実施形態では、マッチ重み（ｘ）は、それぞれのイベントに関連付けられている利得によって調整されるものとしてよく、本開示で説明されているように、利得は、学習デバイスが臨界期間内にあるか、または定常状態期間内にあるかに基づき設定され得る。いくつかの実施形態では、スマートボックスは、値を０．０から１．０の範囲内に正規化する。さらに、いくつかの実施形態では、イベント（ｍ）に対するイベントマッチインジケータは、イベントが完全にマッチしたかしていないかを指示し得る０．０と１．０との間で流動的な値であり得る。（すなわち、１．０のイベントマッチ値は、完全マッチを表し、０．０のイベントマッチは、完全なミスマッチを指示し得る）。
【００７１】
[0093]例示として、単一のイベントの識別されたパターンが特定のリフレックス（Ｒｅｆｌｅｘi）に対する知られているトリガーパターンとマッチする場合に、単一のイベントに対するイベントマッチインジケータ（ｍ）は、１に設定され得る。単一のイベントに対するマッチ重み（ｘ）が関連付けられている利得値に基づき１に設定され、スケール係数（ｓ）も１に設定され、Ｒｅｆｌｅｘiに対するバイアス（ｂ）は０に設定されていると仮定すると、Ｒｅｆｌｅｘiに対する新しい、または現在のトリガー重みＷiは１に等しいものとしてよい。同じパターンが再び受信された場合、マッチ重み（ｘ）は、リフレックスに関連付けられている現在の利得によって調整され、その結果、トリガー重み閾値よりも大きくなり得るその後の新しいトリガー重み（Ｗi）の増加が生じ得る。したがって、新しいトリガー重み（Ｗi）は、増減し得る。たとえば、２度目も同じトリガーパターンを受信することは、ｍk,iが１に設定され、ｘk,iが１．５に調整され、ｓk,iが１に設定され、ｂiが０に設定されていると仮定してトリガー重み（Ｗi）を１．５に増加させ得る。同じ条件の下で、識別されたパターンが、知られているトリガーパターンとマッチしない場合、ｍは、０に等しくなり、その結果、新しいトリガー重みＷiも０に等しくなり得る。
【００７２】
[0094]追加の例示として、ステレオ（たとえば、図１Ａにおいて上で説明されているようなステレオ１０６）は、様々なリフレックスを記憶し、利用することができるスマートボックスを備えるか、またはこれに結合され得る。特に、ステレオは（そのスマートボックスを介して）、付近のシーリングライトからの「オン」信号に関係する第１のイベントと、付近のリクライナー内の人感センサー（たとえば、圧力センサー、モーションセンサーなど）からの信号に関係する第２のイベントとを含むトリガーパターンを有する第１のリフレックス（Ｒi）を記憶し得る。たとえば、第１のイベントは、アクティブ化されたときにシーリングライト（またはシーティングライトに結合されているスマートボックス）によって送信された信号に対応するものとしてよく、第２のイベントは、リクライナーに人が座っているときにリクライナー（またはリクライナーに結合されているスマートボックス）によって送信された信号に対応するものとしてよい。第１のリフレックスは、ステレオがトリガーパターンの発生を検出したことに応答してステレオがオンになることを引き起こし得るアクションパターンも含み得る（すなわち、シーティングライトとリクライナーイベントの両方）。言い換えれば、第１のリフレックスに基づき、ステレオは、シーリングライトがオンにされ、誰かが事前定義された時間ウィンドウ（たとえば、５〜１０秒など）内でリクライナーに座ったことに応答してラジオをアクティブ化し、音楽を再生することができる。
【００７３】
[0095]次の表は、ステレオの第１のリフレックス（つまり、Ｒi）に関する式の例示的な特性を示している。次の例および表の目的に関して、第１のリフレックスのアクションパターン（すなわち、ステレオをオンにして、音楽を再生する）は、第１のリフレックス（すなわち、Ｗi）のトリガー重みが１．５のトリガー閾値以上であるときにトリガーされるものとしてよく、この条件はステレオが第１のイベントおよび第２のイベントのうちの少なくとも一方を受信したことに応答して発生し得る。第１のイベントは、イベントｋ＝０であり、第２のイベントは、ｋ＝１であるものとしてよい。さらに、様々イベント（ｍn,i）に対するマッチインジケータを除き、製造業者、開発者、またはユーザによって設定されるような、次の特性における様々な値は、事前定義され得ることは理解されるであろう。たとえば、イベントに対するマッチ重みは、製造業者によって設定され得るか、またはスマートボックスにおいて遭遇した以前のイベントに基づくものとしてよい。
【００７４】
【表１】
2016524226.tif 000004
【００７５】
[0096]上の表Ａの例示的な特性に示されているように、一シナリオにおいて、第１のイベント（すなわち、ｋ＝０）のみがステレオによって受信され得る。したがって、ステレオのスマートボックスは、第１のイベント（ｍ０，ｉ）に対するイベントマッチインジケータを１．０に（すなわち、第１のイベントに対してマッチがある）、第２のイベント（ｍ１，ｉ）に対するイベントマッチインジケータを０．０に（すなわち、第２のイベントに対してマッチがない）設定することができる。第１のリフレックスのトリガー重みは、各イベントに対する部分重み計算結果を総和することによって計算されるものとしてよく、それにより、第１のイベントの部分重みは、１．０と計算される。言い換えれば、（ｍ０，ｉ＊ｘ０，ｉ＊ｓ０，ｉ）＋ｂｉ＝（１．０＊１．０＊１．０）＋０．０＝１．０である。第２のイベントはないので、第２のイベント（ｍ１，ｉ）に対するイベントマッチインジケータは０．０であり、したがって、第２のベントに対する部分重み計算結果は０．０となり得る。言い換えれば、（ｍ１，ｉ＊ｘ１，ｉ＊ｓ１，ｉ）＋ｂｉ＝（０．０＊１．０＊１．０）＋０．０＝０．０である。したがって、第１のリフレックス（Ｗｉ）のトリガー重み合計は、１．０（すなわち、１．０＋０．０）であり、これは１．５のトリガー閾値よりも小さい。したがって、第１のイベントのみが受信された場合、第１のリフレックスのアクションパターンはトリガーされ得ない（たとえば、ステレオはラジオをアクティブ化し得ない）。
【００７６】
【表２】
2016524226.tif 000005
【００７７】
[0097]上の表Ｂの例示的な特性に示されているように、別のシナリオにおいて、第１のイベント（すなわち、ｋ＝０）および第２のイベント（すなわち、ｋ＝１）の両方がステレオによって受信され得る。したがって、スマートボックスは、第１のイベント（ｍ0,i）に対するイベントマッチインジケータを１．０に（すなわち、第１のイベントに対してマッチがある）、第２のイベント（ｍ1,i）に対するイベントマッチインジケータを非ゼロの値に設定することができる。しかしながら、いくつかの場合において、第２のイベントは、正確にマッチされ得ず、そのため、第２のイベント（ｍ1,i）に対するマッチインジケータは、０．８に設定され得る（すなわち、第２のイベントに対して少なくとも部分的なマッチがある）。第２のイベント（ｍ1,i）に対するイベントマッチインジケータに対する０．８の値は、第２のイベントマッチが、値を０．０から１．０までの範囲に正規化するシステムに対する不完全なマッチであったことを指示するものとしてよく、１．０は、イベントマッチ値に対する完全なマッチを表す。
【００７８】
[0098]上で説明されているように、トリガー重み（Ｗi）は、各イベントに対する部分重み計算結果を総和することによって計算されるものとしてよく、それにより、第１のイベントの部分重みは、１．０と計算される。言い換えれば、（ｍ0,i＊ｘ0,i＊ｓ0,i）＋ｂi＝（１．０＊１．０＊１．０）＋０．０＝１．０である。さらに、第２のイベントの部分重みは、０．８と計算される。言い換えれば、（ｍ1,i＊ｘ1,i＊ｓ1,i）＋ｂi＝（０．８＊１．０＊１．０）＋０．０＝０．８である。したがって、第１のリフレックス（Ｗi）のトリガー重み合計は、１．８（すなわち、１．０＋０．８）であり、これは１．５のトリガー閾値よりも大きい。そのため、第１のイベントと第２のイベントの両方がスマートボックスで取得される場合、第１のリフレックスのアクションパターンが生成され、これはアクションが実行されることを引き起こし得る（たとえば、ステレオがそのラジオをアクティブ化し、音楽を再生し得る、など）。いくつかの実施形態では、第１のリフレックスのアクションパターンが生成され、これはトリガー閾値（たとえば、１．５）以上の第１のリフレックス（Ｗi）のトリガー重み合計の計算に応答してアクションが実行されることを引き起こし得る。
【００７９】
【表３】
2016524226.tif 000006
【００８０】
[0099]いくつかの実施形態では、様々なイベントに対するマッチ重みに基づき、スマートボックスは、単一のイベントを取得したことに応答してアクションを実行するように構成され得る。たとえば、ステレオのスマートボックスは、誰かがリクライナーに座っていることを指示する信号を受信したことのみに応答してそのラジオ機能をアクティブ化するように構成され得る（すなわち、アクションパターンは、リクライナーに関連付けられている人感センサーのイベントによってトリガーされ得る）。上の表Ｃの例示的な特性に示されているように、第１のイベントは取得されず（すなわち、ｍ０，ｉ＝０．０）、第２のイベントは取得され（すなわち、ｍ１，ｉ＝０．８）、第２のイベント（ｘ１，ｉ）に対するマッチ重みは２．０の値に設定され得る。第２のイベントに対するマッチ重みが高いので、ステレオのラジオは、第２のイベントのみがステレオにおいて取得されたときにアクティブ化され得る。言い換えれば、第１のリフレックスに対するトリガー重みは、第２のイベントを取得することにのみ基づき１．５よりも大きいものとしてよい（すなわち、（（ｍ０，ｉ＊ｘ０，ｉ＊ｓ０，ｉ）＋（ｍ１，ｉ＊ｘ１，ｉ＊ｓ１，ｉ））＋ｂｉ＝（（０．０＊１．０＊１．０）＋（０．８＊２．０＊１．０））＋０．０＝１．６）。
【００８１】
【表４】
2016524226.tif 000007
【００８２】
[0100]いくつかの実施形態では、ノイズの多いＲＦ環境などにおいて、不完全なイベントマッチングがあり得そうなときに、スケール係数は、マッチングが低い可能性があるとしてもリフレックスがトリガーされるように調整され得る。たとえば、上の表Ｄに示されているように、マッピングインジケータが理想値より低い（たとえば、１．０未満、０．８未満など）ときであっても、１．５の閾値より高いトリガー重みを可能にするために、第１のイベント（ｓ０，ｉ）に対するスケール係数および第２のイベント（ｓ１，ｉ）に対するスケール係数は２．０の値に増加され得る。言い換えれば、理想値より低いマッチングインジケータ（たとえば、それぞれ０．７および０．６）を有する第１のイベントと第２のイベントの両方を受信し、第１のリフレックスに対する２．６のトリガー重みを計算したことに応答して、ステレオはそのラジオをアクティブ化して、音楽を再生することができる（すなわち、（（ｍ０，ｉ＊ｘ０，ｉ＊ｓ０，ｉ）＋（ｍ１，ｉ＊ｘ１，ｉ＊ｓ１，ｉ））＋ｂｉ＝（（０．７＊１．０＊２．０）＋（０．６＊１．０＊２．０））＋０．０＝２．６）。
【００８３】
【表５】
2016524226.tif 000008
【００８４】
[0101]いくつかの実施形態では、スマートボックスが単一のイベントを取得したことに応答してアクションパターンがトリガーされることを引き起こすためにトリガー重み計算結果に対するバイアス値が調整され得る。たとえば、上の表Ｅに示されているように、バイアス（ｂi）は、１．０に設定されるものとしてよく、これは、第１のイベントまたは第２のイベントのいずれかがステレオが第１のリフレックスを介してそのラジオをアクティブ化することを個別に引き起こすことを許す。言い換えれば、アクションパターンは、第２のイベントのみが取得されたときに（すなわち、（（ｍ0,i＊ｘ0,i＊ｓ0,i）＋（ｍ1,i＊ｘ1,i＊ｓ1,i））＋ｂi＝（（０．０＊１．０＊１．０）＋（０．８＊１．０＊１．０））＋１．０＝１．８）または第１のイベントのみが取得されたときに（すなわち、（（ｍ0,i＊ｘ0,i＊ｓ0,i）＋（ｍ1,i＊ｘ1,i＊ｓ1,i））＋ｂi＝（（０．９＊１．０＊１．０）＋（０．０＊１．０＊１．０））＋１．０＝１．９）．トリガーされ得る。
【００８５】
[0102]図５〜図７は、イベント（アクションを含む）がフレックスにおいてパターンとしてどのように認識（または識別）され得るかを示すタイムライン図である。これらのタイムラインの説明において、壁面スイッチおよびフロアランプは、それらのデバイスに関連付けられているスマートボックスに対する簡略表記として参照されている。さらに、壁面スイッチおよびフロアランプは、スマートボックスに結合され得るタイプのデバイスの説明に役立つ例として使用される。したがって、壁面スイッチおよびフロアランプへの参照は、いかなる形でも請求項の範囲を制限することを意図されていない。
【００８６】
[0103]図５は、送信機５１０（たとえば、壁面スイッチ）と受信機（たとえば、ランプ）との間の送信の時間を示すリフレックスに対応するイベント送信のタイムライン図５００である。これらのイベント送信（またはイベントレポートメッセージ）は、受信機がイベントを生成するのを助け得る発生データを含みことができる。タイムライン図は、受信機がモニターモード５０６に入っている状態で時刻０（または図５に示されているようにｔ＝「ｔ０」）から始まり、受信機が時刻「ｔＲｅｓｕｍｅＭｏｎｉｔｏｒ」（またはｔ＝「ｔＲｅｓｕｍｅＭｏｎｉｔｏｒ」）でモニターモード５０６に戻ったときに終了する。いくつかの実施形態では、図５００内の送信機５１０は、フロアランプによって受信され得る、イベントの発生データをブロードキャストする壁面スイッチであってよい。フロアランプは、モニターモード５０６またはトリガーモード５０８のいずれかとしてよい、各記憶されているリフレックスに関連付けられている受信機状態５１１を有し得る。フロアランプに関連付けられている各リフレックスの既定状態は、モニターモード５０６であってよい。フロアランプは、イベントを他のスマートボックスコンポーネントに転送し得る、イベントバス２１４（典型的にはそのスマートボックス内の）も有することができる。
【００８７】
[0104]例示を目的として、時刻ｔ＝ｔ０において、フロアランプは、すべてのリフレックスに関してモニターモード５０６に入っていると考えられ得る。フロアランプは、その信号受信機１４２などを介してイベントレポートメッセージ５０２を受信することができる。たとえば、ユーザは、壁面スイッチを「オフ」から「オン」にトグルすることができる。それに応答して、壁面スイッチは、センサーエンコーダ１３４（図２に示されている）によりそのトグルをイベントとして記録することができる。壁面スイッチは、壁面スイッチの信号送信機１３６を通じて新しいイベントに関係する発生データを有するイベントレポートメッセージ５０２を送信し得る。イベントレポートメッセージ５０２は、フロアランプなどの、他のスマートボックスによって受信され得る。
【００８８】
[0105]ｔ＝ｔＴｒｉｇｇｅｒにおいて、イベントレポートメッセージ５０２がフロアランプによって受信され得る。フロアランプは、イベントレポートメッセージ５０２に基づき生成されたイベントがリフレックスのトリガーパターンとマッチすると決定し、マッチしたリフレックスに関してトリガーモード５０８に入り得る。トリガーモード５０８において、フロアランプは、他のイベントの探索を続け、学習または学習解除をそれぞれ可能にするために報酬および／または補正パターンが存在するかどうかを決定し得る。
【００８９】
[0106]ｔ＝ｔＲｅｓｐｏｎｓｅにおいて、フロアランプは、マッチするリフレックスのアクションパターンに関連付けられているイベント５１４を生成することができ、これはモーター駆動装置１４０をアクティブ化して、フロアランプ（図１Ｂおよび図１Ｃに示されている）のライト１２４をオンにすることなどのアクションを引き起こし得る。イベント５１４は、フロアランプのイベントバス２１４上に出され、最終的にパターンに変換され、メモリ１３８に記憶され得る。いくつかの実施形態では、生成されたアクションパターンは、追加のアクションパターンに対するトリガーパターンであってもよい。たとえば、フロアランプをオンにすることは、ステレオをオンにするためのトリガーパターンであってもよい。言い換えれば、複数の学習デバイスがデージーチェーンでつながれ、これにより、トリガーパターンおよびアクションパターンが生成されることを可能にし、対応するデータをデバイスからデバイスへと送信することができる。
【００９０】
[0107]ｔ＝ｔＲｅｓｕｍｅＭｏｎｉｔｏｒにおいて、フロアランプは、トリガーモード５０８を抜けて、モニターモード５０６に再入し、そこで、フロアランプは、新しいイベントレポートメッセージを探索し、受信することができる。
【００９１】
[0108]図５が示しているように、フロアランプは、単一のリフレックスに関して単一のトリガーモードに入ることができる。いくつかの実施形態では、フロアランプは、複数のリフレックスをメモリに記憶しておき、重なり合う時間間隔で複数のイベントを取得（または生成）することができる。フロアランプが、結果として複数のトリガーパターンを引き起こす複数のイベントを取得すると仮定すると、フロアランプは、同時トリガーモードに入り得る。各トリガーモードは、異なるリフレックスに対応し得る。たとえば、フロアランプは、壁面スイッチからＥｖｅｎｔＡに関係するイベントレポートメッセージを、ステレオからＥｖｅｎｔＢに関係するイベントレポートメッセージを同時に受信することができる。ＥｖｅｎｔＡは、フロアランプのメモリに記憶されている第１のリフレックスからのトリガーパターンに対応し得る。それに応答して、フロアランプは、第１のリフレックスＲｅｆｌｅｘＡに関してトリガーモードに入ることができる。ＥｖｅｎｔＢは、異なるリフレックスＲｅｆｌｅｘＢの異なるトリガーパターンに対応し得る。したがって、フロアランプは、ＲｅｆｌｅｘＢに関して第２のトリガーモードに同時に入り得る。各トリガーモードは、図５に示されているように表され得るが、フロアランプは、各イベントと、リフレックスと、トリガーモードとを独立して処理することができる。
【００９２】
[0109]フロアランプは、異なる時刻に異なるリフレックスに対するトリガーパターンのイベントを生成することができ、これは、フロアランプが一方のトリガーに関して他のリフレックスに対する他方のトリガーモードと異なる時刻にトリガーモードに入ることを引き起こし得る。各リフレックスのトリガーモードが同じ時間期間（たとえば、５秒）に重なると仮定すると、フロアランプは、第１のリフレックスに関してトリガーモードを終了するが、第２のリフレックスに関してはトリガーモードに留まり得る。最終的に、イベントフロアランプは、各リフレックスに関してトリガーモードを終了し、各リフレックスに関してモニターモードに戻り得る。
【００９３】
[0110]図６は、新しいリフレックスを作成する学習タイムラインを示すタイムライン図６００である。図６００は、知られているリフレックス（「ＲｅｆｌｅｘＦ１」または「Ｆ１」と称される）が新しいリフレックス（「ＲｅｆｌｅｘＦ２」または「Ｆ２」と称される）を作成するためにどのように使用され得るかを示している。図６００は、新しい壁面スイッチと、ランプスイッチと、フロアランプとを含む。フロアランプは、知られているＲｅｆｌｅｘＦ１を有し、これはモニターモード６０６とトリガーモード６０８とを含む状態６１８を有する。ＲｅｆｌｅｘＦ２は知られておらず、このタイムライン６０１上で最終的に作成される。タイムライン６０１は、時刻０（「ｔ＝ｔ０」）に開始し、時刻「ＲｅｓｕｍｅＭｏｎｉｔｏｒ」（ｔ＝「ｔＲｅｓｕｍｅＭｏｎｉｔｏｒ」）に終了する。
【００９４】
[0111]ｔ＝ｔ０において、フロアランプは、ＲｅｆｌｅｘＦ１に関してモニターモード６０６で開始し得る。ＲｅｆｌｅｘＦ１は、トリガーパターン（ＭＤ２と称される）と、アクションパターン（ＭＤ３と称される）と、報酬パターン（ＭＤ４と称される）と、補正パターン（ＭＤ５と称される）とを含み得る。フロアランプは、ＲｅｆｌｅｘＦ１（ＭＤ２）のトリガーパターンとマッチするパターンに対する生成されたイベントを監視し得る。
【００９５】
[0112]ｔ＝ｔＭｄ１−ｏｎにおいて、新しい壁面スイッチが「オフ」から「オン」に切り替えられ、これにより、イベントを生成し、関係する発生データ（「発生データ１」と称される）がフロアランプによって受信されたイベントレポートメッセージで壁面スイッチによってブロードキャストされることを引き起こし得る。新しい壁面スイッチからのイベントレポートメッセージからの発生データは、１つまたは複数のイベントと組み合わされ得るか、またはパターン（「ＭＤ１」）を作成するために個別に使用され得るイベントを生成するためにフロアランプによって使用され得る。
【００９６】
[0113]ｔ＝ｔＭｄ１−ｄｏｎｅにおいて、フロアランプは、「発生データ１」を含むイベントメッセージを受信し、関係するイベントを生成し、それを（およびバッファに記憶されている可能な他のイベントを）パターン「ＭＤ１」として知られているパターンに変換し得る。このときに、フロアランプは、パターンＭＤ１をイベントバス上に出して、さらに処理するか、またはメモリに一時的に記憶することができる。フロアランプは、パターンＭＤ１がフロアランプの知られているリフレックスの知られているトリガーパターンと一致していないと決定し、そこで、モニターモード６０６で動作し続けることができる。
【００９７】
[0114]ｔ＝ｔＭｄ２−ｏｎにおいて、ランプスイッチは、「オフ」から「オン」にされ、それに応答して、フロアランプが、状態変化に関係する発生データ（「発生データ２」と称される）に基づきイベントを生成し得る。それと同時に、フロアランプは、「発生データ２」から生成されたイベントをパターンＭＤ２としてまとめて処理される他のイベントと組み合わせて、パターンＭＤ２をイベントバス上に出して、メモリに一時的に記憶し得る。
【００９８】
[0115]ｔ＝ｔＴｒｉｇｇｅｒにおいて、フロアランプは、パターンＭＤ２とＲｅｆｌｅｘＦ１のトリガーパターンとのマッチングを行うことができる。次いで、フロアランプは、パターンＭＤ２がＲｅｆｌｅｘＦ１のトリガーパターンとマッチするので、ＲｅｆｌｅｘＦ１に対するトリガーモード６０８に入ることができる。いくつかの実施形態では、フロアランプは、内部送信を完了し、ｔ＝ｔＴｒｉｇｇｅｒにおいて「発生データ２」から生成されたイベントをパターンＭＤ２に変換し得る。
【００９９】
[0116]ｔ＝ｔＡｃｔｉｏｎにおいて、フロアランプは、イベントバス上に配置されるか、またはフロアランプのメモリに記憶されるＲｅｆｌｅｘＦ１（ＭＤ２）に対する知られているトリガーパターンに関連付けられているＲｅｆｌｅｘＦ１（ＭＤ３）に対するアクションパターンを生成し得る。パターンＭＤ３の生成は、フロアランプに接続されているモーター駆動装置がライトをオンにすることを引き起こし得る。
【０１００】
[0117]ｔ＝ｔＮｅｗＲｅｆｌｅｘにおいて、パターンＭＤ１とマッチするトリガーパターンを有する既存のリフレックスがないので、新しいリフレックス（「ＲｅｆｌｅｘＦ２」または「Ｆ２」と称される）が作成される。ただ１つの知られているトリガーパターンは、ＲｅｆｌｅｘＦ１に関連付けられているＭＤ２である。ＲｅｆｌｅｘＦ２を作成する際に、フロアランプは、ＲｅｆｌｅｘＦ１に関連付けられているアクションパターンと、報酬パターンと、補正パターンとを新しいリフレックスにコピーし、タイムライン６０１上で受信されたパターン（ＭＤ１）をそのトリガーパターンとして新しいリフレックスに割り当て得る。コピーされるパターンに関連付けられている重みは、新しいリフレックスにコピーされるときに調整され得る。したがって、新しいリフレックス（ＲｅｆｌｅｘＦ２）は、パターンＭＤ１に等しく、新しい壁面スイッチから受信された発生データ（「発生データ１」）に関係するトリガーパターンと、フロアランプをオンにすることに関連付けられているパターンＭＤ３に等しいアクションパターンと、パターンＭＤ４に等しい報酬パターンと、パターンＭＤ５に等しい補正パターンとを有することができる。いくつかの実施形態では、フロアランプが、複数のアクションを実行し（たとえば、オンにする、オフにする、など）、それにより、少なくとも２つのリフレックス（すなわち、アクションごとに少なくとも１つのリフレックス）を利用するように構成され得るときに、未知のパターン検出したことに応答して作成される新しいリフレックスは、そのトリガーモードにおいて既存のリフレックスからコピーされ得る。言い換えれば、新しいリフレックスを作成するときにどの既存のリフレックスからコピーするかを決定するために、フロアランプは、トリガーモードにおいてイベント（またはイベントのパターン）をリフレックスの知られているアクションに相関させるオペレーションを実行し得る（すなわち、新しいリフレックスに対するパターンが、知られていないパターン／イベントの時間ウィンドウ内でアクションパターンに遭遇する既存のリフレックスからコピーされ得る）。図１１は、スマートボックスが新しいリフレックスを追加するためのオペレーションを含む一実施形態の方法を示している。
【０１０１】
[0118]ｔ＝ｔＲｅｗａｒｄにおいて、別のコンポーネントが、ＲｅｆｌｅｘＦ１に対する報酬パターンとして知られているパターンＭＤ４などの報酬パターンとマッチするイベントを生成し得る。たとえば、モーター駆動装置は、フロアランプのライトがオンになるときにパターンＭＤ４に等しいイベントを生成することができる（図１Ｂ〜図１Ｃに示されている）。モーター駆動装置は、パターンＭＤ４をイベントレコーダーに送信し得る。パターンＭＤ４は、ＲｅｆｌｅｘＦ１の報酬パターン（および新規作成されたＲｅｆｌｅｘＦ２）とマッチするので、ＲｅｆｌｅｘＦ１に関連付けられているトリガー重みは、ＲｅｆｌｅｘＦ１がトリガーモード６０８に入るときに増加され得る。いくつかの実施形態では、報酬パターンは、フロアランプのライトがオンになる限りパターンＭＤ４に等しい報酬パターンが常に生成され、トリガー重みが増加し得るように自己生成パターンであってよい。
【０１０２】
[0119]学習有効モードにおいて、報酬パターン（ＭＤ４）がマッチした場合、報酬利得が適用され得る（たとえば、トリガー重みを蔵させる、など）。いくつかの実施形態では、マッチ重み（上で説明されているようにｘ）は、典型的には、学習有効モードに入っている間に修正されるけれども、式の中のパラメータまたは値は、学習有効モードに入っている間に調整され得る。言い換えれば、リフレックスのトリガー重みを増減することは、トリガー重みの式の中のパラメータを調整することを含み得る。
【０１０３】
[0120]しかし、補正パターン（ＭＤ５）がマッチした場合、補正利得が適用され得る（たとえば、トリガー重みを減少させる）。いくつかの実施形態では、報酬パターンまたは補正パターンは、入力、または応答が望ましいものであった（または望ましくなかった）というフィードバックを返すためにユーザがアクティブ化し得るボタンなどの、追加の発生によって生成され得る。たとえば、フロアランプがそのライトをオンにした後、ユーザは、フロアランプ上のボタンを押して、報酬パターンを生成する。報酬パターンに基づき、フロアランプは、関係するリフレックスのトリガー重みを増加させ得る。
【０１０４】
[0121]ｔ＝ｔＲｅｓｕｍｅ  Ｍｏｎｉｔｏｒにおいて、フロアランプは、ＲｅｆｌｅｘＦ１に対するトリガーモード６０８を終了し、モニターモード６０６に戻る。いくつかの実施形態では、フロアランプは、その後、パターンＭＤ１を受信するものとしてよく、これは、フロアランプがＲｅｆｌｅｘＦ２のトリガーされたアクションに基づきライトをアクティブ化することを引き起こし得る。
【０１０５】
[0122]いくつかの実施形態では、新しいリフレックスが、様々発生データがフロアランプによって受信されるか、または取得される順序に関係なく生成され得る。言い換えれば、未知のトリガーパターン（たとえば、ＭＤ１）は、トリガーウィンドウの前、間、および後に受信され、使用される可能性があり、したがって、発生データを受信する順序と無関係にリフレックスの作成を引き起こす可能性がある。たとえば、「発生データ１」が受信され、フロアランプがＲｅｆｌｅｘＦ１に対するトリガーモード６０８に入った後（すなわち、「発生データ２」が受信され、ＭＤ２が取得された後）にパターンＭＤ１を生成するために使用される場合、ＭＤ１がトリガーモード６０８に関する時間ウィンドウ内でまだ発生していることがあり得るので、フロアランプはＲｅｆｌｅｘＦ２をまだ作成することができる。
【０１０６】
[0123]図７は、図６からの新規作成されたリフレックスＲｅｆｌｅｘＦ２がどのように報酬を受けおよび／または補正されてタイムライン７０１に沿ったアクションとの関連付けを増加／減少させるかを示している。ＲｅｆｌｅｘＦ２の状態７１８に応じて、フロアランプは、ＲｅｆｌｅｘＦ２に関してモニターモード７０６またはトリガーモード７０８に入り得る。モニターモード７０６において、フロアランプは、リフレックスに関してマッチするトリガーパターンを探索している。フロアランプが、記憶されているリフレックスの知られているトリガーパターンとマッチするイベントのパターンを生成する場合、フロアランプは、マッチするトリガーパターンを含むフレックスのトリガーモードに入り得る。図７００では、ＲｅｆｌｅｘＦ２は、パターンＭＤ１に等しいトリガーパターンと、パターンＭＤ３に等しいアクションパターンと、パターンＭＤ４に等しい報酬パターンと、パターンＭ５に等しい補正パターンとを有することができる。
【０１０７】
[0124]ｔ＝ｔ０において、壁面スイッチは、イベントを生成し、そのイベントに関係する発生データとともにイベントレポートメッセージをブロードキャストすることができる。フロアランプは、モニターモード７０６において、ｔ＝ｔＭＤ１−Ｒｘまでにイベントレポートメッセージを受信し得る。
【０１０８】
[0125]ｔ＝ｔＭＤ１−Ｒｘにおいて、フロアランプは、発生データを伴うイベントレポートメッセージ全体を受信し、それに応答してイベントを生成し、それをイベントレコーダーに転送し、このイベントレコーダーがイベントをパターンＭＤ１に変換して、イベントバスに出すものとしてよい（図２に示されているように）。フロアランプは、パターンＭＤ１をイベントバスからメモリの一時記憶装置（たとえば、図２のイベントパターン記憶装置２０４）に転送し得る。
【０１０９】
[0126]ｔ＝ｔＴｒｉｇｇｅｒにおいて、フロアランプは、パターンＭＤ１を処理し、それがＲｅｆｌｅｘＦ２に関連付けられている知られているトリガーパターンとマッチすると決定し得る。したがって、フロアランプは、ＲｅｆｌｅｘＦ２に関してトリガーモード７０８に入り、そこで、フロアランプは、ＲｅｆｌｅｘＦ２に関して学習または学習解除を行うことができる。
【０１１０】
[0127]ｔ＝ｔＡｃｔｉｏｎにおいて、フロアランプは、イベントバス上に出される、ＲｅｆｌｅｘＦ２に関連付けられているアクションパターン（ＭＤ３）を生成し得る。モーター駆動装置は、アクションパターン（ＭＤ３）をイベントバスから取り出し、生成されたアクションパターンに関連付けられているアクション（たとえば、フロアランプのライトをオンにする）を実行し得る。
【０１１１】
[0128]ｔ＝ｔＲｅｗａｒｄにおいて、ＲｅｆｌｅｘＦ２に関連付けられている報酬パターン（ＭＤ４）が、別のコンポーネントから生成され得る。たとえば、生成されたアクションパターン（ＭＤ３）は、モーター駆動装置がフロアランプをオンにすることを引き起こし得る。フロアランプがオンになると、モーター駆動装置がフィードバックを受信し得るか、またはセンサーエンコーダがランプの状態の変化を感知し、パターンＭＤ４を生成し得る。パターンＭＤ４は、その後、イベントパターン記憶装置に記憶され得る。パターンＭＤ４は、ＲｅｆｌｅｘＦ２の報酬パターンとマッチするものとしてよく、その結果、ＲｅｆｌｅｘＦ２トリガーパターン（ＭＤ１）に関連付けられている重みが増加され得る。
【０１１２】
[0129]いくつかの実施形態では、リフレックスのトリガー重みが、最大レベルに達した後、トリガー重みは、さらに調整されることはなく、これにより、システムリソースが別のところで使用されることを許し得る。そのような最大レベルは、重み計算の動的範囲を制限するか、または学習デバイス内に備えられるＲＡＭの量を減らすために利用され得る。たとえば、リフレックスにトリガー重みのより小さい動的範囲が使用されるときに（たとえば、最小のトリガー重みと最大のトリガー重みとの間のより小さい範囲）、学習デバイスではより少ないＲＡＭが使用され得る（たとえば、１６ビットの代わりに８ビット）。
【０１１３】
[0130]いくつかの実施形態では、フロアランプのメモリは、限られた数のパターンおよび／またはリフレックスを記憶できるだけのサイズを有し得る。そのような場合、記憶されているリフレックスのトリガー重みが、最小の重み値（たとえば、「破棄閾値」）に達した場合、トリガー重みは、リフレックスをトリガーすることが決してないことがあり得そうなほど低いものとしてかんが得られ得る。そのような場合、フロアランプは、新しいリフレックスのためにそのリフレックスに割り振られているメモリを再使用（または再利用）することができる。したがって、低いトリガー重みでリフレックスを補正するための下限値を設定することは、そのメモリが他のパターンおよび／またはリフレックス用に記憶域を充てることを可能にし得る。他の実施形態では、新しいリフレックスを記憶するための制限されたリソースがあるときに、フロアランプは、最小のまたは「破棄」閾値を使用することなく、メモリを最も頻繁に使用されていない、または使用される可能性が最も低いものから（重み特性を介して）新しいリフレックスに再割り振りすることができる（すなわち、フロアランプは、単純に、最も無益なリフレックスを置き換えることができる）。
【０１１４】
[0131]ｔ＝ｔＣｏｒｒｅｃｔｉｏｎにおいて、異なるコンポーネントが補正パターン（ＭＤ５）を生成し得る。たとえば、フロアランプが、トリガーモード７０８においてオフにされた場合、センサーエンコーダは、この状態の変化をイベントに変換するものとしてよく、これはイベントレコーダーに受け渡され、補正パターンＭＤ５を作成することができる。パターンＭＤ５は、ＲｅｆｌｅｘＦ２（トリガーモード７０８に入っている）の補正パターンにマッチされるものとしてよく、その結果、トリガー重みは減らされて、トリガーパターン（ＭＤ１）とＲｅｆｌｅｘＦ２のアクションパターン（ＭＤ３）との間の関連付けを弱め得る。
【０１１５】
[0132]ｔ＝ｔＲｅｓｕｍｅ  Ｍｏｎｉｔｏｒにおいて、フロアランプは、ＲｅｆｌｅｘＦ２に関連付けられているトリガーモード７０８を終了し、フロアランプがモニターモード７０６に戻り得る。トリガーモード７０８は、それがタイムアウトになったことで単純に終了し得る。たとえば、トリガーモード７０８は、１０秒間のみ持続し得るので、１０秒間トリガーモード７０８で動作した後、フロアランプは、ＲｅｆｌｅｘＦ２に関してトリガーモード７０８を終了し、対応するモニターモード７０６に入り得る。
【０１１６】
[0133]図８は、フロアランプなどの、学習デバイスのリフレックスに対する異なる種類の学習率を示している。各デバイスは、学習の臨界学習期間８０１と定常状態学習期間８０２とを有し得る。言い換えれば、臨界学習期間８０１および定常状態学習期間８０２は、学習デバイスの異なる学習状態または学習条件に対応し得る。たとえば、臨界学習期間８０１は、高速学習状態に対応し、定常状態学習期間８０２は、低速または通常学習状態に対応し得る。これらの期間のうちの各々の期間内にあるときに利得の異なるセットがトリガー重みに適用され得る。図８は、２つの学習期間８０１、８０２を示しているが、リフレックスは、２つよりも多い学習期間を利用することができることは理解されるであろう。
【０１１７】
[0134]臨界学習期間８０１は、典型的には、学習デバイスの初期状態に関連付けられ得る。これは、学習デバイスの初期挙動をトレーニングすることが、ユーザにとってより有益である時間であり得る。初期動的リフレックスは、この状態で作成される可能性が高い、つまり、臨界学習期間８０１に関連付けられている様々な利得値（図８では「利得セット１」と称されている）が高く（すなわち、高利得セット）、スマートボックスは、学習および学習解除を行う可能性がより高い。たとえば、製造業者が、フロアランプを最初に高い利得を有する臨界学習期間８０１に設定し、フロアランプが壁面スイッチまたは他のデバイスに素早く関連付けることを可能にし得る。第１のトリガーアクション関連付けが発生した後、フロアランプは、定常状態学習期間８０２に変化し得る。
【０１１８】
[0135]定常状態学習期間８０２は、特定のデバイスが初期トレーニングされたときに生じるものとしてよく、追加のトレーニングは許されるが、より困難であることが意図される。定常状態学習期間８０２に関連付けられている利得（図８では「利得セット２」と称されている）は、低い利得（すなわち、低利得セット）を有し、学習をより困難なものにし得る。たとえば、フロアランプが壁面スイッチに関係する「オン」イベントとの「オン」イベント関連付けを有する場合、フロアランプは、定常状態学習期間８０２に入っているものとしてよい。定常状態学習期間８０２に入っている間、フロアランプは、ステレオから受信された発生データに応答してアクティブ化するなどの、追加の関連付けを学習し得る。しかしながら、ステレオとフロアランプとの間の関連付けを瞬時に学習する代わりに、フロアランプは、トリガーパターン（たとえば、ステレオから受信された発生データに基づくステレオ「オン」イベント）と、アクションパターン（たとえば、ランプがオンにされたことを指示する発生データに基づくフロアランプ「オン」イベント）と、報酬パターン（たとえば、ランプ上のユーザ入力ボタンから「報酬」信号または発生データを受信することに基づく）とに、ステレオがオンになったときにフロアランプがオンになることを学習する前に複数回遭遇しなければならない場合がある。
【０１１９】
[0136]臨界学習期間８０１に関連付けられている利得（「利得セット１」）と、定常状態学習期間８０２に関連付けられている利得（「利得セット２」）との関係は、次の式で示され得る。
【０１２０】
【数２】
2016524226.tif 000009
【０１２１】
[0137]言い換えれば、上記の式を使用する学習デバイスは、利得セット１で学習するのが利得セット２よりも高速であり得る。
【０１２２】
[0138]いくつかの実施形態では、各利得セットは、オペレーションの異なる段階でリフレックスのトリガー、報酬、および補正パターンに関連付けられている個別の利得または重みを有し得る。臨界期間と定常状態期間とにより近くなるように利得を調整するために２つまたはそれ以上の利得レベルが使用され得る。たとえば、第３の利得セットがあり得、これは、臨界期間と定常状態期間とのハイブリッドであってよい（たとえば、学習するのに繰返しが少なくて済む）。利得が調整されるときに、特定のパターンに関連付けられている重みが、システム内のマッチを決定するように調整され得る。
【０１２３】
[0139]特定のリフレックスが動的であるか、または静的であるかは、学習デバイスに関連付けられている利得と学習とに影響を及ぼし得る。特定の学習デバイスが、調整され得ない、組み込みの静的リフレックスを有し得る。たとえば、フロアランプは、関係する報酬パターンまたは補正パターンに遭遇することに関係なく再重み付けされ得ない組み込みのリフレックスを有し得る。言い換えれば、学習デバイスは、重み調整（たとえば、補正）の使用を通じて静的リフレックスを無効にする（または「忘れる」）ことができない。しかしながら、対照的に、動的リフレックスは、自然発生的に作成され、時間の経過とともに調整され得る。たとえば、フロアランプは、壁面スイッチに関連付けられているトリガーパターンに対応してフロアランプのアクションが実行され得ないように時間の経過とともに動的リフレックス（たとえば、上で示されているようなＲｅｆｌｅｘＦ２）の重みを調整し得る。言い換えれば、学習デバイスは、トリガーパターン（たとえば、壁面スイッチでの発生）とアクションパターン（たとえば、フロアランプをオンにする）との間の関連付けに関係するリフレックスのトリガー重みを、そのトリガー重みが閾値より低くなり、したがってアクションが実行されないように下げることができる。しかしながら、いくつかの実施形態では、動的リフレックスは、関連付けが忘れ去られないように静的リフレックスに変換され得る。いくつかの実施形態では、動的リフレックスは、アクションとトリガーとの間の関連付けを有するリフレックスのトリガー重みを変更することが困難になり、したがってそのような動的リフレックスをより永続的にするようなリジッド状態を与えられ得る。
【０１２４】
[0140]図９および図１０は、図８に示されているように定常状態学習期間８０２における動的リフレックスの学習および学習解除の例を示している。図９および図１０に示されている同じ原理は、臨界学習期間８０１における動的リフレックスにも当てはまる。
【０１２５】
[0141]図９は、トリガーアクション関連付けに報酬を与えることで、トリガーパターンがトリガー重み閾値９２５以上の重みを有するようになるまでトリガーパターンの重みをどのように変更することができるかを示しているタイムライン図９００である。図９００は、２つの知られているリフレックスＲｅｆｌｅｘＦ１とＲｅｆｌｅｘＦ２とを含む。ＲｅｆｌｅｘＦ１は、トリガーパターン（「ＭＤ２」と称される）と、そのトリガー閾値（図示せず）よりも高い第１のトリガー重みとを有する。ＲｅｆｌｅｘＦ１は、また、アクションパターン（「ＭＤ３」と称される）と、報酬パターン（「ＭＤ４」と称される）と、補正パターン（「ＭＤ５」と称される）とを有する。ＲｅｆｌｅｘＦ２は、ＲｅｆｌｅｘＦ２が異なるトリガーパターン（「ＭＤ１」と称される）を有することを除きＲｅｆｌｅｘＦ１と同じであり、最初にトリガー重み閾値９２５より低い第２のトリガー重みを有し得る。図９００は、ＲｅｆｌｅｘＦ２のトリガー重みを変えることができる、イベントおよび反応のタイムライン９０１を示している。
【０１２６】
[0142]時刻ｔ＝ｔ０において、フロアランプは、ＲｅｆｌｅｘＦ２に関してモニターモード９０６に入っているものとしてよい。モニターモード９０６では、フロアランプは、トリガーパターンＲｅｆｌｅｘＦ２とマッチするイベントに関係する信号が入ってくるのを監視し得る。モニターモード９０６において、フロアランプは、トリガーパターンＭＤ１に対応するイベントに遭遇するか、または取得し得る。たとえば、第１の壁面スイッチと同一であってもよい、新しい壁面スイッチは、新しい壁面が「オフ」から「オン」にトグルしたときにイベントレポートメッセージを発生データとともにフロアランプに送信することができ、次いで、フロアランプは、受信されたイベントレポートメッセージおよび発生データに基づきトリガーパターンＭＤ１を生成することができる。
【０１２７】
[0143]時刻ｔ＝ｔＮｏＡｃｔｉｏｎ１において、フロアランプは、ＲｅｆｌｅｘＦ１とＲｅｆｌｅｘＦ２とに対するトリガーパターンＭＤ１を処理することができる。すでに説明されているように、ＭＤ１は、ＲｅｆｌｅｘＦ２にのみ関連付けられ、したがって、フロアランプは、ＲｅｆｌｅｘＦ２に関してトリガーモード９０８に入り得る。ＲｅｆｌｅｘＦ２は、ｔ＝ｔＮｏＡｃｔｉｏｎ１でトリガー重み閾値９２５より低い第１のトリガー重みレベル９２１で現在のトリガー重みを有するので、フロアランプは、ＲｅｆｌｅｘＦ２に対するアクションパターン（たとえば、ＭＤ３）を生成し得ない。しかしながら、その後すぐに、フロアランプは、新しい壁面スイッチに対応する発生データとともに別のイベントレポートメッセージを受信してからトリガーパターンＭＤ２を生成し得る。たとえば、新しい壁面スイッチは、「オフ」から「オン」にトグルし、関係するイベントレポートメッセージをフロアランプに送信して、フロアランプがイベントレポートメッセージに基づきトリガーパターンＭＤ２を生成することを引き起こし得る。トリガーパターンＭＤ２はＲｅｆｌｅｘＦ１に対応し、トリガー重みはそのトリガー閾値よりも高いと、フロアランプはアクションパターンＭＤ３を生成し得る。フロアランプは、その後、結果としてランプがそのライトをオンにすることを引き起こす対応するアクションイベントを生成し得る。ライトがオンになった後、状態の変化が、センサーエンコーダによって記録されるものとしてよく、これは関連付けられているイベントを作成し、報酬パターンＭＤ４を生成する。
【０１２８】
[0144]時刻ｔ＝ｔＷｅｉｇｈｔＡｄｊｕｓｔ１において、報酬パターンＭＤ４は、ＲｅｆｌｅｘＦ１とＲｅｆｌｅｘＦ２とに対するトリガー重みを調整するように処理され得る。ＲｅｆｌｅｘＦ２に関してトリガーモード９０８に入っている間、フロアランプは、パターンＭＤ４がＲｅｆｌｅｘＦ２の報酬パターンとマッチしていると決定するものとしてよく、ＭＤ１およびＲｅｆｌｅｘＦ２のトリガー重みを増加させ得る。新しいトリガー重みは第２のトリガー重みレベル９２２にあり、これは、依然としてトリガー重み閾値９２５より低くなっている。トリガーモード９０８がタイムアウトになった後、フロアランプは、モニターモード９０６に再び入ることができる。
【０１２９】
[0145]ｔ＝ｔＷｅｉｇｈｔＡｄｊｕｓｔ２において、イベントに遭遇し、対応するパターンＭＤ１と、ＭＤ２と、ＭＤ３（またはＭＤ３’）と、ＭＤ４とを生成するプロセスが繰り返され、その結果、トリガー重み閾値９２５を超えて第３のトリガー重みレベル９２３にまで増加するようにＲｅｆｌｅｘＦ２のトリガー重みを調整し得る。
【０１３０】
[0146]ＲｅｆｌｅｘＦ２のトリガー重みをトリガー重み閾値９２５よりも高く調整した後いつでも、フロアランプは、パターンＭＤ１に対応するイベントに遭遇することがあり、その結果、ＲｅｆｌｅｘＦ１をトリガーするのにパターンＭＤ２に遭遇する必要なくアクションパターンＭＤ３’が生成され得る。たとえば、新しい壁面スイッチの「オン」イベントに対応するパターンＭＤ２を生成したときのみフロアランプがオンになった可能性がある前である。次に、壁面スイッチは、結果としてパターンＭＤ１に対応するイベントを生成し、したがってフロアランプがＲｅｆｌｅｘＦ２を介してそのライトをオンにするようにトリガーされることを引き起こし得る発生データを含むイベントレポートメッセージをフロアランプに送信することができる。
【０１３１】
[0147]図１０は、トリガー重み閾値１０２５より低くなるまでトリガー重みを調整することによってトリガーアクション関連付けを補正することを示すタイムライン図１０００である。図１０００は、補正イベントにフロアランプが遭遇することと、フロアランプがその後補正パターンを生成することを除き図９００に類似している。この補正パターンは、リフレックスのトリガー重みを減少させる。図９００と異なり、図１０００の補正プロセスは、ただ１つのリフレックスを伴い得る。ここで、ＲｅｆｌｅｘＦ２のみが関わり、図９００のように、同じトリガーパターンＭＤ１と、アクションパターンＭＤ３と、報酬パターンＭＤ４と、補正パターンＭＤ５とを含む。また図９００とは異なり、図１０００におけるＲｅｆｌｅｘＦ２は、トリガー重み閾値１０２５よりも高い１０２３の初期トリガー重みから始まり得る。したがって、トリガーパターンＭＤ１を生成した後に、フロアランプは、対応するアクションパターンと関連付けられているアクションとを生成し得る。
【０１３２】
[0148]時刻ｔ＝ｔ０において、フロアランプは、モニターモード１００６においてイベントを監視し得る。モニターモード１００６において、フロアランプは、トリガーパターンＭＤ１に対応するトリガーイベントに遭遇し得る。たとえば、新しい壁面スイッチは、新しい壁面スイッチが「オフ」から「オン」にトグルされたので、「オン」イベントに関係する、パターンＭＤ１に対応する、発生データとともにイベントレポートメッセージをブロードキャストすることができる。イベントが受信されると、フロアランプは、対応するトリガーパターンを生成し得る。
【０１３３】
[0149]時刻ｔ＝ｔＴｒｉｇｇｅｒｅｄ１において、フロアランプは、オンイベントに関係するイベントレポートメッセージを受信し、パターンＭＤ１を生成し得る。フロアランプは、パターンＭＤ１がＲｅｆｌｅｘＦ２に対応する知られているトリガーパターンであると決定し、したがって、ＲｅｆｌｅｘＦ２に関してトリガーモード１００８に入ることができる。その後すぐに、フロアランプは、ＲｅｆｌｅｘＦ２に対する第１のトリガー重みレベル１０２３がトリガー重み閾値１０２５より高いと決定し、アクションパターンＭＤ３を生成することができ、その結果、フロアランプがライトをオンにするアクションイベントおよび物理的アクションが生じる。フロアランプは、トリガーモード１００８に入っている間に補正パターンＭＤ５に対応するイベントにも遭遇し得る。たとえば、フロアランプは、ユーザがフロアランプ上の別の補正ボタン（たとえば、「Ｃｏｒｒｅｃｔｉｏｎ」というラベルが付いたボタン）を押したときにイベントに遭遇した後補正パターンＭＤ５を生成し得る。ユーザは、このボタンを押して、補正イベントをフロアランプに送信し、それに応答して、フロアランプは、補正パターンＭＤ５を生成し得る。代替的一例において、フロアランプは、ユーザが前のトリガーパターンの短い時間ウィンドウ内でフロアランプを手動でオフにしたときに補正パターンを生成し得る。前のトリガーパターンの反対の入力は、補正パターンに対応し、フロアランプは、トリガーパターンとアクションパターンとの関連付けを解除するように学習し得る。
【０１３４】
[0150]時刻ｔ＝ｔＣｏｒｒｅｃｔｉｏｎ１において、フロアランプは、補正パターンＭＤ５がＲｅｆｌｅｘＦ２の補正パターンとマッチしていると決定することができる。したがって、フロアランプは、ＲｅｆｌｅｘＦ２に関連付けられているトリガー重みを第２のトリガー重みレベル１０２２にまで下げることができる。第２のトリガー重みレベル１０２２はまだトリガー重み閾値１０２５より高く、そのため、フロアランプはライトをそのままアクティブ化することができる。最終的に、トリガーモード１００８は、時間の制約によって終了し、フロアランプは、モニターモード１００６に再び入り得る。
【０１３５】
[0151]モニターモード１００６に入っている間に、フロアランプは、第２のトリガーイベントに遭遇し、第２のトリガーパターンＭＤ１を生成し得る。たとえば、新規壁面スイッチは、再び、「オフ」から「オン」にトグルされ得る。時刻ｔ＝ｔＴｒｉｇｇｅｒｅｄ２において、フロアランプは、第２のパターンＭＤ１がＲｅｆｌｅｘＦ２の知られているトリガーパターンとマッチすると決定し、ＲｅｆｌｅｘＦ２に関してトリガーモード１００８に入ることができる。ＲｅｆｌｅｘＦ２が現在トリガー重み閾値１０２５よりも高い第２のトリガー重みレベル１０２２を有しているので、フロアランプは、アクションパターンＭＤ３と関連付けられている機械的アクション（たとえば、ライトをオンにする）を生成し得る。フロアランプが、ＲｅｆｌｅｘＦ２でトリガーモード１００８に入っている間、フロアランプは、再び、補正ボタンからの補正イベントに遭遇し、補正パターンＭＤ５を生成することができる。パターンＭＤ５は、ＲｅｆｌｅｘＦ２に対応しているので、時刻ｔ＝ｔＣｏｒｒｅｃｔｉｏｎ２において、トリガー重みは、第３のトリガー重みレベル１０２１に下げられるが、これはトリガー重み閾値１０２５よりも低い。したがって、時刻ｔ＝ｔＴｒｉｇｇｅｒｅｄ３においてフロアランプが別のトリガーイベントに遭遇し、別のトリガーパターンＭＤ１を生成する場合、フロアランプは、トリガーモード１００８において対応するアクションパターンＭＤ３を生成し得ない。言い換えれば、フロアランプはＲｅｆｌｅｘＦ２のトリガーアクション関連付けを事実上忘れてしまっている可能性があり、将来トリガーパターンＭＤ１を生成した後（または少なくともトリガーパターンへのその仕方に応答するように再トレーニングされるまで）そのライトをアクティブ化し得ない。
【０１３６】
[0152]いくつかの実施形態では、その関連付けトリガー重み閾値よりも低いトリガー重みは、報酬パターンに遭遇することなくフロアランプがトリガーモードに入ったことに応答して継続的に下げられ得る。たとえば、図１０では、時刻ｔＴｒｉｇｇｅｒｅｄ３において、フロアランプは、その後の報酬パターンなしでトリガーパターンＭＤ１を検出することができ、結果として、時刻ｔ＝ｔＳｕｂｔｈｒｅｓｈｏｌｄ１において示されているようにフロアランプはＲｅｆｌｅｘＦ２に対するトリガー重みを第４のトリガー重みレベル１０１９に減少させ続け得る。いくつかの実施形態では、リフレックスのトリガー重みは、トリガー重みがその関連付けられているトリガー重み閾値より低くなり、報酬パターンに遭遇しないと、時間の経過とともに周期的に減少（または減衰）させられ得る。
【０１３７】
[0153]いくつかの実施形態では、フロアランプは、そのトリガー重みがトリガー重み閾値１０２５よりも低くなり、メモリ不足が生じた後ただちに、またはある時にＲｅｆｌｅｘＦ２を取り除くことができる。したがって、フロアランプが、ＲｅｆｌｅｘＦ２が削除された後にＲｅｆｌｅｘＦ２のトリガーパターン（ＭＤ１）を検出した場合、フロアランプは、他の条件が満たされていると仮定して（たとえば、トリガーモードにおいて存在している報酬を有する）そのトリガーパターンとしてパターンＭＤ１を有する新しいリフレックスを作成し得る。いくつかの実施形態では、フロアランプは、メモリ不足（たとえば、記憶されているリフレックスに対してメモリ限界に達したこと）により関連付けられている閾値よりも高いトリガー重みを有するリフレックスを取り除くことができる。たとえば、フロアランプが、トリガーモードにおいて新しいトリガーパターンに遭遇したが、ローカルメモリに利用可能な記憶領域を有していないときに、フロアランプは、トリガー閾値よりも高いトリガー重みを有するが、あまり使用されない、使用される可能性が最も低い、および／またはトリガー重みがそれぞれのトリガー重み閾値を超えるすべてのリフレックスの最低のトリガー重みを有する、記憶されているリフレックスを取り除くことができる。
【０１３８】
[0154]図１１は、イベントに関連付けられているアクションを学習するためスマートボックス内に実装され得る一実施形態の方法１１００を示している。この実施形態の方法１１００は、どのようなスマートボックスとも使用され得るけれども、説明を簡単にするため、方法１１００は、壁面スイッチに接続されているスマートボックスからイベントレポートメッセージを受信するフロアランプに接続されているスマートボックスの例を参照しつつ説明されている。それに加えて、フロアランプ、壁面スイッチ、またはステレオへの参照は、対応するスマートボックスもそれぞれ包含する。たとえば、フロアランプによって実行されるものとして説明されているオペレーションは、フロアランプに関連付けられているスマートボックスのプロセッサによって実行され得る。これらのスマートボックスは、実際には、イベントレポートメッセージ内の発生データを交換するオペレーションと、イベントおよび／またはパターンを処理するオペレーションとを実行する。
【０１３９】
[0155]ブロック１１０２において、フロアランプはイベントを取得し得る。たとえば、フロアランプは、壁面スイッチからＲＦ送信上で発生データを含むイベントレポートメッセージを受信することができ、イベントレポートメッセージ内のデータに基づき、フロアランプは、図３Ｂを参照しつつ上で説明されているようなデータ構造としてイベントを生成し得る。そのような一例において、イベントレポートメッセージは、ユーザが壁面スイッチを「オフ」から「オン」にトグルしたときに壁面スイッチによって送信され得る。上で説明されているように、フロアランプは、代替的に、フロアランプに結合されたセンサー（たとえば、光センサーなど）に基づき、および／またはアクションを実行したこと応答して、イベントを取得し得る。時間の経過とともに、方法１１００および１２００のオペレーションのその後の繰返しにおいて、フロアランプは、取得されたイベントに関係する場合もない場合もある追加の要素を取得し得る。たとえば、取得されてイベントに基づきトリガーモードをアクティブ化した後、フロアランプは、受信されたイベントレポートメッセージおよび／またはフロアランプによって実行されたアクションに応答して生成されたイベントなどの、取得され、メモリ内にバッファリングされた以前のイベントを取り出すことによって追加のイベントを取得し得る。
【０１４０】
[0156]決定ブロック１１０４において、フロアランプは、イベントフィルタが適用されるかどうかを決定することができる。イベントフィルタは、時間フィルタ、タイプフィルタ、デバイスイベントフィルタなどを含み得る。イベントフィルタが適用されることを決定したことに応答して（決定ブロック１１０４＝「はい」）、フロアランプは、ブロック１１０６においてさらなる処理からイベントを破棄し、ブロック１１０２において新しく入ってくる信号を監視し続けることができる。いくつかの実施形態では、イベントフィルタが時間ベースのフィルタである場合、日中にイベントを破棄する所定のされたスケジュールがあってよい。たとえば、ステレオは、真夜中の時間から午前１０時までに取得されたイベントを無視する時間フィルタを有することができる。別の例では、フロアランプのところのイベントフィルタは、単に、ステレオからの取得されたすべてのイベントを無視し得る。さらなる例では、ステレオは、特定のユーザに関連付けられている取得されてイベントを無視し得る。いくつかの実施形態では、壁面スイッチは、入力されたユーザＩＤ（たとえば、指紋データ、パスコード、Ｂｌｕｅｔｏｏｔｈまたは近距離通信（ＮＦＣ）からの付近のモバイルデバイスのデータなど）を受信し、そのユーザＩＤをイベントレポートメッセージ内の発生データに含めることができる。ステレオを所有する父親は、自分のステレオを自分以外の誰かに壁面スイッチでオンにしてもらいたくない場合がある。したがって、ステレオは、取得されたすべてのイベントを、それらが父親のユーザＩＤを含まない場合に破棄し、それによって、他人が壁面スイッチでステレオをオンにするのを防ぐことができる。しかしながら、イベントフィルタが適用されない場合（すなわち、決定ブロック１１０４＝「いいえ」）、フロアランプは、メモリ１３８（図１Ｃに示されている）に配置されているバッファ内にイベントを記憶し得る。
【０１４１】
[0157]イベントフィルタが適用されないと仮定すると、フロアランプは、ブロック１１０８においてメモリ１３８に配置されているバッファ内にイベントを記憶し得る。イベントはバッファに記憶されることで、フロアランプがモニターモードに入っている間にイベントレコーダー２０６のところでパターンを生成することを円滑にし得る。言い換えれば、フロアランプは、モニターモードに入っている間にイベントのバッファリングを実行し得る。図示されていないけれども、フロアランプは、特定の時間期間（たとえば、５〜１０秒）にメモリ内にイベントをバッファリングし、次いで、イベントを破棄して新しいイベントのための領域をあけることができる。
【０１４２】
[0158]ブロック１１１０において、フロアランプは、イベントがバッファ内に常駐していることに基づきパターンを生成し得る。いくつかの実施形態では、フロアランプは、メモリ内にバッファリングされている様々イベントを取り出して組み合わせることなどによって、バッファ内に常駐する複数のイベントに基づきパターンを生成し得る。たとえば、フロアランプは、２つの異なる壁面スイッチが「オン」位置に切り替えられたときに受信されるイベントレポートメッセージに基づき生成された２つのイベントに基づきパターンを生成しているものとしてよい。パターンは、次の４つの方法のうちの１つによって生成され得る、すなわち、（１）イベントの時間順序のシーケンスに基づくこと、（２）複数のイベントをシングレットに圧縮すること、（３）発見的手法、および（４）パターン生成においてイベントから時間を取り除くことによって生成され得る。
【０１４３】
[0159]イベントの時間順序のシーケンスに基づきパターンを生成するときに、イベントが生成されるか、または他の何らかの形で取得される時間が問題になり得る。したがって、イベントが特定の時間ウィンドウ内で生成されない場合、フロアランプは、イベントに基づきパターンを生成し得ない。たとえば、フロアランプは、壁面スイッチに関係する「オン」イベントおよびステレオに関係する「オン」イベントと同等のトリガーパターンを有することができる。フロアランプが、時間ウィンドウ内で壁面スイッチに関係する「オン」イベントを取得するが、時間ウィンドウの外でステレオに関係する「オン」イベントが取得された場合、フロアランプは、トリガーイベントを認識し得ない。いくつかの実施形態では、パターンは、イベントＡがイベントＢの前に取得される場合にのみ生成され得る。たとえば、フロアランプが、壁面スイッチの「オン」イベントの前にステレオの「オン」イベントを取得した場合、壁面スイッチのイベントが最初に取得されたときにのみフロアランプがトリガーパターンを受け付けるので、フロアランプはこれらのイベントをトリガーパターンとして認識し得ない。
【０１４４】
[0160]いくつかの実施形態では、複数のイベントが、単一のイベントまたはシングレットに圧縮され得る。たとえば、フロアランプは、ランプイベントバッファに記憶されている、異なる時刻における２つの「Ａ」イベント、次いで「Ｂ」イベントを取得し得る。フロアランプは、第２の「Ａ」イベントを破棄して、１つの「Ａ」イベントと１つの「Ｂ」イベントとに基づきパターンを生成し得る。したがって、２つの「Ａ」イベントと１つの「Ｂ」イベントとを有するトリガーパターンは、１つの「Ａ」イベントと１つの「Ｂ」イベントとを有するトリガーパターンに圧縮され得る。「Ａ」イベントは、異なる時刻に繰り返されるので、フロアランプは、繰り返されるイベントを無視することができる。
【０１４５】
[0161]いくつかの実施形態では、フロアランプは、一連の発見的計算を実行して、イベントを無視するかどうかを決定することができる。これらの発見的計算のうちのいくつかは、単に、カウントするメカニズムを含み得る。たとえば、フロアランプは、「Ａ」イベントを３回受信したか（たとえば、壁面スイッチに関係する「オン」イベント）を決定することができ、その時点で、フロアランプは、３つの「Ａ」イベントを受信することはトリガーパターンを生成することと同じであるという発見的ルールに基づきトリガーパターンなどの対応するパターンを生成し得る。
【０１４６】
[0162]いくつかの実施形態では、フロアランプは、イベントからパターンを作成する時刻を無視することができる。時刻を無視することは、発見的計算と同時に起こってよい。たとえば、フロアランプがメモリ１３８において３つの「Ａ」イベントと１つの「Ｂ」イベントとを受信した場合、フロアランプは、一連の発見的計算を実行して時間ウィンドウなしでイベントに基づきパターンを生成するかどうかを決定することができる。時刻を無視することは、順序独立であることも含み得る。たとえば、フロアランプは、まず「Ａ」イベント、続いて「Ｂ」イベントを取得するか、または「Ｂ」イベント、続いて「Ａ」イベントを取得するかどうかに関係なく同じパターンを作成し得る。
【０１４７】
[0163]決定ブロック１１１２において、フロアランプは、パターンフィルタを適用するどうかを決定することができる。これは、決定ブロック１１０４を参照しつつ説明されているイベントフィルタに類似するものであってよく、これは記憶されている無視パターン、時間ベースのフィルタ、デバイスタイプフィルタなどを含み得る。フロアランプは、パターンが時間閾値などの閾値よりも低くなったときにパターンフィルタを使用してパターンをメモリ（たとえば、３２Ｋメモリ、６４Ｋメモリなど）から取り除くことができる。フロアランプがパターンフィルタが適用されることを決定したことに応答して（すなわち、決定ブロック１１１２＝「はい」）、フロアランプは、パターンを破棄し、ブロック１１１３においてそのパターンのさらなる処理を止めることができる。いくつかの実施形態では、フロアランプは、最近実行されたアクションに対して生成されたパターンをフィルタリングし得る。たとえば、フロアランプがオンになったときに、フロアランプは、イベントからアクションパターンを生成することができる。アクションパターンが、一定の時間期間において無視されなかった場合、フロアランプは、アクションパターンを別のアクション（たとえば、ステレオをオンにする）へのトリガーパターンとして処理しようと試み得る。新しいトリガーアクション関連付けの作成を回避するために、フロアランプは、フロアランプが短い時間期間において生成されたアクションパターンを無視する一時的無視パターンフィルタを作成し得る。フロアランプがパターンを破棄した後、フロアランプはブロック１１０２において新しいイベントを取得することに戻る。いくつかの実施形態では、フロアランプは、ブロック１１０２において、イベントを絶えず取得し得る。
【０１４８】
[0164]いくつかの実施形態では、フロアランプは、パターンのトリガー重みまたは対応するリフレックスが低閾値よりも低い場合にパターンフィルタを適用することができる。パターンフィルタを適用することによって、フロアランプは、特定のリフレックスの閾値が特定の設定値よりも低いときにそのメモリからパターンを削除することができるものとしてよい。フロアランプは、本出願全体を通して説明されている補正プロセスを通じてリフレックスのトリガー重みを低減することができる。パターンを取り除くことで、フロアランプが新しいリフレックスの作成のためリソース（たとえば、メモリ）を節約することを可能にし得る。いくつかの実施形態では、フロアランプは、利用可能なローカルの記憶装置に関係なく、ユーザが与えられた時刻にフロアランプの学習能力に関して混乱する可能性が低くなるように所定の限られた数のリフレックス（たとえば、ランプ１つにつきリフレックス２つ）を利用するように構成され得る。記憶されるリフレックスに対するそのような限界は、記憶されるリフレックスおよびパターンがより少ないことで比較される必要があり得るパターンの数を減らすことによってパターンマッチング速度を改善するなどによって性能改善するという追加の利点も有し得る。
【０１４９】
[0165]決定ブロック１１１２に戻って参照すると、パターンフィルタが適用されないことを決定したことに応答して（すなわち、決定ブロック１１１２＝「いいえ」）、フロアランプは、決定ブロック１１１４において生成されたパターンが知られているパターンとマッチしているかどうかを決定し得る。たとえば、フロアランプは、受信されたイベントが時間ベースのフィルタの時間ウィンドウ内にあると決定し得る。そこで、フロアランプは、イベントをパターンとして処理し続ける。フロアランプは、生成されたパターンが、知られているトリガーパターン、知られている補正パターン、知られている報酬パターンなどの、任意の種類の知られているパターンであるかどうかを決定し得る。
【０１５０】
[0166]一例として、決定ブロック１１１４において、フロアランプは、生成されたパターンが、図６を参照しつつ上で説明されているリフレックス「ＲｅｆｌｅｘＦ１」に対するトリガーパターン「ＭＤ２」などの、リフレックスの知られているトリガーパターンに対応するかどうかを決定し得る。生成されたパターンが知られているパターンとマッチすると決定したことに応答して（すなわち、決定ブロック１１１４＝「はい」）、フロアランプは、図１２を参照しつつ以下で説明されている決定ブロック１２０２のオペレーションを実行し得る。たとえば、フロアランプは、少なくとも１つのイベントがリフレックスに関連付けられているトリガーパターンに対応するときにリフレックスに関係するトリガーモードに入り、リフレックスに関連付けられているアクションを実行することができる。
【０１５１】
[0167]しかしながら、生成されたパターンが知られているパターンにマッチしていないと決定したことに応答して（すなわち、決定ブロック１１１４＝「いいえ」）、フロアランプは、決定ブロック１１１６において新しいリフレックスを作成するかどうかを決定し得る。たとえば、図７のシナリオにおいて上で説明されているように、生成されたパターンは、知られているパターンに対応していないパターン「ＭＤ１」であり得（すなわち、ＲｅｆｌｅｘＦ２はまだ作成されていない）、したがってフロアランプは、パターンＭＤ１を有する新しいリフレックスをその新しいトリガーパターンとして作成すべきかどうかを決定し得る。フロアランプは、未知のパターンが検出されたかどうかと、リフレックスがトリガーモードに入っているかどうかの両方に基づき新しいリフレックスが作成されるべきかどうかを決定することができる。
【０１５２】
[0168]フロアランプが新しいリフレックスを作成しないことを決定したことに応答して（すなわち、決定ブロック１１１６＝「いいえ」）、フロアランプは、ブロック１１１３において生成されたパターンを破棄し、ブロック１１０２において新しいベントを監視することを開始し得る。いくつかの実施形態では、フロアランプは、フロアランプが新しい関連付けを学習することができない非学習モードに切り替えられ、それによって、新しいリフレックスを作成する能力を無効化することができる。たとえば、フロアランプは、壁面スイッチがオン／オフイベントに関連付けられているイベントレポートメッセージを送信したときにライトをオン／オフにすることをすでに学習している場合がある。ユーザは、この単純なオン／オフ関連付けに満足し、フロアランプによる追加の学習を無効化することができる。そのため、フロアランプは、ステレオまたは他の学習デバイスのところでの発生（たとえば、電源オンなど）との追加の関連付けを学習し得ない。他の実施形態では、フロアランプは、新しいリフレックスを学習することを避けるための他の考慮事項（たとえば、十分なメモリがない、トリガーモードがタイムアウトした、など）を有し得る。
【０１５３】
[0169]フロアランプが新しいリフレックスを作成することを決定したことに応答して（すなわち、決定ブロック１１１６＝「はい」）、フロアランプは、ブロック１１１８において新しいパターンを新しいリフレックスに対するトリガーパターンとして記憶することができる。新しいリフレックスは、所定のアクションパターンと、報酬パターンと、補正パターンとともに作成され得る。したがって、ブロック１１１９において、フロアランプは、現在トリガーモードに入っているリフレックスから、新しいリフレックスに、アクションパターンと、報酬パターンと、補正パターンとをコピーし得る。たとえば、上記の図６に示されているように、フロアランプは、新しいパターンＭＤ１を含むＲｅｆｌｅｘＦ２をトリガーパターンとして作成し、他の知られているＲｅｆｌｅｘＦ１のみからアクションパターンと、報酬パターンと、補正パターンとをコピーすることができる。代替的な一例において、フロアランプは、トリガーモードで他の記憶されているリフレックスからパターンを取り出すことによって新しいリフレックスを作成し得る。
【０１５４】
[0170]すでに指摘されているように、フロアランプは、トリガーモードに入っている間に追加のイベントを取得することができ、そのような追加のイベントは、異なるトリガーに関連付けられるか、または相関され得る。フロアランプは、これらの追加のイベントに基づきパターンを識別するか、またはパターンとメモリに記憶されているリフレックスのパターンとのマッチングを行うことを試み得る。しかしながら、これらの追加のイベントに基づくパターンは、記憶されているリフレックスの知られているパターンに対応し得ず、フロアランプは、新しいリフレックスを作成することを決定し得る。言い換えれば、フロアランプは、追加のイベントに基づくパターンがリフレックスに関連付けられているトリガーパターン、アクションパターン、補正パターン、および報酬パターンのうちの少なくとも１つに対応しないときに、トリガーパターンと、アクションパターンと、補正パターンと、報酬パターンとともに第２のリフレックスを作成し得る。
【０１５５】
[0171]図１２は、図１１からのマッチしたパターンの継続処理の一実施形態の方法１２００を示している。上で説明されているように、生成されたパターンが知られているパターンにマッチしていると決定したことに応答して（すなわち、図１１の決定ブロック１１１４＝「はい」）、フロアランプは、決定ブロック１２０２において生成されたパターンがリフレックスの知られているトリガーパターンとマッチするかどうかを決定し得る。たとえば、フロアランプは、壁面スイッチの「オン」イベントに基づき生成されたパターンが、記憶されているリフレックスの知られているトリガーパターンとマッチしている（たとえば、パターンＭＤ１が図６に示されているＲｅｆｌｅｘＦ２に対するトリガーパターンとマッチしている）かどうかを決定することができる。フロアランプが生成されたパターンが知られているトリガーパターンとマッチすると決定したことに応答して（すなわち、決定ブロック１２０２＝「はい」）、フロアランプは、ブロック１２０３において生成されたパターンとマッチする知られているトリガーパターンに関連付けられているリフレックスに対するトリガーモードをアクティブ化する（または、「オン」にする）ことができる。トリガーモードをアクティブ化することで、リフレックスに関連付けられているモニターモードを非アクティブ化することができる。フロアランプは、他のリフレックスに関連付けられている他のイベントなどの、リフレックスに関係するトリガーモードに入っている間に追加のイベントを受信し、識別することができ、これにより、同時にアクティブ化されたトリガーモードを引き起こすことに注意されたい。
【０１５６】
[0172]フロアランプは、決定ブロック１２０４においてマッチしているパターンのリフレックスのトリガー重みがトリガー閾値以上かどうかを決定し得る。引き続き図１１の例によれば、フロアランプは、生成されたパターンＭＤ１が最近作成されたＲｅｆｌｅｘＦ２の知られているトリガーパターンとマッチしていると決定し、ＲｅｆｌｅｘＦ２に対する現在の記憶されているトリガー重みをそれぞれのトリガー閾値と比較し得る。決定ブロック１２０４において、フロアランプは、トリガー重みが閾値以上であるかどうかを決定することができる。トリガー重みが閾値以上であると決定したことに応答して（すなわち、決定ブロック１２０４＝「はい」）、フロアランプは、マッチしているトリガーパターンのリフレックスを使用してフロアランプが所定のアクションを行うか、または実行することを引き起こすパターンもしくはその結果生じるイベントを生成することなどによって、ブロック１２１６においてアクションを生成し得る。たとえば、フロアランプは、ＲｅｆｌｅｘＦ２のトリガー重みが、図９に示されているようにトリガー重み閾値９２５より高い場合にライト１２４をオンにすることができる。様々な実施形態において、アクションを生成することは、さらに外部的に、または内部的に伝搬され得る、またアクチュエータを駆動するためにモーター駆動装置によって使用されるイベントのパターンを生成することを含み得る。
【０１５７】
[0173]いくつかの実施形態では、フロアランプは、トリガーされたときに限られた数のアクションを生成するように構成され得る。たとえば、フロアランプは、１つのトリガーモードにおいて１つのアクションのみの生成を、そのトリガーモードで受信されたトリガーパターンの数に関係なく行うことができる。
【０１５８】
[0174]オプションのブロック１２１７において、フロアランプは、生成されたアクション（またはその結果のイベント）を指示する発生データを含むブロードキャストメッセージなどの、生成されたアクションに基づくイベントレポートメッセージをブロードキャストし得る。フロアランプが、マッチしたトリガー重みがリフレックスに対するトリガー閾値以上でないと決定したことに応答して（すなわち、決定ブロック１２０４＝「いいえ」）、またはブロック１２１６におけるオペレーションによりアクションが生成され、オプションのブロック１２１７におけるオペレーションによりブロードキャストが行われる場合、フロアランプは、以下で説明されている決定ブロック１２２０におけるオペレーションを実行することができる。
【０１５９】
[0175]フロアランプが生成されたパターンが知られているトリガーパターンにマッチしていないと決定したことに応答して（すなわち、決定ブロック１２０２＝「いいえ」）、フロアランプは、決定ブロック１２０６においてフロアランプが学習することを許されているかどうかを決定し得る。たとえば、フロアランプは、トリガーパターン（たとえば、ＭＤ１）をすでに処理している場合があり、現在は、トリガーモードに入っている間に生成された報酬パターンおよび補正パターンを監視している。したがって、フロアランプは、トリガーパターンを受信し、関連付けられているリフレックスに対するアクティブ化されたトリガーモードに入った後まもなく、報酬イベントを取得し、対応する報酬パターン（たとえば、ＭＤ４）を生成し得る。
【０１６０】
[0176]フロアランプが学習することを許されていないと決定したことに応答して（すなわち、決定ブロック１２０６＝「いいえ」）、フロアランプは、以下で説明されている決定ブロック１２２０におけるオペレーションを実行し得る。たとえば、フロアランプは、トリガーパターン（たとえば、ＭＤ１）に関連付けられている新しいアクションを学習／学習解除するためにトリガーパターンを生成した後５秒の指定された時間ウィンドウを有し得る。報酬パターンまたは補正パターンが５秒のウィンドウ内で生成される限り、フロアランプは、トリガーパターン（たとえば、ＭＤ１）でアクションを学習／学習解除し得るが、フロアランプは、受信された報酬／補正パターンが５秒の時間ウィンドウの外にある場合に新しい関連付けを学習すること、または古い関連付けを学習解除することを実行し得ない。別の例では、フロアランプは、単純に関連付けられているリフレックスが学習解除状態にあるか、または関連付けられているリフレックスが学習または学習解除し得ない静的リフレックスであるという理由により学習することができない場合がある。
【０１６１】
[0177]しかし、フロアランプが、リフレックスのアクショントリガー関連付けに関して学習することを許されていると決定した場合（すなわち、決定ブロック１２０６＝「はい」）、決定ブロック１２０８において、フロアランプは、生成されたパターンが報酬パターンとマッチしているかどうかを決定し得る。いくつかの実施形態では、フロアランプは、学習時間ウィンドウ内で報酬パターンを受信するかまたは生成し得る。たとえば、ユーザは、壁面スイッチをスイッチオンし、フロアランプをオンにしてから５秒以内にフロアランプ上の報酬ボタンを押すことができる。フロアランプ上の報酬ボタンを押すことによって、報酬パターン（たとえば、図７に示されているようなパターンＭＤ４）を生成し得る。代替的な一例において、ユーザは、壁面スイッチをオンにしてから５秒以内にフロアランプに取り付けられているランプスイッチ１２６をオンにし、フロアランプがランプがアクティブ化したときに報酬パターン（たとえば、ＭＤ４）を生成し、フロアランプがオンになったことを確認することを引き起こし得る。
【０１６２】
[0178]いくつかの実施形態では、フロアランプは、モニターモードに入っているか、またはトリガーモードに入っているかに基づき学習することを許され得る。たとえば、特定のリフレックスに対するモニターモードに入ったときに、フロアランプは、そのリフレックスに関して学習することを許されないが、学習することは、リフレックスのトリガーモードに入っているときに許され得る。いくつかの実施形態では、１つまたは複数のリフレックスは、フロアランプの全体的状態または構成などの、他の要因により学習することを許され得る。たとえば、フロアランプは、様々なリフレックスがテストされ得るアクティブデバッグモードなどの、システム設定により学習することを許さないように構成され得る。
【０１６３】
[0179]フロアランプが、生成されたパターンが報酬パターンとマッチすると決定した場合（すなわち、決定ブロック１２０８＝「はい」）、ブロック１２１２ａにおいて、フロアランプは、関連付けられているリフレックスのトリガー重みを調整することができる。いくつかの実施形態では、フロアランプは、トリガー重みを増加させることによって適切なリフレックスに関連付けられているトリガー重みを調整し得る。たとえば、フロアランプが、トリガーパターン（たとえば、ＭＤ１）に遭遇してからの５秒の学習時間ウィンドウ内でパターン（たとえば、ＭＤ４）を受信するかまたは生成する場合、フロアランプは、トリガーパターンのリフレックスのトリガー重みを増加させることができる。トリガー重みが調整された後、ブロック１２１４において、フロアランプは、調整されたトリガー重みをメモリ１３８に記憶することができ、フロアランプは、以下で説明されているように決定ブロック１２２０におけるオペレーションを実行することができる。
【０１６４】
[0180]いくつかの実施形態では、フロアランプは、ブロック１２１２ａにおけるオペレーションを実行した後に決定ブロック１２１０におけるオペレーションも適宜実行し得る。言い換えれば、フロアランプは、決定ブロック１２０８の決定に関係なく、学習することを許されていると決定したことに応答して（すなわち、決定ブロック１２０６＝「はい」）、決定ブロック１２０８において報酬パターンがマッチしたかどうかと、決定ブロック１２１０において補正パターンがマッチしたかどうかの両方を評価するように構成され得る。言い換えれば、報酬および補正のマッチは、フロアランプによって並行してチェックされ得る。
【０１６５】
[0181]フロアランプが生成されたパターンが知られている報酬パターンにマッチしていないと決定した場合（すなわち、決定ブロック１２０８＝「いいえ」）、フロアランプは、決定ブロック１２１０において補正パターンのマッチをチェックし得る。いくつかの実施形態では、フロアランプは、学習時間ウィンドウ内で補正パターンを受信するかまたは生成し得る。たとえば、ユーザは、壁面スイッチをスイッチオンし、フロアランプをオンにしてから５秒以内にフロアランプ上の補正ボタンを押すことができる。補正ボタンを押すことによって、フロアランプは、補正パターン（たとえば、図７に示されているようなパターンＭＤ５）を生成し得る。代替的な一例において、ユーザは、壁面スイッチをオンにしてから５秒以内にフロアランプに取り付けられているランプスイッチ１２６をオフにし、フロアランプがライト１２４をオフにしたときにフロアランプが補正パターン（たとえば、ＭＤ４）を生成することを引き起こし得る。
【０１６６】
[0182]フロアランプが、生成されたパターンが知られている補正パターンとマッチすると決定した場合（すなわち、決定ブロック１２１０＝「はい」）、フロアランプは、ブロック１２１２ｂにおいてトリガー重みを調整することができる。いくつかの実施形態では、フロアランプは、学習時間ウィンドウ内で補正パターンを受信した後にトリガー重みを減少させ得る。たとえば、フロアランプは、ユーザが壁面スイッチの「オン」イベントに関連付けられているトリガーパターン（たとえば、ＭＤ１）を生成して５秒以内にフロアランプのランプスイッチ１２６を「オフ」にするときに補正パターン（たとえば、パターンＭＤ５）を生成することができる。フロアランプは、ＲｅｆｌｅｘＦ２の補正パターンとして生成されたパターン（ＭＤ５）とマッチし、ＲｅｆｌｅｘＦ２に関連付けられているトリガー重みを小さくすることができる。ブロック１２１４において、フロアランプは、調整された重みをメモリ１３８に記憶することができ、フロアランプは、以下で説明されているように決定ブロック１２２０におけるオペレーションを実行することができる。言い換えれば、フロアランプは、少なくとも１つの追加のイベントがリフレックスに関連付けられている補正パターンおよび報酬パターンのうちの少なくとも一方に対応するときにリフレックスの１つまたは複数のトリガー重みを調整し得る。
【０１６７】
[0183]フロアランプが生成されたパターンが補正パターンとマッチしないと決定したことに応答して（すなわち、決定ブロック１２１０＝「いいえ」）、またはフロアランプがマッチしたトリガー重みがトリガー閾値以上ではないと決定したことに応答して（すなわち、決定ブロック１２０４＝「いいえ」）、またはフロアランプが学習することを許されていないと決定したことに応答して（すなわち、決定ブロック１２０６＝「いいえ」）、またはフロアランプがブロック１２１７または１２１４のオペレーションを実行したことに応答して、フロアランプは、ブロック１２０３におけるオペレーションでアクティブ化されたトリガーモードに入るので失効した持続時間に基づくなどして決定ブロック１２２０においてモニターモードに戻るかどうかを決定し得る。トリガーモードを非アクティブ化することで、リフレックスに関連付けられているモニターモードをアクティブ化することができる。フロアランプがモニターモードに戻るべきと決定したことに応答して（すなわち、決定ブロック１２２０＝「はい」）、フロアランプは、ブロック１２２２においてリフレックスに対するトリガーモードを非アクティブ化することができる。フロアランプがモニターモードに戻るべきでないと決定したことに応答して（すなわち、決定ブロック１２２０＝「いいえ」）、またはブロック１２２２のオペレーションが実行されたときに、フロアランプは、図１１を参照しつつ上で説明されているように方法１１００のブロック１１０２においてイベントを取得することを続け得る。
【０１６８】
[0184]図６にシナリオに基づく例として、壁面スイッチは、フロアランプによって受信される新しい発生データとともに新しいイベントレポートメッセージを送信し得る（たとえば、壁面スイッチの「オン」イベント）。フロアランプは、受信された新しいイベントレポートメッセージに基づきイベントに関連付けられている第１のパターン（たとえば、パターンＭＤ１）を生成するまでブロック１１０２、１１０４、１１０８、および１１１０のオペレーションを実行し得る。同じ時間ウィンドウ内で、フロアランプは、他の発生データに基づき第２のパターン（たとえば、パターンＭＤ２）を生成し、図１１を参照しつつ上で説明されているようなブロック１１０２〜１１４および図１２を参照しつつ上で説明されているようなブロック１２０２、１２０３、１２０４、１２１６におけるオペレーションにより第２のパターンを処理し得る。フロアランプは、これらのオペレーションに基づき第２のパターンに関連付けられている第２のリフレックス（たとえば、ＲｅｆｌｅｘＦ１）をトリガーモードにすることができる。
【０１６９】
[0185]次いで、フロアランプは、受信された新しいイベントレポートメッセージに基づきイベントに関連付けられている第１のパターン（たとえば、パターンＭＤ１）を生成するまで図１１を参照しつつ上で説明されているようなブロック１１０２、１１０４、１１０８、および１１１０におけるオペレーションを実行し得る。フロアランプは、図１１を参照しつつ上で説明されているようなブロック１１１２、１１１４、１１１６、１１１８、１１１９のオペレーションを実行することと、第１のパターンをトリガーパターン（たとえば、パターンＭＤ１）として第１のリフレックス（たとえば、ＲｅｆｌｅｘＦ２）を作成することと、第２のリフレックスがトリガーモードに入っているので第２のリフレックス（たとえば、ＲｅｆｌｅｘＦ１）からそのアクションパターンと、報酬パターンと、補正パターンとをコピーすることとによって新しいパターンを処理することを続け得る。
【０１７０】
[0186]フロアランプが、その後、同じイベントを取得し、壁面スイッチから受信された他のデータに基づき第１のパターン（たとえば、パターンＭＤ１）を生成する場合、フロアランプは、図１１を参照しつつ上で説明されているようなブロック１１０２、１１０４、１１０８、１１１０、１１１２、および１１１４のオペレーションで第１のリフレックスを参照して第１のパターンを処理することができる。決定ブロック１１１４において、フロアランプは、壁面スイッチに関連付けられているパターンがメモリに記憶されている第１のリフレックス（たとえば、ＲｅｆｌｅｘＦ２）のトリガーパターンとして現在知られているので、壁面スイッチに関連付けられている生成されたパターン（たとえば、パターンＭＤ１）は知られているパターンとマッチすると決定し得る。そこで、フロアランプは、壁面スイッチの「オン」イベントに対する生成されたパターンの処理を継続するために図１２を参照しつつ上で説明されているオペレーションを実行し続け得る。
【０１７１】
[0187]この例を続けると、フロアランプは、新しい壁面スイッチイベントからマッチした第１のパターン（ＭＤ１）を処理し、マッチしたパターンがトリガーパターンマッチであると決定し（すなわち、決定ブロック１２０２＝「はい」）、第１のリフレックス（たとえば、ＲｅｆｌｅｘＦ２）に対するトリガーモードをアクティブ化し得る。しかしながら、第１のリフレックス（たとえば、ＲｅｆｌｅｘＦ２）に対するトリガー重みは、そのトリガー閾値よりも低い場合があり、その場合、フロアランプは、ブロック１２１６においてアクションを生成しないが、他のイベント／パターンを監視することを続け得る。その一方で、フロアランプは、ランプスイッチ１２６からの「オン」イベントなどの、異なるトリガーベントに遭遇し得る。フロアランプは、図１１を参照しつつ上で説明されているような方法１１００のブロック１１０２、１１０４、１１０８、および１１１０を通じてランプスイッチ１２６からのオンイベントを処理し、ランプスイッチ１２６のオンイベントに関連付けられている第２のパターン（たとえば、パターンＭＤ２）を生成し得る。フロアランプは、図１１と図１２とを参照しつつ上で説明されているようなブロック１１１２、１１１４、および１２０２のオペレーションを通じてオンイベントパターンを処理することを続け得る。方法１２００の決定ブロック１２０２において、フロアランプは、第２のパターン（ＭＤ２）が第２のリフレックス（ＲｅｆｌｅｘＦ１）に対するトリガーパターンマッチであると決定し、決定ブロック１２０４において、第２のリフレックスに対するトリガー重みは、閾値より高いと決定し得る。その場合、第２のリフレックスのトリガー重みに基づき、フロアランプは、図１２を参照しつつ上で説明されているようなブロック１２１６においてアクションパターンと関連付けられているアクション（たとえば、ライトをオンにする）とを生成し得る。ライトをオンにすることによって、フロアランプは、図１１を参照しつつ上で説明されているようなブロック１１１０において報酬イベントとその後の報酬パターン（たとえば、パターンＭＤ４）とを生成し得る。フロアランプは、決定ブロック１２０８においてフロアランプが生成された報酬パターン（ＭＤ４）が第１のリフレックス（ＲｅｆｌｅｘＦ２）の報酬パターンとマッチすると決定するまで上で説明されているような方法１１００と１２００とを通じて報酬パターンを処理することができる。フロアランプは、トリガー重みを増加させることと、調整をメモリ１３８に記憶することとによってＲｅｆｌｅｘＦ２に関連付けられている重みを調整し、それによって、壁面スイッチでのオンイベントとフロアランプでのオンイベントとの間の関連付けを学習し得る。このプロセスは、第１のリフレックス（たとえば、ＲｅｆｌｅｘＦ２）のトリガー重みが、図９に示されているようなトリガー閾値より高くなるまでフロアランプによって繰り返され得る。
【０１７２】
[0188]図１１と図１２とを参照しつつ上で説明されている実施形態の方法は、イベントがある時間ウィンドウに対して取得されてバッファリングされ、その時間ウィンドウにおいて任意の数のイベントが取得されるものとしてよく、バッファリングされたイベントを処理してマッチしているパターンを識別し、新しい相関またはリフレックスを学習することは複数のイベントとイベントおよびリフレックスの組合せとを包含し得るので、ある種の再帰アルゴリズムとして機能し得る。ユーザが実施形態のスマートボックスと学習デバイスとをトレーニングすることを可能にするためにこれらの実施形態がどのように機能し得るかをさらに開示するために、そのようなデバイスを実装するユーザアクションの次の例が提示されている。この例では、ユーザは、まだ互いに関連付けられていない、２つの学習デバイス、すなわち、壁面スイッチとフロアランプとをトレーニングする。説明を簡単にするため、フロアランプまたは壁面スイッチへの次の参照は、それらの関連付けられているスマートボックスを包含することを意図されている。
【０１７３】
[0189]この例では、フロアランプおよび壁面スイッチの各々は、それらの関連付けられているスマートボックスのメモリに記憶されている事前定義されたリフレックスを有し得る。たとえば、壁面スイッチは、トリガーパターン「ＷＴ」と、アクションパターン「ＷＡ」と、補正パターン「ＷＣ」と、報酬パターン「ＷＲ」とを含み得るメモリに記憶されている事前定義されたリフレックスＲｅｆｌｅｘＷを有するものとしてよい。トリガーパターンＷＴは、ユーザが壁面スイッチを「オフ」から「オン」にトグルするトリガーイベントに対応し得る。ユーザが、壁面スイッチを「オフ」から「オン」にトグルしたときに、壁面スイッチは、イベントを生成し、さらには「オン」イベントに関係する発生データを含むイベントレポートメッセージをブロードキャストし得る。壁面スイッチの「オン」イベントに関係する生成されたイベントから、壁面スイッチ内に備えられているか、または結合されているスマートボックスが、トリガーパターンＷＴを生成し得る。最初に、アクションパターンＷＡは、スイッチをトグルするなどの日常の生活におけるアクションに対応していない可能性がある。その代わりに、ＷＡは、単純に、将来のリフレックスにいつでも割り当てられるようになっているコンピュータコードであってよい。
【０１７４】
[0190]補正パターンＷＣは、「Ｃｏｒｒｅｃｔｉｏｎ」というラベルが付けられている壁面スイッチ上のボタンに対応し得る。ユーザが補正ボタンを押すと、壁面スイッチは、補正イベントを生成し、さらには補正イベントを指示する発生データとともに別のイベントレポートメッセージをブロードキャストし得る。生成された補正イベントから、壁面スイッチに関連付けられているスマートボックスは、補正パターンＷＣを生成し得る。報酬パターンＷＲは、ユーザが「Ｒｅｗａｒｄ」というラベルが付けられている壁面スイッチ上の報酬ボタンを押すイベントに対応し得る。ユーザが報酬ボタンを押すと、壁面スイッチは、報酬イベントを生成し、さらには報酬イベントを指示する発生データとともに別のイベントレポートメッセージをブロードキャストし得る。生成された報酬イベントから、壁面スイッチに関連付けられているスマートボックスは、報酬パターンＷＲを生成し得る。
【０１７５】
[0191]同様に、フロアランプは、トリガーパターンＭＤ１と、アクションパターンＭＤ３と、補正パターンＭＤ５と、報酬パターンＭＤ４とを含み得るメモリに記憶されている  事前定義されたリフレックスＲｅｆｌｅｘＦ２を有することができる。トリガーパターンＭＤ１は、ユーザがフロアランプのランプスイッチを「オフ」から「オン」にトグルするトリガーイベントに対応し得る。ユーザが、ランプスイッチを「オフ」から「オン」にトグルしたときに、壁面スイッチは、トリガーイベントを生成し、さらにはランプの「オン」イベントを指示する発生データを含むイベントレポートメッセージをブロードキャストし得る。生成されたトリガーイベントから、フロアランプ内に備えられているか、または結合されているスマートボックスが、トリガーパターンＭＤ１を生成し得る。アクションパターンＭＤ３は、フロアランプがライトを「オフ」から「オン」にするイベントに対応し得る。補正パターンＭＤ５は、フロアランプがトリガーモードに入っているときに「Ｃｏｒｒｅｃｔｉｏｎ」というラベルが付けられているフロアランプ上の追加のボタンに対応し得る。ユーザが補正ボタンを押すと、ランプは、補正イベントを生成し、さらにはランプの補正イベントを指示する発生データとともにイベントレポートメッセージをブロードキャストし得る。生成された補正イベントから、フロアランプに関連付けられているスマートボックスは、補正パターンＭＤ５を生成し得る。報酬パターンＭＤ４は、ユーザがトリガーモードに入っている場合にフロアランプをオンにしたときに、報酬イベントを生成し、さらにはランプの報酬イベントを指示する発生データとともにイベントレポートメッセージをブロードキャストすることに対応する。報酬イベントから、フロアランプに関連付けられているスマートボックスは、報酬パターンＭＤ４を生成し得る。
【０１７６】
[0192]壁面スイッチおよびフロアランプが最初にこの仕方で構成されている状態で、ユーザは、次のように壁面スイッチに応答してオンになるようにフロアランプをトレーニングし得る。壁面スイッチが「オフ」位置にあり、フロアランプがオフにされている状態で、ユーザは壁面スイッチをオンにし、手動によるオペレーション（たとえば、デバイス上のスイッチを入れる）を介して即座にフロアランプをオンにすることがある。これら２つのアクションが短い時間期間（たとえば、５から１０秒）内に遂行された場合、フロアランプに関連付けられているスマートボックスは、ランプオンリフレックスに関連付けられている重みを増加させることによってターンオンアクションを学習することを始めることができる。同様に、ユーザは、壁面スイッチをオフにし、即座にフロアランプをオフにすることによって壁面スイッチがオフにされたことに応答するようフロアランプをティーチングすることができる。ここでもまた、これら２つのアクションが短い時間期間（たとえば、５から１０秒）内に遂行された場合、フロアランプに関連付けられているスマートボックスは、ランプオフリフレックスに関連付けられている重みを増加させることによってターンオフアクションを学習することを始めることができる。
【０１７７】
[0193]そのようなトレーニングサイクルが１つでは十分でない場合があり（すでにトレーニング解除されているスマートボックスが単一のステップで第１のリフレックスイベント相関を学習するいくつかの実施形態の場合を除き）、したがって、ユーザは、壁面スイッチをオンにし、即座にフロアランプをオンにし、続いて少し間を置いて、壁面スイッチをオフにし、即座にフロアランプをオフにするプロセスを繰り返すものとしてよい。この一連のステップは、フロアランプに関連付けられているスマートボックスの学習ヒステリシス構成に応じて、３回またはそれ以上の回数、繰り返される必要があり得る。
【０１７８】
[0194]２、３、またはそれ以上の繰返しの後、フロアランプに関連付けられているスマートボックスは、壁面スイッチのその後のトグルがフロアランプがしかるべくオンまたはオフになることを引き起こすようにランプオンおよびランプオフのリフレックスに関連付けられている重みを増加させている可能性がある。したがって、壁面スイッチのオン／オフイベントとフロアランプのオン／オフアクションとのこの望ましい相関をトレーニングするために、ユーザは、フロアランプがユーザが壁面スイッチをトグルしたことに応答してオンにすることを開始するまでこのプロセスを単純に繰り返すことができる。
【０１７９】
[0195]ユーザによるこの一連のアクションは、壁面スイッチおよびフロアランプと関連付けられているスマートボックス内で次のアクションが生じることを引き起こす。壁面スイッチに関連付けられているスマートボックスが、「オフ」から「オン」へのトグルを感知したときに、壁面スイッチ は、受信するブロードキャスト範囲（たとえば、１００フィート）内のすべての学習デバイスに対してイベントレポートメッセージでブロードキャストされ得るトリガーイベントと関連付けられている発生データとを生成し得る。フロアランプに関連付けられているスマートボックスは、壁面スイッチのブロードキャスト範囲内にあり、イベントレポートメッセージを受信することができる。受信した後、フロアランプは、関係するイベントを生成し、メモリに記憶されているイベントフィルタが生成されたイベントのさらなる処理を妨げるかどうかを決定し得る。既定の状態では、フロアランプは、フィルタを生成されたイベントに適用し得ず、したがって、フロアランプは生成されたイベントをバッファに記憶し得る。生成されたイベントに基づき、フロアランプは、パターンＭＤ２を生成し得る。
【０１８０】
[0196]最初に、フロアランプは、ＲｅｆｌｅｘＦ２に関連付けられているパターンをメモリに記憶しておくだけである（たとえば、ＭＤ１、ＭＤ３、ＭＤ５、およびＭＤ４）。この例の目的のために、フロアランプは、パターンＭＤ２を生成するのと同じ時間ウィンドウ内で、ＲｅｆｌｅｘＦ２に対するトリガーパターン、パターンＭＤ１を生成したことなどに応答して、ＲｅｆｌｅｘＦ２に対するトリガーモード内にすでに入っていることが仮定される。生成されたパターンＭＤ２がＲｅｆｌｅｘＦ２のどのパターンともマッチしないので、生成されたパターンＭＤ２は、新しいリフレックスに対するトリガーパターンとして使用され得る未知のパターンと考えられ得る。フロアランプは、未知の、またはマッチしていないパターンＭＤ２で新しいリフレックスを作成するかどうかを決定し得る。フロアランプには、新しいリフレックスを作成しない異なる多くの理由があり得る。たとえば、フロアランプは、学習阻止モード（たとえば、保持モード）に入っているか、またはフロアランプは、特定のデバイスに関連付けられている特定のパターンからリフレックスを作成することを禁じられている場合がある（たとえば、フロアランプは、壁面スイッチに関連付けられているパターンからリフレックスを作成しない）。
【０１８１】
[0197]この例では、フロアランプは、新しいリフレックスを作成することを阻止されていないので、フロアランプは、未知のパターンＭＤ２をトリガーパターンとして、新しいリフレックスＲｅｆｌｅｘＦ１を作成することができる。新しいリフレックスＲｅｆｌｅｘＦ１は、完全なリフレックスとなるように、アクションパターンと、補正パターンと、報酬パターンとを含み得る。そこで、フロアランプは、メモリに記憶してあるアクションパターンと、補正パターンと、報酬パターンとを（たとえば、ＭＤ３と、ＭＤ５と、ＭＤ４とを）コピーすることによってトリガーモードにおける知られているリフレックスＲｅｆｌｅｘＦ２のみからのパターンを使用し、それらのパターンを新しいトリガーパターンＭＤ２とともに新しいリフレックスＲｅｆｌｅｘＦ１に割り当てることができる。フロアランプの設定に応じて、フロアランプは、オンにトグルする壁面スイッチに関係するトリガーイベントとフロアランプのライトのアクティブ化との間の新しい関連付けを学習したばかりである場合がある。たとえば、フロアランプは、フロアランプが新しいリフレックスをすぐに学習する臨界学習期間８０１（図８に示されているような）に入っているものとしてよい（たとえば、フロアランプ上で実行される単一のオン／オフシーケンス）。そこで、フロアランプは、壁面スイッチが「オフ」から「オン」にトグルした後、ライトをアクティブ化し得る。しかしながら、この例の目的に関して、フロアランプが、臨界期間内になく、「オフ」から「オン」への壁面スイッチのトグルとフロアランプのライトをアクティブ化することとの間の関連付けをまだ完全には学習していないことが仮定される。
【０１８２】
[0198]ユーザが、壁面スイッチをトグルした後まもなくフロアランプをオンにしたときに、フロアランプに関連付けられているスマートボックスは、最近学習されたパターンＭＤ２をトリガーパターンとして、そのランプオンイベントを新しいリフレックスＲｅｆｌｅｘＦ１と相関させることができる。壁面スイッチがオフにされ、その後すぐにフロアランプがオフにされるアクションでは、壁面スイッチとフロアランプとにおいて類似の応答を生成し得る。
【０１８３】
[0199]壁面スイッチが、２回目に「オフ」から「オン」にトグルされると、オンイベントの関連付けられている発生データは、再び、イベントレポートメッセージでブロードキャストされ、フロアランプによって受信され得る。ここでもまた、フロアランプは、発生データとともに関係するイベントレポートメッセージを処理し、イベントを、そして最終的にパターンＭＤ２を生成し得る。しかしながら、今回、フロアランプは生成されたパターンＭＤ２とＲｅｆｌｅｘＦ１の知られているパターンとのマッチングを行う。このマッチングに応答して、フロアランプは、また、パターンＭＤ２とＲｅｆｌｅｘＦ１の記憶されているトリガーパターンとの間にマッチがあると決定し、ＲｅｆｌｅｘＦ１に関してトリガーモードに入ることができる。さらに、フロアランプは、ＲｅｆｌｅｘＦ１のトリガー重みがトリガー重み閾値以上であるかどうかを決定することができる。この例では、１回のみのトレーニングサイクルの後に、ＲｅｆｌｅｘＦ１が新しいリフレックスであるので、フロアランプは、ＲｅｆｌｅｘＦ１のトリガー重みがトリガー重み閾値以上でないと決定し得る。そこで、フロアランプは、ＲｅｆｌｅｘＦ１に対してトリガーモードに入っている間により多くのイベントを監視することを続け得る。
【０１８４】
[0200]ユーザが５〜１０秒の時間ウィンドウ内でフロアランプをオンにしたときに、フロアランプは、最終的にフロアランプが報酬パターンＭＤ４を生成することを引き起こす報酬イベントを生成し得る。フロアランプは、ＭＤ４を処理し、報酬パターンとＲｅｆｌｅｘＦ１とのマッチがあると決定する。それに応答して、フロアランプは、ＲｅｆｌｅｘＦ１に関してまだトリガーモードに入っており、ＲｅｆｌｅｘＦ１のトリガー重みを増加させ得る。重みを調整した後、または５〜１０秒の時間ウィンドウの後に、フロアランプは、ＲｅｆｌｅｘＦ１に関してトリガーモードを終了し、フロアランプがより多くのイベントを監視する監視モードに入り得る。
【０１８５】
[0201]その後しばらくして、ユーザが３回目にまた壁面スイッチをオンにトグルし、壁面スイッチがフロアランプによって受信された発生データとともにイベントレポートメッセージをブロードキャストすることを引き起こし得る。ここでもまた、受信されたメッセージ内のデータに基づき、フロアランプは、関係するイベントを生成し、次いでパターンＭＤ２を生成し得る。フロアランプは、生成されたパターンＭＤ２とＲｅｆｌｅｘＦ１のトリガーパターンとの間にトリガーのマッチがあると決定し、３回目にＲｅｆｌｅｘＦ１に関してトリガーモードに入ることができる。もう一度、フロアランプは、ＲｅｆｌｅｘＦ１のトリガー重みがトリガー重み閾値以上であるかどうかを決定することができる。３回目では、ＲｅｆｌｅｘＦ１が新しいリフレックスであるので、フロアランプは、ＲｅｆｌｅｘＦ１のトリガー重みがトリガー重み閾値以上でないと決定し得る。そこで、フロアランプは、トリガーモードに入っている間により多くのイベントを監視することを続ける。
【０１８６】
[0202]ＲｅｆｌｅｘＦ１の最近のトリガーモードの５〜１０秒の時間ウィンドウ内にまだある間に、ユーザが、３回目にフロアランプをオンにすることができる。それに応答して、フロアランプは、最終的にフロアランプが報酬パターンＭＤ４を生成することを引き起こす報酬イベントを生成する。フロアランプは、ＭＤ４を処理し、報酬パターンとＲｅｆｌｅｘＦ１とのマッチがあると決定し得る。フロアランプは、ＲｅｆｌｅｘＦ１に関してまだトリガーモードに入っており、ＲｅｆｌｅｘＦ１のトリガー重みをトリガー閾値より高く増加させ得る。
【０１８７】
[0203]その後しばらくして、ユーザが４回目に壁面スイッチを「オフ」から「オン」にトグルしたときに、同じシーケンスのイベントが発生し、今回のみ、フロアランプは、ＲｅｆｌｅｘＦ１のトリガー重みが閾値以上であり、したがってアクションパターンＭＤ３を生成すると決定し得る。アクションパターンＭＤ３に応答して、フロアランプは、フロアランプのライトをオンにするモーターコントローラを通電する関連付けられているアクションイベントを生成し得る。その後、フロアランプは、ユーザが壁面スイッチを「オフ」から「オン」にトグルしたことに応答してオンにされる。
【０１８８】
[0204]図１３Ａ〜図１３Ｆは、学習モディファイアデバイス１５０が非集中システム内の学習デバイスの学習能力を調整するための様々なシナリオを示している。特に、第１のスマートボックス１０３ａは、壁面スイッチ１０２に結合され、第２のスマートボックス１０３ｂは、フロアランプ１０４に結合され得る。学習モディファイアデバイス１５０は、学習モディファイア信号を、そのブロードキャスト範囲１３０２内にある学習デバイスが信号の影響を受けるようにブロードキャストするように構成され得る。上で説明されているように、学習モディファイアデバイス１５０は、Ｂｌｕｅｔｏｏｔｈ無線などを介して、信号をブロードキャストすることができる専用シグナリングデバイスまたはスマートフォンであってよい。
【０１８９】
[0205]学習モディファイアデバイス１５０の近接範囲内にないときに（すなわち、ブロードキャスト範囲１３０２の外にあるとき）、スマートボックス１０３ａ〜１０３ｂは、「既定の学習状態」で動作するように構成され得る。言い換えれば、スマートボックス１０３ａ〜１０３ｂは、修正された学習能力を利用し得ない（たとえば、リフレックスに対するトリガー重みを計算するために大きく／小さくされた学習率、など）。既定の学習状態は、個別の学習デバイスに対して異なり得る。したがって、第１のスマートボックス１０３ａに対する既定の学習状態は、第２のスマートボックス１０３ｂに対する既定の学習状態より速い、遅い、または同じである学習率によって定義され得る。さらに、既定の学習状態は、スマートボックス１０３ａ〜１０３ｂが有効化された、または有効化された学習モード内で動作しているかどうかを指示し得る。たとえば、既定の設定により、第１のスマートボックス１０３ａは、スマートボックス１０３ａが上で説明されているように新しいトリガーアクション関連付けを通常生成しないように無効化された学習モードで動作するように構成され得る。
【０１９０】
[0206]逆に、スマートボックス１０３ａ〜１０３ｂは、学習モディファイアデバイス１５０の受信範囲内にあるときに（すなわち、ブロードキャスト範囲１３０２内にあるときに）「修正された学習状態」で動作するように構成され得る。言い換えれば、学習モディファイアデバイス１５０から学習モディファイア信号を受信することに基づき、スマートボックス１０３ａ〜１０３ｂは、修正された学習能力を利用し得る（たとえば、リフレックスに対するトリガー重みを計算するために調整された学習率、など）。たとえば、修正された学習率は、スマートボックス１０３ａ〜１０３ｂが修正された学習状態にあるときにより少ないトリガーを受信したことに応答してアクションを実行する（たとえば、トリガー重みを閾値よりも大きくする、など）ことを学習するように構成されていることに対応し得る。いくつかの実施形態では、修正された学習状態は、個別の学習デバイスに関連しており、そのため異なり得る。たとえば、第１のスマートボックス１０３ａに対する修正された学習状態は、第２のスマートボックス１０３ｂに対する修正された学習状態より速い、遅い、または同じ学習率によって定義され得る。しかしながら、いくつかの実施形態では、修正された学習状態は、すべての学習デバイスについて同じであってもよい。たとえば、スマートボックス１０３ａ〜１０３ｂに対する修正された学習状態は、両方のスマートボックス１０３ａ〜１０３ｂにおける一致する学習挙動を引き起こすように普遍的学習率として定義され得る。既定の学習状態を参照しつつ上で説明されているのと同様に、修正された学習状態は、スマートボックス１０３ａ〜１０３ｂが有効化された、または無効化された学習モード内で動作しているかどうかを指示し得る。たとえば、第１のスマートボックス１０３ａが、既定の設定により有効化された学習モードで動作するように構成されているときに、第１のスマートボックス１０３ａの修正された学習状態は、無効化された学習モードであってよい。
【０１９１】
[0207]図１３Ａ〜図１３Ｃは、ユーザ１３０１が学習状態を調整するために学習モディファイアデバイス１５０をスマートボックス１０３ａ〜１０３ｂの近接範囲内に持ち運ぶ状況を示している。学習モディファイアデバイス１５０は、学習モディファイア信号を定期的にブロードキャストするように構成され得る。学習モディファイアデバイス１５０は、既定の設定により（たとえば、アクティブ化されたとき、電池が挿入されたときなどに必ず）、または代替的にユーザ１３０１からのユーザ入力（たとえば、「ｓｔａｒｔ」ソフトボタン上のタッチ入力、「ｐｏｗｅｒ」ボタンの押下、など）に応答して、信号をブロードキャストするように構成され得る。
【０１９２】
[0208]図１３Ａでは、ユーザ１３０１および学習モディファイアデバイス１５０は、スマートボックス１０３ａ〜１０３ｂのいずれも、学習モディファイアデバイス１５０のブロードキャスト範囲１３０２内にないように位置決めされ得る。したがって、スマートボックス１０３ａ〜１０３ｂは両方とも、それぞれの既定の学習状態で動作するように構成され得る。たとえば、第１のスマートボックス１０３ａが、既定の設定により無効化された学習モードで動作するように構成されている場合、これは無効化され学習しないことを続行し得る。別の例として、第２のスマートボックス１０３ｂが、既定の設定により通常学習率で学習するように構成されている場合、これは引き続き通常学習率で学習し得る。
【０１９３】
[0209]図１３Ｂでは、ユーザ１３０１および学習モディファイアデバイス１５０は、第１のスマートボックス１０３ａが、学習モディファイアデバイス１５０のブロードキャスト範囲１３０２内に入るように位置決めされ得る。したがって、第１のスマートボックス１０３ａは、学習モディファイア信号１３２０（たとえば、Ｂｌｕｅｔｏｏｔｈパケットなど）を受信したことに応答して修正された学習状態で動作するように構成され得るが、第２のスマートボックス１０３ｂは、その既定の学習状態で動作し続けるように構成され得る。たとえば、第１のスマートボックス１０３ａは、関係するトリガー重みが閾値を超え得る前に遭遇するトリガーパターンが少なくなければならないように学習率を大きくすることができ、したがって、関連付けられているアクションは、その後のトリガーに第１のスマートボックス１０３ａにおいて遭遇したことに応答して実行され得る。別の例として、第２のスマートボックス１０３ｂが、既定の設定により無効化され新しいリフレックスを学習しない（すなわち、無効化された学習モードで動作する）ように構成されている場合、これは新しいリフレックスを学習しないことを続行することができる。
【０１９４】
[0210]図１３Ｃでは、ユーザ１３０１および学習モディファイアデバイス１５０は、スマートボックス１０３ａ〜１０３ｂの両方が、学習モディファイアデバイス１５０のブロードキャスト範囲１３０２内にあるように位置決めされ得る。したがって、スマートボックス１０３ａ〜１０３ｂは両方とも、学習モディファイアデバイス１５０から学習モディファイア信号１３２０、１３３０を受信したことに応答してそれぞれの修正された学習状態で動作するように構成され得る。たとえば、ユーザ１３０１が、既定の設定により無効化された学習モードで動作するように構成されたスマートボックス１０３ａ〜１０３ｂに歩み寄るときに、スマートボックス１０３ａ〜１０３ｂは有効化された学習モードで動作するように構成され得る。
【０１９５】
[0211]図１３Ｄ〜図１３Ｆは、学習モディファイアデバイス１５０がスマートボックス１０３ａ〜１０３ｂの近接範囲内（すなわち、ブロードキャスト受信範囲内）に位置決めされるシナリオを示している。図１３Ａ〜図１３Ｃに示されているシナリオとは異なり、学習モディファイアデバイス１５０は、ユーザ１３０１によって持ち運ばれ得ないが、その代わりに、環境（たとえば、部屋など）の中の単一の場所に固定されたままであり得る。さらに、学習モディファイアデバイス１５０は、事前定義された信号またはユーザ入力を受信したことに応答して学習モディファイア信号のみをブロードキャストするように構成され得る。たとえば、学習モディファイアデバイス１５０は、既定の設定により信号をブロードキャストするようには構成され得ないが（たとえば、アクティブ化されたとき、電池が挿入されたときなどに必ず）、その代わりに、短距離無線を介して事前定義された信号を受信したことに応答して信号をブロードキャストするのみであり得る。たとえば、図１３Ｄは、信号を送信せずにスマートボックス１０３ａ〜１０３ｂの近くに位置決めされた学習モディファイアデバイス１５０とそれぞれの既定の学習状態で動作しているスマートボックス１０３ａ〜１０３ｂを示している。
【０１９６】
[0212]図１３Ｅは、環境内のルーター１３７０を示している。ルーター１３７０は、ローカルエリアネットワーク（ＬＡＮ）、さらにはインターネットなどのワイドエリアネットワーク（ＷＡＮ）を介した通信を円滑にすることができる任意のデバイスであってよい。たとえば、ルーター１３７０は、家の中にあるＷｉＦｉルーターであってよい。学習モディファイアデバイス１５０は、ワイヤレス通信リンク１３７２を介してルーター１３７０から信号を受信し得る。そのような信号は、学習モディファイアデバイス１５０を信号の送信を始めるように構成することができるコマンド、スクリプト、ソフトウェア、および／または他の情報を含み得る。それに応答して、学習モディファイアデバイス１５０は、ブロードキャスト範囲１３０２内のスマートボックス１０３ａ〜１０３ｂがそれぞれの修正された学習状態で動作することを引き起こす学習モディファイア信号１３２０、１３３０を送信し得る。いくつかの実施形態では、学習モディファイアデバイス１５０が学習モディファイア信号１３２０、１３３０を送信することを始めることを引き起こす通信リンク１３７２を介した信号は、インターネットを介してリモートサーバから、または代替的に、ＬＡＮを介して別のデバイス（たとえば、ＬＡＮに接続されているが、異なる部屋の中にあるユーザスマートフォンなど）からの通信に基づきルーター１３７０によって提供され得る。たとえば、学習モディファイアデバイス１５０は、学習モディファイアデバイス１５０を制御するためユーザがウェブページにアクセスすることに基づきブロードキャストすることを始めるコマンドを受信し得る。
【０１９７】
[0213]図１３Ｆは、ユーザ１３０１によって持ち運ばれるモバイルデバイス１３８０から信号１３８２を受信したことに応答して学習モディファイア信号１３２０、１３３０を送信する学習モディファイアデバイス１５０を示している。モバイルデバイス１３８０は、Ｂｌｕｅｔｏｏｔｈペアリング手続きによって、または信号１３８２内で識別され得るモバイルデバイス１３８０の識別情報（たとえば、信号１３８２のヘッダ情報内で報告されるデバイスＩＤなど）を記憶することを通じて、などの手段で学習モディファイアデバイス１５０に事前関連付けされ得る。学習モディファイアデバイス１５０は、信号１３８２を介してモバイルデバイス１３８０の存在を学習モディファイア信号１３２０、１３３０を送信することを始めるプロンプトとして認識するように構成され得る。たとえば、ユーザ１３０１が、Ｂｌｕｅｔｏｏｔｈシグナリングを介してＩＤをブロードキャストするように構成されている自分のスマートフォンを携えて部屋に入ると、学習モディファイアデバイス１５０は、スマートフォンを検出し、スマートボックス１０３ａ〜１０３ｂがそれぞれの修正された学習状態（たとえば、有効化された学習モード、無効化された学習モード、大きくされた学習率、小さくされた学習率など）で動作することを引き起こす信号をブロードキャストすることを始めることができる。この方式で、部屋の中にある学習デバイスは、ユーザがいるときにユーザによって引き起こされるイベントを観察することから学習するが、ユーザがいないときに発生するイベント（たとえば、ペット、子供、客などによって引き起こされるイベント）から学習しないように制御され得る。
【０１９８】
[0214]図１４Ａ〜図１４Ｄは、様々な学習状態において学習デバイスが報酬パターンを取得したことに応答してなされるリフレックスのトリガー重みへの例示的な変更を示している。特に、異なるタイプの学習モディファイア信号に基づき、リフレックスの現在のトリガー重みは、異なる率でトリガー重み閾値１４０６を超えて高められ得る。その結果、学習デバイスは、学習モディファイア信号に基づき異なる速度で関連付けられているアクションを実行することができるものとしてよい。
【０１９９】
[0215]図１４Ａは、既定の学習状態において受信される報酬信号によるトリガー重み変更を示している。言い換えれば、これらの変更は、学習デバイスが学習モディファイア信号を受信していなかったときに生じ得る（すなわち、学習モディファイアデバイスは、近接範囲内では信号を送信していない）。学習デバイスは、トリガー重み閾値１４０６よりも低い第１のトリガー重みレベル１４０１でリフレックスに対するトリガー重みを初期化し得る。第１の時刻１４１０に、学習デバイスは、学習デバイスが特定のイベントまたは発生データに関係する第１のイベントレポートメッセージを受信したことに応答するなどして、第１の報酬パターン１４１１を取得し得る。それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１４０６よりも低い第２のトリガー重みレベル１４０２まで大きくすることができる。第２の時刻１４１２に、学習デバイスは、学習デバイスが特定のイベントまたは発生データに関係する第２のイベントレポートメッセージを受信したことに応答するなどして、第２の報酬パターン１４１３を取得し得る。それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１４０６よりも高い第３のトリガー重みレベル１４０３まで大きくすることができる。したがって、その既定の学習状態では、学習デバイスは、２つの報酬パターン１４１１、１４１３を受信した後にリフレックスのアクションを実行するように構成され得る。
【０２００】
[0216]図１４Ｂは、大きくされた学習率によって定義され得る第１の修正された学習状態において受信される報酬信号によるトリガー重み変更を示している。言い換えれば、受信された学習モディファイア信号内のデータ（たとえば、乗数、スカラー、増幅係数など）に基づき、学習デバイスは、より高速に学習するように構成され得る。上で説明されているように、学習デバイスは、トリガー重み閾値１４０６よりも低い第１のトリガー重みレベル１４０１でリフレックスに対するトリガー重みを初期化し得る。第１の時刻１４１０に、学習デバイスは、第１の報酬パターン１４１１を取得し、それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１４０６よりも高い第３のトリガー重みレベル１４０３まで大きくすることができる。したがって、学習率が大きくされている第１の修正された学習状態において、学習デバイスは、より少ない報酬パターンを受信した後にリフレックスのアクションを実行するように構成され得る。
【０２０１】
[0217]図１４Ｃは、小さくされた学習率によって定義され得る第２の修正された学習状態において受信される報酬信号によるトリガー重み変更を示している。言い換えれば、受信された学習モディファイア信号内のデータ（たとえば、乗数、スカラー、増幅係数など）に基づき、学習デバイスは、より低速に学習するように構成され得る。上で説明されているように、学習デバイスは、トリガー重み閾値１４０６よりも低い第１のトリガー重みレベル１４０１でリフレックスに対するトリガー重みを初期化し得る。第１の時刻１４１０に、学習デバイスは、第１の報酬パターン１４１１を取得し、それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１４０６よりも低い第４のトリガー重みレベル１４５２まで大きくすることができる。第２の時刻１４１２に、学習デバイスは、第２の報酬パターン１４１３を取得し、それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１４０６よりも低い第２のトリガー重みレベル１４０２まで大きくすることができる。第３の時刻１４６２に、学習デバイスは、第３の報酬パターン１４６３を取得し、それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１４０６よりも低い第５のトリガー重みレベル１４５４まで大きくすることができる。第４の時刻１４６４に、学習デバイスは、第４の報酬パターン１４６５を取得し、それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１４０６よりも高い第３のトリガー重みレベル１４０３まで大きくすることができる。したがって、この第２の修正された学習状態では、学習デバイスは、より多くの報酬パターンを受信した後にリフレックスのアクションを実行するように構成され得る（すなわち、低速で学習する）。
【０２０２】
[0218]図１４Ｄは、無効化された学習モードによって定義され得る第３の修正された学習状態において受信される報酬信号によるトリガー重み変更を示している。言い換えれば、受信された学習モディファイア信号内のデータに基づき、学習デバイスは、学習しないように構成され得る（すなわち、学習率が０）。上で説明されているように、学習デバイスは、トリガー重み閾値１４０６よりも低い第１のトリガー重みレベル１４０１でリフレックスに対するトリガー重みを初期化し得る。第１の時刻１４１０に、学習デバイスは、第１の報酬パターン１４１１を取得し得るが、それに応答して、学習デバイスは、新しいトリガー重みを計算し得ず、したがって、トリガー重みは、第１のトリガー重みレベル１４０１のままとなり得る。同様に、第２の報酬パターン１４１３が、第２の時刻１４１２に取得され、第３の報酬パターン１４６３が、第３の時刻１４６２に取得され、第４の報酬パターン１４６５が、第４の時刻１４６４に取得された後、学習デバイスは、新しいトリガー重みを計算し得ず、したがって、トリガー重みは、第１のトリガー重みレベル１４０１のままとなり得る。
【０２０３】
[0219]図１５Ａ〜図１５Ｄは、様々な学習状態において学習デバイスが補正パターンを取得したことに応答してなされるリフレックスのトリガー重みへの例示的な変更を示している。特に、異なるタイプの学習モディファイア信号に基づき、リフレックスの現在のトリガー重みは、異なる率でトリガー重み閾値１５０６よりも低く下げられ、したがって、学習デバイスは、学習モディファイア信号に基づき異なる速度で関連付けられているアクションを実行しないよう無効化され得る。
【０２０４】
[0220]図１５Ａは、既定の学習状態において受信される補正信号によるトリガー重み変更を示している。言い換えれば、これらの変更は、学習デバイスが学習モディファイア信号を受信しないときに生じ得る（すなわち、学習モディファイアデバイスは、近接範囲内にない）。学習デバイストリガーザは、トリガー重み閾値１５０６よりも高い第１のトリガー重みレベル１５０１でリフレックスに対する重みを初期化し得る。第１の時刻１５１０に、学習デバイスは、学習デバイスが特定のイベントまたは発生データに関係する第１のイベントレポートメッセージを受信したことに応答するなどして、第１の補正パターン１５１１を取得し得る。それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１５０６よりも高い第２のトリガー重みレベル１５０２まで小さくすることができる。第２の時刻１５１２に、学習デバイスは、学習デバイスが特定のイベントまたは発生データに関係する第２のイベントレポートメッセージを受信したことに応答するなどして、第２の補正パターン１５１３を取得し得る。それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１５０６よりも低い第３のトリガー重みレベル１５０３まで小さくすることができる。したがって、その既定の学習状態では、学習デバイスは、２つの補正パターン１５１１、１５１３を受信した後にリフレックスのアクションを実行することを停止するように構成され得る。
【０２０５】
[0221]図１５Ｂは、大きくされた学習率によって定義され得る第１の修正された学習状態において受信される補正信号によるトリガー重み変更を示している。図１４Ｂを参照しつつ上で説明されている例と同様に、受信された学習モディファイア信号内のデータ（たとえば、乗数、スカラー、増幅係数など）に基づき、学習デバイスは、より高速に学習するように構成され得る。学習デバイスは、トリガー重み閾値１５０６よりも高い第１のトリガー重みレベル１５０１でリフレックスに対するトリガー重みを初期化し得る。第１の時刻１５１０に、学習デバイスは、第１の補正パターン１５１１を取得し、それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１５０６よりも低い第３のトリガー重みレベル１５０３まで小さくすることができる。したがって、学習率が大きくされた第１の修正された学習状態において、学習デバイスは、ただ１つの補正パターンなど、より少ない補正パターンを受信した後にリフレックスのアクションを実行することを停止するように構成され得る。
【０２０６】
[0222]図１５Ｃは、小さくされた学習率によって定義され得る第２の修正された学習状態において受信される補正信号によるトリガー重み変更を示している。図１４Ｃを参照しつつ上で説明されている例と同様に、受信された学習モディファイア信号内のデータ（たとえば、乗数、スカラー、増幅係数など）に基づき、学習デバイスは、より低速に学習するように構成され得る。学習デバイスは、トリガー重み閾値１５０６よりも高い第１のトリガー重みレベル１５０１でリフレックスに対するトリガー重みを初期化し得る。第１の時刻１５１０に、学習デバイスは、第１の補正パターン１５１１を取得し、それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１５０６よりも高い第４のトリガー重みレベル１５５２まで小さくすることができる。第２の時刻１５１２に、学習デバイスは、第２の補正パターン１５１３を取得し、取得されるものとしてよく、それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１５０６よりも高い第２のトリガー重みレベル１５０２まで小さくすることができる。第３の時刻１５６２に、学習デバイスは、第３の補正パターン１５６３を取得し、取得されるものとしてよく、それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１５０６よりも高い第５のトリガー重みレベル１５５４まで小さくすることができる。第４の時刻１５６４に、学習デバイスは、第４の補正パターン１５６５を取得し、取得されるものとしてよく、それに応答して、学習デバイスは、トリガー重みをトリガー重み閾値１５０６よりも低い第３のトリガー重みレベル１５０３まで小さくすることができる。したがって、この第２の修正された学習状態では、学習デバイスは、４つの補正パターンなど、より多くの補正パターンを受信した後にリフレックスのアクションを実行することを停止するように構成され得る。
【０２０７】
[0223]図１５Ｄは、無効化された学習モードによって定義され得る第３の修正された学習状態において受信される補正信号によるトリガー重み変更を示している。図１４Ｄで説明されているのと同様に、受信された学習モディファイア信号内のデータに基づき、学習デバイスは、学習しないように構成され得る（すなわち、学習率が０）。学習デバイスは、トリガー重み閾値１５０６よりも低い第１のトリガー重みレベル１５０１でリフレックスに対するトリガー重みを初期化し得る。しかしながら、無効化された学習モードにより、学習デバイスは、様々な時刻１５１０、１５１２、１５６２、１５６４に補正信号１５１１、１５１３、１５６３、１５６５を受信したことに応答して第１のトリガー重み閾値１５０６からトリガー重みを変更し得ない。
【０２０８】
[0224]図１６は、学習モディファイアデバイスによって送信される信号（本明細書では「学習モディファイア信号」と称される）内のデータを特徴付けるために使用され得るデータ構造１６００を示している。データ構造１６００は、フォーマットコンポーネント１６０２と、識別コンポーネント１６０４と、時間コンポーネント１６０６と、学習率モディファイア値１６０８とを含み得る。コンポーネント１６０２〜１６０６は、図３Ａ〜図３Ｂにおけるフォーマットコンポーネント３０１と、識別コンポーネント３０２と、時間コンポーネント３５１とを参照しつつ上で説明されている例に類似しているものとしてよい。特に、フォーマットコンポーネント１６０２は、学習デバイスがプロトコルバージョン、暗号化タイプ、シーケンス番号、トランザクション識別子（たとえば、指示なしで様々な発生データを次のと区別するために使用され得る情報、方向、順序、またはシーケンス）などの、データ構造１６００内のデータの残りを復号し、読み出し、および／またはアクセスすることを可能にするためのデータまたは情報を含み得る。識別コンポーネント１６０４は、発生データの発生元のデバイス（すなわち、学習モディファイアデバイス）を指示し得る。時間コンポーネント１６０６は、時刻、曜日などの、学習モディファイア信号が送信された時刻を指示し得る。
【０２０９】
[0225]学習率モディファイア値１６０８は、学習モディファイア信号を受信する学習デバイスがその学習率を大きくすべきか、小さくすべきかを指示し得る。いくつかの実施形態では、学習率モディファイア値１６０８は、スカラーまたは乗数などの、上で説明されているようなトリガー重み計算における値として使用され得る。たとえば、「１」よりも大きい値のときに、学習率モディファイア値１６０８は、学習率を大きくするために計算の際にリフレックスのトリガー重みに適用されるスカラーであってよい（すなわち、トリガー重みは、より素早く調整される）。別の例として、「１」よりも小さい値のときに、学習率モディファイア値１６０８は、学習率を小さくするために計算の際にリフレックスのトリガー重みに適用されるスカラーであってよい（すなわち、トリガー重みは、よりゆっくりと調整される）。いくつかの実施形態では、学習率モディファイア値１６０８は、上で説明されているようなトリガー重み計算で使用される加法的値であってよい。たとえば、学習率モディファイア値１６０８は、リフレックスに対するトリガー重みを計算する際に使用される様々な変数（たとえば、利得、バイアスなど）に加算され（またはそこから減算され）得る。
【０２１０】
[0226]データ構造１６００は、様々なオプションのコンポーネント１６１０〜１６１６も含み得る。特に、データ構造１６００は、信号内でデータ構造１６００を受信するデバイスが有効化された学習モードに入れられるべきか（すなわち、学習する能力を有する）、または無効化された学習モードに入れられるべきか（すなわち、学習する能力を有しない）を指示し得るオプションの学習モードアクティブ設定コンポーネント１６１０を含み得る。いくつかの実施形態では、学習率モディファイア値１６０８は、学習モードアクティブ設定１６１０と同じ方式で機能するように構成され得る。たとえば、学習率モディファイア値１６０８に対するゼロ値は、学習デバイスによって計算される学習値または重みをゼロにする乗数として学習デバイスによって使用され得る。別の例として、学習率モディファイア値１６０８に対する「１」の値は、学習デバイスによって計算される通常学習値または重みを単に維持するだけである乗数として学習デバイスによって使用され得る。
【０２１１】
[0227]データ構造１６００は、学習モディファイア信号の影響を受け得る学習デバイスのクラスまたはタイプを指示し得るオプションのデバイスタイプコンポーネント１６１２を備え得る。たとえば、デバイスタイプコンポーネント１６１２は、スマートＴＶ、スマートステレオ、スマート壁面スイッチ、および／またはスマートランプのどれかまたはすべてが、学習モディファイア信号を受信したことに応答して個別の学習モードおよび／または学習率を調整できることを指示し得る。いくつかの実施形態では、デバイスタイプコンポーネント１６１２は、学習モディファイア信号を受信するデバイスは、対応する学習モディファイアデバイスが付近のデバイスの学習に無差別に影響を及ぼすように構成されているときなどに、そのすべてが影響を受け得るか、またはどれも影響を受け得ないことを指示し得る。いくつかの実施形態では、デバイスタイプコンポーネント１６１２は、データ構造１６００を含む学習モディファイア信号の影響を受け得る特定のデバイス識別子を含み得る。たとえば、デバイスタイプコンポーネント１６１２は、関連付けられている学習モディファイア信号内の情報を利用するように構成され得る一連のデバイス識別子または機械アクセス制御（ＭＡＣ）アドレスを含み得る。
【０２１２】
[0228]データ構造１６００は、学習モディファイア信号の影響を受け得る学習計算の特定のタイプを指示し得るオプションの学習率モディファイアタイプコンポーネント１６１４も備え得る。学習率モディファイアタイプコンポーネント１６１４は、報酬パターンおよび／または補正パターンに関係する計算のみが学習率モディファイア値１６０８の影響を受け得ることを指示し得る。たとえば、学習率モディファイアタイプ１６１４は、トリガーモードにおいて報酬パターンを受信したことに応答して様々なリフレックスに対するトリガー重みが調整された率でのみ変更され得ることを指示し得る。別の例として、学習率モディファイアタイプコンポーネント１６１４は、トリガーモードにおいて補正パターンを受信したことに応答して様々なリフレックスに対するトリガー重みが調整された率でのみ変更され得ることを指示し得る。このようにして、トリガーに応答して実行することを学習する、または学習解除することに対する率を修正するための学習モディファイア信号が送信され得る。
【０２１３】
[0229]データ構造１６００は、学習モディファイアデバイスが学習モディファイア信号をどれだけ頻繁に送信するかを指示するオプションの送信頻度コンポーネント１６１６も備え得る。そのような頻度情報は学習デバイスによって、それらがもはや学習モディファイア信号を受信していないか（たとえば、学習モディファイアデバイスの範囲外にある、など）、またはただ単に信号と信号との間のある期間内にあるだけなのかを決定するために使用され得る。たとえば、スマートＴＶは、学習モディファイア信号が第１の学習モディファイア信号からの送信頻度コンポーネント１６１６によって定義される時間ウィンドウ内で受信されていないときにそれが修正された学習状態にもはや入っていない可能性があると決定し得る。
【０２１４】
[0230]図１７Ａは、学習デバイスが学習モディファイアデバイスから信号を受信したことに応答してその学習能力を変更するための一実施形態の方法１７００を示している。特に、学習デバイスは、大きくされた、または小さくされた学習率の期間および／または有効化された学習モードなどの、様々な学習状態に入ることを学習デバイスに命令する情報を含む学習モディファイア信号の着信について受信機回路を監視し得る。上で説明されているように、学習デバイスは、製造業者またはユーザによって定義された学習率を使用することなどによって、既定の学習能力を有する既定の学習状態で動作するように構成され得る。しかしながら、付近の学習モディファイアデバイスから送信された学習モディファイア信号を受信したことに応答して、学習デバイスは、異なる、または修正された学習能力を有する修正された学習状態で動作するように構成され得る。学習デバイスが、学習モディファイア信号を受信することを止めたときに、学習デバイスは、既定の学習状態での動作を再開し得る。
【０２１５】
[0231]ブロック１７０１において、学習デバイスのプロセッサは、付近のデバイスから受信された新しい短距離ワイヤレスメッセージ（たとえば、Ｂｌｕｅｔｏｏｔｈパケット）を検出するために着信メッセージバッファを監視することなどによって、信号の着信について受信機回路を監視し得る。このときに、学習デバイスは、修正された学習能力を利用せず、したがって、既定の学習状態で動作していると見なされ得る。決定ブロック１７０２において、学習デバイスのプロセッサは、受信された信号が学習モディファイア信号であるかどうかを決定し得る。たとえば、学習デバイスは、信号が学習モディファイアデバイスによって送信されたか、または学習デバイスが学習するように構成される仕方を変更し得る情報を他の何らかの形で含むかを指示し得る受信された信号内のメタデータ、ヘッダ情報、および／または他のデータを使用し得る。受信された信号が学習モディファイア信号でないと決定したことに応答して（すなわち、決定ブロック１７０２＝「いいえ」）、学習デバイスは、ブロック１７０１におけるオペレーションで処理する信号の着信を監視することを続行することができる。
【０２１６】
[0232]しかしながら、受信された信号が学習モディファイア信号であると決定したことに応答して（すなわち、決定ブロック１７０２＝「はい」）、学習デバイスのプロセッサは、ブロック１７０４において受信された信号に基づき修正された学習状態で動作するように学習デバイスの学習能力のうちの１つまたは複数を修正し得る。学習デバイスは、修正された学習状態に入っている間に学習挙動を調整するためにデバイス上に記憶されている様々な設定、構成、値、および他のデータを変更し得る。修正された学習能力の特定の例について、図１８Ａと、図１８Ｂと、図１９とを参照しつつ以下で説明される。いくつかの実施形態では、学習デバイスの現在の学習能力を定義するために使用される変数の既定値、設定、レジスタ、および／または他の情報は、ブロック１７０４におけるオペレーションで行われる調整に基づき上書きされ得る。たとえば、トリガー重みを計算する際に使用される既定の利得変数値（たとえば、１など）は、受信された学習モディファイア信号で指示される修正された利得値（たとえば、１．５など）で上書きされ得る。しかしながら、そのような既定の情報は、学習デバイスがもはや修正された学習状態にないときなど、後になってから記憶され再ロードされ得る。いくつかの実施形態では、学習デバイスは、それが修正された学習状態で動作しているかどうかを指示するためにフラグ、システム変数、または他の記憶されている情報を利用することができる。
【０２１７】
[0233]決定ブロック１７０６において、学習デバイスのプロセッサは、その後の学習モディファイア信号が受信されるかどうかを決定し得る。たとえば、学習デバイスは、受信された学習モディファイア信号に基づき学習デバイスが学習能力を修正した（すなわち、修正された学習状態に入った）とき以降に受信される信号の着信について受信機回路を監視し得る。学習デバイスは、その後の学習モディファイア信号が特定の時間周波数内で、および／または先行する学習モディファイア信号の受信からの特定の時間ウィンドウ内で受信されるかどうかを決定し得る。言い換えれば、その後の学習モディファイア信号はともに、学習デバイスを修正された学習状態で動作することを維持するために十分接近して受信される必要があり得る。たとえば、学習デバイスは、第１の学習モディファイア信号を受信した後に事前定義された時間期間（たとえば、１秒など）内に第２の学習モディファイア信号が受信されたとき、第２の学習モディファイア信号を受信した後にその時間期間内に第３の学習モディファイア信号が受信されたとき、などのときに修正された学習状態で動作するように構成されたままであってよい。図１７Ｂを参照しつつ以下で説明されているようないくつかの実施形態では、各その後の学習モディファイア信号は、学習デバイスがカウントダウンメカニズムまたはタイマーを更新またはリセットすることを引き起こし得る。
【０２１８】
[0234]その後の学習モディファイア信号が受信されたと決定したことに応答して（すなわち、決定ブロック１７０６＝「はい」）、学習デバイスは、修正された学習能力を有する修正された学習状態に留まり、決定ブロック１７０６におけるオペレーションを続行することができる。しかしながら、その後の学習モディファイア信号が受信されないか、または第１の学習モディファイア信号が受信された後に特定の時間期間内に受信されないと決定したことに応答して（すなわち、決定ブロック１７０６＝「いいえ」）、学習デバイスのプロセッサは、ブロック１７０８において既定の学習状態で動作するように学習デバイスの学習能力をリセットし得る。言い換えれば、トリガーとアクションとの間の関連付けを作成し（すなわち、リフレックスを生成し）、および／または学習された関連付けのトリガー重みを変更する（すなわち、記憶されているリフレックスのトリガー重みを大きくする、または小さくする）ための計算、ルーチン、構成、および／または他の機能に関連付けられている情報（たとえば、変数、構成、モード、設定など）に対する調整があった場合、学習デバイスは、調整された情報を既定の設定、条件、内容、および／または値に戻すことができる。たとえば、学習デバイスは、トリガー重みの計算を調整するために使用された学習モディファイア信号で受信された乗数を論理否定する、取り除く、ゼロ設定する、または他の何らかの形でリセットすることができる。図１８Ａ、図１８Ｂ、および図１９は、修正された学習状態を終了したことに応答して学習デバイスが行い得る特定の調整を示している。様々な実施形態において、学習デバイスが学習能力をリセットするときに、学習デバイスのメモリ（たとえば、不揮発性など）に記憶されている設定、構成、式などに対する既定値がメモリから呼び出されるか、またはロードされ、学習モディファイア信号で受信されたデータを上書きし得る。学習デバイスは、処理する追加の信号を監視するためにブロック１７０１におけるオペレーションを続行することができる。
【０２１９】
[0235]図１７Ｂは、学習デバイスが学習モディファイアデバイスから信号を受信したことに応答してその学習能力を変更するための一実施形態の方法１７５０を示している。方法１７５０は、方法１７５０が修正された学習能力をいつ利用するかを決定するための追加のオペレーションを含み得ることを除き、図１７Ａを参照しつつ上で説明されている方法１７００に類似するものとしてよい。特に、学習モディファイア信号を受信したことに応答して修正された学習状態に入ると、学習デバイスは、タイマー（またはカウンターなどの他のタイミングメカニズム）を継続的に評価して、その後の学習モディファイア信号が時間期間内に受信されたかどうかを決定し得る。そのようなその後の信号が、タイマーによって定義された時間期間内に受信されないときに、学習デバイスはその学習能力を既定の構成に戻すものとしてよく、したがってもはや修正された学習状態で動作し得ない。
【０２２０】
[0236]一例として、学習デバイスは、付近の学習モディファイアデバイスから受信された第１の学習モディファイア信号に基づき学習能力を修正した（たとえば、学習率を大きくする、など）ことに応答してタイマーを始動し得る。タイマーの時間が経過する前に、学習デバイスは、第２の学習モディファイア信号を受信し、タイマーをリセットし得る。ユーザが、学習モディファイアデバイスを学習モディファイアデバイスのブロードキャスト範囲を超えて学習デバイスから遠ざかる方向に（たとえば、別の部屋または建物の中に）物理的に移動するときに、学習デバイスは、その後学習モディファイア信号を受信せず、最終的に、タイマーの時間が経過する。その結果、学習デバイスは、修正された学習能力を使用することを中断し、既定の学習状態（たとえば、既定の学習率など）に戻り得る。
【０２２１】
[0237]いくつかの実施形態では、タイマーは、すべての学習デバイスに対する標準期間などの、所定の時間期間を測定するために使用され得る。いくつかの実施形態では、この時間期間は、異なる学習デバイスタイプ（たとえば、スマートＴＶ、スマートステレオなど）、製造業者、および／または学習モディファイアデバイスに対して異なり得る。いくつかの実施形態では、この時間期間は、Ｂｌｕｅｔｏｏｔｈを介して送信される学習モディファイア信号に対する第１の時間期間およびＷｉＦｉを介して送信される学習モディファイア信号に対する第２の時間期間などの、学習モディファイア信号に使用される通信チャネルおよび／または通信プロトコルの信頼性に基づくものとしてよい。いくつかの実施形態では、タイマーの時間期間は、学習デバイスにおいて受信された信号内の情報に基づき得る。たとえば、タイマーの既定の（または最大）値（すなわち、タイマーによって表される時間期間）は、付近の学習モディファイアデバイスのブロードキャスト周波数を指示する学習モディファイア信号からのデータに基づき設定され得る。
【０２２２】
[0238]ブロック１７５１において、学習デバイスのプロセッサは、学習デバイスが修正された学習状態で動作を始めるときにタイマーを初期化し得る。タイマーは、最初に、タイムアウトした、または他の何らかの形で非アクティブの設定に設定され、したがって、学習デバイスが既定の学習状態で動作しており、修正された学習状態で動作していないことを指示し得る。以下で説明されていように、タイマーは、学習モディファイアデバイスから学習モディファイア信号を受信したことに応答してアクティブ化され得る。アクティブ化された後、タイムアウトしていないと、タイマーは、学習デバイスによって定期的に調整（たとえば、インクリメント、デクリメント、など）され得る。いくつかの実施形態では、タイマーは、最大値まで値を大きくするように構成され得るか、または代替的に、最小値まで値を小さくするように構成され得る。たとえば、学習デバイスは、クロック信号に基づき、１ミリ秒ごとに、１秒ごとに、などの間隔でタイマーの値をインクリメント（すなわち、カウントアップ）またはデクリメント（すなわち、カウントダウン）することができる。
【０２２３】
[0239]いくつかの実施形態では、学習デバイスは、異なる学習修正に各々関連付けられている複数のタイマーを利用し得る。たとえば、学習デバイスは、第１のタイマーを使用して、学習デバイスが第１のリフレックスに関係する修正された学習状態で動作しているかどうかを指示し、第２のタイマーを使用して、学習デバイスが第２のリフレックスに関係する修正された学習状態で動作しているかどうかを指示し得る。
【０２２４】
[0240]決定ブロック１７５２において、学習デバイスのプロセッサは、タイマーの時間が経過したかどうかを決定し得る。たとえば、タイマーが、最小値までカウントダウンするように構成されているときに、学習デバイスは、タイマーの現在値が最小値以下（たとえば、ゼロ）であるときにタイマーの時間が経過したと決定し得る。別の例として、タイマーが、最大値までカウントアップするように構成されているときに、学習デバイスは、タイマーの現在値が最大値以上であるときにタイマーの時間が経過したと決定し得る。第１の学習モディファイア信号が受信され、学習デバイスが修正された学習状態に入るまで、学習デバイスは、常に、まだアクティブ化されていないのでタイマーがタイムアウトしていると決定し得る。
【０２２５】
[0241]タイマーの時間が経過したと決定したことに応答して（すなわち、決定ブロック１７５２＝「はい」）、学習デバイスのプロセッサは、上で説明されているようにブロック１７０８で既定の学習状態で動作するように学習デバイスの学習能力をリセットし得る。いくつかの実施形態では、ブロック１７０８におけるオペレーションは、学習デバイスが学習能力を修正したときのみ実行され得る。言い換えれば、ブロック１７０８におけるオペレーションは、タイマーがアクティブ化されていないときに過剰であり得、したがってスキップされ得る。たとえば、学習デバイスが、方法１７５０の動作可能なループの前の繰返しにおいてブロック１７０８におけるオペレーションをすでに実行しており、その後学習モディファイア信号を受信していない（すなわち、修正された学習状態に入っていない）ときに、計算されたトリガー重みに対して使用された変数の値は、すでに、既定の値に設定されており、したがって再びリセットされる必要はないものとしてよい。
【０２２６】
[0242]タイマーの時間が経過していないと決定したことに応答して（すなわち、決定ブロック１７５２＝「いいえ」）、またはブロック１７０８におけるオペレーションがすでに実行されていると決定されたことに応答して、学習デバイスのプロセッサは、決定ブロック１７５４で信号が受信されたかどうかを決定し得る。たとえば、学習デバイスは、付近のデバイスからの新しい短距離ワイヤレスメッセージ（たとえば、Ｂｌｕｅｔｏｏｔｈパケット）が受信されたかどうかを検出するために着信メッセージバッファを監視し得る。信号が受信されていないと決定したことに応答して（すなわち、決定ブロック１７５４＝「いいえ」）、学習モディファイアデバイスは、決定ブロック１７５２においてタイマーを評価するためのオペレーションを続行することができる。
【０２２７】
[0243]信号が受信されていると決定したことに応答して（すなわち、決定ブロック１７５４＝「はい」）、学習デバイスのプロセッサは、ブロック１７５６において受信された信号を評価して受信された信号のソースおよび／またはメッセージタイプを識別し得る。特に、学習デバイスは、図１６を参照しつつ上での説明されている様々なデータ要素を識別するために受信された信号内に表されているデータを評価し得る。たとえば、学習デバイスは、信号を送信したデバイスの識別情報（たとえば、デバイス識別子またはＩＤなど）、信号のタイプ（たとえば、イベントレポートメッセージ、学習モディファイア信号、など）、さらには他の記述属性（たとえば、タイムスタンプ情報、フォーマッティング、関係するプロトコル、バージョン、など）を決定するために受信された信号内のデータを復号し、構文解析し、読み出し、および／または分析することができる。いくつかの実施形態では、学習デバイスは、信号内に含まれるヘッダ情報またはメタデータに基づきソースおよび／またはメッセージタイプを識別し得る。
【０２２８】
[0244]上で説明されているように、決定ブロック１７０２において、学習デバイスのプロセッサは、受信された信号が学習モディファイア信号であるかどうかを決定し得る。特に、学習デバイスは、ブロック１７５６におけるオペレーションを参照しつつ上で説明されているように受信された信号（たとえば、識別されたソースおよび／またはメッセージタイプ）の評価に基づきこの決定を行うことができる。たとえば、学習デバイスは、受信された信号からのデバイス識別子と承認された学習モディファイアデバイスに関連付けられている記憶されている識別子とのマッチングを行ったことに応答して受信された信号が学習モディファイア信号であると決定し得る。別の例として、学習デバイスは、学習モディファイア信号に対応する受信された信号内のコードまたはディスクリプタ（たとえば、学習モディファイアデバイスに事前に関連付けられている信号タイプコード、など）を識別することに基づき受信された信号が学習モディファイア信号であると決定し得る。いくつかの実施形態では、学習デバイスは、利得に対する乗数値の存在など、学習修正を指示するコマンド、コード、情報などを識別したことに応答して受信された信号が学習モディファイア信号であると決定し得る。たとえば、信号は、学習モードを無効化もしくは有効化することおよび／または学習デバイス上に記憶されているリフレックスのトリガー重みを計算する際に使用される変数の値を変更することに関係するスクリプトまたはコマンドを含むときに学習モディファイア信号であると決定され得る。
【０２２９】
[0245]受信された信号が学習モディファイア信号でないと決定したことに応答して（すなわち、決定ブロック１７０２＝「いいえ」）、学習デバイスのプロセッサは、ブロック１７５８において受信された信号をイベントレポートメッセージとして処理し得る。言い換えれば、学習モディファイアデバイスは、上で説明されているように図１１の方法１１００におけるオペレーションを実行することによって受信された信号を処理することができる。たとえば、学習デバイスは、イベントを取得し、受信された信号に基づき取得されたイベントに基づくパターンを生成し得る。学習モディファイアデバイスは、決定ブロック１７５２においてタイマーがタイムアウトしているかどうかを決定するためのオペレーションを続行することができる。いくつかの実施形態では、学習デバイスは、受信された信号を、学習モディファイア信号でないと決定したことに応答して（すなわち、決定ブロック１７０２＝「いいえ」）無視するか、または他の何らかの形で破棄し得る。
【０２３０】
[0246]受信された信号が学習モディファイア信号であると決定したことに応答して（すなわち、決定ブロック１７０２＝「はい」）、学習デバイスのプロセッサは、オプションの決定ブロック１７６０において受信された学習モディファイア信号が学習デバイスに適用可能であるかどうかを決定し得る。オプションの決定ブロック１７６０における決定は、多くの場合に学習モディファイア信号は学習デバイスが修正された学習状態に入ることを引き起こし得るのでオプションであり得る。しかしながら、受信された学習モディファイア信号とともに含まれる情報に応じて、学習デバイスは、受信された学習モディファイア信号が関連する信号でないと決定し得る。たとえば、受信された学習モディファイア信号に指示されているデバイスタイプ（たとえば、スマートＴＶ、スマートステレオなど）に基づき、学習デバイスは、学習デバイスが指示されているデバイスタイプのうちの１つでない（たとえば、学習デバイスがスマートランプであり得る、など）のでその信号が適用可能でないと決定し得る。別の例として、受信された学習モディファイア信号内の時間またはフォーマッティング情報に基づき、学習デバイスは、時間が信号を評価するための学習デバイスの時間ウィンドウ内になく、および／またはそのフォーマットが学習デバイスと互換性がないので信号が適用可能でないと決定し得る。別の例として、受信された学習モディファイア信号は、学習デバイス上に記憶されているデータとマッチしない機密コードまたは鍵（たとえば、信頼されたコード）を含むときに適用可能でないものとしてよい。
【０２３１】
[0247]いくつかの実施形態では、学習デバイスは、デバイスが修正された学習状態に入ることができないときに受信された学習モディファイア信号は適応可能でないと決定し得る。たとえば、学習デバイスの学習モードに関連付けられている物理的設定（たとえば、トグル、スイッチ、レバーなど）を有する学習デバイスは、その物理的設定が「オフ」に設定されているときに修正された学習状態に入ることができないものとしてよい。
【０２３２】
[0248]受信された学習モディファイア信号が、学習デバイスに適用可能でないと決定したことに応答して（すなわち、オプションの決定ブロック１７６０＝「いいえ」）、学習モディファイアデバイスは、決定ブロック１７０２においてタイマーを評価するためのオペレーションを続行することができる。受信された学習モディファイア信号が、学習デバイスに適用可能であると決定したことに応答して（すなわち、オプションの決定ブロック１７６０＝「はい」）、学習デバイスのプロセッサは、上で説明されているように受信された信号に基づきブロック１７０４において修正された学習状態で動作するように学習デバイスの学習能力のうちの１つまたは複数を修正し得る。
【０２３３】
[0249]ブロック１７６２において、学習デバイスのプロセッサは、修正された学習状態に対するタイマーをアクティブ化またはリセットし得る。たとえば、学習デバイスは、現在のタイマー値を最大値に設定することによって継続的にカウントダウンするように構成されるタイマーメカニズムをアクティブ化することができる。タイマーが方法１７５０の前の繰返しに基づきすでにアクティブ化されており、まだタイムアウトしていないときに、学習デバイスは、タイマーが時間の経過とともにカウントダウンまたはカウントアップするように構成されているかどうかに応じて、タイマーの現在値を最大値または最小値にリセットし得る。たとえば、タイマーが、継続的にカウントダウンするように構成され、アクティブ化され、まだタイムアウトしていない（たとえば、タイマー値がゼロ値に達していない、など）ときに、学習デバイスは、タイマーの現在値を最大値にリセットし得る。別の例として、タイマーが、継続的にカウントアップするように構成され、アクティブ化され、まだタイムアウトしていない（たとえば、タイマー値が最大値または天井値に達していない、など）ときに、学習デバイスは、タイマーの現在値を最低値（たとえば、０）にリセットし得る。学習モディファイアデバイスは、決定ブロック１７０２においてタイマーを評価するためのオペレーションを続行することができる。
【０２３４】
[0250]いくつかの実施形態では、学習デバイスは、受信された学習モディファイア信号のデータに基づきタイマーに対するパラメータを設定し得る。特に、学習デバイスは、受信された学習モディファイア信号内に含まれる送信頻度データに基づきタイマーの最大値と最小値とを記憶することができる。言い換えれば、受信された学習モディファイア信号を送信した学習モディファイアデバイスは、次の学習モディファイア信号をいつ期待すべきかを学習デバイスにティーチングすることができる。最大タイマー値は、送信頻度に設定され、最小タイマー値は、ゼロ値であってよい。たとえば、第１の学習モディファイア信号で指示されている送信頻度が、数秒であるときに、学習デバイスは最大タイマー値をその秒数として、学習デバイスが第１の学習モディファイア信号を受信してからその秒数以内に第２の学習モディファイア信号を受信しない場合にタイマーの時間が経過するように設定することができ、学習デバイスは、既定の学習状態に戻り得る。
【０２３５】
[0251]図１８Ａ〜図１８Ｂは、学習デバイスが学習モディファイアデバイスから信号を受信したことに応答して学習モードを有効化または無効化するための実施形態の方法１８００、１８５０を示している。方法１８００、１８５０は、上で説明されている方法１７００、１７５０に類似しており、特に、図１８Ａ〜図１８Ｂのブロック１７０２および１７５１〜１７６２におけるオペレーションは、図１７Ａ〜図１７Ｂを参照しつつ上で説明されているものに類似するものとしてよい。しかしながら、方法１８００、１８５０は、学習デバイスによる学習を除外するか、または許す動作モードをアクティブ化／非アクティブ化するための特定のオペレーションも含み得る。特に、学習デバイスは、学習デバイスが様々なトリガーと学習デバイスが実行し得るアクションとの間の新しい関連付けを学習する（すなわち、新しいリフレックスを生成する）ことを可能にし得る学習モードで動作するように構成され得る。そのような学習モードがアクティブ化または有効化されるときに、学習で、即座に実行され得るか、または即座に実行され得ない新しい関連付けを作成して記憶することができる。たとえば、新しいリフレックスは、トリガー重みをトリガー重み閾値より高く上げるのに十分な報酬パターンに遭遇するまで学習デバイスが関係するアクションを実行し得ないようにトリガー重み閾値よりも低い初期トリガー重みを有することができる。逆に、そのような学習モードが無効化または非アクティブ化されるときに、学習デバイスは、新しい関連付けを作成することができないものとしてよい（すなわち、新しいリフレックスが作成され記憶されることがあり得ない）。
【０２３６】
[0252]いくつかの実施形態では、学習モードは、学習デバイスがリフレックスのトリガー重みを調整し得るかどうかも制御することができる。たとえば、アクティブな、または有効化された学習モードで動作しているときに、学習デバイスは、関係する報酬パターンを受信したことに応答してリフレックスのトリガー重みを大きくし、および／または関係する補正パターンを受信したことに応答してトリガー重みを小さくすることができる。しかしながら、学習モードが無効化または非アクティブ化されるときに、学習デバイスは、報酬パターンまたは補正パターンを受信したことに関係なく、リフレックスのトリガー重みを変更することができない場合がある。いくつかの実施形態では、学習モードの設定（たとえば、有効化または無効化）は、学習デバイスが新しいリフレックスを作成することができるかどうかと学習デバイスが既存のリフレックスのトリガー重みを調整することができるかどうかの両方を指示し得る。
【０２３７】
[0253]図１８Ａは、付近の学習モディファイアデバイスから学習モディファイア信号を受信したときのみ学習する（すなわち、学習モードを有効化する）ことができるように学習デバイスを構成するために実行され得る。言い換えれば、既定の設定により、学習デバイスは、新しいリフレックスを学習し得ず、および／または既存のリフレックスのトリガー重みを調整し得ないが、ただ単に、すでに学習されているリフレックスおよび／またはすでに確立されているトリガー重みを使用することだけができる。たとえば、学習モディファイアデバイスが部屋の中に持ち込まれたときに、部屋の中にあるステレオ学習デバイスも、学習モードを有効化するように構成され、したがってステレオ学習デバイスがスマート壁面スイッチの「オン」イベント信号を特定のラジオ局に同調することに関連付けることを学習することが可能になり得る。しかしながら、学習モディファイアデバイスが、部屋の外に移動されると、ステレオ学習デバイスは、スマートフロアランプの「オン」イベント信号をステレオの音量を上げることに関連付けることを学習することができない場合がある。別の例として、学習モディファイアデバイスが部屋の中に持ち込まれたときに、ステレオ学習デバイスは、報酬信号（たとえば、ユーザがステレオの「ｒｅｗａｒｄ」ボタンを押したことを指示する信号、など）を受信したことに応答してリフレックスのトリガー重みを大きくし得る。しかしながら、学習モディファイアデバイスが部屋の外に移動されたときには、ステレオ学習デバイスは、報酬信号を受信したことに応答してリフレックスのトリガー重みを大きくし得ない。
【０２３８】
[0254]図１８Ａにおいて、ブロック１７０２、１７５１〜１７６２のオペレーションは、図１７Ａ〜図１７Ｂを参照しつつ上で説明されているものに類似するものとしてよい。タイマーの時間が経過したと決定したことに応答して（すなわち、決定ブロック１７５２＝「はい」）、ブロック１８０２において、学習デバイスのプロセッサは、学習デバイス上に記憶されているシステム変数、フラグ、または他の情報を設定することなどによって、学習モードを無効化することができる。たとえば、学習デバイスは、学習デバイスが既定の学習状態にあることを指示するフラグを設定することができ、したがって、新しいリフレックスは生成され得ず、および／または記憶されているリフレックスのトリガー重みは、調整され得ない。いくつかの実施形態では、方法１８００の前の繰返しに基づき学習モードがすでに無効化されているときに、学習デバイスは、ブロック１８０２のこのオペレーションを不要なものとしてスキップし得る。学習デバイスは、ブロック１８０２におけるオペレーションを実行したことに応答して、またはタイマーの時間が経過していないと決定したことに応答して（すなわち、決定ブロック１７５２＝「いいえ」）決定ブロック１７５４におけるオペレーションを実行し得る。
【０２３９】
[0255]受信された学習モディファイア信号が学習デバイスに適用可能であると決定したことに応答して（すなわち、オプションの決定ブロック１７６０＝「はい」）、学習デバイスは、ブロック１８０４において学習デバイス上に記憶されているシステム変数、フラグ、または他の情報を設定することなどによって、学習モードを有効化することができる。たとえば、学習デバイスは、学習デバイスが修正された学習状態にあることを指示するフラグを設定することができ、したがって、新しいリフレックスが生成され、および／または記憶されているリフレックスのトリガー重みが調整され得る。学習モードを有効化したことに応答して、方法１８００は、修正された学習状態に対してタイマーをアクティブ化またはリセットするためにブロック１７６２におけるオペレーションを続行することができる。
【０２４０】
[0256]図１８Ｂに示されている方法は、学習デバイスが付近の学習モディファイアデバイスから学習モディファイア信号を受信したときのみ学習を行うことができない（すなわち、学習モードを無効化する）ように学習デバイスを構成するために方法１８５０を実行できることを除き、図１８Ａの方法１８００に類似しているものとしてよい。言い換えれば、既定の設定により、学習デバイスは、新しいリフレックスを学習し、および／またはすでに学習されているリフレックスのトリガー重みを変更することができるものとしてよい。学習デバイスが付近の学習モディファイアデバイスから学習モディファイア信号を受信しているときのみ、学習デバイスは学習することを無効化され得る。
【０２４１】
[0257]方法１８５０において、タイマーの時間が経過したと決定したことに応答して（すなわち、決定ブロック１７５２＝「はい」）、学習デバイスのプロセッサは、プロット１８０４において学習モードを有効化することができ、また決定ブロック１７５４におけるオペレーションを実行し得る。受信された学習モディファイア信号が、学習デバイスに適用可能であると決定したことに応答して（すなわち、オプションの決定ブロック１７６０＝「はい」）、学習デバイスは、ブロック１８０２において学習モードを無効化することができ、ブロック１７６２において修正された学習状態についてタイマーをアクティブ化またはリセットすることができる。
【０２４２】
[0258]図１９は、学習デバイスが学習モディファイアデバイスから信号を受信したことに応答してトリガー重みを計算する際に使用される変数値を調整することによってその学習率を変更するための一実施形態の方法１９００を示している。方法１９００は、上で説明されている方法１７００、１７５０に類似しており、特に、図１９のブロック１７０２および１７５１〜１７６２におけるオペレーションは、図１７Ａ〜図１７Ｂを参照しつつ上で説明されているものに類似するものとしてよい。しかしながら、方法１９００は、リフレックスのトリガー重みに対する式または計算で使用される変数の値を調整するための特定のオペレーションを含み得る。特に、タイマーの時間が経過したと決定したことに応答して（すなわち、決定ブロック１７５２＝「はい」）、学習デバイスのプロセッサは、ブロック１９０２でリフレックスのトリガー重みを計算するために使用された変数の値を既定の値に戻して調整し得る。言い換えれば、トリガー重み（たとえば、利得値、など）を計算するために使用された情報（たとえば、変数、構成、設定など）が、学習デバイスが学習モディファイア信号を受信したことに応答して修正された学習状態に入ったことにより調整されている場合、学習デバイスは、調整された情報を既定の条件（たとえば、内容、値、設定、など）に戻すことができる。たとえば、学習デバイスは、学習率を調整するため式の中に加えられた乗数を論理否定する、取り除く、ゼロ設定する、または他の何らかの形でリセットすることができる。様々な実施形態において、既定値は、上で説明されているように式の中で使用され得る既定または元の係数、変数値、および他のデータであってよい。学習デバイスは、ブロック１９０２におけるオペレーションを実行したことに応答して、またはタイマーの時間が経過していないと決定したことに応答して（すなわち、決定ブロック１７５２＝「いいえ」）決定ブロック１７５４におけるオペレーションを実行し得る。
【０２４３】
[0259]受信された学習モディファイア信号が、学習デバイスに適用可能であると決定したことに応答して（すなわち、オプションの決定ブロック１７６０＝「はい」）、学習デバイスは、修正された学習状態に入ることができる。したがって、ブロック１９０４において、学習デバイスのプロセッサは、受信された信号に基づきリフレックスのトリガー重みを計算するために使用された変数の値を調整することができる。たとえば、学習率モディファイア値（たとえば、正の乗数、負の乗数、加数など）のうちの１つを指示するデータに基づき、学習デバイスは、トリガー重みを計算するために変数を式に加え、および／または学習デバイスがトリガー重みを異なる仕方で計算することを引き起こすために式のすでに存在している変数の値を変更することができる。学習デバイスが様々なリフレックスに対するトリガー重みを計算する仕方に対するそのような変更は、様々なリフレックスの学習率を変え得る。たとえば、いくつかの値を大きくすることで、学習デバイスがトリガーに関連付けられているアクションの学習を実行するスピードを大きくすることができる。別の例として、他の値を小さくすることで、学習デバイスがトリガーに関連付けられているアクションの学習を実行するスピードを遅くすることができる。
【０２４４】
[0260]いくつかの実施形態では、受信された学習モディファイア信号に基づき、学習デバイスは、いくつかのタイプの計算のみが調整され得るように調整を行うことができる。たとえば、受信された学習モディファイア信号は、報酬信号および補正信号のみが異なる形で使用されることを指示する学習率モディファイアタイプを含み、これは学習デバイスがトリガー重みに報酬を付けるか、または補正するために計算を調整することを引き起こし得る。変数の値を調整することに応答して、方法１９００は、修正された学習状態に対してタイマーをアクティブ化またはリセットするためにブロック１７６２におけるオペレーションを続行することができる。
【０２４５】
[0261]上記の方法の説明およびプロセスフロー図は、単に説明のための例として提供され、様々な態様のステップを提示された順序で実行しなければならないことを要求または暗示するものではない。当業者によって諒解されるように、上記の態様におけるステップの順序は、いかなる順序でも実行され得る。「その後」、「次いで」、「次に」などの用語は、それらのステップの順序を限定することが意図されず、これらの用語は、単に、読者をこれらの方法の説明に導くためである。さらに、たとえば、冠詞「ａ」、「ａｎ」または「ｔｈｅ」を使用する単数形の請求項の要素への言及は、その要素を単数形に限定するものと解釈されるべきではない。
【０２４６】
[0262]本明細書で開示される態様に関して説明される、様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装され得る。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップが、概してそれらの機能に関して上述されている。このような機能性がハードウェアとして実施されるか、またはソフトウェアとして実施されるかは、特定の応用およびシステム全体に課される設計の制約によって決まる。当業者は、各具体的なアプリケーションについて様々な方法で説明された機能性を実装することができるが、そのような実装の決定は、本発明の範囲からの逸脱を引き起こすと解釈されるべきではない。
【０２４７】
[0263]スマートボックス１０３などのハードウェアは、本明細書で開示されている態様に関して説明されている様々例示的な論理回路、論理ブロック、モジュール、および回路を実装するために使用され、汎用プロセッサ、デジタルシグナルプロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または他のプログラム可能論理デバイス、ディスクリートゲートまたはトランジスタロジック、ディスクリートハードウェアコンポーネント、または本明細書で説明されている機能を実行するように設計されているこれらの任意の組合せにより実装または実行され得る。汎用プロセッサはマルチプロセッサであり得るが、代替として、プロセッサは任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサは、コンピューティングデバイスの組合せ、たとえば、ＤＳＰとマルチプロセッサとの組合せ、複数のマルチプロセッサ、ＤＳＰコアと連携する１つもしくは複数のマルチプロセッサ、または任意の他のそのような構成としても実装され得る。代替的に、いくつかのステップまたは方法は、所与の機能に固有の回路によって実施できる。
【０２４８】
[0264]１つまたは複数の例示的な態様では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装された場合、これらの機能は、非一時的コンピュータ可読記憶媒体、非一時的コンピュータ可読媒体、または非一時的プロセッサ可読記憶媒体上に１つまたは複数の命令もしくはコードとして記憶され得る。本明細書で開示されている方法またはアルゴリズムのステップは、非一時的コンピュータ可読媒体またはプロセッサ可読記憶媒体上に存在し得る、プロセッサ実行可能ソフトウェアモジュールで具現化され得る。非一時的コンピュータ可読記憶媒体または非一時的プロセッサ可読記憶媒体は、コンピュータまたはプロセッサによってアクセス可能な何らかの記憶媒体であってよい。限定ではなく、例として、そのような非一時的コンピュータ可読媒体または非一時的プロセッサ可読媒体は、所望されるプログラムコードを命令またはデータ構造の形で記憶するために使用可能であり、コンピュータによってアクセス可能なＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＦＬＡＳＨメモリ、ＣＤ−ＲＯＭもしくは他の光ディスク記憶装置、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または何らかの他の媒体を含むことが可能である。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびブルーレイ（登録商標）ディスク（disc）を含み、ディスク（disk）は、通常、データを磁気的に再生し、一方、ディスク（disc）は、データをレーザーで光学的に再生する。上記の組合せも、非一時的コンピュータ可読媒体および非一時的プロセッサ可読媒体の範囲に含まれる。加えて、方法またはアルゴリズムの動作は、コンピュータプログラム製品内に組み込むことが可能な１つのコードおよび／もしくは命令、あるいはコードおよび／もしくは命令の任意の組合せまたはセットとして、非一時的プロセッサ可読媒体上および／または非一時的コンピュータ可読媒体上に存在し得る。
【０２４９】
[0265]開示した実施形態の上記の説明は、当業者が本発明を製作または使用できるように提供したものである。これらの実施形態への様々な修正は当業者には容易に明らかであり、本明細書で定義された一般原理は、本発明の趣旨または範囲から逸脱することなく他の実施形態に適用され得る。したがって、本発明は、本明細書で示された実施形態に限定されるものではなく、以下の特許請求の範囲ならびに本明細書で開示される原理および新規の特徴に合致する最も広い範囲を与えられるべきである。
【図１Ａ】
2016524226.tif 000010
【図１Ｂ】
2016524226.tif 000011
【図１Ｃ】
2016524226.tif 000012
【図１Ｄ】
2016524226.tif 000013
【図２】
2016524226.tif 000014
【図３Ａ】
2016524226.tif 000015
【図３Ｂ】
2016524226.tif 000016
【図３Ｃ】
2016524226.tif 000017
【図３Ｄ】
2016524226.tif 000018
【図３Ｅ】
2016524226.tif 000019
【図３Ｆ】
2016524226.tif 000020
【図３Ｇ】
2016524226.tif 000021
【図３Ｈ】
2016524226.tif 000022
【図４】
2016524226.tif 000023
【図５】
2016524226.tif 000024
【図６】
2016524226.tif 000025
【図７】
2016524226.tif 000026
【図８】
2016524226.tif 000027
【図９】
2016524226.tif 000028
【図１０】
2016524226.tif 000029
【図１１】
2016524226.tif 000030
【図１２】
2016524226.tif 000031
【図１３Ａ】
2016524226.tif 000032
【図１３Ｂ】
2016524226.tif 000033
【図１３Ｃ】
2016524226.tif 000034
【図１３Ｄ】
2016524226.tif 000035
【図１３Ｅ】
2016524226.tif 000036
【図１３Ｆ】
2016524226.tif 000037
【図１４Ａ】
2016524226.tif 000038
【図１４Ｂ】
2016524226.tif 000039
【図１４Ｃ】
2016524226.tif 000040
【図１４Ｄ】
2016524226.tif 000041
【図１５Ａ】
2016524226.tif 000042
【図１５Ｂ】
2016524226.tif 000043
【図１５Ｃ】
2016524226.tif 000044
【図１５Ｄ】
2016524226.tif 000045
【図１６】
2016524226.tif 000046
【図１７Ａ】
2016524226.tif 000047
【図１７Ｂ】
2016524226.tif 000048
【図１８Ａ】
2016524226.tif 000049
【図１８Ｂ】
2016524226.tif 000050
【図１９】
2016524226.tif 000051
【手続補正書】
【提出日】平成28年2月10日(2016.2.10)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
学習デバイスの非集中システム内の学習能力を修正するための方法であって、
学習デバイスの前記非集中システム内の学習デバイスで、付近のデバイスから信号を受信することと、
前記学習デバイスにおいて、前記受信された信号が前記受信された信号内のデータに基づき学習モディファイア信号であるかどうかを決定することと、
前記学習モディファイア信号を受信したことに応答して前記学習デバイスの１つまたは複数の学習能力を修正することとを備え、前記修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される値を調整することを備え、前記リフレックスは、トリガーと前記学習デバイスが実行するように構成されているアクションとの間の少なくとも相関または関係を指示する情報を記憶する、方法。
【請求項２】
前記学習デバイスにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することと、
前記その後の学習モディファイア信号が受信されていないと決定したことに応答して前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることをさらに備える請求項１に記載の方法。
【請求項３】
前記学習デバイスの前記１つまたは複数の学習能力を修正することは、前記学習デバイスの学習モードを有効化することを備え、
前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記学習デバイスの前記学習モードを無効化することを備える請求項２に記載の方法。
【請求項４】
前記学習デバイスの前記１つまたは複数の学習能力を修正することは、前記学習デバイスの学習モードを無効化することを備え、
前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記学習デバイスの前記学習モードを有効化することを備える請求項２に記載の方法。
【請求項５】
前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記リフレックスの前記トリガー重みを計算するために使用される前記値を既定値に調整することを備える請求項２に記載の方法。
【請求項６】
前記学習デバイス内のタイマーを初期化することと、
前記受信された信号が前記学習モディファイア信号であると決定したことおよび前記その後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットすることとをさらに備え、
ここにおいて、前記学習デバイスにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することは、前記学習デバイスにおいて、前記タイマーが切れる前に前記その後の学習モディファイア信号が受信されたかどうかを決定することを備える請求項２に記載の方法。
【請求項７】
前記タイマーは、前記学習モディファイア信号からのデータに基づき設定される請求項６に記載の方法。
【請求項８】
前記学習モディファイア信号は、前記学習デバイスが学習率を大きくするか、または小さくするべきかを指示する学習率モディファイア値、前記学習モディファイア信号の影響を受ける学習デバイスのタイプを指示するデバイスタイプ、前記学習デバイスが学習モードを有効化するか、または無効化するべきかを指示する学習モードアクティブ設定、学習モディファイア信号の影響を受ける計算の特定のタイプを指示する学習率モディファイアタイプ、および前記付近のデバイスが前記学習モディファイア信号をどれだけ頻繁に送信するかを指示する送信頻度のうちの１つまたは複数を含む請求項１に記載の方法。
【請求項９】
学習デバイスの非集中システム内の付近のデバイスから信号を受信するための手段と、
前記受信された信号が前記受信された信号内のデータに基づき学習モディファイア信号であるかどうかを決定するための手段と、
前記学習モディファイア信号を受信したことに応答してコンピューティングデバイスの１つまたは複数の学習能力を修正するための手段とを備え、前記修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される値を調整することを備え、前記リフレックスは、トリガーと前記学習デバイスが実行するように構成されているアクションとの間の少なくとも相関または関係を指示する情報を記憶する、コンピューティングデバイス。
【請求項１０】
その後の学習モディファイア信号が受信されたかどうかを決定するための手段と、
前記その後の学習モディファイア信号が受信されていないと決定したことに応答して前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段とをさらに備える請求項９に記載のコンピューティングデバイス。
【請求項１１】
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正するための手段は、前記コンピューティングデバイスの学習モードを有効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段は、前記コンピューティングデバイスの前記学習モードを無効化することを備える請求項１０に記載のコンピューティングデバイス。
【請求項１２】
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正するための手段は、前記コンピューティングデバイスの学習モードを無効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段は、前記コンピューティングデバイスの前記学習モードを有効化することを備える請求項１０に記載のコンピューティングデバイス。
【請求項１３】
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段は、前記リフレックスの前記トリガー重みを計算するために使用される前記値を既定値に調整することを備える請求項１０に記載のコンピューティングデバイス。
【請求項１４】
タイマーを初期化するための手段と、
前記受信された信号が前記学習モディファイア信号であると決定したことおよび前記その後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットするための手段とをさらに備え、
ここにおいて、その後の学習モディファイア信号が受信されたかどうかを決定するための手段は、前記タイマーが切れる前に前記その後の学習モディファイア信号が受信されたかどうかを決定するための手段を備える請求項１０に記載のコンピューティングデバイス。
【請求項１５】
前記タイマーは、前記学習モディファイア信号からのデータに基づき設定される請求項１４に記載のコンピューティングデバイス。
【請求項１６】
前記学習モディファイア信号は、前記コンピューティングデバイスが学習率を大きくするか、または小さくするべきかを指示する学習率モディファイア値、前記学習モディファイア信号の影響を受ける学習デバイスのタイプを指示するデバイスタイプ、前記コンピューティングデバイスが学習モードを有効化するか、または無効化するべきかを指示する学習モードアクティブ設定、学習モディファイア信号の影響を受ける計算の特定のタイプを指示する学習率モディファイアタイプ、および前記付近のデバイスが前記学習モディファイア信号をどれだけ頻繁に送信するかを指示する送信頻度のうちの１つまたは複数を含む請求項９に記載のコンピューティングデバイス。
【請求項１７】
プロセッサ実行可能命令とともに、
学習デバイスの非集中システム内の付近のデバイスから信号を受信することと、
前記受信された信号が前記受信された信号内のデータに基づき学習モディファイア信号であるかどうかを決定することと、
前記学習モディファイア信号を受信したことに応答してコンピューティングデバイスの１つまたは複数の学習能力を修正することとを備えるオペレーションを実行するように構成されたプロセッサを備え、前記修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される値を調整することを備え、前記リフレックスは、トリガーと前記学習デバイスが実行するように構成されているアクションとの間の少なくとも相関または関係を指示する情報を記憶する、コンピューティングデバイス。
【請求項１８】
前記プロセッサは、プロセッサ実行可能命令とともに
その後の学習モディファイア信号が受信されたかどうかを決定することと、
前記その後の学習モディファイア信号が受信されていないと決定したことに応答して前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることとをさらに備えるオペレーションを実行するように構成される請求項１７に記載のコンピューティングデバイス。
【請求項１９】
前記プロセッサは、プロセッサ実行可能命令とともに
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを有効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを無効化することを備えるようなオペレーションを実行するように構成される請求項１８に記載のコンピューティングデバイス。
【請求項２０】
前記プロセッサは、プロセッサ実行可能命令とともに
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを無効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを有効化することを備えるようなオペレーションを実行するように構成される請求項１８に記載のコンピューティングデバイス。
【請求項２１】
前記プロセッサは、プロセッサ実行可能命令とともに
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記リフレックスの前記トリガー重みを計算するために使用される前記値を既定値に調整することを備えるようなオペレーションを実行するように構成される請求項１８に記載のコンピューティングデバイス。
【請求項２２】
タイマーをさらに備え、ここにおいて、前記プロセッサは、プロセッサ実行可能命令とともに、
前記タイマーを初期化することと、
前記受信された信号が前記学習モディファイア信号であると決定したことおよび前記その後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットすることとをさらに備えるオペレーションを実行するように構成され、
ここにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することは、前記タイマーが切れる前に前記その後の学習モディファイア信号が受信されたかどうかを決定することを備える請求項１８に記載のコンピューティングデバイス。
【請求項２３】
前記タイマーは、前記学習モディファイア信号からのデータに基づき設定される請求項２２に記載のコンピューティングデバイス。
【請求項２４】
前記学習モディファイア信号は、前記コンピューティングデバイスが学習率を大きくするか、または小さくするべきかを指示する学習率モディファイア値、前記学習モディファイア信号の影響を受ける学習デバイスのタイプを指示するデバイスタイプ、前記コンピューティングデバイスが学習モードを有効化するか、または無効化するべきかを指示する学習モードアクティブ設定、学習モディファイア信号の影響を受ける計算の特定のタイプを指示する学習率モディファイアタイプ、および前記付近のデバイスが前記学習モディファイア信号をどれだけ頻繁に送信するかを指示する送信頻度のうちの１つまたは複数を含む請求項１７に記載のコンピューティングデバイス。
【請求項２５】
プロセッサ実行可能命令が記憶され、前記プロセッサ実行可能命令はコンピューティングデバイスのプロセッサが
学習デバイスの非集中システム内の付近のデバイスから信号を受信することと、
前記受信された信号が前記受信された信号内のデータに基づき学習モディファイア信号であるかどうかを決定することと、
前記学習モディファイア信号を受信したことに応答して前記コンピューティングデバイスの１つまたは複数の学習能力を修正することとを備えるオペレーションを実行することを引き起こすように構成され、前記修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される値を調整することを備え、前記リフレックスは、トリガーと前記学習デバイスが実行するように構成されているアクションとの間の少なくとも相関または関係を指示する情報を記憶する、非一時的プロセッサ可読記憶媒体。
【請求項２６】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
その後の学習モディファイア信号が受信されたかどうかを決定することと、
前記その後の学習モディファイア信号が受信されていないと決定したことに応答して前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることとをさらに備えるオペレーションを実行することを引き起こすように構成される請求項２５に記載の非一時的プロセッサ可読記憶媒体。
【請求項２７】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
前記コンピューティングの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを有効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを無効化することを備えるようなオペレーションを実行することを引き起こすように構成される請求項２６に記載の非一時的プロセッサ可読記憶媒体。
【請求項２８】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを無効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを有効化することを備えるようなオペレーションを実行することを引き起こすように構成される請求項２６に記載の非一時的プロセッサ可読記憶媒体。
【請求項２９】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記リフレックスの前記トリガー重みを計算するために使用される前記値を既定値に調整することを備えるようなオペレーションを実行することを引き起こすように構成される請求項２６に記載の非一時的プロセッサ可読記憶媒体。
【請求項３０】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
タイマーを初期化することと、
前記受信された信号が前記学習モディファイア信号であると決定したことおよび前記その後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットすることとをさらに備えるオペレーションを実行することを引き起こすように構成され、
ここにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することは、前記タイマーが切れる前に前記その後の学習モディファイア信号が受信されたかどうかを決定することを備える請求項２６に記載の非一時的プロセッサ可読記憶媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０２４９
【補正方法】変更
【補正の内容】
【０２４９】
[0265]開示した実施形態の上記の説明は、当業者が本発明を製作または使用できるように提供したものである。これらの実施形態への様々な修正は当業者には容易に明らかであり、本明細書で定義された一般原理は、本発明の趣旨または範囲から逸脱することなく他の実施形態に適用され得る。したがって、本発明は、本明細書で示された実施形態に限定されるものではなく、以下の特許請求の範囲ならびに本明細書で開示される原理および新規の特徴に合致する最も広い範囲を与えられるべきである。
以下に本願発明の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
学習デバイスの非集中システム内の学習能力を修正するための、
学習デバイスで、付近のデバイスから信号を受信することと、
前記学習デバイスにおいて、前記受信された信号が前記受信された信号内のデータに基づき学習モディファイア信号であるかどうかを決定することと、
前記受信された信号が前記学習モディファイア信号であると決定したことに応答して前記学習デバイスの１つまたは複数の学習能力を修正することとを備える方法。
［Ｃ２］
前記学習デバイスにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することと、
その後の学習モディファイア信号が受信されていないと決定したことに応答して前記学習デバイスの修正された１つまたは複数の学習能力をリセットすることをさらに備えるＣ１に記載の方法。
［Ｃ３］
前記学習デバイスの前記１つまたは複数の学習能力を修正することは、前記学習デバイスの学習モードを有効化することを備え、
前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記学習デバイスの前記学習モードを無効化することを備えるＣ２に記載の方法。
［Ｃ４］
前記学習デバイスの前記１つまたは複数の学習能力を修正することは、前記学習デバイスの学習モードを無効化することを備え、
前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記学習デバイスの前記学習モードを有効化することを備えるＣ２に記載の方法。
［Ｃ５］
前記学習デバイスの前記１つまたは複数の学習能力を修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される変数の値を調整することを備え、
前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記リフレックスの前記トリガー重みを計算するために使用される前記変数の値を既定値に調整することを備えるＣ２に記載の方法。
［Ｃ６］
前記学習デバイス内のタイマーを初期化することと、
前記受信された信号が前記学習モディファイア信号であると決定したことおよび前記その後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットすることとをさらに備え、
ここにおいて、前記学習デバイスにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することは、前記学習デバイスにおいて、前記タイマーが切れる前にその後の学習モディファイア信号が受信されたかどうかを決定することを備えるＣ２に記載の方法。
［Ｃ７］
前記タイマーは、前記学習モディファイア信号からのデータに基づき設定されるＣ６に記載の方法。
［Ｃ８］
前記学習モディファイア信号は、前記学習デバイスが学習率を大きくするか、または小さくするべきかを指示する学習率モディファイア値、前記学習モディファイア信号の影響を受ける学習デバイスのタイプを指示するデバイスタイプ、前記学習デバイスが学習モードを有効化するか、または無効化するべきかを指示する学習モードアクティブ設定、学習モディファイア信号の影響を受ける計算の特定のタイプを指示する学習率モディファイアタイプ、および前記付近のデバイスが前記学習モディファイア信号をどれだけ頻繁に送信するかを指示する送信頻度のうちの１つまたは複数を含むＣ１に記載の方法。
［Ｃ９］
学習デバイスの非集中システム内の付近のデバイスから信号を受信するための手段と、
前記受信された信号が前記受信された信号内のデータに基づき学習モディファイア信号であるかどうかを決定するための手段と、
前記受信された信号が前記学習モディファイア信号であると決定したことに応答して前記コンピューティングデバイスの１つまたは複数の学習能力を修正するための手段とを備えるコンピューティングデバイス。
［Ｃ１０］
その後の学習モディファイア信号が受信されたかどうかを決定するための手段と、
前記その後の学習モディファイア信号が受信されていないと決定したことに応答して前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段とをさらに備えるＣ９に記載のコンピューティングデバイス。
［Ｃ１１］
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正するための手段は、前記コンピューティングデバイスの学習モードを有効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段は、前記コンピューティングデバイスの前記学習モードを無効化することを備えるＣ１０に記載のコンピューティングデバイス。
［Ｃ１２］
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正するための手段は、前記コンピューティングデバイスの学習モードを無効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段は、前記コンピューティングデバイスの前記学習モードを有効化することを備えるＣ１０に記載のコンピューティングデバイス。
［Ｃ１３］
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正するための手段は、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される変数の値を調整することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段は、前記リフレックスの前記トリガー重みを計算するために使用される前記変数の値を既定値に調整することを備えるＣ１０に記載のコンピューティングデバイス。
［Ｃ１４］
タイマーを初期化するための手段と、
前記受信された信号が前記学習モディファイア信号であると決定したことおよびその後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットするための手段とをさらに備え、
ここにおいて、その後の学習モディファイア信号が受信されたかどうかを決定するための手段は、前記タイマーが切れる前にその後の学習モディファイア信号が受信されたかどうかを決定するための手段を備えるＣ１０に記載のコンピューティングデバイス。
［Ｃ１５］
前記タイマーは、前記学習モディファイア信号からのデータに基づき設定されるＣ１４に記載のコンピューティングデバイス。
［Ｃ１６］
前記学習モディファイア信号は、前記コンピューティングデバイスが学習率を大きくするか、または小さくするべきかを指示する学習率モディファイア値、前記学習モディファイア信号の影響を受ける学習デバイスのタイプを指示するデバイスタイプ、前記コンピューティングデバイスが学習モードを有効化するか、または無効化するべきかを指示する学習モードアクティブ設定、学習モディファイア信号の影響を受ける計算の特定のタイプを指示する学習率モディファイアタイプ、および前記付近のデバイスが前記学習モディファイア信号をどれだけ頻繁に送信するかを指示する送信頻度のうちの１つまたは複数を含むＣ９に記載のコンピューティングデバイス。
［Ｃ１７］
プロセッサ実行可能命令とともに、
学習デバイスの非集中システム内の付近のデバイスから信号を受信することと、
前記受信された信号が前記受信された信号内のデータに基づき学習モディファイア信号であるかどうかを決定することと、
前記受信された信号が前記学習モディファイア信号であると決定したことに応答してコンピューティングデバイスの１つまたは複数の学習能力を修正することとを備えるオペレーションを実行するように構成されたプロセッサを備えるコンピューティングデバイス。
［Ｃ１８］
前記プロセッサは、プロセッサ実行可能命令とともに
その後の学習モディファイア信号が受信されたかどうかを決定することと、
その後の学習モディファイア信号が受信されていないと決定したことに応答して前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることとをさらに備えるオペレーションを実行するように構成されるＣ１７に記載のコンピューティングデバイス。
［Ｃ１９］
前記プロセッサは、プロセッサ実行可能命令とともに
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを有効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを無効化することを備えるようなオペレーションを実行するように構成されるＣ１８に記載のコンピューティングデバイス。
［Ｃ２０］
前記プロセッサは、プロセッサ実行可能命令とともに
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを無効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを有効化することを備えるようなオペレーションを実行するように構成されるＣ１８に記載のコンピューティングデバイス。
［Ｃ２１］
前記プロセッサは、プロセッサ実行可能命令とともに
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される変数の値を調整することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記リフレックスの前記トリガー重みを計算するために使用される前記変数の値を既定値に調整することを備えるようなオペレーションを実行するように構成されるＣ１８に記載のコンピューティングデバイス。
［Ｃ２２］
タイマーをさらに備え、ここにおいて、前記プロセッサは、プロセッサ実行可能命令とともに、
前記タイマーを初期化することと、
前記受信された信号が前記学習モディファイア信号であると決定したことおよびその後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットすることとをさらに備えるオペレーションを実行するように構成され、
ここにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することは、前記タイマーが切れる前にその後の学習モディファイア信号が受信されたかどうかを決定することを備えるＣ１８に記載のコンピューティングデバイス。
［Ｃ２３］
前記タイマーは、前記学習モディファイア信号からのデータに基づき設定されるＣ２２に記載のコンピューティングデバイス。
［Ｃ２４］
前記学習モディファイア信号は、前記コンピューティングデバイスが学習率を大きくするか、または小さくするべきかを指示する学習率モディファイア値、前記学習モディファイア信号の影響を受ける学習デバイスのタイプを指示するデバイスタイプ、前記コンピューティングデバイスが学習モードを有効化するか、または無効化するべきかを指示する学習モードアクティブ設定、学習モディファイア信号の影響を受ける計算の特定のタイプを指示する学習率モディファイアタイプ、および前記付近のデバイスが前記学習モディファイア信号をどれだけ頻繁に送信するかを指示する送信頻度のうちの１つまたは複数を含むＣ１７に記載のコンピューティングデバイス。
［Ｃ２５］
プロセッサ実行可能命令が記憶され、前記プロセッサ実行可能命令はコンピューティングデバイスのプロセッサが
学習デバイスの非集中システム内の付近のデバイスから信号を受信することと、
前記受信された信号が前記受信された信号内のデータに基づき学習モディファイア信号であるかどうかを決定することと、
前記受信された信号が前記学習モディファイア信号であると決定したことに応答して前記コンピューティングデバイスの１つまたは複数の学習能力を修正することとを備えるオペレーションを実行することを引き起こすように構成される非一時的プロセッサ可読記憶媒体。
［Ｃ２６］
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
その後の学習モディファイア信号が受信されたかどうかを決定することと、
前記その後の学習モディファイア信号が受信されていないと決定したことに応答して前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることとをさらに備えるオペレーションを実行することを引き起こすように構成されるＣ２５に記載の非一時的プロセッサ可読記憶媒体。
［Ｃ２７］
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
前記コンピューティングの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを有効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを無効化することを備えるようなオペレーションを実行することを引き起こすように構成されるＣ２６に記載の非一時的プロセッサ可読記憶媒体。
［Ｃ２８］
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを無効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを有効化することを備えるようなオペレーションを実行することを引き起こすように構成されるＣ２６に記載の非一時的プロセッサ可読記憶媒体。
［Ｃ２９］
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される変数の値を調整することを備え、
前記コンピューティングデバイスの前記学習能力のうちの前記修正された１つまたは複数をリセットすることは、前記リフレックスの前記トリガー重みを計算するために使用される前記変数の値を既定値に調整することを備えるようなオペレーションを実行することを引き起こすように構成されるＣ２６に記載の非一時的プロセッサ可読記憶媒体。
［Ｃ３０］
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
タイマーを初期化することと、
前記受信された信号が前記学習モディファイア信号であると決定したことおよびその後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットすることとをさらに備えるオペレーションを実行することを引き起こすように構成され、
ここにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することは、前記タイマーが切れる前にその後の学習モディファイア信号が受信されたかどうかを決定することを備えるＣ２６に記載の非一時的プロセッサ可読記憶媒体。
【手続補正書】
【提出日】平成28年2月12日(2016.2.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
学習デバイスの非集中システム内の学習能力を修正するための方法であって、
学習デバイスの前記非集中システム内の学習デバイスで、付近の第１のデバイスから第１の信号を受信することと、
前記学習デバイスにおいて、前記受信された第１の信号が前記受信された第１の信号内のデータに基づき学習モディファイア信号であるかどうかを決定することと、
前記学習モディファイア信号を受信したことに応答して前記学習デバイスの１つまたは複数の学習能力を修正すること、ここにおいて、前記修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される値を調整することを備え、前記リフレックスは、トリガーと前記学習デバイスが実行するように構成されているアクションとの間の少なくとも相関または関係を指示する情報を記憶する、と、
付近の第２のデバイスから第２の信号を受信することと、
前記修正された１つまたは複数の学習能力に基づいて、ならびに、前記第２の信号を受信したことおよび前記第１の信号が前記学習モディファイア信号であると決定したことに応答して、前記リフレックスの前記トリガー重みを第１の量調整することと、
前記修正されていない１つまたは複数の学習能力に基づいて、および、前記第２の信号を受信したことおよび前記第１の信号が前記学習モディファイア信号ではないと決定したことに応答して、前記リフレックスの前記トリガー重みを第２の量調整することと
を備える方法。
【請求項２】
前記学習デバイスにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することと、
前記その後の学習モディファイア信号が受信されていないと決定したことに応答して前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることをさらに備える請求項１に記載の方法。
【請求項３】
前記学習デバイスの前記１つまたは複数の学習能力を修正することは、前記学習デバイスの学習モードを有効化することを備え、
前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記学習デバイスの前記学習モードを無効化することを備える請求項２に記載の方法。
【請求項４】
前記学習デバイスの前記１つまたは複数の学習能力を修正することは、前記学習デバイスの学習モードを無効化することを備え、
前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記学習デバイスの前記学習モードを有効化することを備える請求項２に記載の方法。
【請求項５】
前記学習デバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記リフレックスの前記トリガー重みを計算するために使用される前記値を既定値に調整することを備える請求項２に記載の方法。
【請求項６】
前記学習デバイス内のタイマーを初期化することと、
前記受信された第１の信号が前記学習モディファイア信号であると決定したことおよび前記その後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットすることとをさらに備え、
ここにおいて、前記学習デバイスにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することは、前記学習デバイスにおいて、前記タイマーが切れる前に前記その後の学習モディファイア信号が受信されたかどうかを決定することを備える請求項２に記載の方法。
【請求項７】
前記タイマーは、前記学習モディファイア信号からのデータに基づき設定される請求項６に記載の方法。
【請求項８】
前記学習モディファイア信号は、前記学習デバイスが学習率を大きくするか、または小さくするべきかを指示する学習率モディファイア値、前記学習モディファイア信号の影響を受ける学習デバイスのタイプを指示するデバイスタイプ、前記学習デバイスが学習モードを有効化するか、または無効化するべきかを指示する学習モードアクティブ設定、学習モディファイア信号の影響を受ける計算の特定のタイプを指示する学習率モディファイアタイプ、および前記付近の第１のデバイスが前記学習モディファイア信号をどれだけ頻繁に送信するかを指示する送信頻度のうちの１つまたは複数を含む請求項１に記載の方法。
【請求項９】
学習デバイスの非集中システム内の付近の第１のデバイスから第１の信号を受信するための手段と、
前記受信された第１の信号が前記受信された第１の信号内のデータに基づき学習モディファイア信号であるかどうかを決定するための手段と、
前記学習モディファイア信号を受信したことに応答してコンピューティングデバイスの１つまたは複数の学習能力を修正するための手段、ここにおいて、前記修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される値を調整することを備え、前記リフレックスは、トリガーと前記コンピューティングデバイスが実行するように構成されているアクションとの間の少なくとも相関または関係を指示する情報を記憶する、と、
付近の第２のデバイスから第２の信号を受信するための手段と、
前記修正された１つまたは複数の学習能力に基づいて、ならびに、前記第２の信号を受信したことおよび前記第１の信号が前記学習モディファイア信号であると決定したことに応答して、前記リフレックスの前記トリガー重みを第１の量調整するための手段と、
前記修正されていない１つまたは複数の学習能力に基づいて、ならびに、前記第２の信号を受信したことおよび前記第１の信号が前記学習モディファイア信号ではないと決定したことに応答して、前記リフレックスの前記トリガー重みを第２の量調整するための手段と
を備える、コンピューティングデバイス。
【請求項１０】
その後の学習モディファイア信号が受信されたかどうかを決定するための手段と、
前記その後の学習モディファイア信号が受信されていないと決定したことに応答して前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段とをさらに備える請求項９に記載のコンピューティングデバイス。
【請求項１１】
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正するための手段は、前記コンピューティングデバイスの学習モードを有効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段は、前記コンピューティングデバイスの前記学習モードを無効化することを備える請求項１０に記載のコンピューティングデバイス。
【請求項１２】
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正するための手段は、前記コンピューティングデバイスの学習モードを無効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段は、前記コンピューティングデバイスの前記学習モードを有効化することを備える請求項１０に記載のコンピューティングデバイス。
【請求項１３】
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットするための手段は、前記リフレックスの前記トリガー重みを計算するために使用される前記値を既定値に調整することを備える請求項１０に記載のコンピューティングデバイス。
【請求項１４】
タイマーを初期化するための手段と、
前記受信された第１の信号が前記学習モディファイア信号であると決定したことおよび前記その後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットするための手段とをさらに備え、
ここにおいて、その後の学習モディファイア信号が受信されたかどうかを決定するための手段は、前記タイマーが切れる前に前記その後の学習モディファイア信号が受信されたかどうかを決定するための手段を備える請求項１０に記載のコンピューティングデバイス。
【請求項１５】
前記タイマーは、前記学習モディファイア信号からのデータに基づき設定される請求項１４に記載のコンピューティングデバイス。
【請求項１６】
前記学習モディファイア信号は、前記コンピューティングデバイスが学習率を大きくするか、または小さくするべきかを指示する学習率モディファイア値、前記学習モディファイア信号の影響を受ける学習デバイスのタイプを指示するデバイスタイプ、前記コンピューティングデバイスが学習モードを有効化するか、または無効化するべきかを指示する学習モードアクティブ設定、学習モディファイア信号の影響を受ける計算の特定のタイプを指示する学習率モディファイアタイプ、および前記付近の第１のデバイスが前記学習モディファイア信号をどれだけ頻繁に送信するかを指示する送信頻度のうちの１つまたは複数を含む請求項９に記載のコンピューティングデバイス。
【請求項１７】
プロセッサ実行可能命令とともに、
学習デバイスの非集中システム内の付近の第１のデバイスから第１の信号を受信することと、
前記受信された第１の信号が前記受信された第１の信号内のデータに基づき学習モディファイア信号であるかどうかを決定することと、
前記学習モディファイア信号を受信したことに応答してコンピューティングデバイスの１つまたは複数の学習能力を修正することと、ここにおいて、前記修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される値を調整することを備え、前記リフレックスは、トリガーと前記コンピューティングデバイスが実行するように構成されているアクションとの間の少なくとも相関または関係を指示する情報を記憶する、と、
付近の第２のデバイスから第２の信号を受信することと、
前記修正された１つまたは複数の学習能力に基づいて、ならびに、前記第２の信号を受信したことおよび前記第１の信号が前記学習モディファイア信号であると決定したことに応答して、前記リフレックスの前記トリガー重みを第１の量調整することと、
前記修正されていない１つまたは複数の学習能力に基づいて、ならびに、前記第２の信号を受信したことおよび前記第１の信号が前記学習モディファイア信号ではないと決定したことに応答して、前記リフレックスの前記トリガー重みを第２の量調整することと
を備えるオペレーションを実行するように構成されたプロセッサを備える、コンピューティングデバイス。
【請求項１８】
前記プロセッサは、プロセッサ実行可能命令とともに
その後の学習モディファイア信号が受信されたかどうかを決定することと、
前記その後の学習モディファイア信号が受信されていないと決定したことに応答して前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることと
をさらに備えるオペレーションを実行するように構成される請求項１７に記載のコンピューティングデバイス。
【請求項１９】
前記プロセッサは、プロセッサ実行可能命令とともに
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを有効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを無効化することを備えるようなオペレーションを実行するように構成される請求項１８に記載のコンピューティングデバイス。
【請求項２０】
前記プロセッサは、プロセッサ実行可能命令とともに
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを無効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを有効化することを備えるようなオペレーションを実行するように構成される請求項１８に記載のコンピューティングデバイス。
【請求項２１】
前記プロセッサは、プロセッサ実行可能命令とともに
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記リフレックスの前記トリガー重みを計算するために使用される前記値を既定値に調整することを備えるようなオペレーションを実行するように構成される請求項１８に記載のコンピューティングデバイス。
【請求項２２】
タイマーをさらに備え、ここにおいて、前記プロセッサは、プロセッサ実行可能命令とともに、
前記タイマーを初期化することと、
前記受信された第１の信号が前記学習モディファイア信号であると決定したことおよび前記その後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットすることとをさらに備えるオペレーションを実行するように構成され、
ここにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することは、前記タイマーが切れる前に前記その後の学習モディファイア信号が受信されたかどうかを決定することを備える請求項１８に記載のコンピューティングデバイス。
【請求項２３】
前記タイマーは、前記学習モディファイア信号からのデータに基づき設定される請求項２２に記載のコンピューティングデバイス。
【請求項２４】
前記学習モディファイア信号は、前記コンピューティングデバイスが学習率を大きくするか、または小さくするべきかを指示する学習率モディファイア値、前記学習モディファイア信号の影響を受ける学習デバイスのタイプを指示するデバイスタイプ、前記コンピューティングデバイスが学習モードを有効化するか、または無効化するべきかを指示する学習モードアクティブ設定、学習モディファイア信号の影響を受ける計算の特定のタイプを指示する学習率モディファイアタイプ、および前記付近の第１のデバイスが前記学習モディファイア信号をどれだけ頻繁に送信するかを指示する送信頻度のうちの１つまたは複数を含む請求項１７に記載のコンピューティングデバイス。
【請求項２５】
プロセッサ実行可能命令が記憶され、前記プロセッサ実行可能命令はコンピューティングデバイスのプロセッサが
学習デバイスの非集中システム内の付近の第１のデバイスから第１の信号を受信することと、
前記受信された第１の信号が前記受信された第１の信号内のデータに基づき学習モディファイア信号であるかどうかを決定することと、
前記学習モディファイア信号を受信したことに応答して前記コンピューティングデバイスの１つまたは複数の学習能力を修正すること、ここにおいて、前記修正することは、前記学習モディファイア信号に基づきリフレックスのトリガー重みを計算するために使用される値を調整することを備え、前記リフレックスは、トリガーと前記コンピューティングデバイスが実行するように構成されているアクションとの間の少なくとも相関または関係を指示する情報を記憶する、と、
付近の第２のデバイスから第２の信号を受信することと、
前記修正された１つまたは複数の学習能力に基づいて、ｋつ、前記第２の信号を受信したことおよび前記第１の信号が前記学習モディファイア信号であると決定したことに応答して、前記リフレックスの前記トリガー重みを第１の量調整することと、
前記修正されていない１つまたは複数の学習能力に基づいて、ならびに、前記第２の信号を受信したことおよび前記第１の信号が前記学習モディファイア信号ではないと決定したことに応答して、前記リフレックスの前記トリガー重みを第２の量調整することと、
を備えるオペレーションを実行することを引き起こすように構成される、非一時的プロセッサ可読記憶媒体。
【請求項２６】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
その後の学習モディファイア信号が受信されたかどうかを決定することと、
前記その後の学習モディファイア信号が受信されていないと決定したことに応答して前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることとをさらに備えるオペレーションを実行することを引き起こすように構成される請求項２５に記載の非一時的プロセッサ可読記憶媒体。
【請求項２７】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
前記コンピューティングの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを有効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを無効化することを備えるようなオペレーションを実行することを引き起こすように構成される請求項２６に記載の非一時的プロセッサ可読記憶媒体。
【請求項２８】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
前記コンピューティングデバイスの前記１つまたは複数の学習能力を修正することは、前記コンピューティングデバイスの学習モードを無効化することを備え、
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記コンピューティングデバイスの前記学習モードを有効化することを備えるようなオペレーションを実行することを引き起こすように構成される請求項２６に記載の非一時的プロセッサ可読記憶媒体。
【請求項２９】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
前記コンピューティングデバイスの前記修正された１つまたは複数の学習能力をリセットすることは、前記リフレックスの前記トリガー重みを計算するために使用される前記値を既定値に調整することを備えるようなオペレーションを実行することを引き起こすように構成される請求項２６に記載の非一時的プロセッサ可読記憶媒体。
【請求項３０】
前記記憶されているプロセッサ実行可能命令は、前記コンピューティングデバイスの前記プロセッサが
タイマーを初期化することと、
前記受信された第１の信号が前記学習モディファイア信号であると決定したことおよび前記その後の学習モディファイア信号が受信されたと決定したことのうちの一方に応答して前記タイマーをアクティブ化するか、またはリセットすることとをさらに備えるオペレーションを実行することを引き起こすように構成され、
ここにおいて、その後の学習モディファイア信号が受信されたかどうかを決定することは、前記タイマーが切れる前に前記その後の学習モディファイア信号が受信されたかどうかを決定することを備える請求項２６に記載の非一時的プロセッサ可読記憶媒体。
【国際調査報告】
2016524226.tif 000052
2016524226.tif 000053
2016524226.tif 000054