(57)【要約】  デバイスの構成活動またはアクティベーション活動を自動的に行うこと。方法は、デバイスに関する稼働情報または環境情報の少なくとも１つを収集することを含む。デバイスに関する稼働情報または環境情報の少なくとも１つを使用して、デバイスの予想される使用法を決定する。決定された予想される使用法に基づいて、少なくとも１つの構成またはアクティベーションアクションを行って、デバイスを標準的な使用状態にする。
2014524627.tif 000002
【特許請求の範囲】
【請求項１】
コンピューティング環境において、デバイス上で構成活動またはアクティベーション活動を自動的に行う方法であって、
デバイスに関する稼働情報または環境情報の少なくとも１つを収集するステップと、
デバイスに関する稼働情報または環境情報の前記少なくとも１つを使用して、前記デバイスの予想される使用法を決定するステップと、
前記決定された予想される使用法に基づいて、少なくとも１つの構成またはアクティベーションアクションを行って、前記デバイスを標準的な使用状態にするステップと
を含む、方法。
【請求項２】
前記標準的な使用状態が、デフォルト状態にわたって最適化である、請求項１に記載の方法。
【請求項３】
前記アクティベーション活動が、前記デバイスを起動するステップを含む、請求項１に記載の方法。
【請求項４】
前記アクティベーション活動が、前記デバイスを起動するステップと、前記デバイス上のディスプレイをアクティベートしないようにするステップとを含む、請求項１に記載の方法。
【請求項５】
前記アクティベーション活動が、前記デバイスを、最小限のドライバのセットがロードされる低電力状態にするステップを含む、請求項１に記載の方法。
【請求項６】
前記アクティベーション活動が、前記デバイスを起動しないよう決定するステップを含む、請求項１に記載の方法。
【請求項７】
前記アクティベーション活動が、前記デバイスの電力使用状態を低減するステップを含む、請求項１に記載の方法。
【請求項８】
環境情報を収集するステップが、センサデータを収集するステップを含む、請求項１に記載の方法。
【請求項９】
前記センタデータが、ＧＰＳ、光センサ、近接センサ、熱センサ、加速度計、ブルートゥース無線、分光計、無線ネットワークハードウェア、有線ネットワークハードウェア、カメラ、スイッチ、またはデバイスの電力状態を示すハードウェアの少なくとも１つによって提供される、請求項８に記載の方法。
【請求項１０】
稼働情報を収集するステップが、前記デバイスがアクティブであった期間、時刻、前記デバイスが行っていた、または関連していたアクション、前記デバイスの１つまたは複数のアクティベーション状態、前記デバイスのハードウェアの状態に関する情報の少なくとも１つを収集するステップを含む、請求項１に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
[0001]コンピュータおよびコンピューティングシステムは、現代の生活のほぼあらゆる面に影響を与えてきた。コンピュータは一般に、仕事、レクリエーション、健康管理、交通機関、娯楽、家庭管理などに関わっている。
【０００２】
[0002]コンピューティングデバイスは、時間とともに変形し、変化した。例えば、いくつかの初期のコンピューティングデバイスは、エンジニアの大規模グループがシステムを維持し、サービスを提供することを必要とする、大型の電気システムであった。コンピューティングデバイスが特定のタスクを行うようにするために、様々な物理的スイッチおよび電子的スイッチを手動で切り換えて回路を完成し、コンピューティングデバイスを特定の状態にした。場合によっては、コンピューティングデバイスは、電子計算機のように、コンピューティングデバイスに利用可能なコンフィギュアビリティ（ｃｏｎｆｉｇｕｒａｂｉｌｉｔｙ）を小規模にして、特定の計算タスクを行うように構築された。
【０００３】
[0003]後にコンピューティングシステムは、さらに設定可能に（ｃｏｎｆｉｇｕｒａｂｌｅ）なり、および／または複数の異なる関連タスクまたは非関連タスクを行うことができるようになった。しかしながらこれは、オペレーティングシステムをコンピューティングシステムにロードし、その後オペレーティングシステムの環境内でアプリケーションを実行するという犠牲を払って行われた。オペレーティングシステムをロードするには、いくらかの起動（ｂｏｏｔ−ｕｐ）時間を要する。電力を節約するために、コンピューティングシステムがオフになり、リスタートは、システムが再び起動するのを待つ間に時間的なコストがかかった。
【０００４】
[0004]コンピューティングシステムがさらに進化するにつれて、システムはスリープに入ることができ、スリープは、低電力によりメモリを維持して、オペレーティングシステムをコンピュータのメモリにロードしたままにするが、システムの他の多くの電力消費部分をシャットダウンする。システムはその後、完全な起動を必要とせずに再開することができ、したがって、いくらかの電力を消費する代わりに、いくらかの時間を節約する。これは、バッテリーの電力を節約してバッテリー充電間の稼働時間をより長くしたいという要望があるバッテリー電源式デバイスに特に有益である。
【０００５】
[0005]コンピューティングシステムは、あらゆる所に存在する。特に、埋め込みシステムは、ドアの鍵から携帯電話、自動車の制御、家庭電気器具の制御、メディアデバイス、その他、あらゆるものを制御するために使用することができる。さらに、例えばタブレットコンピュータ、音楽プレーヤなど、モバイルコンピューティングデバイスが実用的かつ一般的になっている。ユーザは、こうしたデバイスの機能に素早くアクセスし、長い待ち時間がないことが望ましい。望ましい機能を表すために、「瞬時オン」という用語が使用されるようになった。
【０００６】
[0006]しかし、「瞬時オン」はこうしたタイプのデバイスを表すために使用される用語でありながら、デバイスを使用できるようになるにはいくらかの待ち時間があることが多い。さらに、モバイルデバイスおよび埋め込みデバイスは、さらに複雑になりつつあり、したがって起動時間および再開時間もしくはウェイク時間が潜在的にますます長くなっている。
【０００７】
[0007]本明細書で主張する対象物は、いずれかの不都合を解決する実施形態、または上述のような環境でのみ動作する実施形態に限定されない。正確に言えば、本明細書に記載するいくつかの実施形態を実行することができる１つの例示的技術分野を示すために、このような背景を設けているにすぎない。
【発明の概要】
【課題を解決するための手段】
【０００８】
[0008]１つの実施形態は、コンピューティング環境で実行される方法を含む。この方法は、デバイス上で構成またはアクティベーション活動を自動的に行うための動作を含む。この方法は、デバイスに関する稼働情報または環境情報の少なくとも１つを集めることを含む。デバイスに関する稼働情報または環境情報の少なくとも１つを使用して、デバイスの予想される使用法（ｕｓａｇｅ）を決定する。決定された予想される使用法に基づいて、少なくとも１つの構成またはアクティベーションアクションが行われて、デバイスを標準的な使用状態にする。
【０００９】
[0009]この節では、以下の発明を実施するための最良の形態でさらに説明する概念の抜粋を簡略化して紹介する。この節は、特許請求の範囲に記載する対象物の主要な特徴または本質的特徴を確認することを目的とせず、さらに特許請求の範囲に記載する対象物の範囲を決定する際の助けとして使用されることを目的としない。
【００１０】
[0010]さらなる特徴および利点について、次の説明で示し、一部は説明から明らかになるであろう、あるいは本明細書の教示を実行することによって習得される可能性がある。本発明の特徴および利点は、特に添付の特許請求の範囲で指摘する機器および組合せを用いて理解し、取得することができる。本発明の特徴は、次の説明および添付の特許請求の範囲からさらに十分に明らかになるであろう、あるいは以下に示すように本発明を実行することによって習得することができる。
【００１１】
[0011]上記のおよび他の利点および特徴を得ることができる方法を説明するために、添付の図面に示す特定の実施形態を参照することにより、簡単に上述した対象物のより詳細な説明を行う。これらの図面は、典型的な実施形態のみを示し、したがって範囲を限定していると考えられるべきではないと理解し、添付の図面を使用することによってさらなる特異性および詳細とともに実施形態を記載し、説明する。
【図面の簡単な説明】
【００１２】
【図１】[0012]適応システムのブロック図を示す図である。
【図２】[0013]適応システムの様々な段階におけるプロセスフローを示す図である。
【図３】[0014]構成活動またはアクティベーション活動を行う方法を示す図である。
【発明を実施するための形態】
【００１３】
[0015]いくつかの実施形態は、センサを使用して、環境の変化を検出する。決定エンジンでこの情報を使用して、デバイスがプログラムコンポーネントを選択的に起動する、ウェイクする、ロードする、または他には、システム（ハードウェアおよび／またはソフトウェア）のセクションをアクティベートして、電力を節約しながら「常時オン」機能を出現させる。
【００１４】
[0016]いくつかの実施形態では、ソフトウェアおよび／またはハードウェアは、以前の使用データに基づいて選択的にアクティベートされる。したがって、履歴の対話および／または一般的な対話に基づいて、ユーザがデバイスとの完全な対話を望むことを示す形で、デバイスと直接対話するまで、デバイス全体を「立ち上げ（ｂｒｏｕｇｈｔ−ｕｐ）」ないことが可能である。しかしながら、環境条件、ユーザの間接的アクション、履歴データ、時間的条件などがデバイスに影響を及ぼし、デバイスにユーザ対話を予想させることが可能である。予想トリガは、対話に関する進行中の学習に基づいて調整することができる。予想トリガがデバイスを誘発し、起動する、ウェイクアップする、回復操作を行う、ソフトウェアをメモリにロードする、ハードウェアを作動するなどの、アクティベーション活動を開始する。しかしながら、これらのアクティベーション活動は、完全な起動ではないことが可能である、および／または、ユーザには見えないおよび／または他には認識できないものであることが可能である。したがって、最終的にユーザがデバイスと対話するとき、デバイスは、著しく短い時間で完全なユーザ対話の準備を整えることができる。あるいは、デバイスは、部分的な対話の準備を整えることができる。例えばシステムは、ユーザが常に、最初に、車のナビゲーションエンジンを使用することを理解することができ、したがってシステムは、最初にこのシステムを立ち上げ、背景でこのシステムの残部をロードする。
【００１５】
[0017]ここで図１を参照すると、１つの実施形態の例示的ブロック図が示されている。図１は、様々なコンポーネントの論理的な接続を示す。図１に示すように、決定エンジン１０２は、センサ１０４からのセンサ情報を入力として受け入れる。以下にさらに詳細に説明するように、センサ１０４は、いくつかの異なるセンサ型の１つまたは複数とすることができる。例えば、センサは、次のうちの１つまたは複数を含むことができるが、これらに限定されない：クロック、タイマー、Ｗｉ−Ｆｉハードウェア、光センサ、ＧＰＳ、加速度計、カメラ、深度センサ（赤外線距離センサもしくは立体カメラなど）、温度センサ、スイッチ、圧力センサ、スペクトルアナライザなど。
【００１６】
[0018]いくつかの実施形態では、センサは、低電力センサとすることができる。センサデータを利用しやすくするために、デバイスは、センサデータを入力として使用して、単純もしくは複雑な数学的操作、論理的操作、データ構造操作などの操作、または複数の単純もしくは複雑な数学的操作、論理的操作、データ構造操作などの操作の組合せを実行することができる。
【００１７】
[0019]上記のように、諸実施形態は、決定エンジン１０２と、ルールストア（ｒｕｌｅｓ  ｓｔｏｒｅ）１０６とを含むことができる。決定エンジン１０２は、センサ１０４からセンサ入力を取り込み、ルールストア１０６からのルール１０５をシステムに適用する。いくつかの実施形態では、決定エンジン１０２は、ルールストア１０６に格納されたルール１０５を適用して、メインシステム１０８をいつ（またはメインシステム１０８のどの部分を）アクティベートすべきかを判断する。決定エンジン１０２は、アクションを決定するための計算に使用することができる、センサ履歴ストア１１０に格納されたセンサ１０４の履歴に関する情報にアクセスすることもできる。メインシステム１０８は、センサ履歴ストア１１０の情報を消費して、ルールストア１０６に格納された起動ルール１０５を適切に調整することができる。
【００１８】
[0020]ルールストア１０６および／またはセンサ履歴ストア１１０は、システムのメモリおよびストレージとは独立したコンポーネントを含むことができる。代替的に、または追加的に、ルールストア１０６および／またはセンサ履歴ストア１１０は、システムのメモリおよびストレージの一部であるコンポーネントを含むことができる。
【００１９】
[0021]ルールストア１０６中のルール１０５は、いくつかの異なる方法の１つまたは複数で生成することができる。例えばいくつかの実施形態では、ルールは、例えばシステムの製造者によって、静的に計算される。代替的または追加的実施形態では、ルールは、自動的に生成および／または学習されることもある。例えば、諸実施形態は、人工知能、決定木、有向グラフ、単純論理、および／または他の演算を使用して、ルールストア１０６からのルールを生成、変更、および／または削除することができる。さらに別の代替的または追加的実施形態では、ルールはユーザ入力によって手動で入力される、または構成されることが可能であり、デバイスのユーザが、ルールを作成、変更、または削除させるユーザインタフェースを使用して決定を行う。
【００２０】
[0022]いくつかの実施形態では、ルール１０５の一部または全部が、プロセッサまたはプロセッサのセットならびにルール１０５を適用して課されるプロセスまたはプロセスのセットから作り出される。代替的または追加的実施形態では、ルール１０５の一部または全部が、別のプロセッサから作り出されることがある。いくつかの実施形態では、ルール１０５は、クラウド（すなわち、一連のネットワーク化されたシステム）において自動的に生成され、特定のまたは一般的な更新手続きによりデバイスにプッシュされることが可能である。いくつかの実施形態では、デバイスは、その後ルール生成手続きにより読み取ることができる一時的なストアに、複数の対話の履歴を格納することができる。このデータは、単一の収集コードでフィルタリングすることができる。センサ履歴１１０は、現在の起動または場合によっては以前の起動からの履歴レコードを格納することができ、これはその後、ルールストア１０５を作成または増強するためにルール生成エンジンによって消費される。
【００２１】
[0023]いくつかの実施形態では、いくつかのまたはすべてのルール１０５が静的であるまたは変わらないことが可能である。代替的には、または追加的には、いくつかのまたはすべてのルール１０５が動的であることが可能であり、時間および経験がシステムを訓練するにつれて、自動的な調整または除去が可能になる。いくつかの実施形態では、システムは、ユーザがルールを追加、変更、または除去することができることによって、あるいはユーザが１つもしくは複数のルール１０５またはルールストア１０６をシステムから一時的にまたは永久的に除去することによって、システムが無効化されることにより、完全にまたは部分的にユーザが設定可能なものとすることができる。
【００２２】
[0024]いくつかの実施形態では、システムは、ルールベースのアクティベーションによって引き起こされるプリエンプティブ（ｐｒｅｅｍｐｔｉｖｅ）アクティベーションプロセスからであれ、ユーザが直接アクティベーションプロセスを開始しようとするユーザ開始アクティベーションプロセスであれ、任意のアクティベーションプロセスと関連するセンサ情報（例えば、センサの読み取り値）を格納することができる。これによりシステムは、フォルスアラーム（ｆａｌｓｅ−ａｌａｒｍ、誤警報）およびミスヒット（ｍｉｓｓｅｄ−ｈｉｔ）のシナリオをより正確に学習することができるようになる。具体的には、アクティベーションプロセスと関連するセンサ情報は、アクティベーションプロセスの直後または最中に発生するセンサの読み取り値を含むことができる。さらに、ルールに基づいて開始されたアクティベーションプロセスが何らかのユーザ対話を含む可能性があるが、ユーザ対話は一般には偶発的であって、一般的には直ちにデバイスの起動活動とみなされることはない。このような偶発的な対話には、例えば、デバイスの付近に来ること、偶然デバイスに触れるまたはデバイスを持ち上げるなどが含まれる。一方、ユーザが直接にアクティベーションプロセスを開始しようとするユーザ開始アクティベーションプロセスには、一般的に、ユーザがアクティベーション活動を起こすために一般的に知られているなんらかの活動を行うこと、例えば電源ボタンもしくは他のボタンを押すこと、デバイスを差し込むこと、または他にはデバイスに電力を供給することなどが含まれる。
【００２３】
[0025]諸実施形態は、システムがルール１０５または学習したシステムの挙動に基づいて外部デバイスまたはコンポーネントを始動する機能を含むことができる。例えば、車インフォテインメントシステム（ｉｎｆｏｔａｉｎｍｅｎｔ  ｓｙｓｔｅｍ）は、システムを起動する代わりに、またはシステムの起動に追加して、様々なルール１０５および学習した挙動に応じて車を始動させることができる。これを使用して、ユーザが近い未来に車の運転を希望するであろうという予想に基づいて、ユーザのために車を始動させることができる。あるいは車は、バッテリーを充電する必要があると判断される場合、車のバッテリーを再充電するように始動されることも可能である。この判断は、位置情報も同様に含むことができる。例えば、閉じたガレージまたは他の空間で車を始動するのは不適切である可能性がある。
【００２４】
[0026]このシステムは、電力、時間、ガソリン（車の燃料）、時刻などを考慮に入れるために、標準的起動またはプリエンプティブ起動に対して、ハードウェア、ドライバなどの起動順序を変えるための機能を含むことができる。これは、いくつかの実施形態において、自動車の例では、ユーザが常にユーザの電話を車のインフォテインメントシステムに接続することがわかっているので、Ｂｌｕｅｔｏｏｔｈ（登録商標）コアを早めに起動することを意味し、または家庭用エンターテイメントシステムの例では、ＴＶの利用者が座るよりも前にＴＶの音をよく聞くので、最初に音声を立ち上げることを意味することができる。調整された起動順序は、システムのルール１０５または学習した挙動により、ユーザがシステムの主要部分を使用する可能性は低いとされる場合、システムのその部分を、起動、電源投入、またはロードから除外することができる。
【００２５】
[0027]いくつかの実施形態では、別個の低電力プロセッサを使用して、機能を実行することができる。具体的には、別個のプロセッサを使用して、決定エンジンおよび／またはアクティベーション活動を開始させるための他のシステムに電力を供給することができる。代替的には、または追加的には、低電力状態のメインＣＰＵを、決定エンジンのために、および／またはアクティベーション活動を開始させるために使用することができる。決定エンジン１０２は、別個のチップの全部または一部、ＯＳの一部、ハイパーバイザなどとすることができる。さらに他のオプションを、本明細書では具体的に列挙しないが、本明細書に記載する諸実施形態の範囲内で使用することができる。
【００２６】
[0028]いくつかの実施形態では、オペレーティングシステムを通じて、またはオペレーティングシステムの代わりに、機能を実行することができる。システムが適切なイベントを検出するとき、システムは、ルールストア１０６中のルール１０５の内容に基づいて、ソフトウェアまたはハードウェアの電源を入れる／ロードする／アクティベートする。いくつかの実施形態では、これによりメインシステム１０８は、完全なシステムアクティベーションが実際に行われると、センサ情報を検索できるようになる。
【００２７】
[0029]デバイスがデバイスに利用可能な情報を使用して、利用可能な情報および／またはセンサ信号に基づいて挙動を選択する実施形態を実行することができる。これにより、ユーザがデバイスを使用するための待機時間を削減し、デバイスが「常時オン」であるという知覚を可能にすることができる。しかしながら、いくつかの実施形態では、学習されたモデルが誤りである可能性があることを考えれば、「常時オン」であるという知覚は、一般的な、または平均的な知覚である。したがって、モデルが不完全である、誤ったセンサデータであるなどの結果として、アクティベーション活動を行うことが有益であるときに、アクティベーション活動が行われない状況が存在する可能性がある。
【００２８】
[0030]決定エンジン１０２の出力は、「ブレーカ」１１２を通過することも可能であり、ブレーカは、信号を送信しないように物理的に防止する電気回路、またはデータを通さないようにすることができるソフトウェアを使用して実装することができ、システムが対話に基づいてアクティベーション活動を行わないようにすることができる。これは、ユーザがシステムを使用する位置にいないとき、システムがオンラインにならないことを確実なものにするために実装することができる。これは、例えばバッテリーを節約するために行うことができる。例えば、自動車の設定では、エンジンが稼働状態（ｏｎｌｉｎｅ）になることなく、デバイスが複数回始動された場合、その後デバイスは、再び作動しないようにすることができる。いくつかの実施形態では、この防止策は、車が作動され、デバイスと対話されるまで行うことができる。したがって、システムは、通常立ち上がるべきときに立ち上がるが、早期に起動しようと試みることはない。
【００２９】
[0031]いくつかの実施形態では、１つまたは複数のユーザ知覚可能インタフェースを作動させることなくデバイスを初期化することができる。例えば、いくつかの実施形態では、画面は、さらなるユーザアクションが検出されるまで、作動されないようにすることができる。あるいは、デバイスの音声部分は、さらなるユーザ対話が検出されるまで、作動されないようにすることができる。
【００３０】
[0032]図２は、シナリオの観点からのシステムの論理フローを示す。図２では、破線で示す段階は、プリエンプティブ起動段階とみなされ、実線で示す段階は、「標準的」起動モードのコードおよびシナリオである。２重の実線の輪郭線で示す矢印は、電源スイッチを押し下げる、イグニッションで鍵を装着するまたは回す、遠隔電源ボタンを押すなど、曖昧でない開始信号を表す。
【００３１】
[0033]図２は、２０２において、システムが低電力または「オフ状態」で開始することを示す。この状態では、図１の決定エンジン１０２は、依然としてアクティブであり、センサ１０４からセンサ情報を収集している。この状態でシステムは、予期していなかった「スタートアップ」コマンド（ボタン押しなど）を受け取る可能性があり、この場合システムは、２０４に示すように標準的に起動して、２０６に示すように標準的に実行することになる。
【００３２】
[0034]あるいはシステムは、ユーザがシステムと対話していることを予想する状況の発生を検出する可能性があり、システムは、２０８に示すプリエンプティブ起動フェーズに入る。このフェーズでは、２１０に示すように、コンポーネント、ドライバ、チップ、アプリケーションなどの任意の数（または無し）を起動する（または他にはスタートアップする）ことができる。これが行われると、システムは、２１２に示すようにプリエンプティブ起動シナリオの「起動済み」フェーズに入ることになる。次にスタートアップコマンドが受け取られると、システムは起動を完了し、２０６に示すようにシステム実行フェーズのシステムを開始する。
【００３３】
[0035]プリエンプティブ起動フェーズには、「スタートアップ」信号がいつでも割り込むことができ、これにより、すでに行われた部分的な起動に基づいて２１４に示す起動シーケンスを終了することに直ちに移行する。起動または「プリエンプティブ起動を終了するフェーズ」において、および／またはプリエンプティブ起動フェーズにおいて、センサ情報は伝送され格納されて、したがって、システムがルール１０５を更新するように構成されている場合、起動がルール１０５の更新に成功したかどうか、システムが起動を分析することができるようにする。システムが長時間の間プリエンプティブ「起動済み」フェーズである場合、システムは低電力状態に戻り、起動がフォルスアラームであったことをセンサ履歴ストア１１０に格納する。
【００３４】
[0036]諸実施形態は、様々な特徴を含むことができる。例えば、諸実施形態は、デバイスの使用パターンを学習して、デバイスのセクションまたはデバイス全体をオンおよびオフにするためのモデルを構築する能力を含むことができる。代替的に、または追加的に、諸実施形態は、センサ（場合によっては低電力センサまたは受動的センサ）を使用して埋込みデバイスの状態を調整する能力を含むことができる。代替的に、または追加的に、諸実施形態は、タイミングに関連する設定に基づいてデバイスの電力／アプリケーションの状態を調整する能力を含むことができる。代替的に、または追加的に、諸実施形態は、センサからの信号または時間のために、デバイスのセクションを起動するがデバイス全体を起動しない能力を含むことができる。代替的に、または追加的に、諸実施形態は、ルール１０５および学習した挙動に基づいてコンポーネントおよびドライバの起動順序を変更する能力を含むことができる。代替的に、または追加的に、諸実施形態は、デバイス全体をオンにし、外部デバイスまたはコンポーネントを始動させる能力を含むことができる。代替的に、または追加的に、諸実施形態は、一時的ストアに（場合によってはフィルタリングされた）信号を送る能力を含んで、ユーザによる電源投入開始の直前に起こったことをデバイスが理解するようにすることができ、したがってデバイスは、電源投入のルール１０５を学習することができる。代替的に、または追加的に、諸実施形態は、バッテリーの消耗を防ぐ方法で学習したパターンを増強するために以前のオン／オフ状態の遷移を監視する能力を含むことができる。代替的に、または追加的に、諸実施形態は、オフラインで訓練されたモデルおよびルール１０５をエンジンに供給する能力を含むことができる。代替的に、または追加的に、諸実施形態は、センサを実装のために、場合によってはばらばらの、場合によってはネットワーク上の、場合によっては無線でデバイスに組み込む能力を含むことができる。代替的に、または追加的に、諸実施形態は、時間の更新メカニズムによってルール１０５をシステムにプッシュする能力を含むことができ、電源投入コマンドに対するデバイスの反応性は、一般的に低下する。
【００３５】
[0037]次に、様々な実施形態で実装することができるいくつかのセンサのいくつかの例を示す。いくつかの実施形態は、加速度計のような、加速度または傾斜のセンサを含むことができる。これは、デバイスの動きの検出に使用することができる。
【００３６】
[0038]いくつかの実施形態は、隣接デバイスがオンになる、またはデバイスに接近するとき検出するように構成されたセンサを含むことができる。例えば、無線検出のこの目的のためにＢｌｕｅｔｏｏｔｈまたはＷｉ−Ｆｉ無線を使用することができる。あるいは、ドッキングステーションおよび／または他の電気接続のような有線接続を使用して、近接またはオンになっているデバイスを検出することができる。
【００３７】
[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]本発明は、その趣旨または本質的な特徴を逸脱することなく、他の特定の形態で具体化することができる。記載した実施形態は、あらゆる点で単に例示であって、限定ではないと考えられなければならない。したがって本発明の範囲は、前述の説明ではなく、添付の特許請求の範囲によって示される。特許請求の範囲の均等物の意味および範囲内で生じるあらゆる変更は、特許請求の範囲の内に含まれなければならない。
【図１】
2014524627.tif 000003
【図２】
2014524627.tif 000004
【図３】
2014524627.tif 000005
【国際調査報告】
2014524627.tif 000006
2014524627.tif 000007