(57)【要約】地理的区域を作成する方法は、少なくとも一部が地理的地域内に位置する第1の地理的区域の選択肢を受信する工程、第1の地理的区域を表す木データ構造を記憶する工程、および1台または複数の資産追跡機器上に記憶されるべき木データ構造を送信する工程を含んでいてよい。木データ構造は親-子関係へと編成された複数のノードを含んでいてよく、ノードの各々は地理的領域を表す。ルートノードは地理的地域を表していてよく、各子ノードはそれぞれの親ノードによって表される地理的領域の部分領域を表していてよく、各ノードは、少なくとも一部が第1の地理的区域と重なり合う地理的領域を表していてよく、完全に第1の地理的区域内にある地理的領域を表す各ノードは、第1の地理的区域と関連付けられた識別子を含んでいてよい。2014532211.tif 000003
2014532211.tif 000002
【特許請求の範囲】
【請求項１】
以下の工程を含む、1台または複数の資産追跡機器の動作に影響を及ぼすための地理的地域内の地理的区域を作成する方法であって、該資産追跡機器は該地理的地域内にリモートで位置し得る、方法：
少なくとも一部が該地理的地域内に位置する第1の地理的区域の選択肢をインターフェースを介して受信する工程;
第1の地理的区域を表す木データ構造を記憶する工程であって、該木データ構造は複数のノードを含み、
複数のノードの各々は複数の親-子関係へと編成されており;
複数のノードの各々は地理的領域を表し:
複数のノードにおけるルートノードは前記地理的地域を表し;
複数の親-子関係における各子ノードはそれぞれの親ノードによって表される地理的領域の部分領域を表し;
複数のノード中の各ノードは、少なくとも一部が第1の地理的区域と重なり合う地理的領域を表し;かつ
完全に第1の地理的区域内にある地理的領域を表す複数のノード中の各ノードは、第1の地理的区域と関連付けられた識別子を含む、
工程;および
前記1台または複数の資産追跡機器上に記憶させるために木データ構造をポートを介して送信する工程。
【請求項２】
第1の地理的区域と関連付けられた識別子を含む複数のノード中の各ノードがどの子ノードとも関連付けられないように、木データ構造が最適化される、請求項1記載の方法。
【請求項３】
識別子が、1台または複数の資産追跡機器の少なくとも1台を動作させるプロセッサが実行すべき一つまたは複数の命令セットと関連付けられている、請求項1記載の方法。
【請求項４】
木データ構造が二分木を含む、請求項1記載の方法。
【請求項５】
複数の親-子関係における各親ノードが、それぞれの親ノードによって表される地理的領域を等分する二つの子ノードを有する、請求項4記載の方法。
【請求項６】
地理的地域を、Nを正の整数値とする22N個の等面積の地域に分割する工程をさらに含む、請求項1記載の方法。
【請求項７】
第1の地理的区域が連続していない、請求項1記載の方法。
【請求項８】
グラフィカル・ユーザ・インターフェースを使用して地理的地域から第1の地理的区域を選択する、請求項1記載の方法。
【請求項９】
少なくとも一部が地理的地域内に位置する第2の地理的区域の選択肢をインターフェースを介して受信する工程;
木データ構造に、
完全に第2の地理的区域内にある地理的領域を表す複数のノード中の各ノードへの第2の地理的区域と関連付けられた第2の識別子;および
少なくとも一部が第2の地理的区域と重なり合い、さらに第1の地理的区域と部分的に重なり合わない地理的領域を表す追加のノード
を追加する工程
をさらに含む、請求項1記載の方法。
【請求項１０】
第1の地理的区域が、第2の地理的区域と少なくとも一部が重なり合う、請求項9記載の方法。
【請求項１１】
以下の工程を含む、地理的地域内の資産追跡機器の動作に影響を及ぼす方法であって、少なくとも一部が該地理的地域内に位置する第1の地理的区域に対する該資産追跡機器の位置に基づく方法:
第1の地理的区域を表す木データ構造を記憶する工程であって、該木データ構造は複数のノードを含み、
複数のノードの各々は複数の親-子関係へと編成されており;
複数のノードの各々は地理的領域を表し:
複数のノードにおけるルートノードは前記地理的地域を表し;
複数の親-子関係における各子ノードはそれぞれの親ノードによって表される地理的領域の部分領域を表し;
複数のノード中の各ノードは、少なくとも一部が第1の地理的区域と重なり合う地理的領域を表し;かつ
完全に第1の地理的区域内にある地理的領域を表す複数のノード中の各ノードは、第1の地理的区域と関連付けられた識別子を含む、
工程;
資産追跡機器と関連付けられた資産の位置を受信する工程;
資産の位置を文字列に変換する工程;
文字列中の各文字に順次にアクセスして前記木データ構造を走査する工程であって、
第1の文字はルートノードと関連付けられており;
第1の文字は、もしあるとすればルートノードのどの子ノードが走査されるべきかを決定し、かつ
文字列中の連続する各文字は、もしあるとすればどの子ノードを前記木データ構造の連続する各レベルで走査するかを決定する、
工程;および
走査されたノードのいずれかが第1の地理的区域と関連付けられた識別子を含むかどうかを判定し、これに応答して、第1の地理的区域と関連付けられた命令セットを実行する工程。
【請求項１２】
資産の位置が緯度および経度を含む、請求項11記載の方法。
【請求項１３】
資産の位置を文字列に変換する工程が、各方向に2N個の分割を有するXおよびY座標の集合を使用する工程を含む、請求項11記載の方法。
【請求項１４】
資産の位置を文字列に変換する工程が、XおよびY座標の2進表現から連続するビットをインターリーブする工程をさらに含む、請求項13記載の方法。
【請求項１５】
識別子が命令セットへのリンクを含む、請求項11記載の方法。
【請求項１６】
木データ構造が、第2の命令セットへのリンクを含むことによって第2の地理的区域も表す、請求項11記載の方法。
【請求項１７】
命令セットが第2の命令セットへのリンクと関連付けられている、請求項11記載の方法。
【請求項１８】
以下のものを含む、少なくとも一部が地理的地域内にある第1の地理的区域内に資産が位置するかどうか判定するための資産追跡機器：
資産の位置を受信するように構成された位置処理機器;
第1の地理的区域を表す木データ構造を記憶するメモリであって、該木データ構造は複数のノードを含み、
複数のノードの各々は複数の親-子関係へと編成されており;
複数のノードの各々は地理的領域を表し:
複数のノードにおけるルートノードは前記地理的地域を表し;
複数の親-子関係における各子ノードはそれぞれの親ノードによって表される地理的領域の部分領域を表し;
複数のノード中の各ノードは、少なくとも一部が第1の地理的区域と重なり合う地理的領域を表し;かつ
完全に第1の地理的区域内にある地理的領域を表す複数のノード中の各ノードは、第1の地理的区域と関連付けられた識別子を含む、
メモリ;
実行されるとプロセッサに以下を行わせる命令セットに結合された、プロセッサ:
位置処理機器から資産追跡機器と関連付けられた資産の位置を受信し;
資産の位置を文字列に変換し;
文字列中の各文字に順次にアクセスして前記木データ構造を走査し、ここで、
第1の文字はルートノードと関連付けられており;
第1の文字は、もしあるとすればルートノードのどの子ノードが走査されるべきかを決定し、かつ
文字列中の連続する各文字は、もしあるとすればどの子ノードを前記木データ構造の連続する各レベルで走査するかを決定し;
走査されたノードのいずれかが第1の地理的区域と関連付けられた識別子を含むかどうかを判定し、これに応答して、第1の地理的区域と関連付けられた命令セットを実行する。
【請求項１９】
位置処理機器がGPSユニットを含む、請求項18記載の資産追跡機器。
【請求項２０】
命令セットがプロセッサにさらに以下を行わせる、請求項18記載の資産追跡機器:
更新されたデータ構造を含む通信を受信し、かつ
メモリにおいて木データ構造を該更新されたデータ構造で置き換える。
【発明の詳細な説明】
【背景技術】
【０００１】
背景
現代のネットワークは様々な機器を含むことができ、それらの機器は様々なやり方で接続され得る。ネットワークは、例えば、集中化型やアドホック型とすることができる。アドホック型の場合には、ネットワーク接続された各機器、すなわちノードは、それ自体のデータを伝達することに加え、他のノードからのデータを転送するためのルータとしても働くことができる。しかし、これらの無線ネットワークにはそれぞれの限界がある。例えば、電池式の無線機器は、無線データ伝送の高電力コストのために頻繁な電池交換を必要とし得る。中でも特に保守の問題が理由で、アドホック型無線ネットワークは、それ以外の点では適し得るはずの様々な用途において使用されていない可能性がある。
【０００２】
無線ネットワークの特に有益な一用途には資産追跡機器が関与する。これらの機器は、地理的地域全体にわたって移動し得る様々な資産に接続され、あるいはそれらの資産と共にコードとして配置され得る。資産追跡機器は、軍事、商業輸送、輸送コンテナ、および他の多くの類似の用途で使用され得る。しかし、いくつかの要因が理由で、多くの機器は、それら以外の点では望ましいであろう業務に携わることができない。
【発明の概要】
【０００３】
概要
一態様において、1台または複数の資産追跡機器の動作に影響を及ぼすための地理的地域内の地理的区域を作成する方法を提示し、この資産追跡機器はこの地理的地域内にリモートで位置し得る。本方法は、少なくとも一部がこの地理的地域内に位置する第1の地理的区域の選択肢をインターフェースを介して受信する工程、第1の地理的区域を表す木データ構造を記憶する工程、およびポートを介して1台または複数の資産追跡機器上に記憶されるべき木データ構造を送信する工程を含んでいてよい。一態様では、木データ構造は複数のノードを含んでいてよく、複数のノードの各々は複数の親-子関係へと編成されており、複数のノードの各々は地理的領域を表す。複数のノードにおけるルートノードは地理的地域を表していてよい。複数の親-子関係における各子ノードはそれぞれの親ノードによって表される地理的領域の部分領域を表していてよい。複数のノード中の各ノードは、少なくとも一部が第1の地理的区域と重なり合う地理的領域を表していてよい。完全に第1の地理的区域内にある地理的領域を表す複数のノード中の各ノードは、第1の地理的区域と関連付けられた識別子を含んでいてよい。
【０００４】
別の態様では、少なくとも一部が地理的地域内に位置する第1の地理的区域に対する資産追跡機器の位置に基づいて地理的地域内の資産追跡機器の動作に影響を及ぼす方法が提示される。方法は、第1の地理的区域を表す木データ構造を記憶する工程を含んでいてよい。一態様では、木データ構造は複数のノードを含んでいてよく、複数のノードの各々は複数の親-子関係に編成され、複数のノードの各々は地理的領域を表す。複数のノードにおけるルートノードは地理的地域を表していてよい。複数の親-子関係における各子ノードはそれぞれの親ノードによって表される地理的領域の部分領域を表していてよい。複数のノード中の各ノードは、少なくとも一部が第1の地理的区域と重なり合う地理的領域を表していてよい。完全に第1の地理的区域内にある地理的領域を表す複数のノード中の各ノードは、第1の地理的区域と関連付けられた識別子を含んでいてよい。方法は、資産追跡機器と関連付けられた資産の位置を受信する工程、および資産の位置を文字列に変換する工程をさらに含んでいてよい。また方法は、文字列中の各文字に順次にアクセスして木データ構造を走査する工程も含んでいてよい。一態様では、第1の文字はルートノードと関連付けられていてよく、第1の文字は、もしあるとすれば、ルートノードのどの子ノードが走査されるべきか決定することができ、文字列中の連続する各文字は、もしあるとすれば、木データ構造の連続する各レベルでどの子ノードを走査すべきか決定することができる。方法は加えて、走査されたノードのいずれかが第1の地理的区域と関連付けられた識別子を含むかどうか判定し、これに応答して、第1の地理的区域と関連付けられた命令セットを実行する工程も含んでいてよい。
【０００５】
さらに別の態様では、資産が、少なくとも一部が地理的地域内にある第1の地理的区域内に位置するかどうか判定するための資産追跡機器が提示される。システムは、資産の位置を受信するように構成された位置処理機器、および第1の地理的区域を表す木データ構造を記憶するメモリを含んでいてよい。一態様では、木データ構造は複数のノードを含んでいてよく、複数のノードの各々は複数の親-子関係へと編成されており、複数のノードの各々は地理的領域を表す。複数のノードにおけるルートノードは地理的地域を表していてよい。複数の親-子関係における各子ノードはそれぞれの親ノードによって表される地理的領域の部分領域を表していてよい。複数のノード中の各ノードは、少なくとも一部が第1の地理的区域と重なり合う地理的領域を表していてよい。完全に第1の地理的区域内にある地理的領域を表す複数のノード中の各ノードは、第1の地理的区域と関連付けられた識別子を含んでいてよい。システムは命令セットに結合されたプロセッサをさらに含んでいてよく、命令セットは、実行されるとプロセッサに、位置処理機器から資産追跡機器と関連付けられた資産の位置を受信させ、資産の位置を文字列に変換させ、かつ文字列中の各文字に順次にアクセスして木データ構造を走査させる。一態様では、第1の文字はルートノードと関連付けられていてよく、第1の文字は、もしあるとすれば、ルートノードのどの子ノードが走査されるべきか決定することができ、文字列中の連続する各文字は、もしあるとすれば、木データ構造の連続する各レベルでどの子ノードを走査すべきか決定することができる。命令はさらにプロセッサに、走査されたノードのいずれかが第1の地理的区域と関連付けられた識別子を含むかどうか判定させ、これに応答して、第1の地理的区域と関連付けられた命令セットを実行させてよい。
【図面の簡単な説明】
【０００６】
【図１Ａ】センサ情報を伝達するための無線ネットワークの一態様を示すブロック図である。
【図１Ｂ】ゲートウェイ機器がインターネットと無線で接続されているセンサ情報を伝達するための無線ネットワークの別の態様を示すブロック図である。
【図２】ゲートウェイ機器の一態様を示すブロック図である。
【図３】無線センサ機器（WSD:wireless sensor device）の一態様を示すブロック図である。
【図４】一態様による、地理的地域を示す図である。
【図５】一態様による、地理的地域内にリモートで位置し得る1台または複数の資産追跡機器の動作に影響を及ぼすための地理的地域内の地理的区域を作成する方法を示すフローチャートである。
【図６】いくつかの矩形部分領域に細分された地理的地域を示す図である。
【図７】一態様による、細分された矩形区画を使用した地理的区域の定義を示す図である。
【図８Ａ】一態様による、三つの地理的区域を有する地図を示す図である。
【図８Ｂ】一態様による、矩形格子と一致するように調整されている地理的区域を示す図である。
【図９Ａ】一態様による、地理的区域を示す図である。
【図９Ｂ】図9Aの地理的区域を表す対応するデータ構造の一態様を示す図である。
【図１０Ａ】一態様による、五つの矩形ブロックに細分された地理的区域を示す図である。
【図１０Ｂ】一態様による、データ構造がどのようにして二つの地理的区域を表すように増補され得るかを示す図である。
【図１１】一方法による、地理的区域が方形および縦方向の矩形ブロックを使用してどのようにして表され得るかを示す図である。
【図１２】一態様による、少なくとも一部が地理的地域内に位置する第1の地理的区域に対する資産追跡機器の位置に基づいて地理的地域内の資産追跡機器の動作に影響を及ぼす方法を示すフローチャートである。
【図１３】一態様による、座標の文字列への変換を示す図である。
【図１４】一態様による、複数の地理的区域を表すデータ構造の走査の一例を示す図である。
【図１５】本発明の様々な態様が実施され得る例示的動作環境の構成要素を示すブロック図である。
【図１６】本発明の様々な態様が実施され得る例示的コンピュータシステムを示すブロック図である。
【発明を実施するための形態】
【０００７】
詳細な説明
以下の記述では、説明として、様々な態様の十分な理解を提供するために、多数の具体的詳細が示される。しかし、様々な態様はこれらの具体的詳細の一部がなくても実施され得ることが当業者には明らかであろう。場合によっては、周知の構造および機器はブロック図形式で示される。
【０００８】
以下の説明は、例示的態様を提供するにすぎず、本開示の範囲、適用性、または構成を限定するためのものではない。そうではなく、例示的態様の以下の説明は、当業者に、例示的態様を実施することを可能にする説明を提供するものである。添付の特許請求の範囲に記載される開示のシステムおよび方法の趣旨および範囲を逸脱することなく、要素の機能および配置に様々な変更が加えられ得ることを理解すべきである。
【０００９】
以下の説明では、各態様の十分な理解を提供するために具体的詳細が示される。しかし、各態様はこれらの具体的詳細なしでも実施され得ることが当業者には理解されるであろう。例えば、回路、システム、ネットワーク、プロセス、および他の構成要素は、各態様を余分な詳細で不明瞭にすることのないように、ブロック図形式の構成要素として示される場合がある。場合によっては、公知の回路、プロセス、アルゴリズム、構造、および技法は、各態様を不明瞭にしないように、余分な詳細なしで示されることもある。
【００１０】
また、個々の態様は、フローチャート、流れ図、データフロー図、構造図、またはブロック図として描かれたプロセスとしても説明され得る。フローチャートは各動作を順次プロセスとして記述する場合があるが、動作の多くは並列に、または同時に行うことができる。加えて、各動作の順序は並べ替えられてもよい。プロセスは、その各動作が完了するときに打ち切られるが、図には含まれないさらに別の工程を有することも可能なはずである。プロセスは、方法、関数、手順、サブルーチン、サブプログラムなどに対応し得る。プロセスが関数に対応するとき、その終了は、当該関数の呼び出し側関数またはメイン関数への戻りに対応し得る。
【００１１】
さらに、各態様は、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはこれらの任意の組み合わせによって実装されてもよい。ソフトウェア、ファームウェア、ミドルウェアまたはマイクロコードとして実装されるときに、必要なタスクを実行するプログラムコードまたはコードセグメントは、機械可読媒体に記憶されていてよい。（一つまたは複数の）プロセッサが必要なタスクを実行してよい。
【００１２】
位置に基づく高速で実行可能な決定を下すために位置認識機器に提供することのできるスケーラブルな方法論を説明する。いくつかの態様によれば、例えば、自律的な資産追跡機器が、資産追跡機器の位置に少なくとも一部基づいて、その構成を変更し、報告を送り、機器自体を無活動状態にし、アドレス指定されることができること、および多くの他の動作を行うことができることは好都合であり得る。
【００１３】
いくつかの態様によれば、動作は、地図上の点ではなく、地理的区域に入ること、またはそこから出ることに基づくものとすることができる。これらの区域は、必ずしも連続しているとは限らない任意の形状のものとすることができる。これらの区域は、例えば、非常に小さいものとすることも、全世界または他の関心対象の地理的地域を範囲とすることも、穴もしくは除外部分を含むこともでき、かつ/または重なり合っていてもよい。一般に、これらの区域の形状は予測不能であり、区域の数は制限されず、これらの区域の分解能および計算量は絶えず増大し続けるものと想定することができる。加えて、機器が特定の区域内にあるときにそれを判定するのに必要な機器の動作は、明確な制限された期間内に実行されるべきことも想定され得る。資産追跡機器が低電力である場合には、地理的区域の数および計算量が増加する際に、割り振られた電力バジェット内に留まり、好ましくは予測可能な電力プロファイルを使用する必要も生じ得る。
【００１４】
本明細書で論じる態様は、数、形状、重なり合う境界、サイズ、または地理的区域に関連した任意の他のパラメータにかかわらず、機器が（機器実装に依存し得る）予測可能な数の動作内で決定的に位置に基づく決定を下すことを可能にする。機器が特定の区域内にあるかどうかの効率的な判定を可能にし、これに応答して機器によって実行されるべき特定の命令を提供する方法およびシステムを論じる。加えて、本明細書で論じる態様は、一般に「ジオキャスティング」と呼ばれる手法である、各機器が特定の地理的区域に対する各機器の位置に基づいてアドレス指定されることも可能にし得る。
【００１５】
従来のアルゴリズムは、領域の数および各領域の形状に依存する処理時間を有し、その場合、計算量は最善でO（n）として記述することができる。言い換えると、区域の数が増加すると、区域の計算量および/または区域を記述するのに使用される分解能は、機器が区域の内側にあるかどうか分析するのに要する時間および処理能力をそれに比例して増大させることになる。これと比較して、以下で論じる提案のシステムおよび方法は、O（log2（n））の計算量を使用して記述され得る。
【００１６】
O（n）の計算量を有する一般に使用される一方法は「ベクトル法」と呼ばれる。ベクトル法は地理的区域記述子のリストを利用し、その場合、各区域を円形の接続されたベクトルの集合として記述することができる。区域への帰属の判定は、地図上に配置された現在位置に基づくものとすることができる。位置がループ内のどんなベクトルの最高点と最低点との間にもない場合には、機器は区域の外部にあると判定される。位置が最高点と最低点との間にある場合には、現在位置から右（または左）へ、ベクトルのいずれかの右端（または左端）点に到達するまで線が引かれる。線がベクトルループを偶数回横切る場合、位置は区域の外側にあるとみなされる。線が奇数回横切る場合には、位置は区域の内側にあるとみなされる。ベクトル法は、幾分不正確であることに加えてさらに、そのO（n）計算量という欠点も有する。ベクトル法は、交点の数が事実上無制限であるため、一領域当たりO（n）の計算量を必要とする。加えて、区域の数、計算量、および/または分解能の増加に比例して、機器が区域内にあるかどうか判定するのに必要とされる処理時間およびリソースも増加する。
【００１７】
機器が区域内にあるかどうか判定するための一般に使用される別の方法は、各区域が、円、矩形、および/またはこれらの基本形状の組み合わせといった、限定された所定の基本形状を有する地理的区域のリストを使用するものである。その場合には、リスト内の各区域を検査するのに意思決定アルゴリズムが用いられてよい。区域への帰属を検査する計算は相当に単純なものとすることができ。しかし、この計算は必然的に複雑な浮動小数点演算を伴う。それらの計算は、正確さを犠牲にせずに簡略化することができない。しかも、これらの計算は線形であり、O（n）の計算量を有する。よって、ベクトル法と同様に、基本要素リストを使用するこの方法も、区域の数、計算量、および/または分解能が増加するのと比例して困難になる。
【００１８】
これと比較して、本明細書で論じる態様は、以下の利点の一つまたは複数を含むことができる。位置ベースの意思決定のための時間は、地理的領域の特性または数にかかわらず、非常に短く、予測可能で、限られたものになり得る。決定的意思決定は、ミッションクリティカルなリアルタイムの動作を可能にする。大幅な省電力を低電力機器のために実現することができる。位置ベースの機能のための地理的領域の数の点で前例のないスケーラビリティを実現することができる。可変形状の地理的区域をサポートすることができる。最後に、地理的区域は、資産追跡機器上での処理のための予測可能な電力プロファイルを維持しながら、計算量、分解能、連続性、サイズ、および/または数を幅広く変化させてよい。
【００１９】
ある品目が特定の地理的区域内にあるかどうかの判定は、多くの異なる分野で多くの用途を有し得る。例えば、この判定は、携帯電話、GPS機器、携帯用コンピューティング機器、自動車、航空機、列車、船舶、輸送コンテナ、武器、軍事要員などのために地理的区域を決定するのに役立ち得る。特定の一態様では、本明細書で論じる方法およびシステムは資産の追跡を対象とし得る。具体的には、資産追跡機器が、目的地間を移動されている資産を追跡するためのロジスティック管理システムにおいて使用され得る。例えば、資産追跡機器は、保管場所から小売場所までの途上で製造品を収容するコンテナに取り付けられていてもよい。別の例は、サプライチェーン内の異なる場所間を移動する別の種類の品物を含んでいてよい。多くの場合、資産追跡機器は、無線ネットワークを介して通信する無線ネットワーク機器で構成され得る。
【００２０】
本明細書で使用する場合、「資産追跡機器」とは、品目、すなわち「資産」の位置をモニタするのに使用され、またはモニタするように構成された任意の電子機器を指し得る。多くの態様では、資産追跡機器は、一つまたは複数の無線ネットワークの一部である無線センサ機器を使用して実現されてよい。本明細書に記載する無線ネットワークおよび（無線センサ機器（WSD）を含む）無線ネットワーク機器は、様々なやり方で、様々なコンテキストにおいて構成され得る。構成の例には、中でも特に、メッシュネットワーク、ポイントツーポイントネットワーク、および/またはアドホックネットワークが含まれる。ネットワーク機器、すなわちノードが動的にこれらのネットワークに接続し、ネットワークから切断することを可能にするこれらのネットワークの柔軟性は、センサ情報を収集し、伝達するように構成されたWSDと相まって、これらのネットワークが、輸送システムおよび/またはロジスティックシステムの終端間のセキュリティおよび管理を提供することを可能にする。開示の態様は無線技術に焦点を当てているが、本明細書に記載する技法は、例えば、アドホック・シリアル・インターフェースなど、有線通信ネットワークに適用することもできる。
【００２１】
例えば、無線ネットワークは、集積場に位置する複数の貨物コンテナに関連するセンサ情報を提供する複数のWSDを含むことができる。センサ情報は様々なセンサからのデータを含むことができ、データは、コンテナの温度および/または湿度、コンテナドアが開いている、または開けられたかどうか、コンテナが衝撃を受けている、または衝撃を受けたかどうか、コンテナの場所、コンテナが移動しているかどうか他を示すことができる。無線ネットワークはさらに、センサ情報を収集し、その情報を無線ネットワーク外のシステムに提供するゲートウェイ機器を含むことができる。WSDを装備したコンテナが集積場を出入りする際に、無線ネットワークは、しかるべく調整を行い、集積場に入るコンテナのWSDが無線ネットワークに接続することを可能にし、他方、集積場から出るコンテナのWSDは無線ネットワークから切断される。さらにWSDは、集積場のゲートウェイ機器と直接通信していない他のWSDからのセンサ情報を中継するルータとして働くことができる。
【００２２】
低電力無線ネットワークは、ネットワーク機器が電池電力で動作するモバイル機器である輸送用途、ロジスティックス用途、および類似の用途において有利となり得る。多くの電池式モバイル機器は無線技術を利用するが、大部分のモバイル機器は、ほんの数時間または数日でその電池を使い果たす。「低電力無線ネットワーク」という語は、本明細書で使用する場合、電池式機器がその電池を使い果たさずに1年以上にわたって動作することを可能にする技術を利用する無線ネットワークを指す。これは、中でも特に、IEEE 802.15.4規格および/またはISO/IEC 18000-7規格と関連付けられる技術、ならびに様々な専有技術を含むことができる。
【００２３】
図1Aは、ロジスティック管理システム100-1の一態様のブロック図である。この態様では、複数のWSD110が、センサデータを生成し、通信するために相互にネットワーク接続されている。センサ情報を集めるWSD110は、無線接続120を使用して、ゲートウェイ130へ向けてセンサ情報を伝達することができる。センサ情報を発信するWSD110とゲートウェイ130との間に通信可能にリンクされた1台または複数のWSD110がある場合、1台または複数のWSD110は、センサ情報がゲートウェイ130に到達するまでセンサ情報を中継することになる。図1Aに描かれたロジスティック管理システム100-1は、一例として示されており、限定するものではない。センサネットワーク140は様々なやり方で構成することができる。例えば、ゲートウェイ130は複数のWSD110と接続することができ、WSD110は、図1Aに表示されているよりも多数の、または少数の無線接続120を有していてよい。さらに、ロジスティック管理システム100に複数のゲートウェイ130および/またはセンサネットワーク140が含まれていてもよい。
【００２４】
ゲートウェイ130は、ゲートウェイ130およびWSD110を含むセンサネットワーク140と、機器管理サーバ（DMS:device management server）160との間の接続性を提供する。ゲートウェイ130とDMS160との間の通信はインターネット150、または他の任意の広域ネットワーク（WAN:Wide Area Network）を介して中継することができる。加えて、または代替として、ローカル・エリア・ネットワーク（LAN:Local Area Network）などの他のネットワークを使用することもできる。別の構成は、別個のネットワークなしでDMS160と直接通信するゲートウェイ130を含むことができる。
【００２５】
DMS160は、例えば、グラフィカル・ユーザ・インターフェース（GUI:graphical user interface）および/またはアプリケーション・プログラマブル・インターフェース（API:application programmable interface）などを利用することにより、人間ユーザまたは別のシステムによって使用され得るセンサネットワーク140とのインターフェースを提供する。DMS160は、WSD110からの情報を収集し、記憶することができる。DMS160とゲートウェイ130との間でやりとりされるデータは暗号化パケットにおいてセキュアに通信することができ、DMS160は、収集データのセキュアな管理を提供することができる。
【００２６】
様々な物理層の一つまたは複数が、センサネットワーク140の無線接続120を提供するのに使用されてよい。一態様によれば、WSD110およびゲートウェイ130は、2.4GHzのIEEE 802.15.4規格に基づくプロトコルスタックを使用し、当該規格で利用可能な全16チャネルを使用して通信する。この物理層は、センサネットワーク140が、非常に低い電力および/または予測可能な電力消費を使用して動作することを可能にし、このことは、WSD110および/またはゲートウェイ130が電池電力で動作する態様では重要な考慮事項となり得る。とはいえ、複数のRFチャネル（狭帯域周波数ホッピングなど）または単一のRFチャネルを使用した、900MHzのIEEE 802.15.4、IEEE 802.11、Bluetooth（登録商標）、IEEE 802.16、超広帯域（UWB:Ultra Wideband）、433MHzの産業科学医療（ISM:Industrial, Scientific, and Medical）バンド、セルラ、光学式他を含む、他の無線技術も使用されてよい。ゲートウェイ130は、図1Bに示されるように、有線接続および/または無線接続を介してインターネット150と通信することができる。
【００２７】
図1Bは、ロジスティック管理システムの代替の態様100-2のブロック図である。この態様では、ゲートウェイ130は、衛星180および/またはセルラ電波塔190との無線通信によって、インターネット150と無線で通信することができる。ゲートウェイ130とインターネット150との間のそのような無線インターフェースのユーザは、考慮事項の中でも特に、センサネットワーク140の利用可能なインターネット接続性および所望の移動度の要因となり得る。
【００２８】
図2は、ゲートウェイ機器130の一態様のブロック図である。このブロック図は、本明細書に示す他の図と同様に、例として提示されており、限定ではない。ゲートウェイ機器130は、例えば、全地球測位システム（GPS:global positioning system）ユニットおよび/または図2に示されていない他の構成要素を含めるなどにより、別のやり方で構成することもできる。
【００２９】
処理装置210はゲートウェイ機器130の中心に置かれている。処理装置210は、一つまたは複数のプロセッサ、マイクロプロセッサ、および/または特化された集積回路で構成することができる。処理装置210は、ゲートウェイ機器130のその他の構成要素から情報を集め、メモリ220に配置されたソフトウェア225に従って情報を処理することができる。ゲートウェイ機器130の所望の機能性および処理装置210の能力に応じて、ソフトウェア225は、オペレーティングシステムを一つまたは複数の実行可能プログラムと共に含むことができる。あるいはソフトウェアは、処理装置210が実行するための、ファームウェアおよび/またはマイクロコードといったより低水準の命令を含むこともできる。
【００３０】
電源250は、ゲートウェイ機器130の構成要素に電力を供給し、処理装置210へさらに別の情報（電池充電、電圧レベルなど）を提供し得る。モバイルゲートウェイ機器130では、電源250は一つまたは複数の電池を含むことができる。固定式ゲートウェイ機器130では、電源は、電力変換装置、変圧器、および/または電圧調整器を含むことができる。
【００３１】
無線インターフェース240は、WSD110との通信を可能にする。前述のように、この通信は、無線周波数（RF）通信技術および/または光通信技術を含む様々な技術のいずれかを使用して実現することができる。RF技術が使用される場合、無線インターフェースはアンテナ245を含むことができる。
【００３２】
またゲートウェイ機器130は構成ポート270も含むことができ、構成ポート270は、ゲートウェイ機器130を構成する目的で、コンピュータなどの機器をゲートウェイ機器130に接続させてよい。構成ポート270は、外部機器から情報を入力するためにユニバーサル・シリアル・バス（USB:universal serial bus）コネクタ、シリアルポート、光学式その他のコネクタを含むことができる。ゲートウェイ機器130および/またはWSD110の機能性に応じて、構成ポート270は、機器情報および報告、センサパラメータ、ソフトウェア、セキュリティ、ネットワークパラメータ、電力消費、GPSパラメータ、ファイル管理他を構成するのに使用されてもよい。
【００３３】
インターネットインターフェース260は、所望の機能性に応じて、様々なインターフェースのいずれかとすることができる。図1Aに示すように、ゲートウェイ機器130はインターネットと有線接続することができ、その場合インターネットインターフェース260は、イーサネット他の有線インターフェースを含むことができる。加えて、または代替として、ゲートウェイ機器130は、図1Bに示すように、インターネットと無線接続することもできる。この場合、インターネットインターフェースは、セルラ通信および衛星通信を可能にするデュアルモードWAN無線などの一つまたは複数の無線機を含むことができる。
【００３４】
ゲートウェイ機器130はさらに、ゲートウェイ機器がWSDと同様にセンサ情報を収集することを可能にする（1台または複数の）センサ230を含むことができる。このセンサ情報は、温度、湿度、動き、光、電池充電、衝撃、特定用途向け情報（貨物コンテナのドアの開閉状態など）に関連する情報を含むことができる。所望の機能性に応じて、処理装置210は、センサ情報を収集し、処理し、かつ/または記録してもよく、あるいは処理装置210は、単に、インターネットインターフェース260を使用して、未処理のセンサ情報をDMS160へ送信するだけでもよい。
【００３５】
図3は、WSD110の一態様のブロック図である。この態様は、ゲートウェイ機器130と同様の、（1台または複数の）センサ230、処理装置210、メモリ220、無線インターフェース240などの多くの構成要素を含む。しかしこの場合、各構成要素は、電力および機能性を考慮して、ゲートウェイ機器130の対応する構成要素より簡略なものとすることができる。例えば、処理装置210はマイクロプロセッサを含むことができ、メモリ220およびソフトウェア225は、マイクロプロセッサのプログラム化論理を含むことができる。また、WSD110および/またはゲートウェイ機器はユーザに情報を提供するインターフェース（不図示）を含み得ることにも言及することができる。そのようなインターフェースは、液晶ディスプレイ（LCD:liquid-crystal display）、一つまたは複数の発光ダイオード（LED:light emitting diode）などを含むことができる。
【００３６】
WSD110はさらに電池290を含む。無線ネットワークはより低い電力消費を実現することができるため、アルカリ、酸化銀、リチウムベースの電池などの保存期間の長い電池が、数年間にわたって電池交換を必要とせずに、WSD110の動作を可能にすることができる。一態様によれば、WSD110は、最大4個までのA型3.6ボルト（V）電池を使用し、各電池は定格おおよそ3600ミリアンペア時（mAh:milliamp hour）である。WSD110の態様の中には、2ミリワット（mW:milliwatt）を下回る動作電力を有するものもあり、1mW未満で動作するWSDの態様もある。したがって、電池の保存期間および容量、ならびにWSD110の構成によっては、WSD110は、電池交換を必要とせずに10年以上にわたって動作することができる。
【００３７】
またWSD110は、位置情報を提供するGPSユニット280を含むこともできる。位置情報は、センサネットワーク140が大きな物理領域上に広がっている場合、特に有用となり得る。しかも、GPSユニット280はさらに、GPSユニット280および/または処理装置210が経時的な位置の変化を判定することによりWSD110の動きを感知するのに使用することもできる。GPSユニット280がない場合、WSD110は、外部または内部の別のソースから位置情報を受信することができる。例えば、WSD110は、資産を輸送している、貨物船やトラックといった輸送容器から位置情報を受信することができる。
【００３８】
本発明の態様を使用して、データ構造を作成し、WSD110のメモリ220に記憶することができる。このデータ構造は、一つまたは複数の地理的区域に帰属した地理的地域内の領域を表すように構成することができる。WSG110は、その場合、GPSユニット280から、または次のカーネルソースから受信した位置情報を使用してデータ構造を走査し、WSG110が地理的区域の一つまたは複数の内にあるかどうか判定してよい。WSG110が地理的区域の一つまたは複数の内にあるという判定に基づき、WSG110は、データ構造に記憶された情報に従って措置を講じてよい。加えて、または代替として、WSG110は、WSG110が地理的区域の一つまたは複数の内にあるという判定を使用し、地理に基づいて入ってくるメッセージを選択的に受信し、かつ/または処理することもできる。
【００３９】
本明細書で使用する場合、「地理的地域」とは、関心対象の地理的領域を指し得る。地理的地域は、国、州、都市、郡、大陸、または政治的境界もしくは国境によって定義される任意の他の管轄区域とすることができる。加えて、地理的地域は、そこに1台または複数の資産追跡機器が位置し得るはずの特別に定義された地理的地域を含んでいてもよい。例えば、地理的地域は、軍事当局によって定義された戦闘地域とすることもできるはずである。別の例では、地理的地域は、通商路に近接した領域とすることもできるはずである。一態様では、地理的地域は、特に世界中を移動する資産追跡機器の用途では、地球の全表面とみなされてよい。
【００４０】
一態様によれば、地理的地域は、コンピュータシステム上でユーザインターフェースを使用して定義されてよい。地図がユーザに対して表示されてよく、ユーザは入力装置を使用して地理的地域を選択してよい。例えばユーザは、表示をとクローズアップして矩形地図領域にし、この領域を地理的地域であると定義してもよい。別の例では、ユーザはより大きい表示を使用してよい。代替として、地理的地域の境界を定義する座標集合が提供されてもよい。これらの座標は、ユーザによって、または別のコンピュータシステムによって提供されてよい。一態様では、資産追跡機器によって記録された以前の経路が、将来の資産追跡機器の可能な位置に対応する地理的地域を定義するのに使用されてよい。言い換えると、記録が、資産追跡機器のグループが100mi.2の領域内で移動したことを示す場合には、この領域を将来の用途のための地理的地域として使用することができるはずである。
【００４１】
図4に、一態様による地理的地域400を示す。この地理的地域は、米国北カリフォルニアのサンフランシスコ・ベイ・エリアに対応している。地理的地域400内にはいくつかの異なる経路410が示されている。これらの経路410は、1台または複数の資産追跡機器のグループが使用した、以前に記録された経路に対応し得る。前述のように、地理的地域400は、これらの経路410に基づいて、少なくとも経路410を含む矩形領域を含むように定義されてよい。代替として、地理的地域400は、他の基準に基づいて手動で、または自動的に選択されてもよい。
【００４２】
図5に、一態様による、地理的地域内にリモートで位置し得る1台または複数の資産追跡機器の動作に影響を及ぼすための地理的地域内の地理的区域を作成する方法のフローチャート500を示す。方法は、インターフェースを介して、少なくとも一部が地理的地域内に位置する第1の地理的区域の選択肢を受信する工程（502）を含んでいてよい。本明細書で使用する場合、「地理的区域」、または単に「区域」とは、地理的地域内から選択される区域である。前述のように、地理的区域または「ジオゾーン」は任意のサイズまたは形状とすることができる。前述の解決策とは対照的に、区域は連続していなくてよい。さらに、単一の地理的地域は無制限の数の地理的区域を含んでいてよい。地理的区域は重なり合っていてよい。地理的地域内の複数の地理的区域を、「第1の地理的区域」、「第2の地理的区域」などと呼んでよい。一つの地理的区域は完全に第2の地理的区域内に存在していてもよい。また、二つの地理的区域が同じ領域を表していてもよく、ほぼ同一であってもよい。
【００４３】
地理的地域と同様に、各地理的区域は、地図ベースのコンピュータインターフェースを使用してユーザによって定義されてよい。一態様では、マウスまたはペン入力装置を使用して画面上で地理的地域の境界が描かれてよく、コンピュータシステムは、以下でさらに説明する方法を使用して、地理的区域のグラフィカル表現をデータ構造に変換してよい。代替として、地理的区域は、政治的もしくは地理的境界、以前の資産移動履歴、または他の類似の基準に基づいて自動的に定義されてもよい。
【００４４】
地理的区域および地理的地域の両方が、個々の資産追跡機器の処理能力よりも強力なコンピュータシステムを使用して定義されてよい。一態様では、図1のDMS160のところのコンピュータシステムが、地理的地域および地理的区域を定義し、それらをデータ構造内に記憶するのに使用されてよい。代替として、地理的区域および地理的地域を選択し、定義するのに任意のコンピュータワークステーションまたはモバイルコンピューティング機器が使用されてもよい。
【００４５】
方法は、第1の地理的区域を表すデータ構造を記憶する工程（504）をさらに含んでいてよい。一態様によれば、データ構造は木データ構造とすることができる。別の態様によれば、木データ構造は二分木データ構造とすることができる。また方法は、ポートを介して1台または複数の資産追跡機器上に記憶されるべき木データ構造を送信する工程（506）も含んでいてよい。地理的区域がどのようにしてデータ構造内に記憶され得るか理解するためには、地理的地域がどのようにしていくつかの部分領域へと量子化され得るかを考察することが役立ち得る。例えば、図6に、いくつかの矩形部分領域に細分されている地理的地域600を示す。ここでは、地理的地域600は地球の表面領域の矩形表現に対応する。各矩形部分領域は、等しいサイズおよび寸法のものである。しかし、他の態様では、矩形ではなく、必ずしも同サイズであるとは限らない部分領域を使用してもよい。例えば、各部分領域は、地球の曲率に対応する緯度および経度で定義された矩形とすることもできる。
【００４６】
一態様によれば、領域内の横方向の区画および縦方向の区画の数は等しくてよい。さらに、横方向の区画および縦方向の区画の数は、Nを整数値とする2Nで定義される整数とすることができる。2Nの区画が各方向で使用されるときには、以下でさらに詳細に説明するように、対応する2進木構造に従って地理的地域を細分することが可能である。横方向の区画および縦方向の区画の数を決定するのに他の整数の基数が使用されてもよく、これは、各レベルの子の数が区画の整数の基数によって決定される木データ構造に対応し得る。一例示的態様では、地理的地域600に対応する世界地図を、2N×2Nの要素矩形単位の格子へとピクセル化することができる。例えば、3オクテット（24ビット）の符号なしの数が使用される場合、各ピクセル（または矩形領域）は、地表のどこでもおおよそ2m2までの分解能を使用することができる。その場合、世界のどんな領域もこれらの要素矩形単位、またはピクセルを使用して定義することができる。
【００４７】
図7に、一態様による、細分された矩形区画を使用した地理的区域の定義を示す。この態様では、地理的地域は図4の地理的地域400に対応する。地理的地域400内で二つの地理的区域、すなわち区域710および区域712が定義されている。各区域は任意の形状のものであり、凸曲線と凹曲線の両方を含むことに留意されたい。
【００４８】
区域710は、ある区域が細分された矩形を使用してどのように定義され得るかを示している。この態様では、区域710は可能な最大の矩形を使用して表されている。これらの大きい矩形は、区域710内に矩形を適合させるのに必要な最少の数の区画に対応し得る。その場合、区域710の残りの領域は、地理的地域400のより大きい数の横方向の区画および縦方向の区画からもたらされるより小さい矩形を使用した処理とすることができる。図示のように、特に区域710の境界の周りでは、矩形は、所望の精度を達成するために必要に応じて小さくなり得る。
【００４９】
各区域がどのようにして定義され、データ構造において表され得るかをさらに示すために、三つの重なり合う区域についての一例を提示する。この例は、非常に粗い分解能および地理的区域の基本形状を使用して大幅に簡略化されている。以下の説明は単なる例示であり、限定するためのものではないことが理解されるであろう。本明細書に記載する態様の実際の応用はもっとずっと複雑なものになり得る。
【００５０】
図8Aに、一態様による、三つの地理的区域を有する地図を示す。地図は、おおよそ、図7に示したサンフランシスコ・ベイ・エリアに対応し得る。この例では、地図は、この用途の関心対象の地理的領域とみなされてよく、よって、地理的地域800と呼ぶことができる。地理的地域800は最低レベルで矩形要素の格子に細分されている。この例では、格子に八つの縦方向の区画および横方向の区画、すなわち23の区画がある。横方向の区画および縦方向の区画の数は等しいが、これは別の態様では該当しなくてもよい。
【００５１】
地理的地域800内で、三つの地理的区域、すなわち、地理的区域810、地理的区域812、および地理的区域814が選択され、または定義されている。三つの地理的区域810、812、814は、各々、その他の区域の一つまたは複数と重なり合う。地理的地域800の中央では、三つの地理的区域810、812、814全部が同じ部分で重なり合う。さらに、地理的区域814は、地理的地域800の外部に延びているように見える境界を有する。地理的区域814は、たとえ地理的区域814の実際の境界がさらに遠くまで延び得るとしても、その上境界および左境界を地理的地域800の境界によって定義されていてよい。
【００５２】
図8Aの例は、コンピュータシステム上のユーザインターフェースに対応し得る。三つの地理的区域810、812、814は、ユーザインターフェース上でユーザによって、またはソフトウェアプロセスによって選択されてよい。一態様では、図8Aの例は、Googleマップインターフェースの一部としてタッチ画面上に表示されてよく、三つの地理的区域810、812、814は、ユーザにより、マウス、指ジェスチャ、入力などで描かれてよい。この場合もやはり、三つの地理的区域810、812、814はこの例では連続しているが、より複雑な区域は、穴、すき間、および複数の非連続領域を有していてよい。
【００５３】
三つの地理的区域810、812、814は、矩形格子と一致しない不規則な境界を伴って描かれていてもよい。図8Aでは、各地理的区域は、格子線に沿って伸びているのではなく、矩形要素の中を通って延びる境界を有する。一態様では、各地理的区域の境界は、各境界が矩形格子と一致するように調整されてよい。図8Bに、一態様による、矩形の格子と一致するように調整された地理的区域を示す。ここでは、各地理的区域の境界は、各境界が、各地理的区域に完全に包含されている矩形要素の最も外側の境界と一致するように調整されている。言い換えると、各地理的区域の境界は、各境界が区域によって包含される格子線と合致するまで縮小されている。別の態様では、逆の操作が行われ、地理的区域の境界は、各境界が区域の外側にある格子線と適合するまで拡大される。さらに別の態様では、地理的区域の境界は、各区域が包含する矩形要素の面積に応じて拡大され、または縮小されてよい。
【００５４】
一般に、本明細書で提示する方法は、動作するために地理的区域の境界を調整しなくてもよい。各区域は格子の矩形要素の境界に従ってデータ構造内で表されることになるが、これらの方法は、以下で示すように、実際の境界調整を行わなくても動作し得る。したがって、残りの図では、明確にするために元の区域境界と格子表現の両方を示す。
【００５５】
地理的区域がどのようにしてデータ構造内で表され得るかを示すために、図9Aに地理的区域810を示す。図9Bに、地理的区域810を表す対応するデータ構造900の一態様を示す。この態様では、データ構造900は木データ構造を含む。具体的には、データ構造900は二分木データ構造とすることができる。データ構造900は複数のノードで構成されていてよい。複数のノードの各々は複数の親-子関係へと編成されていてよい。この態様では、各ノードは、二つの子ノードを指し示すポインタまたは他の種類の参照を含んでいてよい。具体的には、各ノードは、「0」で表される左子ノードを指し示すポインタ、および「1」で表される右子ノードを指し示すポインタを含んでいてよい。いくつかの態様では、各ノードは、親ノードを指し示すポインタといった別の種類の関係に対応するさらに別のポインタも含んでいてよい。この態様は特に二分木を使用するが、別の種類のデータ構造も様々な態様によって実装され得る。例えば、四分木（各ノードが四つの子を有する）が使用されてもよく、配列を使用して親-子関係が表されてもよい。
【００５６】
データ構造内の各ノードは地理的領域を表していてよい。各ノードによって表される地理的領域は互いに異なっていてよい。あるいは、地理的領域のうちの一部が重なり合っていてもよい。データ構造900は、地理的地域800を表すルートノード910を含んでいてよい。さらに、複数の親-子関係における各子ノードはそれぞれの親ノードによって表される地理的領域の部分領域を表していてよい。例えば、ルートノード910は二つの子ノード、すなわち、ノード912およびノード914を有する。ルートノード910は地理的地域800を表すため、ノード912および通知914は、各々、地理的地域800の1/2を表していてよい。一態様によれば、「0」ポインタで表されるルートノード910の左子ノード（ノード912）は、縦線960によって生じる分割に従って地理的地域800の左半分を表していてよい。同様に、「1」ポインタで表されるルートノード910の右子ノード（ノード914）も、地理的地域800の右半分を表していてよい。
【００５７】
一態様によれば、複数のノード中の各ノードは、少なくとも一部が地理的区域810と重なり合う地理的領域を表していてよい。言い換えると、データ構造900は、地理的区域の一つまたは複数と交わる地理的領域を表すノードを含むだけでよい。この特徴は、地理的区域の分解能が増大するに従って、すなわち、格子内の分割の数がより多くなるに従って特に重要となり得る。相対的に大きい数の区画を有する格子は、特に、大部分の資産追跡機器上で利用し得る限られたメモリリソースを考慮すれば、多くのメモリを必要とし得る。したがって、データ構造900から地理的区域のいずれとも交わらない領域を表すノードを除くことにより、場合によっては、データ構造900のサイズを大幅に低減させることができる。
【００５８】
データ構造900を走査する際の可能な各経路は、一つまたは複数の地理的区域内に完全に含まれる一つまたは複数の矩形要素の矩形ブロックで終了し得る。図9Bの二分木の場合には、各レベルは、前のレベルの親の地理的領域をXまたはY（横方向または縦方向）の方向に分割し得る。ノード912およびノード914は、二分木の第2のレベルとみなすことができ、x軸に沿った縦方向の分割に従った、ルートノード910によって表される地理的地域800の1/2を表し得る。ノード916、918、920、および922は、二分木の第3のレベルとみなすことができ、Y軸を通る横方向の分割に従って分割された、それぞれの親によって表される地域の1/2を表し得る。言い換えると、この態様の二分木の各レベルは、前のレベルで親によって表される地理的領域の横方向の分割と縦方向の分割とを交互に行う。
【００５９】
一態様では、左子ノード、すなわち「0」ノードは、X座標レベルについての親の地理的領域の左半分を表していてよく、右子ノード、すなわち「1」ノードは、親の地理的領域の右半分を表していてよい。同様に、左子ノード、すなわち「0」ノードは、Y座標レベルについての親の地理的領域の上半分を表していてよく、右子ノード、すなわち「1」ノードは、親の地理的領域の下半分を表していてよい。例えば、図9Aの矩形ブロック962を表すためには、以下のノードが木に配置され得る。ルートノード910（地理的地域800を表す）、左子「1」ノード、すなわちノード914（X座標4-7を有する地理的地域800のを表す）、右子「0」ノード、すなわちノード920（地理的地域800の右上四半分である、ノード914で表される地理的領域の上半分を表す）、右子「0」ノード、すなわちノード924（ノード920で表される右上四半分の左半分を表す）、および最後に、右子「1」ノード、すなわちノード926（ノード924で表される地理的領域の下半分を表す）。
【００６０】
この態様では、矩形ブロック962を表すノード926は、それと関連付けられたいかなる子ノードも持つ必要がない。子ノードは、矩形ブロック962の地理的領域をより小さい要素へと細分するはずである。しかし、矩形ブロック962全体が地理的区域810内に置かれているため、細分を行う理由がほとんどない。ノードによって表される地理的領域全体が地理的区域810内に収まり次第、データ構造900の分岐を終了することにより、データ構造900の全体の計算量およびサイズを実質的に最小化することができる。
【００６１】
いくつかの態様では、完全にある地理的区域内にある地理的領域を表す複数のノード中の各ノードは、当該地理的区域と関連付けられた識別子を含んでいてよい。例えば、左右の子（「0」および「1」の子）を指し示すポインタを含むことに加えて、各ノードは、特定の地理的区域のさらに別の標識を含むことができる。図9Bでは、ノード926は、ノード926で終了し、またはノード926を通るデータ構造900の走査が地理的区域810内に収まることになると表明するための「A」でマークされた標識を含む。いくつかの態様では、標識は、資産追跡機器が、それが区域810内にあると判定したときに実行されるべきコードの別のセクションを指し示すポインタとすることができる。コードのセクションは、データ構造900自体の一部として記憶されてよい。別の態様では、コードのセクションは別個に記憶されてよく、データ構造900がそこで記憶される資産追跡機器の種類および/または位置に基づいて定義されてよい。標識「A」は、他のコードを指し示すポインタとすることもでき、データ構造900が資産追跡機器上に記憶されるときにポインタで置き換えられるプレースホルダとすることもできる。
【００６２】
引き続き図9Aおよび図9Bの例について、地理的区域810は、四つのさらに別の矩形ブロック、すなわち矩形ブロック964、966、968、および970を使用して表すことができる。これらのブロックの各々を、データ構造900内に追加のノードを加えることによって表すことができる。例えば、矩形ブロック966は、ノード910、912、918、928、930および932を含むノードの経路で表されてよい。同様に、矩形ブロック964も、ノード910、912、916、934、936および938を含むノードの経路で表されてよい。矩形ブロック968および970も同様に、地理的地域800を、X座標方向とY座標方向とに半分に交互に分割することによってデータ構造に示されたノードの経路で表されてよい。図9Bのデータ構造900は地理的区域810を完全に表すことができる。この態様はX方向の分割から始まるために、正方形ブロックはまず半分に分割されて縦の矩形を形成することに留意されたい。これは、地理的区域が正方形および縦の矩形で最も効率よく表され得る場合に有利となり得る。別の態様によれば、データ構造900はまずY方向に分割してもよく、その場合は、正方形が横の矩形へと分割されることになるはずである。これは、地理的区域が正方形および横の矩形で最も効率よく表され得る場合に有利となり得る。さらに別の態様では、これら二つのオプションは、地理的区域ごとに最も効率のよい表現を決定するアルゴリズムに従って混合されてよい。
【００６３】
地理的区域810を表すデータ構造900は、図8Aからの地理的区域812といった第2の地理的区域を表すように増補されてよい。図10Aに、五つの矩形ブロック、すなわち、ブロック1002、ブロック1004、ブロック1006、ブロック1008、およびブロック1010に分割された地理的区域812を示す。この場合もやはり、これらのブロックは、前述の交互のX、Y分割方式を使用して表され得る最大の正方形および縦の矩形を表している。図10Bに、データ構造900が、地理的区域810と地理的区域812の両方を表すようにどのようにして増補され得るかを示す。
【００６４】
場合によっては、二つの地理的区域内のブロックは重なり合っていてもよい。この場合、データ構造900に新しいノードが追加されなくてよい。代わりに、地理的区域812のための標識が既存のノードに追加されてよい。例えば、図9Aの地理的区域810の矩形ブロック968は図10Aの矩形ブロック1004地理的区域812の部分領域である。したがって、矩形ブロック1004を表すノードはデータ構造900に既に存在しており、すなわちノード942である。新しいノードを追加するのではなく、「B」と表示された標識がノード942に追加されてよい。図10Aには図示されていないが、重なり合う地理的区域は共通の矩形ブロックを共有し得る。この場合には、単一のノードが、「A」や「B」といった複数の地理的区域を指し示す表示を含んでいてよい。
【００６５】
データ構造900に区域812の表現を追加するときに、既存のノードの矩形ブロックと重なり合わない矩形ブロックは、データ構造900に追加されることを必要とし得る。例えば、矩形ブロック1010は、データ構造900によって表されているどんな既存の地理的領域とも重なり合わない地理的領域を表している。したがって、矩形ブロック1010を表すために追加ノードが追加されてよい。具体的には、ノード1020、1022、および1024が追加されてよく、ノード1024には「B」と表示された表示が含まれる。図10Bで増補されたデータ構造900は、地理的区域810と地理的区域812の両方を完全に表すことができる。地理的区域812を表すように追加され、または更新されたノードは太い境界で表示されている。
【００６６】
図11に、前述の方法に従って、地理的区域814が方形および縦の矩形ブロックを使用してどのようにして表され得るかを示す。簡単にするために図示されていないが、図10Bのデータ構造900は、データ構造900が地理的区域812を表すように編集され、かつ/または増補されたのと同じやり方で地理的区域814も表すように編集し、かつ/または増補することができる。データ構造900を使用して任意の数の地理的区域が表され得ることが理解されるであろう。さらに、地理的区域と部分的に重なり合う地理的領域を表すノードを含めるだけで、データ構造900の全体サイズが大幅に低減され得ることも理解されるであろう。同様に、地理的領域が地理的区域内で完了し次第地理的領域の細分化を停止することにより、データ構造908の全体サイズおよび計算量も大幅に低減され得る。例えば、前の例に記載した最適化なしで23×23の格子を使用すると、データ構造900は合計63ノードを有する6レベルの深さになるはずである。しかし、あらゆる地理的領域ではなく地理的区域のみを表すようにデータ構造を最適化することにより、データ構造900のサイズは1/2未満に低減される。この低減は、地理的地域のサイズが地理的区域のサイズに対して増大し、分解能が増大するに従ってさらにより顕著になり得る。この場合もやはり、これらの方法の大部分の実際の用途は、地理的区域と比べてより大きい地理的領域をよりいっそう高い分解能で含むことになる。よって、これらの用途でのデータ構造のサイズおよび計算量は、これらの簡略化した例で示したものと比べてさらにいっそう大幅に低減され得る。
【００６７】
図6から図11までの前述の各例には、メモリに記憶され得る一つまたは複数の地理的区域を表すデータ構造をどのように構築すべきかが示されている。一般に、地理的区域を表すこのデータ構造は、中央追跡モニタリング局といった十分なリソースを有するコンピュータシステム、すなわちDMS160を使用して作成し、描くことができる。例示的コンピュータシステムを、図15および図16に関連して以下で説明する。一態様によれば、地理的区域を表すデータ構造は、その場合、一つまたは複数の資産追跡機器上に記憶されてよい。資産追跡機器は、その場合、以下で説明する方法を使用して記憶されたデータ構造を走査し、資産追跡機器が地理的区域の一つまたは複数の内にあるか否か判定し得る。
【００６８】
一態様によれば、データ構造は、図2のWSD110のメモリ220といった資産追跡機器のメモリに記憶され得る。データ構造は、資産追跡機器の動作に影響を及ぼすのに使用されるソフトウェアと共に資産追跡機器上にロードされてよい。加えて、または代替として、データ構造は、それが動作しており、または使用フィールドにあるときに、資産追跡機器に無線で伝送されてもよい。一態様では、データ構造は、複数の資産追跡機器で構成された無線センサネットワークを介して資産追跡機器に無線で伝送され得る。例えば、図1Aでは、データ構造は、DMS160で定義され、インターネット150を介してゲートウェイ130に伝送され、そこから無線ネットワークを介して各WSD110に送信されてもよい。
【００６９】
データ構造が資産追跡機器に伝送されるときには、データ構造全体が一度に伝送されてよい。データ構造が更新されるときには、データ構造の更新バージョンは、送信される必要のあるデータ構造の変更部分のみと共に資産追跡機器に伝送することができる。これにより、無線センサネットワークを介して伝送されるデータパケットの数が最小限に抑えられ、資産追跡機器上での更新に必要な処理が最小限に抑えられ得る。代替として、またはこれに加えて、更新データ構造全体が資産追跡機器に伝送されてもよく、以前に記憶されたデータ構造が、単に資産追跡機器のメモリにおいて上書きされるだけでもよい。さらに別の態様では、更新データ構造全体が資産追跡機器に伝送されてよく、資産追跡機器は、以前に記憶されたデータ構造のどの部分が更新される必要があるかを判定してよい。
【００７０】
図12に、少なくとも一部が地理的地域内に位置する第1の地理的区域に対する資産追跡機器の位置に基づいて地理的地域内の資産追跡機器の動作に影響を及ぼす方法のフローチャート1200を示す。方法は、第1の地理的区域を表す木データ構造を記憶する工程（1202）を含んでいてよい。木データ構造は、図5の方法によって作成されたのと同じ木データ構造とすることができる。したがって、木データ構造は、複数の親-子関係へと編成された複数のノードを有する二分木データ構造とすることができる。複数のノードの各々は地理的領域を表していてよい。ルートノードは地理的地域を表していてよい。各子ノードはそれぞれの親ノードによって表される地理的領域の部分領域を表していてよい。各ノードは、少なくとも一部が第1の地理的区域と重なり合う地理的領域を表していてよい。完全に第1の地理的区域内にある地理的領域を表す各ノードは、第1の地理的区域と関連付けられた識別子を含んでいてよい。第1の地理的区域は、複雑で、凸曲線および凹曲線を有し、穴またはすき間を有していてよく、非連続であってよい。木データ構造は資産追跡機器のメモリに記憶されていてよい。木データ構造は、メモリにおいて、木における各レベルに対応する索引付き位置を有する配列として表されていてもよく、各ノードが複数のリンク二つの子ノードを有するリンクされたリストとして記憶されていてもよい。
【００７１】
また方法は、資産追跡機器と関連付けられた資産の位置を受信する工程（1204）も含んでいてよい。資産追跡機器は資産に取り付けられていてよい。この態様では、資産追跡機器の位置および資産の位置を同じとしてよく、GPSユニットまたは地理的位置を確認する他の手段を使用して資産の位置が決定されてよい。別の態様では、資産追跡機器は資産に近接して格納されていてよい。GPSユニットを使用して資産追跡機器の位置を確認することによって、資産の位置がそこから計算され得る。例えば、資産追跡機器は資産と無線で交信してもよく、無線伝送の強さを使用して資産と資産追跡機器との間の距離を決定してもよい。
【００７２】
方法は、資産の位置を文字列に変換する工程（1206）をさらに含んでいてよい。資産の位置を変換する工程は、データ構造がどのようにして定義されるかに依存していてよい。データ構造が地理的地域の一連の交互のX分割およびY分割として定義された前述の態様では、文字列は、各文字がデータ構造内の1レベルを走査することに対応するように変換されてよい。
【００７３】
例えば、資産の位置は、緯度経度座標によって表されてもよい。この態様では、緯度経度座標は、各々、地理的地域内の座標に対応する2進表現に変換されてよい。図13に、GPS座標の文字列への変換を示す。サンフランシスコとサンマテオとの間の位置1310は、資産追跡機器と関連付けられた資産の現在位置を表していてよい。資産のGPS座標は北緯37度40分、西経122度25分に対応し得る。GPS座標は、世界緯度経度系に基づくものであることに留意されたい。この例では、地理的地域800（資産を追跡するための関心対象の限定された地域を表し得る）は、サンフランシスコ・ベイ・エリアの一部分に限定されている。したがって、GPS座標は、地理的地域座標の集合に変換される必要が生じ得る。地理的地域座標は、前述のような格子における縦方向の区画および横方向の区画の数に対応していてよい。この例では、X区画およびY区画はどちらも0から7までの範囲に及ぶ。位置1310の対応する地理的地域座標は（3, 4）である。
【００７４】
資産の位置を文字列に変換する工程における次の工程は、地理的地域座標の2進表現を獲得する工程とすることができる。この例では、（3, 4）は（011, 100）という2進座標に対応し得る。資産の位置を文字列に変換する工程における最後の工程は、データ構造に依存し得る。データ構造の各レベルでの交互のX分割およびY分割を使用するときに、2進座標は、2進文字列、この場合は（011010）を生成するようにインターリーブされ得る。これらの文字の各々は前述のデータ構造の各レベルで下されるべき決定に対応し、「0」は左子ノードへの走査を表し、「1」は右子ノードへの走査を表すことに留意されたい。
【００７５】
フローチャート1200に戻って、方法は、文字列中の各文字に順次にアクセスしてデータ構造を走査する工程（1208）をさらに含んでいてよい。一態様では、文字列中の第1の文字はルートノードと関連付けられていてよい。文字列中の第1の文字が「0」である場合には、ルートノードの左子ノードが走査されてよい。同様に、文字列中の第1の文字が「1」である場合には、ルートノードの右子ノードが走査されてよい。言い換えると、第1の文字は、もしあるとすれば、ルートノードのどの子ノードが走査されるべきか決定し得る。
【００７６】
この動作はデータ構造のレベルごとに繰り返されてよく、各走査は文字列中の連続する文字に依存する。言い換えると、文字列中の連続する各文字は、もしあるとすれば、データ構造の連続する各レベルでどの子ノードを走査すべきか決定することができる。このプロセスは、いかなる子ノードとも関連付けられていないノードに到達するまで続けられてよい。あるいは、走査プロセスは、所望の区域の標識が見つかったときに停止してもよい。
【００７７】
また方法は、走査されたノードのいずれかが第1の地理的区域と関連付けられた識別子を含むかどうか判定し、これに応答して、第1の地理的区域と関連付けられた命令セットを実行する工程（1210）も含んでいてよい。一例として、図13の位置1310は、図10Bのデータ構造900を走査するのに使用されてよい。（011010）としての文字列を使用すると、これは、ノード910、912、918、928、930、および932の走査に対応することになる。文字列には余分な「0」が残るが、走査動作はノード932に到達し、ノード932には子ノードがないことに留意されたい。したがって、走査動作は終了してよい。一般に、走査動作は、文字列の末尾に到達する前に、資産の現在位置が、可能な最小の矩形ブロックよりも大きい地理的区域の矩形ブロック内にあるときに終了してよい。（言い換えると、地理的区域がより大きいブロックを使用して最適に表され得る場合には、データ構造を1×1矩形ブロックを表すノードまで走査しなくてもよい。）
【００７８】
走査されたノードのいずれかが地理的区域と関連付けられた識別子を含むかどうか判定する際に、走査動作は、ノード932が、現在位置が地理的区域810の内にあることを表明する標識「A」を含むことを留意すべきである。また走査動作は、ノード930が、現在位置が地理的区域812の内にもあることを表明する標識「B」を含むことにも留意すべきである。この例で使用されるデータ構造900は地理的区域814の表現を含まないことに留意されたい。したがって、たとえ位置1310が地理的区域814の内にあったとしても、走査動作は、データ構造900が地理的区域814を適正に表すように更新されない限りそのようには判定しないはずである。
【００７９】
図14に、一態様による、複数の地理的区域を表すデータ構造の走査の一例を示す。この図の境界の上方と下方の両方にさらに別のノードが延びているものと想定してよい。最初に、走査動作はノード1402に入り、ノード1402は、資産追跡機器が特定の地理的区域にあるという指示を含む。この態様では、指示は挙動ノード1406を指し示す挙動ポインタ1420の形をしている。一般に、挙動ノードは、特定の地理的区域、およびそこで講じられるべき措置を指示するのに使用され得る。例えば、挙動ノード1406は、地理的区域「X」で見つかった資産追跡機器の挙動を定義してもよい。また挙動ノードは、資産追跡機器上のプロセッサによる実行可能コードを参照するスクリプトポインタを含んでいてもよい。例えば、挙動ノード1406は、資産追跡機器が区域「X」内に位置するときに実行され得るスクリプト1412を指し示すポインタを含む。
【００８０】
一をこえる挙動が単一の地理的区域と関連付けられ得ることに留意すべきである。加えて、単一の挙動が多数の地理的区域と関連付けられていてもよい。例えば、挙動「X」は無線通信プロトコルに関連していてもよい。この無線通信プロトコルは、いくつかの異なる地理的区域において適用されてよい。これとは逆に、第1の地理的区域が、様々なセンサが資産追跡機器上でポーリングされる間隔を制御し得る挙動「Y」と共に、無線通信を調整する挙動「X」と関連付けられていてもよい。したがって、挙動ノード1406内の次ポインタ1410は挙動ノード1408（挙動「Y」）を参照してよく、挙動ノード1408はさらにスクリプト1414を実行してよい。これは二つの異なる地理的区域、すなわち挙動「X」と関連付けられた地理的区域および挙動「Y」と関連付けられた地理的区域に対応していてよい。あるいはこれは、挙動「X」と挙動「Y」の両方と関連付けられた単一の地理的区域に対応していてもよい。この方式の一つの利点は、資産追跡機器から求められる種類の挙動に基づいて地理的区域を定義することができることである。例えば、資産追跡機器が起伏の多い地形を輸送されており、いくつかの挙動が、加速度計センサの感度を下げるスクリプトを指し示す場合もあり得る。別の例としては、資産追跡機器が敵国を輸送されており、いくつかの異なる挙動が、資産追跡機器がアクティブになっている無線通信および外部から見える任意の指示を無活動状態にするスクリプトを指し示す場合もあり得る。用途および環境に基づいて多くの異なる構成が可能である。
【００８１】
一態様では、資産追跡機器は、それが任意の特定の地理的区域であるかどうか判定するよう指示され得る。例えば、資産追跡機器は、それが、挙動「X」と関連付けられた地理的区域にあるかどうか判定するよう指示されてもよい。この場合には、走査動作はノード1402で停止してよい。というのは、この時点で、挙動ポインタ1422および挙動ノード1406は、資産追跡機器は挙動「X」と関連付けられた地理的区域内にあると指示しているからである。一態様では、データ構造は、すでに挙動「X」と関連付けられているノードの子孫において行われる挙動「X」へのあらゆる参照を除去することによってさらに最適化され得る。
【００８２】
別の態様では、資産追跡機器は資産追跡機器に、（1）それが一つまたは複数の地理的区域にあるかどうか判定し、（2）各区域と関連付けられた任意の挙動を実行するよう指示するトリガ入力を受信し得る。トリガ入力は、無線電波通信から受信してもよく、資産追跡機器自体で割込タイマによって生成されてもよい。一態様では、トリガ入力は、資産追跡機器上のセンサによって生成され得る。これらのような場合には、走査動作がノード1402で資産追跡機器は一つまたは複数の地理的区域内にあると判定していたとしても、走査動作は、文字列中の次の文字を使用して引き続き木構造をたどって、資産追跡機器が追加の地理的区域を占めているかどうか判定してよい。
【００８３】
引き続き図14の例について、走査動作は、文字列中の文字「0」にアクセスし、ノード1402の左の子、すなわちノード1404まで走査してよい。文字列中の次の文字が「1」であった場合には、ノード1402の右ポインタ1424はヌルであるため、走査動作は終了するはずであることに留意されたい。ノード1404も、挙動「X」を参照し、挙動ノード1418で表される非ヌルの挙動ポインタ1422を含む。挙動ノード1418は挙動ノード1406と同じメモリ内のオブジェクトとすることができることに留意されたい。この場合には、挙動ポインタ1422に記憶されたアドレスは、挙動ポインタ1420に記憶されたアドレスと同じとなるはずである。この時点で、資産追跡機器は、ノード1402の先の地理的区域とは異なる挙動「X」によって定義される地理的区域内にあると決定することができる。挙動ノード1418の次ポインタ1406はヌルであるため、単一の挙動だけがこの特定の地理的区域と関連付けられている。
【００８４】
一態様では、実行されるべき各スクリプトがデータ構造内で見つかる。よって、各スクリプトは、走査動作がデータ構造の後続のレベルに移動する前に実行されてよい。別の態様では、スクリプトを指し示すポインタは、データ構造を走査する間にそれらが発見される際に記憶され、走査動作が完了した後で実行されてよい。これは、走査動作が、予測可能な電力プロファイルを有し、定義された期間内に実行されることが求められる場合に有利となり得る。またスクリプトは、重要度または緊急度に従って順序付けされてもよい。例えば、第1の区域に入ることが特定のスクリプトが即座に実行されることを必要とする場合もあり得る。よって、走査動作は、木を完全に走査し、進むに従ってスクリプトを記憶して、ついには第1の区域の特定のスクリプトに到達し、その時点で、走査が進む前に特定のスクリプトが即座に実行されてよい。さらに、走査が完了した後で、スクリプトは、それらが実行される前に、重要度に従って記録されてもよい。
【００８５】
特定の一態様では、データ構造の走査が、地理的区域に基づくジオキャスティングを可能にするのに使用され得る。無線メッセージの受信を、資産追跡機器にデータ構造の走査動作を開始させるトリガイベントとすることができる。地理的区域のポインタまたは他の形の指示が走査動作中に記憶されてよい。最後に、無線メッセージは、追跡機器が対象とされる地理的区域の一つにあるか否かに基づいて無視され、または実行されてよい。このフィルタリング動作は、資産追跡機器上の無線モジュールによって実行されてよく、主プロセッサが休眠モードから動作モードに遷移される必要があるか否かを判定してよい。ジオキャスティングに加えて、多くの他の用途および種類の処理が、本明細書に記載するデータ構造によって表される地理的区域を使用して実現されてよい。これらの例は単なる例示であり、限定するためのものではない。
【００８６】
前述のように、地理的区域を使用し、定義し、表す動作の多くは、コンピュータシステム上で実施されてよい。図15は、本発明の様々な態様が実施され得る例示的動作環境の構成要素を示すブロック図である。システム1500は、専用のアプリケーションであれ、ウェブブラウザであれ、それ以外であれ、クライアントを動作させるのに使用され得る1台または複数のユーザコンピュータ1505、1510を含むことができる。ユーザコンピュータ1505、1510は、汎用パーソナルコンピュータ（例にすぎないが、様々なバージョンのMicrosoft Corp.のWindowsおよび/もしくはApple Corp.のMacintoshオペレーティングシステムを走らせるパーソナルコンピュータおよび/もしくはラップトップコンピュータを含む）、ならびに/または様々な市販のUNIXもしくはUNIX様のオペレーティングシステム（それだけに限らないが、様々なGNU/Linuxオペレーティングシステムを含む）を走らせるワークステーションコンピュータとすることができる。またこれらのユーザコンピュータ1505、1510は、一つまたは複数の開発システム、データベースクライアントおよび/またはサーバアプリケーション、ならびにウェブ・ブラウザ・アプリケーションを含む様々なアプリケーションのいずれを有していてもよい。あるいは、ユーザコンピュータ1505、1510は、ネットワーク（後述するネットワーク1515など）を介して通信し、かつ/またはウェブページもしくは他の種類の電子文書を表示し、ナビゲートすることができる、シンクライアントコンピュータ、インターネットベースの移動電話、および/または携帯情報端末といった任意の他の電子機器とすることもできる。例示的システム1500は2台のユーザコンピュータと共に図示されているが、任意の数のユーザコンピュータがサポートされてよい。
【００８７】
いくつかの態様では、システム1500はネットワーク1515も含んでいてよい。ネットワークは、それだけに限らないが、TCP/IP、SNA、IPX、AppleTalkなどを含む、様々な市販のプロトコルのいずれかを使用したデータ通信をサポートすることができる、当業者に周知の任意の種類のネットワークとすることができる。例にすぎないが、ネットワーク1515は、イーサネットネットワーク、トークンリングネットワークなどといったローカル・エリア・ネットワーク（「LAN」）;広域ネットワーク;それだけに限らないが、仮想私設ネットワーク（「VPN:virtual private network」）;インターネット;イントラネット;エクストラネット;公衆交換電話網（「PSTN:public switched telephone network」）;赤外線ネットワーク;無線ネットワーク（IEEE 802.11プロトコルスイートのいずれかの下で動作するネットワーク、当技術分野において公知のBluetoothプロトコル、および/もしくは他の無線プロトコルなど）;ならびに/または、GSM、GPRS、EDGE、UMTS、3G、2.5G、CDMA、CDMA2000、WCDMA、EVDOなどといった、上記その他のネットワークの任意の組み合わせとすることができる。
【００８８】
またシステムは、1台または複数のサーバコンピュータ1520、1525、1530を含んでいてもよく、これらのサーバコンピュータは、（例にすぎないが、PCサーバ、UNIXサーバ、ミッドレンジサーバ、メインフレームコンピュータ、ラックマウントサーバなどを含む）汎用コンピュータおよび/または専用サーバコンピュータとすることができる。サーバの1台または複数（1530など）を業務アプリケーション、ウェブサーバ、アプリケーションサーバなどといったアプリケーションの実行に専用のものとしてもよい。そのようなサーバは、ユーザコンピュータ1505、1510からの要求の処理に使用されてよい。またアプリケーションは、サーバ1520、1525、1530のリソースへのアクセスを制御するための任意の数のアプリケーションを含むことができる。
【００８９】
ウェブサーバは、前述のオペレーティングシステムのいずれかを含むオペレーティングシステム、ならびに任意の市販のサーバ・オペレーティング・システムを走らせることができる。またウェブサーバは、HTTPサーバ、FTPサーバ、CGIサーバ、データベースサーバ、Javaサーバ、業務アプリケーションなどを含む様々なサーバアプリケーションおよび/またはミッドティアアプリケーションのいずれかを走らせることもできる。また（1台または複数の）サーバは、ユーザコンピュータ1505、1510に応答してプログラムまたはスクリプトを実行することができる、1台または複数のコンピュータとすることもできる。一例として、サーバは一つまたは複数のウェブアプリケーションを実行してもよい。ウェブアプリケーションは、Java（商標）、C、C＃もしくはC＋＋といった任意のプログラミング言語、および/または、Perl、Python、もしくはTCLといったスクリプティング言語、ならびに任意のプログラミング言語/スクリプティング言語の組み合わせで書かれた一つまたは複数のスクリプトまたはプログラムとして実装されてよい。また（1台または複数の）サーバは、それだけに限らないが、ユーザコンピュータ1505、1510上で走るデータベースクライアントからの要求を処理することのできる、Oracle（登録商標）、Microsoft（登録商標）、Sybase（登録商標）、IBM（登録商標）などから市販されているものを含むデータベースサーバも含んでいてよい。
【００９０】
いくつかの態様では、アプリケーションサーバは、エンドユーザ（クライアント）システム上で表示するためのウェブページを動的に作成してよい。ウェブ・アプリケーション・サーバによって作成されたウェブページは、ウェブサーバによってユーザコンピュータ1505に転送されてよい。同様に、ウェブサーバは、ユーザコンピュータからウェブページ要求および/または入力データを受信することもでき、ウェブページ要求および/または入力データをアプリケーションサーバおよび/またはデータベースサーバに転送することもできる。様々な種類のサーバに関して説明した機能は、実装特有の必要およびパラメータに応じて、1台のサーバによって、かつ/または複数の専用サーバによって実行され得ることを当業者は理解するであろう。
【００９１】
またシステム1500は、一つまたは複数のデータベース1535も含んでいてよい。（一つまたは複数の）データベース1535は様々な位置に置かれていてよい。例えば、データベース1535は、コンピュータ1505、1510、1515、1525、1530の1台または複数にとってローカルの（かつ/またはそこに置かれた）記憶媒体上に置かれていてもよい。あるいは、データベース1535は、コンピュータ1505、1510、1515、1525、1530のいずれかもしくは全部からリモートであってもよく、かつ/またはそれらのコンピュータの1台もしくは複数と（例えばネットワーク1520を介して）通信してもよい。特定の態様では、データベース1535は、当業者に周知のストレージエリアネットワーク（「SAN:storage-area network」）に置かれ得る。同様に、コンピュータ1505、1510、1515、1525、1530に起因する機能を実行するための任意の必要なファイルも、適宜、それぞれのコンピュータ上にローカルで記憶され、かつ/またはリモートで記憶されてよい。ある態様では、データベース1535は、SQL形式のコマンドに応答してデータを記憶し、更新し、取得するように適合された、Oracle 10gといった関係データベースとすることができる。
【００９２】
図16に、本発明の様々な態様が実施され得る例示的コンピュータシステム1600を示す。システム1600は前述のコンピュータシステムのいずれかを実装するのに使用されてよい。コンピュータシステム1600は、バス1655を介して電気的に結合され得るハードウェア要素を含むものとして図示されている。ハードウェア要素は、一つまたは複数の中央処理装置（CPU:central processing unit）1605、1台または複数の入力装置1610（例えばマウス、キーボードなど）、および1台または複数の出力装置1615（例えば表示装置、プリンタなど）を含んでいてよい。またコンピュータシステム1600は1台または複数の記憶装置1620も含んでいてよい。例えば、（1台または複数の）記憶装置1620は、ディスクドライブ、光記憶装置、プログラム可能、フラッシュ更新可能などとすることのできる、ランダム・アクセス・メモリ（「RAM:random access memory」）および/または読取り専用メモリ（「ROM:read-only memory」）といった固体記憶装置などとすることができる。
【００９３】
コンピュータシステム1600は加えて、コンピュータ可読記憶媒体読取装置1625a、通信システム1630（モデム、ネットワークカード（無線または有線）、赤外線通信装置など）、および作業メモリ1640も含んでいてよく、作業メモリは前述のRAMデバイスおよびROMデバイスを含んでいてよい。いくつかの態様では、コンピュータシステム1600は処理加速部1635を含んでいてもよく、処理加速部1635はDSP、専用プロセッサなどを含むことができる。
【００９４】
コンピュータ可読記憶媒体読取装置1625aはコンピュータ可読記憶媒体1625bにさらに接続することができ、合わさって（また任意選択で、（1台または複数の）記憶装置1620と組み合わさって）、コンピュータ可読情報を一時的に、かつ/またはより永続的に収容するための、リモートの、ローカルの、固定式の、かつ/または取り外し可能な記憶装置に記憶媒体を加えたものを包括的に表す。通信システム1630は、ネットワーク1620および/またはシステム1600に関連して前述した任意の他のコンピュータとデータを交換させてよい。
【００９５】
またコンピュータシステム1600は、オペレーティングシステム1645および/または（クライアントアプリケーション、ウェブブラウザ、ミッドティアアプリケーション、RDBMSなどとすることのできる）アプリケーションプログラムといった他のコード1650を含む、作業メモリ1640内に現在位置しているものとして図示されているソフトウェア要素も含んでいてよい。コンピュータシステム1600の代替の態様は前述のものからの多数の変形を有していてよいことを理解すべきである。例えば、カスタマイズされたハードウェアも使用されてよいはずであり、かつ/または特定の要素がハードウェアとして、（アプレットといった移植性のあるソフトウェアを含む）ソフトウェアとして、またはその両方として実装されてもよいはずである。さらに、ネットワーク入出力装置といった他のコンピューティング機器への接続も用いられてよい。コンピュータシステム1600のソフトウェアは、本明細書に記載する本発明の態様を実装するためのコード1650を含んでいてよい。
【００９６】
本明細書の態様の多くはセンサネットワーク140のコンテキストで開示されているが、これらの態様はセンサネットワークだけに限定されるものではなく、輸送またはロジスティックス用途だけに限定されるものでもない。本明細書で開示される方法および機器は、識別、時間、セキュリティ、および/または位置情報など、センサ情報以外の情報を伝達する無線ネットワークにも適用することができる。実際、任意の数の無線ネットワークが、本明細書で開示される特徴を、低電力消費、予測可能で一貫性のある電力消費、および他の利益を得るために利用することができる。これらの趣旨に即して本明細書で開示されるWSD110は限定的ではない。本明細書で開示される特徴を利用するネットワーク機器は、例えば、センサデータを集めたり、伝送したりしなくてもよい。
【００９７】
以上の説明では、例示のために、方法を特定の順序で記述した。代替の態様では、方法は、前述の順序と異なる順序で実行されてよいことを理解すべきである。また前述の方法は、ハードウェア構成要素によって実行されてもよく、あるいは機械可読命令のシーケンスとして具現化されてもよく、機械可読命令は、機械可読命令でプログラムされた汎用もしくは専用プロセッサや論理回路などの機械に方法を実行させるために使用され得ることも理解すべきである。これらの機械可読命令は、CD-ROMや他の種類の光ディスク、フロッピーディスケット、ROM、RAM、EPROM、EEPROM、磁気または光カード、フラッシュメモリ、電子命令を記憶するのに適した他の種類の機械可読媒体など、一つまたは複数の機械可読媒体上に記憶されてよい。あるいは、方法は、ハードウェアとソフトウェアの組み合わせによって実行されてもよい。
【００９８】
本明細書では、開示のシステム、方法、および機器の例示的な、現時点での好ましい態様が説明されているが、本発明の概念はそれ以外にも様々に具現化され、用いられ得ること、および添付の特許請求の範囲は、先行技術によって制限される場合を除いて、そのような変形を含むものと解釈すべきことが意図されていることを理解すべきである。
【図１Ａ】
2014532211.tif 000004
【図１Ｂ】
2014532211.tif 000005
【図２】
2014532211.tif 000006
【図３】
2014532211.tif 000007
【図４】
2014532211.tif 000008
【図５】
2014532211.tif 000009
【図６】
2014532211.tif 000010
【図７】
2014532211.tif 000011
【図８Ａ】
2014532211.tif 000012
【図８Ｂ】
2014532211.tif 000013
【図９Ａ】
2014532211.tif 000014
【図９Ｂ】
2014532211.tif 000015
【図１０Ａ】
2014532211.tif 000016
【図１０Ｂ】
2014532211.tif 000017
【図１１】
2014532211.tif 000018
【図１２】
2014532211.tif 000019
【図１３】
2014532211.tif 000020
【図１４】
2014532211.tif 000021
【図１５】
2014532211.tif 000022
【図１６】
2014532211.tif 000023
【国際調査報告】
2014532211.tif 000024
2014532211.tif 000025