(57)【特許請求の範囲】
【請求項１】
無線装置の位置を特定するための無線装置検出（ＷＤＤ）コンピュータ装置であって、
メモリと通信するプロセッサを含んでなり、前記プロセッサは、
複数のアンカーポイントから複数のステータスメッセージを受信し、前記複数のステータスメッセージにおける各ステータスメッセージは、対応するアンカーポイントで受信された、第１無線装置からの第１無線信号に関連付けられた受信信号強度を含んでおり、
前記複数のアンカーポイントから複数のサブセットを決定し、各サブセットは、前記複数のアンカーポイントのうちの所定数のアンカーポイントを含んでおり、
前記複数のサブセットの各々について、当該各サブセットにおける前記複数のアンカーポイントの各々からの対応する前記受信信号強度に少なくとも部分的に基づいて、前記第１無線装置の候補位置を特定し、
前記複数の候補位置のクラスタリングを生成し、
前記クラスタリングに基づいて、前記複数のサブセットから第１グループのサブセットを選択し、
第１グループのサブセットに含まれる前記アンカーポイントから受信した受信信号強度に基づいて、前記第１無線装置の最終位置を算出するように構成されている、ＷＤＤコンピュータ装置。
【請求項２】
前記プロセッサは、さらに、
複数の位置を登録しており、各位置は、前記複数のアンカーポイントのうちの１つと関連付けられており、
前記複数のサブセットの各々について、サブセットに含まれる前記アンカーポイントの前記位置、及び、これに対応する前記受信信号強度に基づいて、前記第１無線装置の前記候補位置を特定するように構成されている、請求項１に記載のＷＤＤコンピュータ装置。
【請求項３】
前記プロセッサは、さらに、各サブセットに関連付けられた前記候補位置が互いに所定の距離内である前記候補位置のクラスタリングに基づいて前記第１グループを選択するように構成されている、請求項１に記載のＷＤＤコンピュータ装置。
【請求項４】
前記プロセッサは、さらに、
各アンカーポイントに関連付けられた前記受信信号強度を、所定の第１閾値と比較し、
受信信号強度が、前記所定の第１閾値を超えていないと判断すると、前記複数のアンカーポイントから、当該受信信号強度に対応するアンカーポイントを排除するように構成されている、請求項１に記載のＷＤＤコンピュータ装置。
【請求項５】
前記プロセッサは、さらに、
各アンカーポイントに関連付けられた前記受信信号強度を、所定の第２閾値と比較し、
受信信号強度が、前記所定の第２閾値を超えていると判断すると、前記複数のアンカーポイントから、当該受信信号強度に対応するアンカーポイントを排除するように構成されている、請求項１に記載のＷＤＤコンピュータ装置。
【請求項６】
前記プロセッサは、さらに、
前記複数のアンカーポイントの各々から受信したステータスメッセージの数を、所定の閾値と比較し、
前記アンカーポイントから受信したステータスメッセージの数が前記所定の閾値を超えていないと判断すると、当該アンカーポイントを、複数のアンカーポイントから排除する、請求項１に記載のＷＤＤコンピュータ装置。
【請求項７】
前記複数のステータスメッセージにおける各ステータスメッセージは、前記第１無線装置に関連付けられた個別の識別子を含む、請求項１に記載のＷＤＤコンピュータ装置。
【請求項８】
前記複数のサブセットの各々に含まれるアンカーポイントの数は、所定の閾値数に基づく、請求項１に記載のＷＤＤコンピュータ装置。
【請求項９】
無線装置の位置を特定するためのシステムであって、
第１無線装置から無線信号を受信し、
前記無線信号の受信信号強度を求め、
前記受信信号強度を含むステータスメッセージを無線装置検出（ＷＤＤ）コンピュータ装置に送信する、構成とされている複数のアンカーポイントと、
請求項１〜８のいずれかに記載のＷＤＤコンピュータ装置と、を含み、前記ＷＤＤコンピュータ装置は、前記複数のアンカーポイントと通信するように構成されている、システム。
【請求項１０】
請求項１〜８のいずれか１つに記載の無線装置検出（ＷＤＤ）コンピュータ装置を用いて実施される、無線装置の位置を特定する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示の分野は、概して、無線装置の位置を推定することに関し、より具体的には、無線信号強度による位置特定、クラスタリング、及び、絞り込み（reduction）を利用して、無線装置の位置を推定することに関する。
【背景技術】
【０００２】
無線装置は、ますます普及しつつある。具体的には、無線装置の中には、フォームファクタが小さく、低能力であり、バッテリで駆動されるものがある。これらの無線装置は、通常、センサー、制御器、又は、人による入力装置として機能する。これらの無線装置は、計算能力が低く、限られたメモリを有する場合がある。無線装置は、さらにモバイルである場合もある。多くの環境において、これらの無線装置は、無線プロトコルを介して、常在する装置（permanently located devices）と通信するように構成される。これらの装置の位置を特定するための効率的且つ効果的な方法を見出すことが望まれている。
【発明の概要】
【０００３】
一側面において、無線装置の位置を特定するための無線装置検出（ＷＤＤ）コンピュータ装置が提供される。ＷＤＤコンピュータ装置は、メモリと通信するプロセッサを含む。プロセッサは、複数のアンカーポイントから複数のステータスメッセージを受信するように構成されている。複数のステータスメッセージの各々は、対応するアンカーポイントで受信された、第１無線装置からの第１無線信号に関連付けられた受信信号強度を含む。プロセッサは、さらに、複数のアンカーポイントから複数のサブセットを決定するように構成されている。各サブセットは、複数のアンカーポイントのうちの所定数のアンカーポイントを含む。プロセッサは、さらに、複数のサブセットの各々について、対応する受信信号強度に少なくとも部分的に基づいて、第１無線装置の候補位置を特定し、複数の候補位置のクラスタリングを生成し、クラスタリングに基づいて、複数のサブセットから第１グループのサブセットを選択し、第１グループのサブセットに含まれるアンカーポイントから受信した受信信号強度に基づいて、第１無線装置の最終位置を算出するように構成されている。
【０００４】
別の側面において、無線装置の位置を特定するためのシステムが提供される。当該システムは、第１無線装置から無線信号を受信し、無線信号の受信信号強度を求め、受信信号強度を含むステータスメッセージを無線装置検出（ＷＤＤ）コンピュータ装置に送信するように構成された、複数のアンカーポイントを含む。当該システムは、プロセッサ、及び、プロセッサに接続されたメモリを含む、ＷＤＤコンピュータ装置をさらに含む。ＷＤＤコンピュータ装置は、複数のアンカーポイントと通信する。ＷＤＤコンピュータ装置は、複数のアンカーポイントから複数のステータスメッセージを受信し、複数のアンカーポイントから複数のサブセットを決定するように構成されている。各サブセットは、複数のアンカーポイントのうちの所定数のアンカーポイントを含む。ＷＤＤコンピュータ装置は、さらに、複数のサブセットの各々について、対応する受信信号強度に少なくとも部分的に基づいて、第１無線装置の候補位置を特定し、複数の候補位置のクラスタリングを生成し、クラスタリングに基づいて、複数のサブセットから第１グループのサブセットを選択し、第１グループのサブセットに含まれるアンカーポイントから受信した受信信号強度に基づいて、第１無線装置の最終位置を算出するように構成されている。
【０００５】
さらに別の側面において、無線装置の位置を特定する方法が提供される。当該方法は、無線装置検出（ＷＤＤ）コンピュータ装置を用いて実施される。ＷＤＤコンピュータ装置は、メモリと通信するプロセッサを含む。当該方法は、複数のアンカーポイントから複数のステータスメッセージを受信することを含む。複数のステータスメッセージにおける各ステータスメッセージは、対応するアンカーポイントで受信された、第１無線装置からの第１無線信号に関連付けられた受信信号強度を含む。当該方法は、複数のアンカーポイントから複数のサブセットを決定することをさらに含む。各サブセットは、複数のアンカーポイントのうちの所定数のアンカーポイントを含む。当該方法は、さらに、複数のサブセットの各々について、対応する受信信号強度に少なくとも部分的に基づいて、第１無線装置の候補位置を特定し、複数の候補位置のクラスタリングを生成し、クラスタリングに基づいて、複数のサブセットから第１グループのサブセットを選択し、第１グループのサブセットに含まれるアンカーポイントから受信した受信信号強度に基づいて、第１無線装置の最終位置を算出する、ことを含む。
【図面の簡単な説明】
【０００６】
【図１】本開示の一実施形態による、例示的な検知環境を示す図である。
【図２】本開示の一実施形態による、無線装置の位置を特定するための例示的なシステムの簡略ブロック図である。
【図３】本開示の一実施形態による、図２に示したサーバーの一構成例を示す図である。
【図４】図１に示す環境などにおいて、図２に示したシステムを用いて、無線装置の位置を特定するためのプロセスのフローチャートである。
【発明を実施するための形態】
【０００７】
本明細書に記載の実施態様は、無線装置の位置を推定するためのシステム及び方法に関し、より具体的には、無線信号強度による位置特定、クラスタリング、及び、絞り込み（reduction）を利用して、無線装置の位置を推定することに関する。より具体的には、無線装置検出（wireless device detection：「ＷＤＤ」）コンピュータ装置は、複数のアンカーポイントから、複数のステータスメッセージを受信する。複数のステータスメッセージの各々は、対応するアンカーポイントで受信された、第１無線装置からの第１無線信号に関連付けられた受信信号強度を含む。いくつかの実施形態において、各ステータスメッセージは、第１無線装置に関連付けられた固有の識別子を含む。いくつかの実施形態において、第１無線信号は、ロケータ信号（locator signal）及び通常のメッセージトラフィック（normal message traffic）のうちの１つであり、第１無線信号は、ブルートゥース（登録商標）信号、８０２．１５（ＺｉｇＢｅｅ）信号、６ＬｏｗＰＡＮ（IPv６ over Low power Wireless Personal Area Networks）信号、及び、８０２．１１（Ｗｉ−Ｆｉ）信号のうちの１つである。
【０００８】
いくつかの実施形態において、ＷＤＤコンピュータ装置は、各アンカーポイントに関連付けられた受信信号強度を、所定の第１閾値と比較し、受信信号強度が、所定の第１閾値を超えていないと判断すると、複数のアンカーポイントから、この受信信号強度に対応するアンカーポイントを排除する。他の実施形態において、ＷＤＤコンピュータ装置は、各アンカーポイントに関連付けられた受信信号強度を、所定の第２閾値と比較し、受信信号強度が、所定の第２閾値を超えていると判断すると、複数のアンカーポイントから、この受信信号強度に対応するアンカーポイントを排除する。
【０００９】
ＷＤＤコンピュータ装置は、複数のアンカーポイントから複数のサブセット（部分集合）を決定する。各サブセットは、複数のアンカーポイントのうちの所定数のアンカーポイントを含む。いくつかの実施形態において、複数のサブセットの各々に含まれるアンカーポイントの数は、所定の閾値数（threshold number）に基づく。他の実施形態において、所定の閾値数は、無線装置の位置特定に必要なアンカーポイントの数に基づく。ＷＤＤコンピュータ装置は、複数の位置を登録しており、各位置は、複数のアンカーポイントのうちの１つと関連付けられている。複数のサブセットの各々について、ＷＤＤコンピュータ装置は、当該サブセットに含まれるアンカーポイントの位置及びこれに対応する受信信号強度に少なくとも部分的に基づいて、第１無線装置の候補位置を求める。ＷＤＤコンピュータ装置は、複数の候補位置のクラスタリングを生成する。ＷＤＤコンピュータ装置は、クラスタリングに基づいて、第１グループの複数のサブセットを選択する。ＷＤＤコンピュータ装置は、候補位置のクラスターのうち最も大きいクラスターに基づいて、第１グループを決定する。ＷＤＤコンピュータ装置は、第１グループのサブセットに含まれるアンカーポイントから受信した受信信号強度に基づいて、第１無線装置の最終位置を算出する。
【００１０】
ここで、ＷＤＤコンピュータ装置ならびに関連するコンピュータシステムなどのコンピュータシステムについて説明する。本明細書に記載のように、このようなコンピュータシステムはすべて、プロセッサ及びメモリを含む。ただし、本明細書で言及するコンピュータ装置のプロセッサは、いずれも、１つ又は複数のプロセッサを指す場合があり、この場合、プロセッサは、１つのコンピュータ装置内のものであってもよいし、並行して動作する複数のコンピュータ装置内のものであってもよい。加えて、本明細書で言及するコンピュータ装置のメモリは、いずれも、１つ又は複数のメモリを指す場合があり、この場合、メモリは、１つのコンピュータ装置内のものであってもよいし、並行して動作する複数のコンピュータ装置内のものであってもよい。
【００１１】
本明細書におけるプロセッサは、マイクロコントローラ、縮小命令セット回路（ＲＩＳＣ）、特定用途向け集積回路（ＡＳＩＣ）、論理回路、及び、本明細書に記載の機能を実行可能な任意の他の回路又はプロセッサを使用するシステムを含む、任意のプログラム可能なシステムを含む。上記の例は、単なる例であり、「プロセッサ」という用語の定義や意味を、決して限定するものではない。
【００１２】
本明細書で使用される「データベース」という用語は、データ本体、リレーショナルデータベース管理システム（ＲＤＢＭＳ）、又はその両方のいずれを指すこともある。本明細書におけるデータベースは、任意のデータの集合を含み、これには、階層データベース、リレーショナルデータベース、フラットファイルデータベース、オブジェクトリレーショナルデータベース、オブジェクト指向データベース、及び、コンピュータシステムに格納されたレコード又はデータの任意の他の構造化された集合が含まれうる。上記の例は、単なる例であり、「データベース」という用語の定義や意味を、決して限定するものではない。ＲＤＢＭＳには、Ｏｒａｃｌｅ（登録商標）データベース、ＭｙＳＱＬ、ＩＢＭ（登録商標）ＤＢ２、マイクロソフト（登録商標）ＳＱＬ  Ｓｅｒｖｅｒ、Ｓｙｂａｓｅ（登録商標）、及び、ＰｏｓｔｇｒｅＳＱＬなどがあるが、これらに限定されない。本明細書に記載のシステム及び方法を可能とする任意のデータベースを使用することができる。（Ｏｒａｃｌｅは、カリフォルニア州レッドウッド・ショアーズのOracle Corporationの登録商標である。ＩＢＭは、ニューヨーク州アーモンクのInternational Business Machines Corporationの登録商標である。マイクロソフトは、ワシントン州レドモンドのマイクロソフト社の登録商標である。Ｓｙｂａｓｅは、カリフォルニア州ダブリンのＳｙｂａｓｅの登録商標である。）
【００１３】
一実施形態において、コンピュータプログラムが提供される。当該プログラムは、コンピュータ可読媒体において実施される。例示的な実施形態において、システムは、サーバーコンピュータとの接続を必要とせず、単一のコンピュータシステムで実行される。さらなる実施形態において、システムは、Ｗｉｎｄｏｗｓ（登録商標）環境で実行される。（Ｗｉｎｄｏｗｓは、ワシントン州レドモンドのマイクロソフト社の登録商標である。）さらに別の実施形態において、システムは、メインフレーム環境およびＵＮＩＸ（登録商標）サーバー環境で実行される。（ＵＮＩＸは、英国バークシャー州レディングにあるX/Open Company Limitedの登録商標である。）このアプリケーションはフレキシブルであり、いかなる主要機能も損なうことなく、様々な環境で動作するように設計される。いくつかの実施形態において、システムは、複数のコンピュータ装置に分散された複数のコンポーネントを含む。１つ又は複数のコンポーネントは、コンピュータ可読媒体で実施されるコンピュータ実行可能命令の形態でありうる。
【００１４】
本明細書において、単数形で記載されるとともに「a」又は「an」という単語に続く要素又は工程は、特にその旨が明記されていない限り、複数の要素又は工程を排除するものではない。さらに、本開示の「例示的な実施態様」又は「一実施態様」と述べることによって、記載されている特徴を同様に含む別の実施態様の存在を排除するものではない。
【００１５】
本明細書において、「ソフトウェア」と「ファームウェア」とは、同義であり、プロセッサによる実行のためにメモリに格納される任意のコンピュータプログラムを含む。このようなメモリには、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＦＥＰＲＯＭ、及び、不揮発性ＲＡＭ（ＮＶＲＡＭ）が含まれる。上記のメモリの種類は、単なる例示であり、コンピュータプログラムの格納に使用可能なメモリの種類を限定するものではない。
【００１６】
さらに、本明細書における「リアルタイム」という用語は、関連する事象の発生時刻、所定のデータの測定及び収集時刻、データ処理の時刻、ならびに、事象及び環境に対してシステムが応答する時刻のうちの少なくとも１つを指す。本明細書に記載の実施形態において、これらの動作及び事象は、実質的に瞬間的に行われる。
【００１７】
システム及びプロセスは、本明細書に記載の具体的な実施形態に限定されない。また、各システムのコンポーネント及び各プロセスは、本明細書に記載の他のコンポーネント及びプロセスとは独立して別個に実施することができる。各コンポーネント及びプロセスは、他のアセンブリパッケージ及びプロセスと組み合わせて使用することもできる。
【００１８】
図１は、本開示の一実施形態による、例示的な検知環境（detection scenario）１００を示す図である。環境１００は、無線装置１０２を含む。例示的な実施形態において、無線装置１０２の位置は、不明である。環境１００は、複数のアンカー（アンカーポイントとしても知られている）１０４〜１１８をさらに含む。各アンカー１０４〜１１８は、無線装置１０２から無線信号を受信し、無線装置１０２からの無線信号の強度を求め、求めた無線信号強度を無線装置検出（ＷＤＤ）コンピュータ装置１２０に送信することができる。無線信号強度は、信号が対応するアンカーに到達した際の、信号の強度を表すものである。この強度は、距離とともに減少するため、これを利用して、アンカーポイント１０４〜１１８から無線装置１０２までの相対距離を求めることができる。ＷＤＤコンピュータ装置１２０は、アンカーポイント１０４〜１１８から受信信号強度値を受信するように構成されている。例示的な実施形態において、ＷＤＤコンピュータ装置１２０は、伝搬損失モデル（path loss model）における受信信号強度を用いることによって、無線装置１０２の位置を特定することができる。アンカーポイント１０４〜１１８の位置が既知の場合、ＷＤＤコンピュータ装置１２０は、最小線形二乗法（least linear squares method）によって、受信信号強度を用いて無線装置１０２の位置を算出することができる。
【００１９】
しかしながら、いくつかの実施形態において、無線装置１０２から送信された無線信号が、すべてのアンカー１０４〜１１８には届かない事態がありえる。例えば、障害物１２２及び１２４が、無線信号を妨害する場合がありえる。この例において、障害物１２２は、無線信号がアンカー１１２に到達するのを妨害し、無線信号をアンカー１１４へと反射させる反射面となる。この場合、アンカー１１４は、一度は正確な強度で、もう一度は反射された強度で、合計２回、無線信号を受信する。一方、障害物１２４は、無線信号の一部をブロックする。このため、アンカー１０８が受信する信号は、弱まっている。これらの受信信号強度の変化は、ＷＤＤコンピュータ装置１２０が算出する無線装置１０２の位置の精度に影響を与える。例えば、アンカー１０８によって検出される受信信号強度が弱くなるほど、算出される無線装置１０２の位置は、アンカー１０８から遠いということになる。
【００２０】
環境１００は、例えば、飛行機のキャビン内である。この場合、無線装置１０２は、無線呼び出しボタン、あるいは、頭上の照明制御装置でありうる。乗客が、無線呼び出しボタン１０２を押すと、ＷＤＤコンピュータ装置１２０は、どの呼び出しボタン（無線装置１０２）が押されたかを判定し、飛行機の乗務員に知らせる。このようにすれば、ワイヤの使用により飛行機の重量の増加につながる有線ボタンの必要性がなくなる。飛行機内における無線装置１０２の別の例は、限定するものではないが、紛失を防ぐために安全装置（すなわち救命胴衣）に取り付けることを含む。
【００２１】
環境１００は、工場のフロア上でありうる。この場合、無線装置１０２を、手工具、部品、及び、部品容器に取り付けることによって、工場内におけるこれらの位置を追跡することができる。また、無線装置１０２をウェアラブルな装置として職員に供給することによって、その場の安全性の問題を容易に職員に警告できるようにしたり、最も適切な職員を必要な場所に派遣したりすることもできる。
【００２２】
また、環境１００は、会議場やオフィスビル内でもありうる。この場合、無線装置１０２は、温度、湿度などを検知するための、再配置可能且つ交換可能な無線センサーとすることができる。この環境１００においては、スマート暖房・換気・空調（ＨＶＡＣ）システムは、センサー位置に関連するセンサーからのデータに基づいて、空気流を誘導することができる。これは、古い建物の改修にも役立つ。
【００２３】
環境１００は、空港内でもありうる。この場合、部品、装置、及び人を追跡し、これらの探索が原因の遅延を低減することができる。装置、ビークル、及び人員の追跡には、ＧＰＳ（Global Positioning System）を利用できるかもしれないが、ＧＰＳは、高い消費電力を必要とする。また、追跡対象のアイテム又は人が格納庫などの屋内の場所に入ると、ＧＰＳは有効でなくなる。
【００２４】
図２は、本開示の一実施形態による、無線装置１０２（図１に示す）の位置を特定するための例示的なシステムの簡略ブロック図である。システム２００は、既知のアンカーポイント２０６の受信信号強度を用いて無線装置１０２の位置を推定するように構成されている、図１に示したＷＤＤコンピュータ装置１２０を含んでいる。以下により詳しく説明するように、ＷＤＤコンピュータ装置１２０は、複数のアンカーポイント２０６から複数の受信信号強度を受信し、複数のアンカーポイント２０６の複数のサブセットを決定し、複数のサブセットの各々について、対応する受信信号強度に少なくとも部分的に基づいて、第１無線装置の候補位置を求め、複数の候補位置のクラスタリングを生成し、当該クラスタリングに基づいて第１グループの複数のサブセットを選択し、第１グループのサブセットに含まれるアンカーポイント２０６から受信した受信信号強度に基づいて、第１無線装置１０２の最終位置を算出するように構成されている。
【００２５】
例示的な実施形態において、無線装置１０２は、小さいサイズ、重量、及び、出力を有する。無線装置１０２の位置は、相対的に固定されていてもよいし、可動であってもよい。いくつかの実施形態において、無線装置１０２は、バッテリ寿命の終了時に交換される。例示的な実施形態において、無線装置１０２は、計算能力が低く、メモリも限られている。無線装置１０２は、例えば、限定するものではないが、８０２．１１（Ｗｉ−Ｆｉ）、８０２．１５（ＺｉｇＢｅｅ）、６ＬｏｗＰＡＮ（IPv６ over Low power Wireless Personal Area Networks）、ブルートゥースなどの無線通信プロトコル、又はその他の効率的な無線通信プロトコルを介して、無線信号２０４を送信することができる。いくつかの実施形態において、無線信号２０４は、通常の通信トラフィック（normal communication traffic）を利用する。他の実施形態において、無線信号２０４は、位置特定を目的として無線装置１０２が送信するロケータ信号（locator signal）である。さらなるいくつかの実施形態において、無線装置１０２は、限定するものではないが、ラップトップコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、携帯電話、スマートフォン、タブレット、ファブレット、又はその他のウェブベースの接続可能な機器などの、より大型且つ高出力の装置でありうる。例示的な実施形態において、各無線装置１０２及び各アンカーポイント２０６は、固有の識別子に関連付けられている。例示的な実施形態において、無線装置１０２は、固有の識別子を無線信号２０４で送信する。
【００２６】
アンカーポイント２０６は、図１に示したアンカー１０４〜１１８を含む。ただし、これらに限定されない。アンカーポイント２０６は、無線信号２０４を受信することができる。アンカーポイント２０６は、無線信号２０４の信号強度を求めるように構成されている。アンカーポイント２０６は、ＷＤＤコンピュータ装置１２０と通信する。例示的な実施形態において、アンカーポイント２０６は、ＷＤＤコンピュータ装置１２０と直接的に有線接続されている。他の実施形態において、アンカー装置は、限定するものではないが、インターネット、ＬＡＮ（local area network）、ＷＡＮ（wide area network）、又はＩＳＤＮ（integrated services digital network)などのネットワーク、ダイヤルアップ接続、ＤＳＬ（digital subscriber line）、携帯電話接続、無線通信プロトコル接続、及びケーブルモデムのうちの少なくとも１つを含む様々なインターフェイスを介して、ＷＤＤコンピュータ装置１２０と接続される。アンカーポイント２０６は、本明細書に記載のように動作可能な任意のデバイスとすることができる。その例としては、限定するものではないが、ルーター、リピーター、ハブ、デスクトップコンピュータ、ラップトップコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、携帯電話、スマートフォン、タブレット、ファブレット、または他のウェブベース接続可能な機器がある。
【００２７】
データベースサーバー２０８は、データを保存するデータベース２１０に通信可能に接続されている。一実施形態において、データベース２１０は、各アンカーポイント２０６の位置、計算のルール及び設定、ならびに、無線装置１０２の候補のリストを含む。例示的な実施形態において、データベース２１０は、ＷＤＤコンピュータ装置１２０から隔離保存されている。いくつかの実施形態において、データベース２１０は、分散されている。例示的な実施形態において、本明細書に記載のように、ＷＤＤコンピュータ装置１２０にログオンすることによって、クライアントシステム（図示せず）を介してデータベース２１０にアクセスすることができる
【００２８】
図３は、本開示の一実施形態による、図２に示したサーバーの一構成例を示している。サーバーコンピュータ装置３００は、図２に示したＷＤＤコンピュータ装置２１０を含む。ただし、これに限定されない。また、サーバーコンピュータ装置３００は、命令を実行するためのプロセッサ３０２を含む。命令は、メモリ領域３０４に格納されうる。プロセッサ３０２は、１つ又は複数の処理ユニット（例えば、マルチコア構成を有する）を含みうる。
【００２９】
プロセッサ３０２は、通信インターフェイス３０６に機能的に接続されており、これによって、サーバーコンピュータ装置３００は、別のサーバーコンピュータ装置３００、アンカー１０４〜１１８（図１に示す）、アンカーポイント２０６（図２に示す）、あるいは１つ又は複数のクライアントシステム（図示せず）などの遠隔の装置と通信可能となっている。例示的な実施形態において、図２に示したように、通信インターフェイス３０６は、アンカーポイント２０６からデータを受信する。
【００３０】
プロセッサ３０２は、記憶装置３１０にも、機能的に接続されている。記憶装置３１０は、限定するものではないが、データベース２１０（図２に示す）に関連付けられたデータなどのデータを格納及び／又は検索するのに適した任意のコンピュータ操作ハードウェアである。いくつかの実施形態において、記憶装置３１０は、サーバーコンピュータ装置３００に組み込まれる。例えば、サーバーコンピュータ装置３００は、記憶装置３１０としての１つ又は複数のハードディスクドライブを含みうる。他の実施形態において、記憶装置３１０は、サーバーコンピュータ装置３００の外部にあり、複数のサーバーコンピュータ装置３００によってアクセスされるものであってもよい。例えば、記憶装置３１０は、ストレージエリアネットワーク（ＳＡＮ）、ネットワークアタッチトストレージ（ＮＡＳ）システム、及び／又は、ＲＡＩＤ（redundant array of inexpensive disks）構成のハードディスクやソリッドステートディスクなどの複数のストレージユニットを含みうる。
【００３１】
いくつかの実施形態において、プロセッサ３０２は、ストレージインターフェイス３０８を介して、記憶装置３１０に機能的に接続されている。ストレージインターフェイス３０８は、プロセッサ３０２が記憶装置３１０にアクセスすることを可能にする任意のコンポーネントである。ストレージインターフェイス３０８は、例えば、ＡＴＡ（Advanced Technology Attachment）アダプタ、ＳＡＴＡ（Serial ATA）アダプタ、ＳＣＳＩ（Small Computer System Interface）アダプタ、ＲＡＩＤコントローラ、ＳＡＮアダプタ、ネットワークアダプタ、及び／又は、プロセッサ３０２が記憶装置３１０にアクセスすることを可能にする任意のコンポーネントを含む。
【００３２】
プロセッサ３０２は、本開示の側面を実施するためのコンピュータ実行可能命令を実行する。いくつかの実施形態において、プロセッサ３０２は、コンピュータ実行可能命令を実行することによって、又は、他の態様でプログラムされることによって、専用のマイクロプロセッサに変換される。例えば、プロセッサ３０２は、図４に示したような命令をプログラムに書き込まれる。
【００３３】
図４は、環境１００（図１に示す）などにおいて、システム２００（図２に示す）を用いて、無線装置１０２（図１に示す）の位置を特定するためのプロセスのフローチャートである。プロセス４００は、例えばＷＤＤコンピュータ装置１２０（図１に示す）などのコンピュータ装置によって実施することができる。
【００３４】
例示的な実施形態において、ＷＤＤコンピュータ装置１２０は、複数のアンカーポイント２０６（図２に示す）からの、複数のステータスメッセージの受信４０２を行う。例示的な実施形態において、各ステータスメッセージは、対応するアンカーポイント２０６が、当該アンカーポイント２０６が無線装置１０２から受信した無線信号２０４（図２に示す）に基づいて測定した受信信号強度を含む。いくつかの実施形態において、ステータスメッセージは、無線信号２０４に含まれている、無線装置１０２に固有の識別子を含む。
【００３５】
いくつかの実施形態において、ＷＤＤコンピュータ装置１２０は、各受信信号強度を分析する。これらの実施形態において、ＷＤＤコンピュータ装置１２０は、受信信号強度が、ある所定の閾値より低い場合、これに対応するアンカーポイント２０６を、以後の考察から排除する。例えば、図１に示したアンカー１１２からの受信信号強度が極めて低く、例えば、所定の閾値よりも低い場合、ＷＤＤコンピュータ装置１２０は、アンカー１１２を排除し、プロセス４００における以後のステップのいずれにおいても、これを用いないようにする。いくつかのさらなる実施形態において、受信信号強度が別の所定の閾値を超える場合、例えば、受信信号強度が高すぎる場合、ＷＤＤコンピュータ装置１２０は、これに対応するアンカーポイントを排除する。例えば、無線信号２０４が、一度は無線装置１０２から直接、もう一度は障害物１２２からの反射によって、二度アンカー１１４（図１に示す）に到達する。この場合、アンカー１１４は、これら２つの受信信号の強度を、合算するかあるいは結合させる可能性がある。この場合、ＷＤＤコンピュータ装置１２０は、アンカー１１４からの受信信号強度が高すぎて、例えば、所定の閾値を超えている、と判断する。そして、ＷＤＤコンピュータ装置１２０は、アンカー１１４を排除し、無線装置１０２に関するプロセス４００における以後のステップのいずれにおいても、これを用いないようにする。
【００３６】
いくつかの実施形態において、ＷＤＤコンピュータ装置１２０は、各アンカーポイント２０６から、１つのステータスメッセージを受信する。他の実施形態において、精度を向上させるため、ＷＤＤコンピュータ装置１２０は、複数のアンカーポイント２０６の各々から複数のステータスメッセージを受信し、ＷＤＤコンピュータ装置１２０は、これらをプロセス４００に用いる。これらの実施形態において、ＷＤＤコンピュータ装置１２０は、ＷＤＤコンピュータ装置１２０が各アンカーポイント２０６から受信したステータスメッセージの数を分析する。１つのアンカーポイント２０６に関連付けられるステータスメッセージの数が、他のアンカーポイント２０６から受信された数より大幅に少ない場合、ＷＤＤコンピュータ装置１２０は、そのアンカーポイント２０６を排除し、無線装置１０２に関するプロセス４００における以後のステップのいずれにおいても、これを用いないようにする。例えば、ＷＤＤコンピュータ装置１２０は、複数のアンカーポイント２０６の各々から受信したステータスメッセージの数を、所定の閾値と比較し、あるアンカーポイントから受信したステータスメッセージの数が所定の閾値を超えていないと判断すると、そのアンカーポイントを、複数のアンカーポイント２０６から排除する。他のさらなる実施形態において、ＷＤＤコンピュータ装置１２０は、アンカーポイント２０６の複数の受信ステータスメッセージの其々の受信信号強度を分析し、上述したように、信号強度が高すぎる場合あるいは低すぎる場合には、それを排除する。
【００３７】
ＷＤＤコンピュータ装置１２０は、複数のアンカーポイント２０６から複数のサブセットの決定４０４を行う。各サブセットは、所定数のアンカーポイント２０６を含む。例えば、環境１００においては、８個のアンカー１０４〜１１８が存在する。ＷＤＤコンピュータ装置１２０は、これらを複数のサブセットに分ける。各サブセットは、Ｎ個の異なるアンカーポイント２０６を含む。ただし、各アンカーポイント２０６は、複数のサブセットに含まれてもよい。例えば、Ｎが４の場合の例示的なサブセットの組を、表１に示す。
【表１】
0006804971.tif 000002
【００３８】
上記表１は、Ｎが４の場合に決定４０４で採用されうるサブセットのほんの一部を示している。例示的な実施形態において、各サブセットに含まれるアンカーポイントの最適な数は、使用されている次元数の２倍である。例えば、二次元環境においては、アンカーポイントの最適な数は４である。他の実施形態において、アンカーポイントの数は、ユーザーによって、あるいは、使用されている位置特定アルゴリズムによって、設定される。いくつかの実施形態において、複数のサブセットの各々に含まれるアンカーポイントの数は、所定の閾値数に基づいて決めてもよい。いくつかの実施形態において、所定の閾値数は、候補位置に用いられる次元数に基づきうる。いくつかの実施形態において、各サブセットに含めるアンカーポイントの選択は、所定のアルゴリズムに基づいて行われうる。他の実施形態において、各サブセットのアンカーポイントは、ランダムに選択される。
【００３９】
サブセットの其々について、ＷＤＤコンピュータ装置１２０は、受信信号強度を用いて、無線装置１０２の候補位置の特定４０６を行う。例示的な実施形態において、データベース２１０（図２に示す）は、アンカー１０４〜１１８の其々の位置を格納している。ＷＤＤコンピュータ装置１２０は、サブセットに含まれるアンカーポイント２０６の受信信号強度及び各アンカーポイントの位置を用いて、下式のような伝搬損失モデルによって、対応する各アンカーポイント２０６から無線装置１０２までの距離の判定４０６を行う。
【数１】
0006804971.tif 000003
ここで、ｐrは、受信信号強度であり、ｐtは、送信の際の信号強度であり、Ｋは、システム依存の乗法的ゲイン定数（system dependent multiplicative gain constant）であり、αは、伝搬損失指数（pass loss exponent）である。ＷＤＤコンピュータ装置１２０は、算出された信号強度及びアンカー位置を、受信信号強度（ＲＳＳ）位置特定アルゴリズムに入力して、サブセットの各々について、無線装置１０２の候補位置の特定４０６を行う。ＲＳＳ位置特定アルゴリズムは、限定するものではないが、線形最小二乗推定、最尤推定（maximum likelihood estimation）、重み付け最小二乗推定、及び、本明細書に記載のようにシステムが動作することを可能にする任意の他の位置特定アルゴリズムを含む。例えば、上記の表１のサブセット３について、ＷＤＤコンピュータ装置１２０は、アンカー１０４、１０６、１１２、及び１１４の受信信号強度を用いて、無線装置１０２の候補位置の特定４０６を行う。
【００４０】
ＷＤＤコンピュータ装置１２０は、複数の候補位置のクラスタリングの生成４０８を行う。二次元の実施形態においては、ＷＤＤコンピュータ装置１２０は、各サブセットから求めた候補位置を、二次元のグラフで表す。ＷＤＤコンピュータ装置１２０は、クラスタリングに基づいて、第１グループのサブセットの選択４１０を行う。
【００４１】
例示的な実施形態において、ＷＤＤコンピュータ装置１２０は、生成された推定位置のクラスタリングにおける、最も大きいクラスターを判定する。例示的な実施形態において、ＷＤＤコンピュータ装置は、クラスター検知アルゴリズムを用いて、最も大きいクラスターを判定する。例示的な実施形態において、クラスター検知アルゴリズムは、ＤＢＳｃａｎを用いる。これは、候補位置の密度と候補位置間の距離とを用いて、最も大きいクラスターを判定するものである。他の実施形態において、クラスター検知アルゴリズムは、限定するものではないが、Ｋ-平均法（Ｋ−ｍｅａｎｓ）、スペクトラルクラスタリング、及び、本明細書に記載のようにシステムが動作することを可能にする任意の他のアルゴリズムを含む。最も大きいクラスター内のサブセットを選択する意図は、多数派のサブセットから算出された候補位置とは大きく異なる外れ値のサブセットを、排除するためである。例示的な実施形態において、同じクラスター内の候補位置同士の最大距離が予め設定され、データベース２１０に格納されている。候補位置同士が所定の距離内にあるサブセットのみを選択することによって、ＷＤＤコンピュータ装置１２０は、信号強度が同様の伝搬損失モデルパラメータを示すアンカーポイントのみを選択する。このクラスターの外にある候補位置が算出される元となっているアンカーポイント２０６を排除することによって、障害物１２２及び１２４（図１に示す）に影響されているアンカーポイント２０６が最終的な計算から排除されるため、無線装置１０２の最終位置の精度が向上する。
【００４２】
ＷＤＤコンピュータ装置１２０は、第１グループのサブセットに含まれるアンカーポイント２０６からの受信信号強度に基づいて、無線装置１０２の最終位置の算出４１２を行う。ＷＤＤコンピュータ装置１２０は、第１グループ内の各サブセットにどのアンカーポイント２０６が含まれているかを判定することによって、第１グループに含まれている各アンカーポイント２０６を判定する。ＷＤＤコンピュータ装置１２０は、第１グループ内にあると判定された各アンカーポイント２０６の受信信号強度を抽出する。ＷＤＤコンピュータ装置１２０は、これらの受信信号強度を用いて、最終位置の算出４１２を行う。例示的な実施形態において、ＷＤＤコンピュータ装置１２０は、線形最小二乗法などの伝搬損失モデルに基づいた推定を用いて、無線装置１０２の最終位置の算出４１２を行う。
【００４３】
本明細書における「非一時的なコンピュータ可読媒体」という用語は、情報の短期及び長期の保存のための任意の方法または技術において実施される任意の有形のコンピュータベースのデバイスを表すことを意図しており、これらの情報としては、例えば、コンピュータ可読命令、データ構造、プログラムモジュール及びサブモジュール、又は任意のデバイス内の他のデータがある。従って、本明細書に記載の方法は、有形の非一時的なコンピュータ可読媒体で実施される実行可能命令として符号化することができ、このような媒体には、限定するものではないが、記憶装置及び／又はメモリデバイスが含まれる。このような命令は、プロセッサによって実行されると、本明細書に記載の方法の少なくとも一部を、プロセッサに実行させる。さらに、本明細書における「非一時的なコンピュータ可読媒体」という用語には、すべての有形のコンピュータ可読媒体及びこれから開発されるデジタル手段が含まれ、唯一の例外は、一時的な伝搬信号である。有形のコンピュータ可読媒体には、限定するものではないが、非一時的なコンピュータ記憶装置が含まれ、これには、限定するものではないが、揮発性及び不揮発性の媒体、ならびに、ファームウェア、物理ストレージ及び仮想ストレージ、ＣＤ−ＲＯＭ、ＤＶＤ、及び、ネットワーク又はインターネットなどの他の任意のデジタルソースなどの取り外し可能又は不可能な媒体が含まれる。
【００４４】
本明細書に記載の実施態様は、無線装置の位置を推定するためのシステム及び方法に関し、より具体的には、無線信号強度の位置特定、クラスタリング、及び絞り込みを利用して、無線装置の位置を推定することに関する。より具体的には、無線装置検出（「ＷＤＤ」）コンピュータ装置は、複数のアンカーポイントから、複数のステータスメッセージを受信する。複数のステータスメッセージの各々は、対応するアンカーポイントで受信された、第１無線装置からの第１無線信号に関連付けられた受信信号強度を含む。いくつかの実施形態において、各ステータスメッセージは、第１無線装置に関連付けられた個別の識別子を含む。いくつかの実施形態において、第１無線信号は、ロケータ信号及び通常のメッセージトラフィックのうちの１つであり、第１無線信号は、ブルートゥース信号、８０２．１５（ＺｉｇＢｅｅ）信号、６ＬｏｗＰＡＮ（IPv６ over Low power Wireless Personal Area Networks）信号、及び、８０２．１１（Ｗｉ−Ｆｉ）信号のうちの１つである。
【００４５】
いくつかの実施形態において、ＷＤＤコンピュータ装置は、各アンカーポイントに関連付けられた受信信号強度を、所定の第１閾値と比較し、受信信号強度が、所定の第１閾値を超えていないと判断すると、複数のアンカーポイントから、この受信信号強度に対応するアンカーポイントを排除する。他の実施形態において、ＷＤＤコンピュータ装置は、各アンカーポイントに関連付けられた受信信号強度を、所定の第２閾値と比較し、受信信号強度が、所定の第２閾値を超えていると判断すると、複数のアンカーポイントから、この受信信号強度に対応するアンカーポイントを排除する。
【００４６】
ＷＤＤコンピュータ装置は、複数のアンカーポイントの複数のサブセットを決定する。各サブセットは、複数のアンカーポイントのうちの所定数のアンカーポイントを含む。いくつかの実施形態において、複数のサブセットの各々に含まれるアンカーポイントの数は、所定の閾値数に基づく。他の実施形態において、所定の閾値数は、無線装置の位置特定に必要なアンカーポイントの数に基づく。ＷＤＤコンピュータ装置は、複数の位置を格納しており、各位置は、複数のアンカーポイントのうちの１つと関連付けられている。複数のサブセットの各々について、ＷＤＤコンピュータ装置は、当該サブセットに含まれるアンカーポイントの位置及びこれに対応する受信信号強度に少なくとも部分的に基づいて、第１無線装置の候補位置を求める。ＷＤＤコンピュータ装置は、複数の候補位置のクラスタリングを生成する。ＷＤＤコンピュータ装置は、クラスタリングに基づいて、前記複数のサブセットから第１グループのサブセットを選択する。ＷＤＤコンピュータ装置は、候補位置のクラスターのうち最も大きいクラスターに基づいて、第１グループを決定する。ＷＤＤコンピュータ装置は、第１グループのサブセットに含まれるアンカーポイントから受信した受信信号強度に基づいて、第１無線装置の最終位置を算出する。
【００４７】
本開示のさらなる実施例によれば、無線装置の位置を特定するためのシステムは、第１無線装置から無線信号を受信し、無線信号の受信信号強度を求め、受信信号強度を含むステータスメッセージを無線装置検出（ＷＤＤ）コンピュータ装置に送信するように構成された複数のアンカーポイントを含む。ＷＤＤコンピュータ装置は、プロセッサ、及び、プロセッサに接続されたメモリを含む。ＷＤＤコンピュータ装置は、複数のアンカーポイントと通信するとともに、次に動作を行う構成とされている。すなわち、（１）前記複数のアンカーポイントから複数のステータスメッセージを受信し、（２）前記複数のアンカーポイントから、それぞれ当該複数のアンカーポイントのうちの所定数のアンカーポイントを含む複数のサブセットを決定し、（３）複数のサブセットの各々について、対応する受信信号強度に少なくとも部分的に基づいて、第１無線装置の候補位置を特定し；複数の候補位置のクラスタリングを生成し；クラスタリングに基づいて、複数のサブセットから第１グループのサブセットを選択し；第１グループのサブセットに含まれるアンカーポイントから受信した受信信号強度に基づいて、第１無線装置の最終位置を算出する。
【００４８】
好適には、ＷＤＤコンピュータ装置は、其々が前記複数のアンカーポイントのうちの１つと関連付けられている複数の位置を登録しているとともに、複数のサブセットの各々について、サブセットに含まれるアンカーポイントの位置、及び、これに対応する受信信号強度に基づいて、第１無線装置の候補位置を特定するように構成されている。
【００４９】
好適には、ＷＤＤコンピュータ装置は、各サブセットに関連付けられた候補位置が互いに所定の距離内であるクラスタリングに基づいて前記第１グループを選択するように構成されている。
【００５０】
好適には、ステータスメッセージは、第１無線装置に関連付けられた個別の識別子を含む。
【００５１】
本開示のさらなる実施形態によれば、無線装置の位置を特定する方法は、無線装置検出（ＷＤＤ）コンピュータ装置を用いて実施される。ＷＤＤコンピュータ装置は、メモリと通信するプロセッサを含む。当該方法は、複数のアンカーポイントから複数のステータスメッセージを受信し、複数のステータスメッセージにおける各ステータスメッセージは、対応するアンカーポイントで受信された、第１無線装置からの第１無線信号に関連付けられた受信信号強度を含んでおり；複数のアンカーポイントから複数のサブセットを決定し、その際に各サブセットが、複数のアンカーポイントのうちの所定数のアンカーポイントを含むようにし；複数のサブセットの各々について、対応する受信信号強度に少なくとも部分的に基づいて、第１無線装置の候補位置を特定し；複数の候補位置のクラスタリングを生成し；クラスタリングに基づいて、複数のサブセットから第１グループのサブセットを選択し；第１グループのサブセットに含まれるアンカーポイントから受信した受信信号強度に基づいて、第１無線装置の最終位置を算出する、ことを含む。
【００５２】
好適には、当該方法は、其々が複数のアンカーポイントのうちの１つと関連付けられている複数の位置を登録していること、及び、複数のサブセットの各々について、サブセットに含まれるアンカーポイントの位置、及び、これに対応する受信信号強度に基づいて、第１無線装置の候補位置を特定すること、をさらに含む。
【００５３】
好適には、当該方法は、各サブセットに関連付けられた候補位置が互いに所定の距離内であるクラスタリングに基づいて前記第１グループを選択することをさらに含む。
【００５４】
好適には、当該方法は、各アンカーポイントに関連付けられた受信信号強度を、所定の第１閾値と比較し、受信信号強度が、所定の第１閾値を超えていないと判断すると、複数のアンカーポイントから、当該受信信号強度に対応するアンカーポイントを排除することをさらに含む。
【００５５】
好適には、複数のステータスメッセージにおける各ステータスメッセージは、第１無線装置に関連付けられた個別の識別子を含む。
【００５６】
本明細書の記載は、例を用いて、ベストモードを含む様々な実施態様を開示するものであり、また、任意の装置又はシステムの作製及び使用、ならびに、組み入れられた方法の実行を含む本開示の様々な実施態様を、当業者が実施できるようにするものである。本開示の特許可能な範囲は、特許請求の範囲によって規定されるものであり、当業者が想定する他の例を含みうる。そのような他の例は、特許請求の範囲の文言と相違しない構成要素を有する場合、又は、特許請求の範囲の文言と実質的に相違しない均等の構成要素を含む場合において、特許請求の範囲に含まれることを意図している。
【図１】
0006804971.tif 000004
【図２】
0006804971.tif 000005
【図３】
0006804971.tif 000006
【図４】
0006804971.tif 000007