(57)【要約】  分散コンピューティングネットワークのエッジノードを使用して圧縮センシングを行うシステム及び方法。方法は、エッジノードのセンサによって連続的に生データ信号を収集することを含む。生データ信号のエネルギ歪みを定量化する信号エネルギインジケータが動的に更新される。信号エネルギインジケータが更新されると、１つ以上の圧縮特性が信号エネルギインジケータの関数として決定される。生データ信号が、圧縮データ信号を作成するために１つ以上の圧縮特性の現在の値に従ってサブサンプリングされる。圧縮データ信号を含む出力が、集中ノードに送信される。
2021533667.tif 000002
【特許請求の範囲】
【請求項１】
リソース制約のある分散コンピューティングネットワークのエッジノードを使用して圧縮センシングを行う方法であって、
前記リソース制約のある分散コンピューティングネットワークの前記エッジノードのセンサによって連続的に生データ信号を収集することと、
前記生データ信号のバリアンスを定量化する信号エネルギインジケータを動的に更新することと、
前記信号エネルギインジケータが更新されると、前記信号エネルギインジケータの関数として１つ以上の圧縮特性を決定することと、
圧縮データ信号を作成するために前記１つ以上の圧縮特性の現在の値に従って前記生データ信号をサブサンプリングすることと、
前記圧縮データ信号を含む出力を前記リソース制約のある分散コンピューティングネットワークの集中ノードに送信することと、
を含む、方法。
【請求項２】
前記１つ以上の圧縮特性は、サンプリング周波数、信号ウィンドウ長、又はこれらのうちの少なくとも１つを含む組み合わせを含む、請求項１に記載の方法。
【請求項３】
前記信号ウィンドウ長は、前記エッジノードに利用可能な前記分散コンピューティングネットワークのネットワーク容量に基づいて決定される、請求項２に記載の方法。
【請求項４】
前記サブサンプリングは、前記サンプリング周波数に対して前記生データ信号をランダムにサブサンプリングすること及びランダムにダウンサンプリングすることのうちの少なくとも１つを含む、請求項２に記載の方法。
【請求項５】
当該方法は、乱数発生器で乱数を発生させることと、サブサンプリング及びダウンサンプリングのうちの前記少なくとも１つのためのインデックスとして前記乱数を利用することとを含む、請求項４に記載の方法。
【請求項６】
前記乱数発生器は、シーダブル乱数発生器であり、乱数は、前記圧縮データ信号の伸長中に前記集中ノードで前記乱数発生器の第２のインスタンスをシーディングすることにより再作成されることができる、請求項５に記載の方法。
【請求項７】
前記エッジノードは、固定ネットワーク容量を備え、当該方法は、前記圧縮データ信号のサイズと前記固定ネットワーク容量とを比較することと、前記サイズが前記固定ネットワーク容量によって許容されるサイズよりも大きい場合、前記圧縮データ信号をさらに圧縮するために前記圧縮データ信号をサブサンプリングすることとを含む、請求項１に記載の方法。
【請求項８】
当該方法は、前記圧縮データ信号の前記サイズが前記固定ネットワーク容量によって許容されるサイズよりも小さい場合、前記生データ信号から追加のサンプル又はパケットを送信することを含む、請求項７に記載の方法。
【請求項９】
請求項１に記載の集中ノードで前記圧縮データ信号を伸長する方法。
【請求項１０】
当該方法は、前記生データ信号に対する前記圧縮データ信号のサイズに基づいて前記生データ信号のエネルギの推定を行うことを含む、請求項９に記載の方法。
【請求項１１】
当該方法は、前記生データ信号のエネルギの推定に基づいて伸長アルゴリズムを選択することを含む、請求項１０に記載の方法。
【請求項１２】
リソース制約のある分散コンピューティングネットワークのためのエッジノードであって、
前記リソース制約のある分散コンピューティングネットワーク上でのデータ通信を可能にするように構成される通信モジュールと、
当該エッジノードのローカル環境の１つ以上のパラメータに関連する生データ信号を連続的に収集するように構成されるセンサと、
前記生データ信号を受ける、
前記生データ信号のバリアンスを定量化する信号エネルギインジケータを動的に更新する、
前記信号エネルギインジケータが更新されると、前記信号エネルギインジケータの関数として１つ以上の圧縮特性を決定する、
圧縮データ信号を作成するために前記１つ以上の圧縮特性の現在の値に従って前記生データ信号をサブサンプリングする、及び
前記圧縮データ信号を含む出力を前記リソース制約のある分散コンピューティングネットワークの集中ノードに送信する、
ように構成されるコントローラと、
を含む、エッジノード。
【請求項１３】
当該エッジノードは、照明器具を含む、請求項１２に記載のエッジノード。
【請求項１４】
前記センサは、動き検出センサである、請求項１３に記載のエッジノード。
【請求項１５】
請求項１２に記載のエッジノード及び集中ノードを含むシステムであって、前記集中ノードは、ゲートウェイ、サーバ、クラウドコンピューティング実装、又はこれらのうちの少なくとも１つを含む組み合わせである、システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、分散コンピューティングシステムに向けられ、とりわけ、分散コンピューティングシステムのセンサ対応エッジノードにおける圧縮センシングを可能にすることに向けられている。
【背景技術】
【０００２】
多くの業界で、従来は接続されていなかったますます多くの異なるデバイスを通信可能に接続する傾向が続いている。例としては、接続された照明システム、在庫追跡システム、「モノのインターネット」、及び／又は、他の「スマート」若しくは「接続された(connected)」システム等の家庭及び建物の制御システムが挙げられる。典型的には、これらのシステムのエッジノード（例えば、接続された照明システムの照明器具）は、システム全体が、関連する環境（例えば、家庭、オフィス、倉庫等）の動的な変化に、より効果的、効率的、及び／又は自動的に反応することを可能にするセンサ及び通信モジュールを含む。これらのシステムを実現可能（例えば、経済的）にするために、これらのシステムの１つの典型的な特徴は、エッジノード（例えば、接続された照明システムの照明器具）における計算リソースの限られた可用性(limited availability of computation resources)、及び、システムのノードが相互接続される低電力帯域幅(low power bandwidth)である。
【０００３】
接続されたシステムの限られたリソースによって課せられる制約に対処するための１つの方法として、生の収集されたセンサデータがエッジで圧縮され、伸長及び解析のために（ローカルサーバ又はクラウド等の）集中又は指定されたネットワークインフラストラクチャに転送される、圧縮センシング(compressive sensing)が挙げられる。しかしながら、データが（例えば、エッジノードで限られた帯域幅及び計算リソース上でタイムリーに圧縮され転送されるようにするために）ますます圧縮されるにつれて、伸長後のデータの精度において対応する劣化が生じる。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
したがって、リソース制約のある(resource-constrained)分散コンピューティングシステムのエッジノードで収集されたセンサデータのよりタイムリーで、正確で、効率的な分析を容易にするシステム及び方法に対する継続的なニーズが当業界に存在する。
【課題を解決するための手段】
【０００５】
本開示は、分散コンピューティングネットワークのセンサ対応エッジノードを使用して圧縮センシングを提供するための発明システム及び方法に向けられている。本明細書の様々な実施形態及び実装形態は、データが先ず分散コンピューティングネットワークの１つ以上のエッジノードの（複数の）センサによって収集されるデータ圧縮及び再構成方法に向けられている。バリアンス(variance)、エントロピー(entropy)、ノルム(norm)等の、データ信号のエネルギ歪み(energy distortion)を表す又は対応する、信号エネルギインジケータ(signal energy indicator)が計算される。サンプリング周波数、ウィンドウ長等の圧縮パラメータが、信号エネルギインジケータの関数として（例えば、比例して）決定されることができる。
【０００６】
評価された信号エネルギインジケータに基づいて、圧縮の好ましいウィンドウ長及び／又はサンプリング周波数が決定され、より低いエネルギの信号のためにウィンドウの長さを増加させる及びサンプリング周波数を減少させることによってパラメータ化される。信号エネルギインジケータは、変化する状態(changing condition)に可変的に合わせるために自動的に更新されることができる。さらに、圧縮データ信号は、元のデータ信号のエネルギコンテンツ(energy content)を使用して選択される圧縮スキームに基づいて伸長されることができる。このようにして、システムは、精度を維持しつつ、必要な伝送帯域幅及びコンピューティングリソースを最小限に抑えながら、変化するニーズに可変的に対応するために圧縮及び伸張の特性を自律的に変更することができる。
【０００７】
以下で述べられるすべての例及び特徴は、任意の技術的に可能な方法で組み合わされることができる。
【０００８】
一般に、一態様では、分散コンピューティングネットワークのエッジノードを使用して圧縮センシングを行う方法が提供される。方法は、エッジノードのセンサによって連続的に生データ信号(raw data signal)を収集することと、生データ信号のエネルギコンテンツを定量化する信号エネルギインジケータ（ε）を動的に更新することと、信号エネルギインジケータが更新されると、信号エネルギインジケータの関数として１つ以上の圧縮特性を決定することと、圧縮データ信号(compressed data signal)を作成するために１つ以上の圧縮特性の現在の値に従って生データ信号をサブサンプリングすることと、圧縮データ信号を含む出力を集中ノード(centralized node)に送信することとを含む。
【０００９】
一実施形態によれば、１つ以上の圧縮特性は、サンプリング周波数（δ）、信号ウィンドウ長（Ｎ）、又はこれらのうちの少なくとも１つを含む組み合わせを含む。
【００１０】
一実施形態によれば、信号ウィンドウ長はまた、エッジノードに利用可能な分散コンピューティングネットワークのネットワーク容量（φ）に基づいて決定される。
【００１１】
一実施形態によれば、サブサンプリングは、サンプリング周波数に対して生データ信号をランダムにサブサンプリングすること及びランダムにダウンサンプリングすることのうちの少なくとも１つを含む。
【００１２】
一実施形態によれば、方法はさらに、乱数発生器で乱数を発生させることと、サブサンプリング及びダウンサンプリングのうちの少なくとも１つのためのインデックス(index)として乱数を利用することとを含む。
【００１３】
一実施形態によれば、乱数発生器は、シーダブル乱数発生器(seedable random number generator)であり、乱数は、圧縮データ信号の伸長中に集中ノードで乱数発生器の第２のインスタンス(second instance)をシーディングする(seed)ことにより再作成(rereate)されることができる。
【００１４】
一実施形態によれば、エッジノードは、固定ネットワーク容量(fixed network capacity)（φ）を備え、方法は、圧縮データ信号のサイズと固定ネットワーク容量とを比較することと、サイズが固定ネットワーク容量によって許容されるサイズよりも大きい場合、圧縮データ信号をさらに圧縮するために圧縮データ信号をサブサンプリングすることとを含む。
【００１５】
一実施形態によれば、方法はさらに、圧縮データ信号のサイズが固定ネットワーク容量によって許容されるサイズよりも小さい場合、生データ信号から追加のサンプル又はパケットを送信することを含む。
【００１６】
一実施形態によれば、方法はさらに、集中ノードで圧縮データ信号を伸長することを含む。
【００１７】
一実施形態によれば、方法はさらに、生データ信号に対する圧縮データ信号のサイズに基づいて生データ信号のエネルギの推定を行うことを含む。
【００１８】
一実施形態によれば、方法はさらに、生データ信号のエネルギの推定に基づいて伸長アルゴリズムを選択することを含む。
【００１９】
一般に、他の態様では、分散コンピューティングネットワークのためのエッジノードが提供される。エッジノードは、分散コンピューティングネットワーク上でのデータ通信を可能にするように構成される通信モジュールと、エッジノードのローカル環境の１つ以上のパラメータに関連する生データ信号を連続的に収集するように構成されるセンサと、コントローラとを含む。コントローラは、生データ信号を受ける、生データ信号のエネルギ歪みを定量化する信号エネルギインジケータを動的に更新する、信号エネルギインジケータが更新されると、信号エネルギインジケータの関数として１つ以上の圧縮特性を決定する、圧縮データ信号を作成するために１つ以上の圧縮特性の現在の値に従って生データ信号をサブサンプリングする、及び、圧縮データ信号を含む出力を分散コンピューティングネットワークの集中ノードに送信するように構成される。
【００２０】
一実施形態によれば、エッジノードは、照明器具を含む。
【００２１】
一実施形態によれば、センサは、動き検出センサである。
【００２２】
一実施形態によれば、システムは、エッジノード及び集中ノードを含み、集中ノードは、ゲートウェイ、サーバ、クラウドコンピューティング実装(cloud computing implementation)、又はこれらのうちの少なくとも１つを含む組み合わせである。
【００２３】
上述の概念と、以下でより詳細に論じられる追加的概念との全ての組み合わせは（そのような概念が互いに矛盾しないという条件下で）、本明細書で開示される発明の主題の一部であると想到される点を理解されたい。特に、本開示の最後に記載されている特許請求される主題の全ての組み合わせは、本明細書で開示される発明の主題の一部であると想到される。また、参照により組み込まれるいずれかの開示にもまた現れ得る、本明細書で明示的に採用されている用語は、本明細書で開示される特定の概念と最も一致する意味が与えられるべきである点も理解されたい。
【図面の簡単な説明】
【００２４】
図面中、同様の参照文字は、一般に、異なる図の全体にわたって同じ部分を指す。また、これらの図面は、必ずしも正しい縮尺ではなく、その代わりに、全般的に、本発明の原理を例示することに重点が置かれている。
【図１】本明細書で開示される一実施形態による複数のエッジノードを有する分散コンピューティングシステムを概略的に示す。
【図２】本明細書で開示される一実施形態によるエッジノードでデータを圧縮する方法を示すフローチャートである。
【図３】本明細書で開示される一実施形態による圧縮データ信号を伸長する方法を示すフローチャートである。
【発明を実施するための形態】
【００２５】
本開示は、分散コンピューティングネットワークのエッジノードを使用して圧縮センシングを提供する様々な実施形態を述べる。より一般的には、出願人は、エッジノードのセンサによって収集された生データ信号のエネルギ歪みの推定又は定量化として決定される信号エネルギインジケータに基づいて圧縮特性を適応的に調整するように構成されるセンサ対応エッジノード(sensor-enabled edge node)を提供することが有益であることを認識し、理解している。本開示の特定の実施形態の利用の特定の目的は、圧縮データの再構成精度を向上させることであり、とりわけ、リソース制限のあるエッジノード(resource-limited edge node)によって圧縮されるデータに対する、圧縮データの再構成精度を向上させることである。
【００２６】
前述の観点から、様々な実施形態及び実装形態は、データが先ず分散コンピューティングネットワークの１つ以上のエッジノードの（複数の）センサによって収集されるデータ圧縮及び再構成方法に向けられている。バリアンス、エントロピー、ノルム等の、データ信号のエネルギ歪みを表す又は対応する、信号エネルギインジケータが計算される。サンプリング周波数、ウィンドウ長等の圧縮パラメータが、信号エネルギインジケータの関数として（例えば、比例して）決定されることができる。
【００２７】
評価された信号エネルギインジケータに基づいて、圧縮の好ましいウィンドウ長及び／又はサンプリング周波数が決定され、より低いエネルギの信号のためにウィンドウの長さを増加させる及びサンプリング周波数を減少させることによってパラメータ化される。信号エネルギインジケータは、変化する状態に可変的に合わせるために自動的に更新され、これにより、圧縮スキームのウィンドウ長及びサンプリング周波数が対応して調整されることができる。さらに、圧縮データ信号は、元のデータ信号のエネルギコンテンツに基づいて選択される圧縮スキームに基づいて伸長されることができる。このようにして、システムは、精度を維持しつつ、必要な伝送帯域幅及びコンピューティングリソースを最小限に抑えながら、変化するニーズに可変的に対応するために圧縮及び伸張の特性を自律的に変更することができる。
【００２８】
図１を参照すると、一実施形態では、複数のエッジノード１２を有する分散コンピューティングネットワーク又はシステム１０が設けられる。とりわけ、図１は、エッジノード１２が照明器具として設けられる、接続された照明システムとしてのコンピューティングシステム１０を示している。しかしながら、他の任意の接続された又は「スマート」コンピューティングシステム、例えば、暖房、冷房、換気、セキュリティ、騒音抑制等の自動化のための建物制御システム、又は在庫追跡システム、モノのインターネットシステム等の他のコンピューティングシステムが利用されてもよいことを理解されたい。少なくとも、エッジノード１２の各々は、周辺環境に関する１つ以上のパラメータに関連するデータ及び／又はセンサ１４に関する診断データを収集するように構成されるセンサ１４（又は複数のセンサ）と、それぞれのエッジノード１２の動作を制御するように構成されるコントローラ１５と、エッジノード１２間及び／又は他のノード若しくは装置との間でデータ通信を可能にする通信インターフェース又はモジュール１６とを含む。
【００２９】
本明細書で使用される「集中ノード(centralized node)」という用語は、任意の指定されたネットワーク又は処理装置を広く指すことが意図されている。例としては、ゲートウェイ１８、サーバ２０（例えば、ローカルネットワークサーバ）、及びクラウドコンピューティング実装２２（代替的には、「クラウド２２」）が挙げられる。斯くして、集中ノードは、一般に、より高いレベルの処理ニーズのための追加のコンピューティングリソースを提供する、システム１０の動作を制御する、システム１０の特定のフィーチャをイネーブルにする、ネットワークトラフィックを容易にする、等を行う。システム１０は、別々に及び／又は一緒にシステム１０のための集中コンピューティングリソースを提供する、サーバ２０及びクラウド２２の一方又は両方を含んでもよいことを理解されたい。例えば、中央サーバ２０及び／又はクラウド２２は、本明細書でより詳細に論じられるように、センサ１４によって収集され、エッジノード１２において圧縮されたデータを伸長及び／又は分析するために含まれ得る。
【００３０】
エッジノード１２、ゲートウェイ１８、サーバ２０、及び／又はクラウド２２の各々は、本明細書で開示される構造(structure)、フィーチャ(feature)、及び機能(functionality)を具現化及びイネーブルにするための適切なハードウェア及びソフトウェアを含んでもよいことを理解されたい。例えば、ゲートウェイ１８、サーバ２０、及びクラウド２２の各々は、エッジノード１２に関して述べられるものと類似した（例えば、しかしながら、より多くの計算リソースを有する）センサ、コントローラ、及び通信モジュールを含んでもよい。任意のそのようなコントローラは、プロセッサ、メモリ、アルゴリズム、又は他のハードウェア若しくはソフトウェアコンポーネントであってもよく、又は、これを含んでもよい。
【００３１】
（例えば、コントローラ１５のための）プロセッサは、マイクロコントローラ、複数のマイクロコントローラ、回路、単一のプロセッサ、又はソフトウェア命令を実行するように構成される複数のプロセッサ等、任意の適切な形態をとってもよい。同様に、（例えば、コントローラ１５のための）メモリは、ランダムアクセスメモリ（ＲＡＭ）等の揮発性メモリ、リードオンリーメモリ（ＲＯＭ）、フラッシュメモリ、ハードディスクドライブ（ＨＤＤ）、ソリッドステートドライブ（ＳＳＤ）等の不揮発性メモリ、又は他のデータ記憶媒体を含む、任意の適切な形態又は形態をとってもよい。メモリは、プロセッサによって、その動作中のデータの一時的記憶のために使用されてもよい。本明細書で論じられる方法を実行する並びにフィーチャ及び機能を提供するために必要なアルゴリズム又はソフトウェア等のデータ及びソフトウェア、並びに、オペレーティングシステム、ファームウェア、又は他のアプリケーションが、メモリにインストールされてもよい。本明細書で言及される通信モジュール（例えば、通信モジュール１６）は、システム１０の構成要素間の通信を可能にするように構成される。通信モジュールは、Ｗｉ−Ｆｉ（例えば、ＩＥＥＥ ８０２．１１）、Ｂｌｕｅｔｏｏｔｈ、セルラー、Ｅｔｈｅｒｎｅｔ、Ｚｉｇｂｅｅ等を含むがこれらに限定されない技術を使用する、有線又は無線通信信号の送信及び／又は受信を可能にし得る任意のモジュール、デバイス、又は手段、例えば、送信機、受信機、トランシーバ、アンテナ等であってもよく、又は、これを含んでもよい。本明細書で論じられるように、特に注目すべきなのは、Ｚｉｇｂｅｅ等、比較的低電力又はリソース制約のある技術である。
【００３２】
センサ１４は、動き検出（例えば、放射された赤外線エネルギ）、温度、湿度、周囲の騒音レベル、周囲の光レベル等、ローカル環境に関連する任意の所望の又は選択されたデータパラメータを収集するように構成されることができる。さらに、センサ１４は、センサ１４の健康及び／又は性能に関する診断データを収集するように構成されることもできる。システム１０は、エッジノード１２等、自身の構成要素の特定のフィーチャ又は機能を自動化又はより効率的にするためにこのデータを利用するように構成されてもよい。例えば、システム１０が接続された照明システムである実施形態を参照すると、センサ１４は、システム１０が、動きが検出されたときに自動的にライトをオンにすること、及び／又は、動きが検出されない予め設定された期間が経過した後にライトをオフにすることを可能にする動き検出センサであってもよい。当業者は、他のタイプの分散コンピューティングシステム及びこれらの他のシステムの動作を容易にするために利用され得る収集されるデータを認識するであろう。
【００３３】
また、システム１０は、収集されたデータに基づいて、コンテキストアウェアネス、アクティビティ、イベント、又はシーン認識等、事前デシジョンメーキング分析及び決定(advance decision making analytics and determination)を可能にするために、人工知能、機械学習、人工ニューラルネットワーク等に関連するアルゴリズムを備えてもよいことを理解されたい。一例では、センサ１４によって収集されたデータを処理し、当該データに基づいて対応するアクティビティ又はシナリオに関するより高いレベルの決定又は確率的な推測(probabilistic guess)を試みるために、１つ以上のアルゴリズムが（例えば、サーバ２０及び／又はクラウド２２によって）利用されてもよい。例えば、収集された動き検出データは、１つ以上の指定されたエリア内の占有者の数を推定するために分析されてもよい。動き検出データは、検出された動きのみを示すが、データは、占有者数(occupant count)等、対応するイベント（又は対応するイベントが発生する可能性）を認識する又は相関付ける(correlate)ようにアルゴリズムが学習する、又は訓練されるパターンについて分析されてもよい。例えば、集中エリア(concentrated area)内で検出された動きのより高いレベルは、より大きな推定占有者数として解釈されてもよく、又はより大きな推定占有者数に相関付けられてもよい。これは単なる一例であり、収集されたセンサデータからなされるより高いレベルの決定の他の多くの可能性が、当業者に理解され得るであろうことに留意されたい。
【００３４】
本明細書で開示される実施形態に従って、及び、以下でより詳細に論じられるように、（例えば、コントローラ１５を介して）エッジノード１２は、対応する時間ウィンドウに対するデータ信号の評価された信号エネルギに基づいて、適応的に及び／又は変化する時間ウィンドウにわたってサンプルを取ることによって、センサ１４によって収集された生データを圧縮するように構成される。有利には、適応的に且つ変化する時間ウィンドウにわたってサンプリングすることは、伸長アルゴリズムの回復精度の大幅な改善をもたらし、これは、とりわけ、圧縮センシングが、低電力又は限定された帯域幅の通信ネットワーク（例えば、Ｚｉｇｂｅｅ）上で展開することを実現可能にし得る。
【００３５】
生の収集されたデータを圧縮するための一実施形態による方法３０が、図２に示されている。例えば、方法は、サーバ２０及び／又はクラウド２２等の集中処理ノードに限られた帯域幅上でより効率的に送信されることができるより小さいサイズのデータパッケージを作成するためにエッジノード１２によって実施されてもよい。一般に、（方法３０を含む）開示される方法のすべてのステップは、図示の配列から補足、置換、削除、変更、又は並べ替えられることができるが、より任意であると考えられるものは、図２において点線で囲われていることに留意されたい。
【００３６】
方法３０は、信号Ｘとも示される、生データ信号の形態で入力信号３４が受信されるステップ３２で開始される。すなわち、信号Ｘ（及び／又は入力３４）は、関連するセンサ（例えば、センサ１４の１つ以上）によって収集されたデータから生成され、エッジノードのコントローラ（例えば、コントローラ１５）に送られてもよい。ステップ３６において、信号エネルギインジケータ（ε）が、（例えば、対応するエッジノード１２のコントローラ１５によって）決定される。信号エネルギインジケータεは、データ信号のエネルギ歪みを示す又はデータ信号のエネルギ歪みに対応する１つ以上の選択された値又はパラメータを指す。信号エネルギインジケータεとして、又は信号エネルギインジケータεを決定するために使用されることができるパラメータの例としては、バリアンス、エントロピー、ノルム等が挙げられるが、信号のエネルギを直接的又は間接的に識別する、定量化する、又は表す他の統計的又は数学的パラメータが、例えば、生データ信号の変化(change)、可変性(variability)、又は変動(fluctuation)を検出することによって、利用されてもよいことを理解されたい。当業者は、分散、エントロピー、ノルム等のパラメータは、当技術分野で既知の又は発見される任意の数学的及び／又は統計的方法論に従って計算されることができることを理解するであろう。以下でさらに詳細に論じられるように、サンプリング周波数、サンプリングウィンドウ長等、１つ以上の圧縮特性は、信号エネルギインジケータに基づいて決定されてもよい。
【００３７】
ステップ３８において、可変ウィンドウ圧縮(variable window compression)が望まれるかどうかが決定される。例えば、これは、最終的な送信される圧縮データパッケージを作成するためのデータが収集されるべき期間全体(entire period of time)（ウィンドウ）を指す。ウィンドウのサイズを可変的に設定することが望まれる場合、方法はステップ４０に進む。ステップ４０では、ウィンドウ長（Ｎ）が、信号エネルギインジケータε、ネットワーク容量（φ）等に基づいて決定される。例えば、ネットワーク容量φが、ネットワークにおける限られた帯域幅又は他のリソースを示す場合、ウィンドウ長Ｎは、より高帯域幅のネットワークの場合よりも短くてもよい。同様に、信号エネルギインジケータεが、バリアンスがインジケータである高い情報コンテンツ(high degree of information content)（例えば、信号が頻繁に変化している）ことを示す場合、システムは、データ圧縮後に収集されたデータの変化を十分に捕捉できるようにウィンドウ長Ｎを短く設定してもよい。次いで、好ましいウィンドウが、ステップ４２で設定される。可変ウィンドウサイズが望まれない場合、ステップ３８は、ステップ４２に直接進み、例えば、ウィンドウ長Ｎのデフォルト値及び／又は（例えば、方法３０の以前の反復(iteration)又はサイクルからの）ウィンドウ長Ｎの以前に選択された／決定された値を利用してもよい。
【００３８】
ステップ４４において、サンプリング周波数（δ）が、信号エネルギインジケータεに基づいて決定される。例えば、システムは、信号エネルギインジケータεに比例してサンプリング周波数δを決定してもよく、信号エネルギインジケータεの値が収集されたデータ信号Ｘのより高い可変性(variability)を示すほど、より速いサンプリング周波数δが得られてもよい。言い換えれば、収集されたデータ信号Ｘの変動性(volatility)が圧縮後に失われないように、より速いサンプリング速度が選択される。同様に、生データ信号があまり変化していない場合、サンプリング周波数は、速度を落とされることができる。サンプリング周波数δは、システムの要求に応じて幅広く変化してもよい。例えば、サンプリング周波数δは、数秒、数分、数時間等毎に１回であってもよく、毎秒、毎分、毎時等に複数回であってもよく、１秒に数百回であってもよく、それ以上であってもよい。
【００３９】
信号エネルギインジケータεとサンプリング周波数δとの関係は、予め設定された関数又はアルゴリズムを介して決定されてもよい。この目的のために、方法３０は、一実施形態において、ステップ４６を含む。ステップ４６では、サンプリング周波数δが、例えば、μ＝ｃεδのような式を使用する、推定を介して決定される。ここで、ｃは、学習又は固定され得る重み付け係数であり、μは、データ信号サイズのインジケータである。関数の変数は、式に従って圧縮されたデータの伸長の結果としての精度に基づいて設定されてもよく、経時的に更新されてもよい。当業者は、これが一例であり、本明細書の開示に基づいて、信号エネルギインジケータεからサンプリング周波数δを決定するために他の式が利用されることができることを認識するであろう。例えば、エッジノード１２の各々は、エッジノード１２が、例えばコントローラ１５を介して、信号エネルギインジケータεの計算値に対応するサンプリング周波数δ、ウィンドウ長Ｎ等の値をルックアップすることを可能にする、メモリに記憶されたテーブルを有してもよい。
【００４０】
ステップ４８において、収集されたデータ信号Ｘは、サンプリング周波数δに基づいてサブサンプリングされる。例えば、乱数発生器５０が、サブサンプリングがランダムに行われる、乱数Ｇを作成するために含まれてもよい。例えば、乱数は、サブサンプリングのためのインデックスとして使用されることができる。乱数発生器５０は、任意の所望の実装形態、例えば、ソフトウェアアルゴリズムに従って構成されることができる。さらに、「乱数」は、真にランダムを意味することを意図しておらず、疑似ランダム又は他の値を含み得ることを理解されたい。伸長に関する後述の説明に鑑みて理解されるように、乱数発生器５０は、Ｇに対する同じ値が、後に、乱数発生器５０と同じアルゴリズムを実行している別のノードによって伸長中に作成され得るような、シーダブル乱数発生器であってもよく、それによって、インデックスのディクショナリを別個に送信する必要性を回避することができる。ステップ４８で信号Ｘをサブサンプリングすると、圧縮信号Ｘが得られる。
【００４１】
ステップ５２において、固定ネットワーク帯域幅が使用されるかどうかが決定されてもよい。そうでない場合、方法３０は、ステップ５４で終了することができ、その結果、出力５６、例えば、圧縮信号Ｘ及び（適用可能であれば）ウィンドウ長Ｎが、サイズに関係なく出力される。代替的に、固定ネットワーク帯域幅が課される場合、ステップ５２は、ステップ５８に進んでもよい。ステップ５８では、圧縮信号Ｘのサイズがネットワーク容量φによって許容されるサイズよりも大きいかどうかが判断される。圧縮信号Ｘがまだ大きすぎる場合、圧縮信号Ｘは、例えばステップ４８と同様に、ステップ６０でさらにサブサンプリングされ、出力５６に提供されることができる。ステップ５８で圧縮信号Ｘがネットワーク容量φよりも小さいと判断される場合、ステップ６２において、圧縮信号Ｘが出力５６に提供されるか、又は圧縮信号Ｘが追加のデータサンプル又はパケットで拡張(augment)される。例えば、追加のサンプルは、ステップ４２で決定されたウィンドウ内の生データ信号から取られてもよく、又は、追加のパケットは、ウィンドウ外で集められるデータに生成されることができる。次いで、追加パケットを有する又は有さない、圧縮信号Ｘは、出力５６に提供されてもよい。
【００４２】
本明細書で論じられるように、方法３０は、複数の連続した回数繰り返してもよく及び反復してもよく、例えば、方法３０は、連続的に実施されてもよい。例えば、信号エネルギインジケータεは、収集されたデータ信号Ｘに応答して経時的に、連続的に更新されてもよく、周期的に更新されてもよい。同様に、収集されたデータ信号Ｘは、連続的に収集されてもよく、コンスタントなデータストリーム、（各パルス間にポーズを有する又は有さない）離散的な連続パルス等を含んでもよい。いずれにしても、方法３０に従って動作するシステム１０等の分散システムは、センサ１４によって収集されたデータ信号Ｘによって示される変化する状態に動的に（例えば、リアルタイムで）対応することができる。例えば、信号エネルギインジケータεが、センサ１４によって収集されたデータ信号Ｘにおけるより多くのエネルギを示す場合、システム１０は、結果として得られる圧縮信号Ｘのより正確な再構成を可能にするためにサンプリングパラメータ（例えば、サンプリング周波数δ、ウィンドウ長Ｎ等）を自動的且つ動的に変えることができる。同様に、信号エネルギインジケータεが、センサ１４によって収集されたデータ信号Ｘにおけるより少ないエネルギを示す場合、システム１０は、計算リソース及び帯域幅要件を低減するためにサンプリングパラメータを自動的且つ動的に変えることができ、それによってシステム１０の動作効率を向上させることができる。
【００４３】
圧縮データ信号Ｘを伸長するための方法７０が、図３に示されており、これは、ゲートウェイ１８、サーバ２０、及び／又はクラウド２２等、集中ノードによって実施されてもよい。方法は、少なくとも圧縮データ信号Ｘが受信されるステップ７２、例えば、方法３０からの出力５６で開始される。ステップ７４において、圧縮データ信号のインデックスが、乱数発生器５０によって発生された乱数（Ｇ）に基づいて取得される。すなわち、上述したように、乱数発生器５０は、エッジノード１２及び伸長を実行する集中ノードの両方にインストールされた同じアルゴリズムのインスタンスを有する、シーダブル乱数発生器であってもよい。
【００４４】
ステップ７６において、元の生データ信号Ｘのエネルギが、生データ信号Ｘに対する圧縮データ信号Ｘのサイズに基づいて推定される。一実施形態では、出力５６は、エネルギ信号インジケータεを含み、ステップ７６に代えて又はステップ７６に加えて集中ノードに提供されてもよい。ステップ７８において、ステップ７６からの推定されたエネルギに基づいて好ましい圧縮スキームを選択することが望まれるかどうかが判断されてもよい。そうである場合、ステップ８０において、伸長スキーム（Ｐ）が提供されてもよい。例えば、再構成問題を解くための伸長スキームＰは、プライマルデュアル最適化(primal dual optimization)、基底追跡(basis pursuit)、Ｌ１−ノルム最適化問題(L1-Norm optimization problem)、直線近似問題(linear approximation problem)、任意の辞書学習完了スキーム(dictionary learning completion scheme)、全変動圧縮スキーム(total variation compression scheme)、主成分分析（ＰＣＡ：Principal Components Analysis））、平滑化(smoothing)等を解くことを含んでもよい。例えば、各伸長スキームＰは、推定されたエネルギの異なる値及び／又は圧縮されたデータのタイプ（センサモダリティ）、信号ウィンドウ長等の他の既知のパラメータに対応してもよい。代替的に、ステップ７８及び８０に代えて、伸長は、デフォルト又は予め設定された伸長スキームを介して実施されてもよい。
【００４５】
ステップ８２において、圧縮データ信号Ｘが、選択された伸張スキームＰに対応する伸張アルゴリズムを用いて回復され、その結果、回復データ信号(recovered data signal)ＸＰが得られる。伸長スキームＰに付随する適切な基底表現も特定されることができる。例えば、より高いエネルギコンテンツの信号は、より低いエネルギ又はより大きな信号ウィンドウと比較して異なる種類の基底関数を用いて伸長されることができる。ステップ８４において、（例えば、ステップ６２を介して）エッジノード１２によって新たなパケット又は追加のパケットが送信されているかどうかが判断される。ＹＥＳの場合、ステップ８６において、方法が追加のパケットの伸長のためにステップ８２に戻されるので、追加のパケットに対するＸＰの改善が決定されることができる。新たなパケットが受信されない又は利用可能でない場合、方法７０は、ステップ８８において、回復データ信号ＸＰを出力として終了してもよい。
【００４６】
いくつかの発明実施形態が、本明細書で説明及び図示されてきたが、当業者は、本明細書で説明される機能を実行するための、並びに／あるいは、その結果及び／又は利点のうちの１つ以上を得るための、様々な他の手段及び／又は構造体を、容易に構想することとなり、そのような変形態様及び／又は修正態様は、本明細書で説明される発明実施形態の範囲内にあるものと見なされる。より一般的には、本明細書で説明される全てのパラメータ、寸法、材料、及び構成は、例示であることが意図されており、実際のパラメータ、寸法、材料、及び／又は構成は、本発明の教示が使用される特定の用途に応じて変化することを、当業者は容易に理解するであろう。当業者は、通常の実験のみを使用して、本明細書で説明される特定の発明実施形態に対する、多くの等価物を認識し、又は確認することが可能であろう。それゆえ、上述の実施形態は、例としてのみ提示されており、添付の請求項及びその等価物の範囲内で、具体的に説明及び特許請求されるもの以外の発明実施形態が実践されてもよい点を理解されたい。本開示の発明実施形態は、本明細書で説明される、それぞれの個別の特徴、システム、物品、材料、キット、及び／又は方法を対象とする。更には、２つ以上のそのような特徴、システム、物品、材料、キット、及び／又は方法の任意の組み合わせは、そのような特徴、システム、物品、材料、キット、及び／又は方法が相互に矛盾しない場合であれば、本開示の発明の範囲内に含まれる。
【００４７】
語句「及び／又は」は、本明細書及び請求項において使用されるとき、そのように結合されている要素の「いずれか又は双方」、すなわち、一部の場合には接続的に存在し、他の場合には離接的に存在する要素を意味するように理解されるべきである。「及び／又は」で列挙されている複数の要素は、同じ方式で、すなわち、そのように結合されている要素のうちの「１つ以上」として解釈されるべきである。「及び／又は」の節によって具体的に特定されている要素以外の他の要素は、具体的に特定されているそれらの要素に関連するか又は関連しないかにかかわらず、オプションとして存在してもよい。本明細書及び請求項において使用されるとき、「又は」は、上記で定義されたような「及び／又は」と同じ意味を有するように理解されるべきである。
【００４８】
また、そうではないことが明確に示されない限り、２つ以上のステップ又は行為を含む、本明細書で特許請求されるいずれの方法においても、その方法のステップ又は行為の順序は、必ずしも、その方法のステップ又は行為が列挙されている順序に限定されるものではないことも理解されるべきである。
【図１】
2021533667.tif 000003
【図２】
2021533667.tif 000004
【図３】
2021533667.tif 000005
【国際調査報告】
2021533667.tif 000006
2021533667.tif 000007
2021533667.tif 000008