(57)【要約】【課題】機器の電力状態を反映したより適切なタスクの配分を実現する。【解決手段】ネットワークに接続された電子機器であって、上記ネットワークに接続された１または複数の機器の電力状態を示す情報を取得する電力状態検出部と、上記電力状態に基づいて上記１または複数の機器の中で上記電子機器のタスクを処理する機器を選択する機器選択部と、上記選択された機器にタスク処理のリクエストを送信するリクエスト送信部とを備える電子機器が提供される。【選択図】図２
2015151548.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続された電子機器であって、
前記ネットワークに接続された１または複数の機器の電力状態を示す情報を取得する電力状態検出部と、
前記電力状態に基づいて前記１または複数の機器の中で前記電子機器のタスクを処理する機器を選択する機器選択部と、
前記選択された機器にタスク処理のリクエストを送信するリクエスト送信部と
を備える電子機器。
【請求項２】
前記電力状態検出部は、前記電子機器の電力状態を示す第１の情報と、前記ネットワークに接続された他の機器の電力状態を示す第２の情報とを取得し、
前記機器選択部は、前記第１の情報および前記第２の情報によって示される電力状態に基づいて、前記タスク処理を前記電子機器で実行するか、前記タスク処理の少なくとも一部を前記少なくとも１つの他の機器に依頼するかを選択し、
前記リクエスト送信部は、前記タスク処理の少なくとも一部を前記他の機器に依頼する場合に、前記他の機器に前記タスク処理のリクエストを送信する、請求項１に記載の電子機器。
【請求項３】
前記機器選択部は、前記第１の情報に基づいて算出される前記電子機器が前記タスク処理を実行した場合の前記電子機器のバッテリー残量と、前記第２の情報に基づいて算出される前記他の機器に前記タスク処理を依頼した場合の前記他の機器のバッテリー残量とを比較した結果に基づいて前記選択を実行する、請求項２に記載の電子機器。
【請求項４】
前記リクエスト送信部は、前記他の機器に、前記タスク処理のための消費電力量の予測値を含むリクエストを送信する、請求項２に記載の電子機器。
【請求項５】
前記機器選択部は、前記他の機器が、前記消費電力量の予測値に基づいて前記タスク処理を拒絶した場合に、前記タスクを処理する機器を再選択する、請求項４に記載の電子機器。
【請求項６】
前記電力状態検出部は、前記電子機器とは異なる第１の機器および第２の機器の電力状態を示す情報を取得し、
前記機器選択部は、前記タスクの処理を前記第１の機器に依頼するか前記第２の機器に依頼するかを選択する、請求項１に記載の電子機器。
【請求項７】
前記機器選択部は、前記第１の機器に前記タスクの処理を依頼した場合の前記第１の機器のバッテリー残量と、前記第２の機器に前記タスクの処理を依頼した場合の前記第２の機器のバッテリー残量とを比較した結果に基づいて前記選択を実行する、請求項６に記載の電子機器。
【請求項８】
前記電力状態検出部は、前記ネットワークに新たに接続された機器の電力状態を示す情報を取得する、請求項１に記載の電子機器。
【請求項９】
前記電力状態検出部は、前記１または複数の機器のいずれかが電源接続されたときに、該電源接続された機器の電力状態を示す情報を更新する、請求項１に記載の電子機器。
【請求項１０】
前記電力状態検出部は、前記１または複数の機器のいずれかのバッテリー残量が変化したときに、当該機器の電力状態を示す情報を更新する、請求項１に記載の電子機器。
【請求項１１】
前記電力状態検出部は、前記１または複数の機器のバッテリー残量、電源接続の有無、予想稼働時間、または処理性能を示す情報を取得する、請求項１に記載の電子機器。
【請求項１２】
前記機器選択部は、前記タスク処理のための消費電力量の予測値に基づいて前記選択を実行する、請求項１に記載の電子機器。
【請求項１３】
ネットワークに接続された電子機器が備えるプロセッサに、
前記ネットワークに接続された１または複数の機器の電力状態を示す情報を取得する機能と、
前記電力状態に基づいて前記１または複数の機器の中で前記電子機器のタスクを処理する機器を選択する機能と、
前記選択された機器にタスク処理のリクエストを送信する機能と
を実現させるためのプログラムが記録された記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、電子機器および記録媒体に関する。
【背景技術】
【０００２】
近年、電子機器の高機能化が進んでいる。例えば、高い画像処理能力を有するテレビやゲーム機が普及している。また、スマートフォンやタブレット型ＰＣ（Personal  Computer）の普及によって、ユーザが複数の情報処理端末を所有することも一般的になってきている。こうした機器は、いずれも高い情報処理能力をもっているが、その分ユーザに提供する機能も高度化しており、各機器単独では必ずしも十分なサービスの質を確保できるとは限らない。【０００３】
そのような中、例えば特許文献１では、ネットワーク上のある電子機器（クライアント）から依頼されたタスクの処理を、ネットワーク上の他の電子機器（ノード）に割り当てるにあたり、割り当ての処理をするスケジューラとして、スケジューラにより適した機器を用いる技術が提案されている。各機器は、一時的にスケジューラとして用いられていなくても、潜在的にスケジューラとして機能することが可能であるため、例えばスケジューラとして機能していた機器がその機能を果たさなくなった場合にも、別の機器をスケジューラとして処理を続行することができ、タスクの分散処理を効率よく安定して実行することができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−６１７００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、例えば、ネットワーク上の電子機器の中には、電源に接続されている機器だけではなく、モバイル機器やウェアラブル機器のように、バッテリーで駆動される機器も存在しうる。このような機器を含む複数の機器の間でタスクを分散処理しようとする場合、各機器の電源接続の有無やバッテリー残量に応じて、最適なタスクの配分は異なりうる。【０００６】
そこで、本開示では、機器の電力状態を反映したより適切なタスクの配分を実現することが可能な、新規かつ改良された電子機器および記録媒体を提案する。
【課題を解決するための手段】
【０００７】
本開示によれば、ネットワークに接続された電子機器であって、上記ネットワークに接続された１または複数の機器の電力状態を示す情報を取得する電力状態検出部と、上記電力状態に基づいて上記１または複数の機器の中で上記電子機器のタスクを処理する機器を選択する機器選択部と、上記選択された機器にタスク処理のリクエストを送信するリクエスト送信部とを備える電子機器が提供される。【０００８】
また、本開示によれば、ネットワークに接続された電子機器が備えるプロセッサに、上記ネットワークに接続された１または複数の機器の電力状態を示す情報を取得する機能と、上記電力状態に基づいて上記１または複数の機器の中で上記電子機器のタスクを処理する機器を選択する機能と、上記選択された機器にタスク処理のリクエストを送信する機能とを実現させるためのプログラムが記録された記録媒体が提供される。
【発明の効果】
【０００９】
以上説明したように本開示によれば、機器の電力状態を反映したより適切なタスクの配分を実現することができる。【００１０】
なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
【図面の簡単な説明】
【００１１】
【図１】本開示の一実施形態に係るシステムの例を示す図である。
【図２】本開示の一実施形態に係る電子機器の機能構成例を示すブロック図である。
【図３】本開示の一実施形態に係る電子機器における処理の例を示すフローチャートである。
【図４】本開示の一実施形態において電力状態情報として格納される情報の例を示す図である。
【図５】本開示の一実施形態における機器間のデータのやりとりの例を示すシーケンス図である。
【図６】本開示の実施形態に係る情報処理装置のハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１３】
なお、説明は以下の順序で行うものとする。
１．システム構成
２．電子機器の機能構成
３．処理フロー
４．格納される情報の例
５．データのやりとりの例
６．他の実施形態
７．ハードウェア構成
８．補足
【００１４】
（１．システム構成）
図１は、本開示の一実施形態に係るシステムの例を示す図である。図１を参照すると、システム１０は、ネットワーク２００に接続された電子機器１００を含む。システム１０は、さらに、ネットワーク２００に接続されたサーバ３００を含んでもよい。
【００１５】
電子機器１００は、ユーザに各種の機能を提供する。電子機器１００は、例えば、スマートフォン１００ａやタブレットのようなモバイル装置であってもよいし、アイウェア１００ｂやスマートウォッチ１００ｃのようなウェアラブル装置であってもよい。あるいは、電子機器１００は、ＰＣやテレビ１００ｄのような他のＣＥ（Consumer  Electronics）機器であってもよい。サーバ３００は、電子機器１００のリクエストに応じてさまざまなサービスを提供する。サーバ３００は、例えば、アプリケーションサーバやデータベースサーバなど、さまざまなサーバ機能を提供する１または複数のサーバ装置を含む。なお、電子機器１００、およびサーバ３００を構成するサーバ装置は、例えば後述する情報処理装置のハードウェア構成によって実現されうる。
【００１６】
電子機器１００とサーバ３００とは、ネットワーク２００によって接続される。また、システム１０に複数の電子機器１００が含まれる場合、これらの電子機器１００はネットワーク２００によって相互に接続されている。ネットワーク２００は、インターネットや家庭内ＬＡＮなどの有線または無線のネットワークでありうる。
【００１７】
（２．電子機器の機能構成）
図２は、本開示の一実施形態に係る電子機器の機能構成例を示すブロック図である。図２を参照すると、電子機器１００は、電力状態検出部１１０と、機器選択部１４０と、リクエスト送信部１６０と、結果出力部１８０とを含む。これらの機能構成は、電子機器１００が備えるＣＰＵなどのプロセッサがプログラムに従って動作することによって実現されうる。また、電子機器１００は、ネットワーク２００と通信する通信装置１２０を有する。さらに、電子機器１００では、メモリまたはストレージに電力状態情報１３０およびタスクデータ１５０が格納される。
【００１８】
電力状態検出部１１０は、ネットワークに接続された１または複数の機器の電力状態を示す情報を取得する。より具体的には、例えば、電力状態検出部１１０は、電子機器１００自体の電力状態を示す第１の情報を内部的に取得する。また、例えば、電力状態検出部１１０は、ネットワーク２００に接続された他の機器の電力状態を示す第２の情報を、通信装置１２０を介して取得する。第１の情報および第２の情報は、いずれも、電力状態情報１３０として格納される。電力状態情報１３０は、例えば、各機器のバッテリー残量、電源接続の有無、予想稼働時間、および／または処理性能を示す情報を含みうる。
【００１９】
機器選択部１４０は、ネットワークに接続された１または複数の機器の電力状態に基づいて、これらの機器の中で電子機器１００のタスクを処理する機器を選択する。例えば、機器選択部１４０は、電力状態情報１３０によって示される電力状態に基づいて機器を選択する。上記の通り、電力状態情報１３０は、電子機器１００自体の電力を示す第１の情報と、他の機器の電力状態を示す第２の情報とを含みうる。この場合、機器選択部１４０は、第１の情報および第２の情報によってそれぞれ示される電力状態に基づいて、タスクの処理を電子機器１００が自ら実行するか、タスクの処理を他の機器に依頼するかを選択する。
【００２０】
より具体的には、例えば、機器選択部１４０は、上記の第１の情報に基づいて、電子機器１００が自らタスクの処理を実行した場合の電子機器１００のバッテリー残量を算出する。また、機器選択部１４０は、第２の情報に基づいて、他の機器にタスクの処理を依頼した場合の、当該他の機器のバッテリー残量を算出する。さらに、機器選択部１４０は、これらのバッテリー残量を比較した結果に基づいて、タスクの処理を電子機器１００が自ら実行するか、タスクの処理を他の機器に依頼するかの選択を実行する。
【００２１】
ここで、それぞれの場合のバッテリー残量は、例えば、タスクの処理による消費電力量の予測値に基づいて算出される。タスクの処理による消費電力量は、例えば、タスクデータ１５０として格納されているタスクの種類やタスクが扱うデータ量、および電子機器１００や他の機器の処理能力に基づいて算出される。消費電力量およびバッテリー残量の算出の処理にも電力が消費されるため、算出のための手順は簡略化されていることが望ましい。例えば、消費電力量を算出するために、タスクの種類ごとの固定値や、扱われるデータ量を用いた単純な関数が利用されてもよい。
【００２２】
リクエスト送信部１６０は、機器選択部１４０によって選択された機器に、タスク処理のリクエストを送信する。例えば、機器選択部１４０が、タスクの処理を電子機器１００が自ら実行することを選択した場合、リクエスト送信部１６０は、タスク処理部１７０に内部的にリクエストを送信する。また、例えば、機器選択部１４０が、タスクの処理を他の機器に依頼することを選択した場合、リクエスト送信部１６０は、通信装置１２０を介してネットワーク２００上の他の機器にリクエストを送信する。例えば、タスクを電子機器１００と他の機器との両方に分散して処理する場合、リクエスト送信部１６０は、タスク処理部１７０と、ネットワーク２００上の他の機器との両方にリクエストを送信してもよい。
【００２３】
ここで、リクエスト送信部１６０が送信するリクエストには、タスクデータ１５０から取得されたデータが含まれうる。リクエストを受信した機器は、リクエストに含まれるデータを用いてタスクの処理を実行する。また、リクエストには、機器選択部１４０によって算出された、タスクの処理による消費電力量の予測値が含まれてもよい。この場合、リクエストを受信した機器は、例えば消費電力量がバッテリー残量と比較して大きすぎると判断した場合には、タスクの処理を拒絶してもよい。この場合、当該機器から電子機器１００に拒絶の通知が送信され、電子機器１００では機器選択部１４０が新たなタスク処理の依頼先を選択する。
【００２４】
タスク処理部１７０は、リクエスト送信部１６０から内部的にリクエストが送信された場合に、リクエストに従ってタスクを実行する。タスクは、例えば、図１を参照して例示したような電子機器１００、より具体的にはスマートフォン１００ａやアイウェア１００ｂ、スマートウォッチ１００ｃ、テレビ１００ｄのようなさまざまな機器において実行されるタスクを含みうる。このような機器におけるタスクを実行するための機能構成については、公知の各種の構成を採用することが可能であるため、ここでは詳細な説明を省略する。
【００２５】
結果出力部１８０は、タスクを実行した結果を出力する。例えば、タスクがコンテンツの出力、より具体的には画像や音声などの出力を伴うものである場合、結果出力部１８０は、電子機器１００が備えるディスプレイやスピーカなどの出力装置（図示せず）を制御してコンテンツの出力を実行させる。また、タスクが出力を伴わないものの、タスクが実行されたことの通知が要求される場合、結果出力部１８０は、上記の出力装置を制御して通知の出力を実行させる。あるいは、結果出力部１８０は、タスクを実行した結果をログとして内部的に出力してもよい。電子機器１００が自らタスクを実行した場合、実行の結果はタスク処理部１７０から取得される。また、通信装置１２０を介して他の機器にタスクの実行を依頼した場合、実行の結果は通信装置１２０によってネットワーク２００を介して取得される。
【００２６】
以上で説明したような電子機器１００の機能構成によって、機器の電力状態を反映したより適切なタスクの配分を実現することができる。例えば、電子機器１００のバッテリー残量が少ない場合には、バッテリー残量に余裕がある、または電源接続されている他の機器にタスクの処理を依頼することが選択される。また、例えば、電子機器１００のバッテリー残量には余裕がある一方で、ネットワーク２００に接続された他の機器バッテリー残量が少ない場合には、他の機器の方が処理能力が多少高いような場合であっても、電子機器１００が自らタスクの処理を実行することが選択されうる。
【００２７】
なお、上記のような電子機器１００、または他の機器において処理されるタスクの例としては、ＨＴＭＬ（Hyper  Text  Markup  Language）ドキュメントを表示するときのJavascriptのＡＯＴ（Ahead-Of-Time）コンパイルや、各種データの暗号化、画像や音声のエンコードおよびデコードなどが挙げられる。
【００２８】
（３．処理フロー）
図３は、本開示の一実施形態に係る電子機器における処理の例を示すフローチャートである。図３を参照すると、まず、電子機器１００では、電力状態検出部１１０が、ネットワーク２００上の機器の電力状態を検出する（Ｓ１０１）。ここで、電力状態の検出は、例えば電子機器１００において処理すべきタスクが発生したときに実行されてもよいし、タスクの有無に関わらず定期的に実行されてもよい。
【００２９】
なお、電力状態検出部１１０が電力状態を能動的に検出する場合、電力状態検出部１１０は、通信装置１２０を介してネットワーク２００上の各機器にリクエストを送信する。あるいは、ネットワーク２００上の機器は、例えば新たにネットワーク２００に接続された場合、電源に接続されたり電源との接続が解除されたりした場合、および／またはバッテリー残量が変化した場合に、電子機器１００に対して電力状態を示す情報を送信してもよい。この場合、電力状態検出部１１０は、随時、各機器の電力状態を受動的に検出する。
【００３０】
次に、電子機器１００において処理すべきタスクごとのループ処理が実行される（Ｓ１０３）。ここでは、まず、機器選択部１４０がタスクデータ１５０を参照して、当該タスクの処理をネットワーク２００上の他の機器に依頼することが合理的であるか否かを判定する（Ｓ１０５）。ここで、タスクの処理を他の機器に依頼することが合理的であるか否かは、上述したように、電子機器１００および他の機器の電力状態に基づいて判定されうる。
【００３１】
例えば、電子機器１００のバッテリー残量が少なく、他の機器のバッテリー残量に余裕があり（または他の機器が電源接続されており）、また他の機器にタスクの処理を依頼するための通信などの消費電力よりも、タスクの処理を依頼することによって電子機器１００が節約できる電力の方が大きい場合、タスクの処理を他の機器に依頼することは合理的である。一方、電子機器１００のバッテリー残量に比較的余裕がある一方で、他の機器のバッテリー残量が少ない場合や、タスクの処理を依頼することによって電子機器１００が節約できる電力よりもタスクの処理を依頼するための通信などの消費電力の方が大きい場合、タスクの処理を他の機器に依頼することは合理的ではない。
【００３２】
Ｓ１０５の判定において、タスクの処理を他の機器に依頼することが合理的であると判定された場合（ＹＥＳ）、リクエスト送信部１６０は、通信装置１２０を介してネットワーク２００上の他の機器にタスク処理のリクエストを送信する（Ｓ１０７）。一方、タスクの処理を他の機器に依頼することが合理的ではないと判定された場合（ＮＯ）、リクエスト送信部１６０はタスク処理部１７０に内部的なリクエストを送信し、タスク処理部１７０がタスク処理を実行する（Ｓ１０９）。
【００３３】
（４．格納される情報の例）
図４は、本開示の一実施形態において電力状態情報として格納される情報の例を示す図である。図４を参照すると、電力状態情報１３０には、機器名１３０１と、バッテリー残量１３０２と、電源接続フラグ１３０３と、処理性能１３０４とが含まれる。以下、それぞれの項目によって示される情報についてさらに説明する。
【００３４】
機器名１３０１は、ネットワーク２００に接続されたそれぞれの機器を識別するための情報である。図示された例では、上記で図１を参照して説明した例におけるスマートフォン１００ａ、アイウェア１００ｂ、スマートウォッチ１００ｃ、およびテレビ１００ｄについての電力状態情報が格納されていることがわかる。なお、機器名１３０１は、図４では説明のために具体的な名称（機器の種類）によって記述されているが、実際には機器の型番や、システム１０内で割り振られるＩＤなどが用いられてもよい。
【００３５】
バッテリー残量１３０２は、それぞれの機器のバッテリー残量を示す。例えばテレビ１００ｄのように電源に接続されている機器の場合、バッテリー残量１３０２は図示された例のように無効値（null）にされるか、常に１００％として扱われてもよい。電源接続フラグ１３０３は、それぞれの機器が電源に接続されているか否かを示す。図示された例ではテレビ１００ｄだけが電源に接続されており、残りのスマートフォン１００ａ、アイウェア１００ｂ、およびスマートウォッチ１００ｃは電源に接続されていないことがわかる。これらの機器が充電などのために電源に接続された場合、電源接続フラグ１３０３が更新されうる。
【００３６】
処理性能１３０４は、それぞれの機器がタスクを処理する性能を示す。図示された例では、ＣＰＵのクロック数、コア数およびキャッシュメモリサイズによって処理性能が記述されている。処理性能が高い機器の方が、同じタスクの処理を短時間で効率的に実行することができる。従って、機器の時間あたりの消費電力が同程度であれば、同じタスクの処理のための消費電力は削減されることになる。あるいは、処理性能１３０４は、消費電力あたりの処理性能を示す指標によって表現されてもよい。この場合、処理性能が高い機器の方が、より少ない消費電力でタスクの処理を実行できるといえる。機器選択部１４０は、バッテリー残量１３０２および電源接続フラグ１３０３によってバッテリー残量に余裕がある（または電源に接続されている）ことが示される機器をタスク処理の依頼先として優先的に選択するのとともに、またはこれに代えて、処理性能１３０４によってより少ない消費電力でタスクの処理を実行できることが示される機器をタスク処理の依頼先として優先的に選択してもよい。
【００３７】
さらに、処理性能１３０４には、それぞれの機器がタスクを処理する性能の動的な変化を示す情報が含まれてもよい。例えば、機器が別のタスク（その機器自身のタスク、またはさらに別の機器から処理を依頼されたタスク）の処理を実行しているような場合、当該機器が新たなタスクを処理する性能は一時的に低下する。処理性能１３０４は、例えばＣＰＵの利用率やキャッシュメモリの残量などによって、それぞれの機器のリアルタイムの処理性能を示してもよい。また、処理性能１３０４は、それぞれの機器が実行しているタスクに関する情報（タスクの種類やタスクが扱うデータ量など）を含み、機器選択部１４０がこの情報に基づいて機器のリアルタイムの処理性能を推定してもよい。
【００３８】
ここでは、図４を参照して、本実施形態における電力状態情報１３０の例について説明した。しかしながら、電力状態情報１３０は、上記の例に限らず、さまざまな項目を含みうる。例えば、バッテリー残量１３０２に代えて、またはこれに加えて、機器の予想稼働時間によって表現されてもよい。機器の予想稼働時間は、例えば、バッテリー残量と機器の平均的な消費電力とに基づいて算出される。また、予想稼働時間は、現時点で機器が実行しているタスクの処理のための消費電力を考慮して算出されてもよい。
【００３９】
（５．データのやりとりの例）
図５は、本開示の一実施形態における機器間のデータのやりとりの例を示すシーケンス図である。図５は、図１に示したシステム１０において、アイウェア１００ｂが、スマートフォン１００ａおよびテレビ１００ｄの電力状態を示す情報に基づいてタスクの処理を依頼する機器を選択する例を示す。
【００４０】
図示された例では、まず、アイウェア１００ｂが、スマートフォン１００ａおよびテレビ１００ｄのそれぞれから電力状態を示す情報を取得する（Ｓ３０１〜Ｓ３０９）。より具体的には、アイウェア１００ｂでは、電力状態検出部１１０が、通信装置１２０およびネットワーク２００を介してテレビ１００ｄにリクエストを送信し（Ｓ３０１）、テレビ１００ｄがリクエストに応じて提供した情報を受信する（Ｓ３０３）。同様に、アイウェア１００ｂの電力状態検出部１１０は、スマートフォン１００ａにもリクエストを送信し（Ｓ３０５）、スマートフォン１００ａがリクエストに応じて提供した情報を受信する（Ｓ３０７）。電力状態検出部１１０は、受信された情報を電力状態情報１３０として格納する（Ｓ３０９）。
【００４１】
なお、上記のＳ３０１〜Ｓ３０９の処理は、例えばアイウェア１００ｂにおいて処理すべきタスクが発生したときに実行されてもよいし、タスクの有無に関わらず定期的に実行されてもよい。あるいは、上述のように、スマートフォン１００ａやテレビ１００ｄからの情報の提供は、これらの機器が新たにネットワーク２００に接続されたり、電源に接続されたり、電源との接続が解除されたり、バッテリー残量が変化したりした場合に、スマートフォン１００ａやテレビ１００ｄの側から送信されてもよい。この場合、Ｓ３０１，Ｓ３０５のようなアイウェア１００ｂ側からのリクエストは、必ずしも送信されなくてもよい。
【００４２】
続いて、アイウェア１００ｂでは、機器選択部１４０が、Ｓ３０３，Ｓ３０７で取得された情報を含む電力状態情報１３０に基づいて、アイウェア１００ｂで発生したタスクの処理を実行する機器を選択する（Ｓ３１１）。より具体的には、機器選択部１４０は、処理をアイウェア１００ｂが自ら実行するか、処理を他の機器に依頼するかを選択する。さらに、機器選択部１４０は、処理を他の機器に依頼する場合、スマートフォン１００ａとテレビ１００ｄとのどちらに依頼するかを選択する。
【００４３】
つまり、図示された例において、アイウェア１００ｂの電力状態検出部１１０は、Ｓ３０３，Ｓ３０７において、アイウェア１００ｂとは異なる第１の機器（スマートフォン１００ａ）および第２の機器（テレビ１００ｄ）の電力状態を示す情報を取得している。アイウェア１００ｂの機器選択部１４０は、タスクの処理を他の機器に依頼することが選択された場合に、さらに、タスクの処理を第１の機器（スマートフォン１００ａ）に依頼するか第２の機器（テレビ１００ｄ）に依頼するかを選択する。
【００４４】
なお、機器選択部１４０は、第１の機器および第２の機器の両方にタスクの処理を分散させて依頼することを選択してもよい。また、アイウェア１００ｂがタスクの処理を他の機器に依頼する場合には、タスクの処理の全部を他の機器に依頼する場合に加えて、タスクの処理の一部をアイウェア１００ｂが自ら実行しつつ、残りの部分を他の機器に依頼する場合が含まれる。
【００４５】
図示された例では、アイウェア１００ｂの機器選択部１４０が、テレビ１００ｄにタスクの処理を依頼することを選択している。例えば、機器選択部１４０は、スマートフォン１００ａにタスクの処理を依頼した場合のスマートフォン１００ａのバッテリー残量と、テレビ１００ｄにタスクの処理を依頼した場合のテレビ１００ｄのバッテリー残量とを比較した結果に基づいて、タスクの処理を依頼する機器を選択する。例えば、スマートフォン１００ａが電源に接続されていないのに対して、テレビ１００ｄが電源に接続されていれば、上記の判定においてテレビ１００ｄがタスク処理の依頼先として優先的に選択されうる。
【００４６】
従って、アイウェア１００ｂのリクエスト送信部１６０が通信装置１２０およびネットワーク２００を介してテレビ１００ｄにタスク処理のリクエストを送信する（Ｓ３１３）。テレビ１００ｄは、リクエストに応じてタスクの処理を実行し（Ｓ３１５）、実行の結果をネットワーク２００を介してアイウェア１００ｂに送信する（Ｓ３１７）。アイウェア１００ｂでは、結果出力部１８０が通信装置１２０を介してタスク処理の結果を受信し、必要に応じて出力する。
【００４７】
（６．他の実施形態）
以上、本開示の一実施形態について説明したが、他にもさまざまな実施形態が可能である。
【００４８】
例えば、上記の実施形態では、ネットワーク２００に接続された電子機器１００のそれぞれ（スマートフォン１００ａ、アイウェア１００ｂ、スマートウォッチ１００ｃ、および／またはテレビ１００ｄ）が、処理すべきタスクが発生した場合などに、個別的にタスクを実行する機器を選択する処理を実行していた。しかし、他の実施形態では、ネットワーク２００に接続された電子機器１００のうちのいずれか（ホスト電子機器）、またはサーバ３００が、統合的にタスクを実行する機器を選択してもよい。この場合、それぞれの電子機器１００は、ホスト電子機器またはサーバ３００に、電力状態を示す情報をアップロードする。また、電子機器１００は、処理すべきタスクが発生したときには、ホスト電子機器（自身の場合もある）またはサーバ３００にタスクの発生を通知する。ホスト電子機器またはサーバ３００は、例えば上記の実施形態で図３を参照して説明したような手順によってタスクの処理を実行する機器を選択し、選択された機器にタスク処理のリクエストを送信するか、自らタスク処理を実行する。この実施形態では、ホスト電子機器、またはサーバ３００が、上記の実施形態における電子機器１００と同様の機能構成を有する。
【００４９】
（７．ハードウェア構成）
次に、図６を参照して、本開示の実施形態に係る情報処理装置のハードウェア構成について説明する。図６は、本開示の実施形態に係る情報処理装置のハードウェア構成例を示すブロック図である。図示された情報処理装置９００は、例えば、上記の実施形態における電子機器１００およびサーバ３００を実現しうる。
【００５０】
情報処理装置９００は、ＣＰＵ（Central  Processing  unit）９０１、ＲＯＭ（Read  Only  Memory）９０３、およびＲＡＭ（Random  Access  Memory）９０５を含む。また、情報処理装置９００は、ホストバス９０７、ブリッジ９０９、外部バス９１１、インターフェース９１３、入力装置９１５、出力装置９１７、ストレージ装置９１９、ドライブ９２１、接続ポート９２３、通信装置９２５を含んでもよい。さらに、情報処理装置９００は、必要に応じて、撮像装置９３３、およびセンサ９３５を含んでもよい。情報処理装置９００は、ＣＰＵ９０１に代えて、またはこれとともに、ＤＳＰ（Digital  Signal  Processor）またはＡＳＩＣ（Application  Specific  Integrated  Circuit）と呼ばれるような処理回路を有してもよい。
【００５１】
ＣＰＵ９０１は、演算処理装置および制御装置として機能し、ＲＯＭ９０３、ＲＡＭ９０５、ストレージ装置９１９、またはリムーバブル記録媒体９２７に記録された各種プログラムに従って、情報処理装置９００内の動作全般またはその一部を制御する。ＲＯＭ９０３は、ＣＰＵ９０１が使用するプログラムや演算パラメータなどを記憶する。ＲＡＭ９０５は、ＣＰＵ９０１の実行において使用するプログラムや、その実行において適宜変化するパラメータなどを一次記憶する。ＣＰＵ９０１、ＲＯＭ９０３、およびＲＡＭ９０５は、ＣＰＵバスなどの内部バスにより構成されるホストバス９０７により相互に接続されている。さらに、ホストバス９０７は、ブリッジ９０９を介して、ＰＣＩ（Peripheral  Component  Interconnect/Interface）バスなどの外部バス９１１に接続されている。
【００５２】
入力装置９１５は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチおよびレバーなど、ユーザによって操作される装置である。入力装置９１５は、例えば、赤外線やその他の電波を利用したリモートコントロール装置であってもよいし、情報処理装置９００の操作に対応した携帯電話などの外部接続機器９２９であってもよい。入力装置９１５は、ユーザが入力した情報に基づいて入力信号を生成してＣＰＵ９０１に出力する入力制御回路を含む。ユーザは、この入力装置９１５を操作することによって、情報処理装置９００に対して各種のデータを入力したり処理動作を指示したりする。
【００５３】
出力装置９１７は、取得した情報をユーザに対して視覚的または聴覚的に通知することが可能な装置で構成される。出力装置９１７は、例えば、ＬＣＤ（Liquid  Crystal  Display）、ＰＤＰ（Plasma  Display  Panel）、有機ＥＬ（Electro-Luminescence）ディスプレイなどの表示装置、スピーカおよびヘッドホンなどの音声出力装置、ならびにプリンタ装置などでありうる。出力装置９１７は、情報処理装置９００の処理により得られた結果を、テキストまたは画像などの映像として出力したり、音声または音響などの音声として出力したりする。
【００５４】
ストレージ装置９１９は、情報処理装置９００の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置９１９は、例えば、ＨＤＤ（Hard  Disk  Drive）などの磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス、または光磁気記憶デバイスなどにより構成される。このストレージ装置９１９は、ＣＰＵ９０１が実行するプログラムや各種データ、および外部から取得した各種のデータなどを格納する。
【００５５】
ドライブ９２１は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブル記録媒体９２７のためのリーダライタであり、情報処理装置９００に内蔵、あるいは外付けされる。ドライブ９２１は、装着されているリムーバブル記録媒体９２７に記録されている情報を読み出して、ＲＡＭ９０５に出力する。また、ドライブ９２１は、装着されているリムーバブル記録媒体９２７に記録を書き込む。
【００５６】
接続ポート９２３は、機器を情報処理装置９００に直接接続するためのポートである。接続ポート９２３は、例えば、ＵＳＢ（Universal  Serial  Bus）ポート、ＩＥＥＥ１３９４ポート、ＳＣＳＩ（Small  Computer  System  Interface）ポートなどでありうる。また、接続ポート９２３は、ＲＳ−２３２Ｃポート、光オーディオ端子、ＨＤＭＩ（登録商標）（High-Definition  Multimedia  Interface）ポートなどであってもよい。接続ポート９２３に外部接続機器９２９を接続することで、情報処理装置９００と外部接続機器９２９との間で各種のデータが交換されうる。
【００５７】
通信装置９２５は、例えば、通信ネットワーク９３１に接続するための通信デバイスなどで構成された通信インターフェースである。通信装置９２５は、例えば、有線または無線ＬＡＮ（Local  Area  Network）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、またはＷＵＳＢ（Wireless  USB）用の通信カードなどでありうる。また、通信装置９２５は、光通信用のルータ、ＡＤＳＬ（Asymmetric  Digital  Subscriber  Line）用のルータ、または、各種通信用のモデムなどであってもよい。通信装置９２５は、例えば、インターネットや他の通信機器との間で、ＴＣＰ／ＩＰなどの所定のプロトコルを用いて信号などを送受信する。また、通信装置９２５に接続される通信ネットワーク９３１は、有線または無線によって接続されたネットワークであり、例えば、インターネット、家庭内ＬＡＮ、赤外線通信、ラジオ波通信または衛星通信などである。
【００５８】
撮像装置９３３は、例えば、ＣＣＤ（Charge  Coupled  Device）またはＣＭＯＳ（Complementary  Metal  Oxide  Semiconductor）などの撮像素子、および撮像素子への被写体像の結像を制御するためのレンズなどの各種の部材を用いて実空間を撮像し、撮像画像を生成する装置である。撮像装置９３３は、静止画を撮像するものであってもよいし、また動画を撮像するものであってもよい。
【００５９】
センサ９３５は、例えば、加速度センサ、ジャイロセンサ、地磁気センサ、光センサ、音センサなどの各種のセンサである。センサ９３５は、例えば情報処理装置９００の筐体の姿勢など、情報処理装置９００自体の状態に関する情報や、情報処理装置９００の周辺の明るさや騒音など、情報処理装置９００の周辺環境に関する情報を取得する。また、センサ９３５は、ＧＰＳ（Global  Positioning  System）信号を受信して装置の緯度、経度および高度を測定するＧＰＳセンサを含んでもよい。
【００６０】
以上、情報処理装置９００のハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。かかる構成は、実施する時々の技術レベルに応じて適宜変更されうる。
【００６１】
（８．補足）
本開示の実施形態は、例えば、上記で説明したような電子機器またはサーバ、システム、電子機器、サーバ、またはシステムで実行される情報処理方法、情報処理装置またはサーバを機能させるためのプログラム、およびプログラムが記録された一時的でない有形の媒体を含みうる。
【００６２】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【００６３】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【００６４】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）ネットワークに接続された電子機器であって、
前記ネットワークに接続された１または複数の機器の電力状態を示す情報を取得する電力状態検出部と、
前記電力状態に基づいて前記１または複数の機器の中で前記電子機器のタスクを処理する機器を選択する機器選択部と、
前記選択された機器にタスク処理のリクエストを送信するリクエスト送信部と
を備える電子機器。
（２）前記電力状態検出部は、前記電子機器の電力状態を示す第１の情報と、前記ネットワークに接続された他の機器の電力状態を示す第２の情報とを取得し、
前記機器選択部は、前記第１の情報および前記第２の情報によって示される電力状態に基づいて、前記タスク処理を前記電子機器で実行するか、前記タスク処理の少なくとも一部を前記少なくとも１つの他の機器に依頼するかを選択し、
前記リクエスト送信部は、前記タスク処理の少なくとも一部を前記他の機器に依頼する場合に、前記他の機器に前記タスク処理のリクエストを送信する、前記（１）に記載の電子機器。
（３）前記機器選択部は、前記第１の情報に基づいて算出される前記電子機器が前記タスク処理を実行した場合の前記電子機器のバッテリー残量と、前記第２の情報に基づいて算出される前記他の機器に前記タスク処理を依頼した場合の前記他の機器のバッテリー残量とを比較した結果に基づいて前記選択を実行する、前記（２）に記載の電子機器。
（４）前記リクエスト送信部は、前記他の機器に、前記タスク処理のための消費電力量の予測値を含むリクエストを送信する、前記（２）または（３）に記載の電子機器。
（５）前記機器選択部は、前記他の機器が、前記消費電力量の予測値に基づいて前記タスク処理を拒絶した場合に、前記タスクを処理する機器を再選択する、前記（４）に記載の電子機器。
（６）前記電力状態検出部は、前記電子機器とは異なる第１の機器および第２の機器の電力状態を示す情報を取得し、
前記機器選択部は、前記タスクの処理を前記第１の機器に依頼するか前記第２の機器に依頼するかを選択する、前記（１）〜（５）のいずれか１項に記載の電子機器。
（７）前記機器選択部は、前記第１の機器に前記タスクの処理を依頼した場合の前記第１の機器のバッテリー残量と、前記第２の機器に前記タスクの処理を依頼した場合の前記第２の機器のバッテリー残量とを比較した結果に基づいて前記選択を実行する、前記（６）に記載の電子機器。
（８）前記電力状態検出部は、前記ネットワークに新たに接続された機器の電力状態を示す情報を取得する、前記（１）〜（７）のいずれか１項に記載の電子機器。
（９）前記電力状態検出部は、前記１または複数の機器のいずれかが電源接続されたときに、該電源接続された機器の電力状態を示す情報を更新する、前記（１）〜（８）のいずれか１項に記載の電子機器。
（１０）前記電力状態検出部は、前記１または複数の機器のいずれかのバッテリー残量が変化したときに、当該機器の電力状態を示す情報を更新する、前記（１）〜（９）のいずれか１項に記載の電子機器。
（１１）前記電力状態検出部は、前記１または複数の機器のバッテリー残量、電源接続の有無、予想稼働時間、または処理性能を示す情報を取得する、前記（１）〜（１０）のいずれか１項に記載の電子機器。
（１２）前記機器選択部は、前記タスク処理のための消費電力量の予測値に基づいて前記選択を実行する、前記（１）〜（１１）のいずれか１項に記載の電子機器。
（１３）ネットワークに接続された電子機器が備えるプロセッサに、
前記ネットワークに接続された１または複数の機器の電力状態を示す情報を取得する機能と、
前記電力状態に基づいて前記１または複数の機器の中で前記電子機器のタスクを処理する機器を選択する機能と、
前記選択された機器にタスク処理のリクエストを送信する機能と
を実現させるためのプログラムが記録された記録媒体。
【符号の説明】
【００６５】
１０    システム
１００    電子機器
１１０    電力状態検出部
１２０    通信装置
１３０    電力状態情報
１４０    機器選択部
１５０    タスクデータ
１６０    リクエスト送信部
１７０    タスク処理部
１８０    結果出力部
２００    ネットワーク
３００    サーバ
【図１】
2015151548.tif 000003
【図２】
2015151548.tif 000004
【図３】
2015151548.tif 000005
【図４】
2015151548.tif 000006
【図５】
2015151548.tif 000007
【図６】
2015151548.tif 000008
【国際調査報告】
2015151548.tif 000009
2015151548.tif 000010
2015151548.tif 000011
2015151548.tif 000012