(57)【要約】【課題】  物理的に近くにある他のクライアントおよびリソースのリストを計算するサーバ、クライアントおよび様々なメカニズムを備える無線（Ｗｉ−Ｆｉ）ネットワーク中のシステムおよび方法を提供すること。【解決手段】  クライアントはＷｉ−Ｆｉアクセスポイントの信号強度をサーバに対して報告し、サーバはデータを使用してリソース間の距離の推定値を含めて互いのリソースの近接を計算する。データを短距離または長距離の近接内のリソースのリストとして、以前のクライアントの報告に基づいたリソースに至る概算時間と共にクライアントに対して返す。絶対位置の代わりに近接が使用されるので、最小配置しか必要としない。本システムを使用するクライアントおよびリソースの数が増加するにつれて、サーバの知識は、見出すリソースの数に関して、他の人および場所を見出す物理的範囲において、増大する。【選択図】  図２
2006010687.tif 000002
【特許請求の範囲】
【請求項１】
信号強度データを検出することができる環境において、
少なくとも１つの基地局から受信する信号に関して第１のネットワーク装置の信号強度データを取得するステップと、
前記信号強度データに基づいて前記第１のネットワーク装置からリソースまでの概算距離を計算するステップと
を備えたことを特徴とする方法。
【請求項２】
信号強度データのデータベースを構築するステップをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項３】
どの基地局を互いに同時に検出することができるかを前記データベースから決定するステップをさらに備えたことを特徴とする請求項２に記載の方法。
【請求項４】
どの基地局が、他のどの基地局に隣接しているかについての情報を含むデータ構造を維持するステップをさらに含むことを特徴とする請求項３に記載の方法。
【請求項５】
あるリソースまで前記クライアントがどれだけ多くの基地局分だけ離れているかに対応するデータをクライアントに提供するステップをさらに備えたことを特徴とする請求項４に記載の方法。
【請求項６】
前記データベースを構築するステップは、以前に検出されていない少なくとも１つの基地局に関する矛盾した情報を破棄するステップを含むことを特徴とする請求項２に記載の方法。
【請求項７】
前記データベースを構築するステップは、重複するカバレージを有すると報告されるが、重複するカバレージを有すると以前に検出されたことがない基地局に関する矛盾した情報を破棄するステップを含むことを特徴とする請求項２に記載の方法。
【請求項８】
前記第１のネットワーク装置から前記リソースまでの前記概算距離を計算するステップは、各々共同してどれだけ多くの基地局が検出されるかを比較するステップを含むことを特徴とする請求項１に記載の方法。
【請求項９】
前記第１のネットワーク装置から前記リソースまでの前記概算距離を計算するステップは、前記ネットワーク装置についての第１の順序付け、および前記リソースについての第２の順序付けの中で信号強度値によって共通して認識される基地局を順序付けするステップと、前記第１の順序付けと前記第２の順序付けとの間の類似性を決定するステップとを含むことを特徴とする請求項８に記載の方法。
【請求項１０】
距離を計算する数値的特徴を選択するステップと、前記特徴の組合せを試験して実際の距離に関する最良の結果を提供する関数を決定するステップとをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項１１】
前記リソースは、前記ネットワークに接続されず、前記リソースに対して信号強度データを割り当てる別のネットワーク装置を使用するステップをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項１２】
前記リソースは、モバイルコンピューティング装置を含み、前記リソースから複数の読取り値を取得するステップと、前記複数の読取り値のうち最新の読取り値に基づいて前記リソースまでの前記概算距離に対応する情報を返すステップとをさらに備えたことを特徴とする請求項１に記載の方法。
【請求項１３】
前記クライアントの短距離内にある少なくとも１つのリソースに対応する射程の短い近接データをクライアントに提供するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１４】
前記近接データを使用してモバイル装置が別のモバイル装置の近くに関連づけられることを証明するステップをさらに含むことを特徴とする請求項１３に記載の方法。
【請求項１５】
前記射程の短い近接データを使用して近くの人物および事物のリストを前記クライアントのユーザに提示することを特徴とする請求項１３に記載の方法。
【請求項１６】
他の装置が近くにあることを示す前記射程の短いの近接データに基づいて前記クライアントから別の装置へ情報を送信するステップをさらに備えたことを特徴とする請求項１３に記載の方法。
【請求項１７】
実行されると請求項１に記載の方法を実行するコンピュータ実行可能命令を有することを特徴とする少なくとも１つのコンピュータ読取り可能媒体。
【請求項１８】
ネットワーク環境において、
各々検出された信号に信号強度およびアクセスポイントのアイデンティティを示す複数のスキャンソースから信号強度データを取得するステップと、
前記データを処理して射程の長い近接情報を作成するステップと
を備えたことを特徴とする方法。
【請求項１９】
前記データを処理してスキャンソースと別のエンティティとの間の射程の短い近接情報を作成するステップをさらに備えたことを特徴とする請求項１８に記載の方法。
【請求項２０】
前記データを処理して射程の長い近接情報を作成するステップは、どのアクセスポイントがスキャンソースによって同時に検出されるかを決定することによってアクセスポイントのトポロジを決定するステップを含むことを特徴とする請求項１８に記載の方法。
【請求項２１】
前記トポロジを使用して、問い合わせ中のクライアントと別のエンティティとの間のアクセスポイントの個数に対応するデータを提供するステップをさらに備えたことを特徴とする請求項２０に記載の方法。
【請求項２２】
前記信号強度データの少なくとも一部に対してタイムスタンプを適用するステップをさらに備えたことを特徴とする請求項１８に記載の方法。
【請求項２３】
前記タイムスタンプを使用して、スキャンソースに対応するユーザと別のスキャンソースに対応する別のエンティティとの間の推定される移動時間を計算するステップをさらに備えたことを特徴とする請求項２２に記載の方法。
【請求項２４】
前記推定される時間を前記ユーザに送信するステップをさらに備えたことを特徴とする請求項２３に記載の方法。
【請求項２５】
実行されると請求項１８に記載の方法を実施するコンピュータ実行可能命令を有することを特徴とする少なくとも１つのコンピュータ読取り可能媒体。
【請求項２６】
ネットワーク環境において、
少なくとも１つの基地局から第１のネットワーク装置が受信する信号に関する信号強度データを含む第１のシグネチャを取得するステップと、
少なくとも１つの基地局から第２のネットワーク装置が受信する信号に関する信号強度データを含む第２のシグネチャを取得するステップと、
前記第１および第２のシグネチャに基づいて前記第１のネットワーク装置から前記第２のネットワーク装置への概算距離を計算するステップと
を含むことを特徴とする方法。
【請求項２７】
前記第２のネットワーク装置はネットワーク装置ではないリソースを表しており、前記信号強度データに関する該リソースについての情報を受信するステップをさらに備えたことを特徴とする請求項２６に記載の方法。
【請求項２８】
前記概算距離を計算するステップは、前記２つのＷｉ−Ｆｉのシグネチャに数値関数を適用するステップを含むことを特徴とする請求項２６に記載の方法。
【請求項２９】
前記数値関数は、前記第１のネットワーク装置と前記第２のネットワーク装置との間で共通に検出される基地局の個数に対応する変数を含むことを特徴とする請求項２８に記載の方法。
【請求項３０】
前記数値関数は、前記第１のネットワーク装置および前記第２のネットワーク装置が信号強度によって共通に認識される基地局をいかに近接して順位付けしたかに対応する変数を含むことを特徴とする請求項２８に記載の方法。
【請求項３１】
前記数値関数は、信号強度の差に対応する変数を含むことを特徴とする請求項２８に記載の方法。
【請求項３２】
前記数値関数は、共通ではない基地局に対応する変数を含むことを特徴とする請求項２８に記載の方法。
【請求項３３】
前記数値関数は、前記第１のネットワーク装置と前記第２のネットワーク装置との間で共通に検出される基地局の個数に対応する変数と、前記第１のネットワーク装置と前記第２ネットワーク装置が信号強度によって共通に認識される基地局をいかに近接して順位付けしたかに対応する別の変数を含むことを特徴とする請求項２８に記載の方法。
【請求項３４】
前記関数は多項式を含み、実際の距離を測定して前記多項式の係数を決定するステップをさらに備えたことを特徴とする請求項２８に記載の方法。
【請求項３５】
前記距離をクライアントに報告するステップをさらに備えたことを特徴とする請求項２６に記載の方法。
【請求項３６】
クライアントに関して他の計算された距離と共に該距離を使用して分類されたリストを前記クライアントに提供するステップをさらに備えたことを特徴とする請求項２６に記載の方法。
【請求項３７】
前記概算距離を使用してモバイル装置が別のモバイル装置の近くに関連づけられることを証明するステップをさらに含むことを特徴とする請求項２６に記載の方法。
【請求項３８】
他の装置が近くにあることを示す前記概算距離に基づいて前記第１のネットワーク装置から前記第２ネットワーク装置へと情報を送信するステップをさらに備えたことを特徴とする請求項２６に記載の方法。
【請求項３９】
実行されると請求項２６に記載の方法を実施するコンピュータ実行可能命令を有することを特徴とする少なくとも１つのコンピュータ読取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般には、コンピュータシステムおよびネットワークに関し、より詳細には、無線通信を使用したコンピュータシステムに関する。
【背景技術】
【０００２】
ユビキタスコンピューティングの目的の１つは、コンピュータユーザのコンテキストに対して変動しやすいアプリケーションを構築することである。コンテキストの重要な一態様は、そのユーザの近くの人々および場所を含んでいる。例えば、会議、ミーティングおよび他の社会的関与において、人々は、かなり定期的に互いに交流し、かかる多くのイベントにおいて同じ人々に会うことが多い。人々が、他の人々のアイデンティティを記憶および／または発見することを手助けするための様々なメカニズムが試みられてきている。
【０００３】
これらのメカニズムは、位置読取り（ｌｏｃａｔｉｏｎ  ｓｅｎｓｉｎｇ）および／または近接読取り（ｐｒｏｘｉｍｉｔｙ  ｓｅｎｓｉｎｇ）に基づく。位置読取りは、人の絶対位置（例えば、ｘ、ｙ座標）を決定するのに対して、近接読取りは、所与のユーザの周囲の他の人々を発見する。近接を決定する１つの共通な方法は、複数の人々および他のセンサの絶対位置を測定し、この絶対位置データを使用することにより距離を計算し、近接についての推測を行うことであることに留意されたい。換言すれば、従来からの位置読取りシステムは、絶対位置を計算し比較することが必要であり、次いでこれらの絶対位置を使用することによりすべての人の（ｘ，ｙ）位置を測定し、それらの間の距離を単に計算することによって近接を計算することができる。
【０００４】
位置を自動的に測定する様々な方法には、Ｗｉ−Ｆｉの信号強度、ＧＰＳ、およびアクティブバッジ（ａｃｔｉｖｅ  ｂａｄｇｅ）を使用することが含まれており、この環境において専用のハードウェア、例えばＧＰＳ用の衛星、およびアクティブバッジの専用の受信機および／または送信機の配置を必要とする場合が多い。しかし、位置を測定するためには、広範囲にわたる配置および目盛り定めが必要となるので、（ｘ，ｙ）位置を測定することは難しい。したがって、この問題は、多くの人々がほとんどの時間を費やし、ＧＰＳが機能しない屋内においては特に困難である。
【０００５】
位置および／または近接読取りに基づいたアイデンティティ発見メカニズムの実施例は、無線「会議装置」を含んでおり、これらの装置は、かかる情報を用いて会議関与者を支援することを目指しており、一般に、ｎＴＡＧ（商標）、ＳｐｏｔＭｅ、ＩｎｔｅｌｌｉＢａｄｇｅ（商標）、および他の着用可能またはデジタルアシスタント（ｄｉｇｉｔａｌ  ａｓｓｉｓｔａｎｔ）の装置など大規模なグループの人々により、通常、簡単に携帯または着用することができる小型の無線装置を含んでいる。これらの装置の機能のうちでも、とりわけ位置および／または誰が近くにいるかを認識する機能がある。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
他のシステムは、カスタム無線トランシーバを装備したＰＤＡ（ｐｅｒｓｏｎａｌ  ｄｉｇｉｔａｌ  ａｓｓｉｓｔａｎｔ）を介して検出される近接に基づいて非公式な自発的な顔を突き合わせてのミーティングを促進するシステム、Ｐｒｏｘｙ  Ｌａｄｙを含んでいる。Ｔｒｅｐｉａとして知られている別のシステムは、ユーザに、そのシステムが自動的に見出す他の近くのユーザと情報をやりとりさせる。すなわち、ユーザは、自分たちの位置を手動で指定することができ、Ｔｒｅｐｉａもまた、有線およびＷｉ−Ｆｉのネットワークの共通性を使用することにより近接を推論する。ｉＣｈａｔ  ＡＶとして知られている別のシステムは、同じローカルネットワーク上のユーザに、インスタントメッセージまたはビデオ会議を行うために相互に見出すようにさせる。コンピュータゲーム用の同様なシステムは、同じネットワーク上のユーザに、他の近くのゲームをする人を見出させる。しかし、これらのメカニズムの欠点には、ユーザが、相互に見出すためには同じネットワーク上にいる必要があり、他の事柄とは対照的に、他の人々を見出すことだけしかできないということが含まれている。
【０００７】
他の人々を発見することに加えて、多くの個人は、近くにある他のリソースを発見することができることから利益を得るはずである。例えば、モバイルコンピューティング装置のユーザには、オフィスの外にいる場合などに文書を印刷する必要があることもあり、したがってユーザは、使用可能な最も近くにあるプリンタを検出できることから利益を得るはずである。ブルートゥース（Ｂｌｕｅｔｏｏｔｈ）およびＩｒＤＡ（Ｉｎｆｒａｒｅｄ  Ｄａｔａ  Ａｓｓｏｃｉａｔｉｏｎ）を使用してピアツーピアの装置発見のための定評のあるプロトコルがあるが、しかし、ブルートゥースの発見範囲は、約１０メートルに制限されており、ＩｒＤＡは、装置の間の照準線（ｌｉｎｅ  ｏｆ  ｓｉｇｈｔ）に障害物がないことを必要とし、約１メートルの範囲にわたってしか機能しない。さらに、これらのメカニズムは、他の適切可能な（ｐｒｏｐｅｒｌｙ−ｅｎａｂｌｅｄ）コンピューティング装置しか見出すことはできず、最も近くにあるエレベータ、バスルーム、自動販売機など他のリソースを見出すことができない。
【０００８】
本発明の譲受人に譲渡され、参照により本明細書に組み込まれている、米国特許出願第１０／６７７，１２５号明細書では、人々が、誰か別の人が近くにいるかを自動的に発見し、また何か他のリソースがその人の近くに存在するかを決定することもできるメカニズムが提供される。この目的のために、（様々な基地局、またはアクセスポイントなどに関する）無線信号強度を、ネットワーク装置またはあらかじめ目盛り定め済みの位置などの関与しているリソースから収集し、次いで（例えば、サーバによって）処理することにより、どの装置が同様な信号強度の電波を受信しているかが決定される。同様な信号強度を有する装置は、お互いに近くにあることが決定される。この情報を用いて、別のリソースについての情報は、調べることができ、または別の方法でその装置のユーザに提示するためにネットワーク装置に提供することができる。この技術に基づく近接に関係のあるメカニズムは、非常によく機能するが、この概念に対する改善は、有益で有利なはずである。
【課題を解決するための手段】
【０００９】
簡単に言えば、本発明は、短距離または長距離の近接計算に基づいてクライアントとリソースとの間の距離を発見するための無線ネットワークにおけるシステムおよび方法を提供するものである。所定の実装においては、あらゆるアクセス可能なアクセスポイントの各無線信号強度の示度は、クライアント装置によって取得され、各基地局識別子に関連してサーバに送信される。これは、信号強度が測定されるクライアント装置またはリソースについてのＷｉ−Ｆｉのシグネチャ（ｓｉｇｎａｔｕｒｅ）となる。サーバは、様々な他の装置から取得されるシグネチャと共にこのシグネチャを使用することにより登録済みのクライアントとリソースとの間の距離を評価する。
【００１０】
範囲内にあるときに、モバイル装置は、１つまたは複数の基地局または無線アクセスポイントを「見る（ｓｅｅ）」（基地局または無線アクセスポイントからの信号を受信する）ことができ、「受信電界強度（Ｒｅｃｅｉｖｅｄ  Ｓｉｇｎａｌ  Ｓｔｒｅｎｇｔｈ  Ｉｎｄｉｃａｔｏｒ）」すなわちＲＳＳＩと呼ばれる、モバイル装置がこれらの基地局から受信している無線信号の強度を測定する。基地局の測定されたＲＳＳＩは、距離に伴う無線信号の自然減衰、同様に物理環境によって引き起こされる反射、屈折、回折および減衰に起因して場所ごとに変化するので、モバイル装置が測定するＲＳＳＩは、装置の位置の影響を受けやすい。会議室などの固定されたリソースはまた、１つまたは複数の基地局の範囲内にあり、このリソースには、固定された装置の近くに配置されるモバイル装置により、各基地局に対する１組の信号強度を提供することができる。
【００１１】
クライアント部分は、プログラムとして実行され、このプログラムにより、各クライアントは、近接サーバに登録し、Ｗｉ−Ｆｉのシグネチャを報告し、および／または近くの人々および場所についての問合せを行う。クライアントは、実際には、階段など何らかの非ネットワーク化リソースを登録する場合などに、別のリソースのために登録し報告することができる。登録するとすぐ、クライアントアプリケーションは、クライアントデータをこのクライアントに結合させるサーバからＧＵＩＤ（ｇｌｏｂａｌｌｙ  ｕｎｉｑｕｅ  ｉｄｅｎｔｉｆｉｅｒ）を受信する。
【００１２】
登録された後に、クライアントは、アクセスポイント、およびこれらのアクセスポイントの測定済みのＷｉ−Ｆｉの信号強度をサーバに対して報告することができる。この報告は、固定装置によってなど一度でも、またモバイルクライアントによってなど定期的であってもよい。次いで、サーバは、ユーザが近接データについて問い合わせる場合、モバイルクライアントに現在のを提供できるようになる。
【００１３】
所定の実装において、サーバは、要求された型の近くの実体の２つの（おそらく空の）リストで応答する。短距離近接における、第１のリストは、距離によって大まかに分類され、問い合わせ中のクライアントと共通の少なくとも１つの検出可能なアクセスポイントを有する、所望の型のクライアント／リソースのこれらの実体を示している。長距離近接における第２のリストは、必要とされるホップ数によって分類される、重複するカバレージをもつアクセスポイントを介して「ホッピング」（“ｈｏｐｐｉｎｇ”）によって到達することができる実体を含んでいる。ホッピングの距離内に見出される実体の一部を、そこまで移動するのにかかるはずの合計時間の概算と共に報告することができる。
【００１４】
近接サーバは、Ｗｉ−Ｆｉのシグネチャから導き出されるアクセスポイントの物理レイアウトについての距離およびトポロジのデータを保持する。タイムスタンプされたＷｉ−Ｆｉのシグネチャは、アクセスポイントの物理レイアウトに関する情報を提供し、このレイアウト情報を次に使用することにより長距離近接の計算を助けることができる。サーバは、どのアクセスポイント対がこの同じクライアントによって同時に検出されているかを検査することによって、これらのアクセスポイントのトポロジを計算する。これは、これらのアクセスポイントが物理的に重複するカバレージを有し、したがって隣接していると考えられることを示す。近接サーバ２０６は、アクセスポイント対の表およびアクセスポイントの間のエッジまたはホップの最小数を、ある最大ホップ数に至るまで計算する。この表を使用することによりクライアントの長距離近接における人々または事物を見出し、ここで、長距離は、これら２つのスキャンソースが検出可能なアクセスポイントを共有しないが、隣接するアクセスポイントの間のいくつかのホップ数によって接続できることを示している。このホップ数をクライアントに対して報告することにより長距離近接におけるスキャンソースまでの距離の大まかなアイデアをこのユーザに提供する。アクセスポイントの間の距離関係が、Ｗｉ−Ｆｉのシグネチャ上のタイムスタンプから計算され、これらのタイムスタンプを使用してアクセスポイント対の間の移動時間を見出し、この移動時間が、長距離近接リスト上に現れる誰かまたは何かの所まで移動するのにどれくらいの長い時間がかかるかについてのアイデアをユーザに提供することができる。
【００１５】
あるクライアントの短距離近接内のクライアントおよび他のリソースは、そのクライアントと少なくとも１つのアクセスポイントを共有するものとして定義される。サーバ上で短距離リストを計算する際に、このリストは、クライアントからの概算距離によって分類され、ここで２つのスキャンソースの間の距離は、それらのＷｉ−Ｆｉのシグネチャの類似性に関連している。これらの２つのクライアントを分離する物理距離を与える２つのＷｉ−Ｆｉのシグネチャの数値関数を見出すためには、これらの２つのクライアントの間の共通のアクセスポイント数、これらの２つのクライアントが信号強度によってそれらの共通のアクセスポイントをどれだけ近くに順位付けしたかを表現するスピアマンの順位相関係数（Ｓｐｅａｒｍａｎ  ｒａｎｋ−ｏｒｄｅｒ  ｃｏｒｒｅｌａｔｉｏｎ  ｃｏｅｆｆｉｃｉｅｎｔ）、信号強度の２乗差の総和、およびリストごとの不明のアクセスポイント数を含めて、数値的な特徴を２つのシグネチャから作成する。テスト段階においてこれら４つの特徴のうちの最初の２つが最良の結果を提供したが、他の特徴も実現可能である。
【００１６】
本発明の近接検出はまた、ステッチング（ｓｔｉｔｃｈｉｎｇ）のためになど、共に位置し共同して行うためにモバイル装置の間で同期式ユーザ操作を検出する際に有用である。ステッチングは、ペンストローク（ｐｅｎ  ｓｔｒｏｋｅ）のスクリーン座標、方向、およびタイミングを、ペンストロークが２つの装置のディスプレイにまたがる場合に確立された他の近くの装置と共有することに関する。本発明の近接検出は、近距離の近接範囲内に存在しないどの装置も候補としては消去されるので、どの装置を可能性のある同期式ユーザ操作のための候補として考えるべきかを決定する問題を解決する。
【００１７】
他の利点についても図面と併せて解釈する場合に以下の詳細な説明から明らかになろう。
【発明を実施するための最良の形態】
【００１８】
（例示の動作環境）
図１は、本発明を実装することができる適切なコンピューティングシステム環境１００の一実施例を例示している。このコンピューティングシステム環境１００は、適切なコンピューティング環境の一例にすぎず、本発明の使用または機能の範囲についてどのような限定を示唆することも意図してはいない。またコンピューティング環境１００は、この例示の動作環境１００中に示すコンポーネントのうちのどの１つまたは組合せに関連した依存性または要件を有するものとも解釈すべきではない。
【００１９】
本発明は、他の多数の汎用または専用のコンピューティングシステム環境または構成で動作可能である。本発明と共に使用するのに適すると思われるよく知られているコンピューティングシステム、環境、および／または構成の例には、限定はされないが、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルド装置またはラップトップ装置、タブレット装置、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な家電製品、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、以上のシステムまたは装置のどれかを含む分散コンピューティング環境などが含まれる。
【００２０】
本発明は、コンピュータが実行する、プログラムモジュールなどのコンピュータ実行可能命令の一般的な文脈で説明することができる。一般に、プログラムモジュールは、特定のタスクを実行する、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含んでいる。本発明はまた、通信ネットワークを介してリンクされるリモート処理装置によりタスクが実行される分散コンピューティング環境においても実行することができる。分散コンピューティング環境においては、プログラムモジュールは、メモリ記憶装置を含めてローカルとリモートの両方のコンピュータ記憶媒体に配置することができる。
【００２１】
図１を参照すると、本発明を実装するための例示のシステムは、コンピュータ１１０の形態の汎用コンピューティング装置を含んでいる。コンピュータ１１０のコンポーネントは、限定はされないが、処理装置１２０、システムメモリ１３０、およびこのシステムメモリを含めて様々なシステムコンポーネントを処理装置１２０に結合するシステムバス１２１を含むことができる。システムバス１２１は、メモリバスまたはメモリコントローラ、周辺バス、および様々なバスアーキテクチャのどれかを使用したローカルバスを含めて、数種類のバス構造のうちのどれであってもよい。例として、限定するものではないが、かかるアーキテクチャには、ＩＳＡ（Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＭＣＡ（Ｍｉｃｒｏ  Ｃｈａｎｎｅｌ  Ａｒｃｈｉｔｅｃｔｕｒｅ）バス、ＥＩＳＡ（Ｅｎｈａｎｃｅｄ  ＩＳＡ）バス、ＶＥＳＡ（Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ）ローカルバス、およびメザニン（Ｍｅｚｚａｎｉｎｅ）バスとしても知られているＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ）バスが含まれる。
【００２２】
コンピュータ１１０は、一般的に様々なコンピュータ読取り可能媒体を含んでいる。コンピュータ読取り可能媒体は、コンピュータ１１０がアクセスすることができるあらゆる使用可能媒体とすることができ、揮発性および不揮発性媒体、取り外し可能および固定媒体を含むことができる。例として、限定するものではないが、コンピュータ読取り可能媒体は、コンピュータ記憶媒体および通信媒体を含むことができる。コンピュータ記憶媒体は、コンピュータ読取り可能命令、データ構造、プログラムモジュール、他のデータなど情報の記憶のためのあらゆる方法または技術で実装される揮発性および不揮発性媒体、取り外し可能および固定媒体を含んでいる。コンピュータ記憶媒体には、限定はされないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他のメモリ技術、ＣＤ−ＲＯＭ、ＤＶＤ（ｄｉｇｉｔａｌ  ｖｅｒｓａｔｉｌｅ  ｄｉｓｋデジタル多用途ディスク）または他の光ディスク記憶、磁気カセット、磁気テープ、磁気ディスク記憶装置または他の磁気記憶装置、もしくは所望の情報を記憶するために使用することができ、コンピュータ１１０がアクセスすることができる他のあらゆる媒体を含む。通信媒体は、一般的に、コンピュータ読取り可能命令、データ構造、プログラムモジュールまたは搬送波や他の搬送メカニズムなどの変調データ信号の形の他のデータを具現し、あらゆる情報配信媒体を含んでいる。用語の「変調データ信号」は、その１つまたは複数の特性がその信号中の情報を符号化するようにして設定または変更された信号を意味する。例として、限定するものではないが、通信媒体は、有線ネットワークや直接配線接続などの有線媒体と、音響、ＲＦ、赤外線、他の無線媒体などの無線媒体とを含んでいる。以上のうちのあらゆる組合せもまた、コンピュータ読取り可能媒体の範囲内に含められるべきである。
【００２３】
システムメモリ１３０は、ＲＯＭ（ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）１３１やＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）１３２など、揮発性および／または不揮発性のメモリの形態のコンピュータ記憶媒体を含んでいる。起動中などコンピュータ１１０内の要素間で情報伝送を助ける基本ルーチンを含むＢＩＯＳ（ｂａｓｉｃ  ｉｎｐｕｔ／ｏｕｔｐｕｔ  ｓｙｓｔｅｍ）１３３は、一般的にＲＯＭ１３１に記憶される。ＲＡＭ１３２は、処理装置１２０にとって直接にアクセス可能な、または処理装置１２０によって現在動作させられている、データおよび／またはプログラムモジュールを一般的に含んでいる。例として、限定するものではないが、図１は、オペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６、およびプログラムデータ１３７を例示している。
【００２４】
コンピュータ１１０はまた、他の取り外し可能／固定な揮発性／不揮発性のコンピュータ記憶媒体を含むことができる。例にすぎないが、図１は、固定な不揮発性磁気媒体に対して読み取るまたは書き込むハードディスクドライブ１４１、取り外し可能な不揮発性磁気ディスク１５２に対して読み取るまたは書き込む磁気ディスクドライブ１５１、およびＣＤ−ＲＯＭや他の光媒体など取り外し可能な不揮発性光ディスク１５６に対して読み取るまたは書き込む光ディスクドライブ１５５を例示している。例示の動作環境において使用することができる他の取り外し可能／固定な揮発性／不揮発性のコンピュータ記憶媒体には、限定はされないが、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、固体素子ＲＡＭ、固体素子ＲＯＭなどが含まれる。ハードディスクドライブ１４１は一般的に、インターフェース１４０など固定メモリインターフェースを介してシステムバス１２１に接続され、磁気ディスクドライブ１５１および光ディスクドライブ１５５は、一般的にインターフェース１５０など取り外し可能なメモリインターフェースによってシステムバス１２１に接続される。
【００２５】
前述され図１に例示されるドライブおよび関連するコンピュータ記憶媒体は、コンピュータ１１０についてのコンピュータ読取り可能命令、データ構造、プログラムモジュールおよび他のデータの記憶装置を提供する。図１において、例えばハードディスクドライブ１４１は、オペレーティングシステム１４４、アプリケーションプログラム１４５、他のプログラムモジュール１４６、およびプログラムデータ１４７を記憶するものとして例示されている。コンポーネントは、オペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６、およびプログラムデータ１３７と同じとすることもでき、また異なるものとすることもできることに留意されたい。オペレーティングシステム１４４、アプリケーションプログラム１４５、他のプログラムモジュール１４６、およびプログラムデータ１４７は、本明細書中において少なくともこれらが異なるコピーであることを例示するために異なる参照番号が付与されている。ユーザは、タブレット（電子デジタイザ）１６４、マイクロフォン１６３、キーボード１６２、一般にマウス、トラックボールまたはタッチパッドと呼ばれるポインティング装置１６１などの入力装置を介してコンピュータ１１０にコマンドおよび情報を入力することができる。他の入力装置（図示せず）は、ジョイスティック、ゲームパッド、衛星受信アンテナ、スキャナなどを含むことができる。これらおよび他の入力装置は、このシステムバスに結合されるユーザ入力インターフェース１６０を介して処理装置１２０にしばしば接続されるが、パラレルポート、ゲームポート、ＵＳＢ（ｕｎｉｖｅｒｓａｌ  ｓｅｒｉａｌ  ｂｕｓ）など他のインターフェースおよびバス構造によって接続することもできる。モニタ１９１または他の種類のディスプレイ装置も、ビデオインターフェース１９０などのインターフェースを介してシステムバス１２１に接続される。モニタ１９１は、タッチスクリーンインターフェース１９２などのインターフェースを介してコンピュータシステム１１０へと手書き入力するなどデジタル化された入力を入力することができるタッチスクリーンパネル１９３などと一体化することもできる。このモニタおよび／またはタッチスクリーンパネルは、タブレット型のパーソナルコンピュータ中など、コンピューティング装置１１０が組み込まれる筐体に物理的に結合することができ、ここでは、タッチスクリーンパネル１９３は、実質的にタブレット１６４としての機能を果たすことに留意されたい。さらにコンピューティング装置１１０などのコンピュータは、スピーカ１９５やプリンタ１９６などの他の周辺出力装置を含むこともでき、これらは、出力周辺インターフェース１９４などを介して接続することができる。
【００２６】
コンピュータ１１０は、リモートコンピュータ１８０など１つまたは複数のリモートコンピュータに対する論理接続を使用してネットワーク環境で動作することが可能である。リモートコンピュータ１８０は、パーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピア装置、または他の共通ネットワークノードとすることができ、一般的に、コンピュータ１１０に関連した前述の要素の多くまたはすべてを含んでいるが、メモリ記憶装置１８１しか図１には例示していない。図１に示す論理接続は、ＬＡＮ（ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）１７１およびＷＡＮ（ｗｉｄｅ  ａｒｅａ  ｎｅｔｗｏｒｋ）１７３を含んでいるが、他のネットワークを含むこともできる。かかるネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネットおよびインターネットにおいては、一般的なものになっている。
【００２７】
ＬＡＮネットワーク環境中で使用する際には、コンピュータ１１０は、ネットワークインターフェースまたはアダプタ１７０を介してＬＡＮ１７１に接続され、特に無線ネットワーキング用に構成された物を含むことができる。ＷＡＮネットワーク環境中で使用する際には、コンピュータ１１０は、インターネットなどのＷＡＮ１７３上で通信を確立するためのモデム１７２または他の手段を含むこともできる。モデム１７２は、内蔵でも外付けでもよいが、ユーザ入力インターフェース１６０または他の適切なメカニズムを介してシステムバス１２１に接続することができる。ネットワーク環境においては、コンピュータ１１０に関連して示すプログラムモジュール、またはその一部分は、リモートメモリ記憶装置に記憶することができる。例として、限定するものではないが、図１は、リモートアプリケーションプログラム１８５をメモリ装置１８１上に存在するものとして例示している。図に示すこのネットワーク接続は、例示的なものであり、コンピュータ間で通信リンクを確立する他の手段を使用することもできることが理解されよう。
【００２８】
（近接検出）
本発明は、１つには、無線コンピュータネットワークからの無線信号強度を使用することにより（モバイル、無線装置および多分その所有者を含めて）他のどのリソースが物理的に近接しているかを評価する方法およびシステムを対象としている。本明細書中の実施例は、一般に、タブレットパーソナルコンピュータなどのポータブルコンピュータシステムの形態において、モバイルネットワーク装置について言及しているが、無線ネットワークに対して情報を送信することが可能な事実上どのような装置でも、本明細書中で説明されている近接検出スキームに関与することができることを理解されたい。さらに、リソース（特に固定されているリソース）では、この情報を送信する必要はないが、リソースのために情報を送信するコンピューティング装置を有し、またはそうでなくても目盛り定め読取り（ｃａｌｉｂｒａｔｉｏｎ  ｒｅａｄｉｎｇ）に基づき手動でなど、リソースのために入力されたデータを有することができる。さらに、無線波以外のソースを使用することにより、音波や光式など適切なセンサを有する装置の近接を検出することができる。一般に、エリアに局所的な特性を有し、メカニズムによって感知することができるものは何でも使用することにより、近接を計算する（または計算するのを助ける）ことができる。したがって、本明細書中では主として無線について説明しているが、本発明の原理に基づいた近接検出は、他の多くの概念にも適用することができ、したがって用語の「ネットワーク」は、実際のコンピュータネットワークである必要はなく、用語の「信号」および「信号強度」は位置に基づいて変化する感知されたあらゆる情報を包含することを意図しており、「基地局」および「複数の基地局」は、データを感知または入力することができるあらゆる信号ソースまたは複数の信号ソースを表現している。
【００２９】
さらに、関与は、例えば、所定の装置は、他の装置またはリソースから同様なデータを受信せずに近接検出の目的ために所定の装置の信号強度データを送信することができ、本質的に所定の装置の位置を説明するが他の装置の位置に関与しないという点で、対称的である必要はない。例えば、装置は、信号強度データを送信せずに他のネットワーク装置の近接に関係のあるデータを受信することができる。逆に、個人は、基本的にはその個人の位置を知らせるが、近接の他の装置を検出することに関係のあるデータを処理しない小さな送信装置を着用することができる。他の装置の近接情報を受信しないことは、トイレなどコンピュータ化されていないリソースについては適切であり、ここで、このリソースは、目盛り定めステップにおいて（例えば、一度だけ）測定された一組の信号強度によって表現することができる。本明細書中で使用しているように、この説明の多くは無線コンピューティング装置の使用を例示しているが、用語の「リソース」は、かかる無線装置および／またはあらゆる他の型のコンピューティング装置の、同様にして非ネットワーク装置または適切な場合は非電子装置さえの概念を含んでいる。したがって、一般に、リソースは、実際には、モバイルコンピューティング装置の現在の信号強度データ、固定されたリソースなどについての事前に測定またはシミュレートされたデータなど関連する信号強度データを有するあらゆるものとすることができる。したがって、受付、トイレ、応急手当
所、自動販売機などは、実際にせよそうでないにせよ、リソースの一般的な情報に対応する計算された信号強度情報を理解し、そのリソースについての信号強度「シグネチャ」として使用することができる限りにおいては、各々、近接を測定または合理的に評価することができるリソースとすることができる。
【００３０】
図２において一般的に表現されるように、無線ネットワーク２００は通常、複数の静的に取り付けられた無線基地局（図２には、２０２１〜２０２５とラベル付けされた５つが示されているが、あらゆる実用的な数だけ存在できることが理解されよう）から構成され、この無線基地局は、無線装置（４つが２０４１〜２０４４に示されており、この場合にもこの数は、あらゆる実用的な数とすることができる）に対する無線周波数および有線ネットワークに接続したネットワークケーブルを媒体として同時に情報を通信することができる。範囲内にあり、各モバイル装置が、１つまたは複数のこれらの基地局を「見る」（基地局からの信号を受信する）ことができ、この無線信号の強度を測定することができるときには、各モバイル装置は、これらの基地局から受信している。この測定値は、しばしば「受信電界強度強度」の代わりに「ＲＳＳＩ」と呼ばれる。基地局の測定されたＲＳＳＩは、距離に伴う無線信号の自然減衰、同様にして、壁、床、天井および家具のような物理環境によって引き起こされる反射、屈折、回折および減衰に起因して場所ごとに変化することに留意されたい。したがって、モバイル装置が測定するＲＳＳＩは、この装置の位置の影響を受けやすい。
【００３１】
さらに、発見可能であるもう一方のリソースは、実際にはモバイルである必要はないが、例えば他の何らかの方法で測定または計算されるシミュレートされた信号強度を使用することができる。図３は、近接検出に関与するネットワーク３００中に１つまたは複数の固定された有線装置（３１０および３１２とラベル付けされた２つの固定された装置が図３に示されている）が存在する代替実装を示す。本明細書中で使用している「固定された（ｆｉｘｅｄ）」は、装置またはリソースが一般にあちこち移動しないことを意味するにすぎず、例えばプリンタは、通常はモバイル装置がそうであるようにはあちこち移動せず、したがって固定されていると考えることができる。
【００３２】
一代替において、関与している固定された各リソースには、各基地局のそれぞれに対する一組の信号強度が与えられ、信号強度は、その後（例えば、一度だけ）サーバに報告され、結果として、それらの存在を、クライアントの問合せに応答して報告することができる。固定された装置またはリソースの近くに位置するモバイル装置を使用することにより、読取りを得ることができ、次いでこの読取りを何らかの方法で固定された装置に手動で入力または転送を行うことができ、あるいは、固定されたリソースのためにモバイル装置からサーバへと報告することができる。このようにして、図３において表現された、事前に目盛り定めをされ固定されたリソース３２０および３２２によって、階段、バスルーム、エレベータ、自動販売機など非ネットワークおよび非電子リソースを関与するように設定することができる。代替として、固定された装置は、少なくとも一部の信号強度検出の性能を有して構成されることによってなど装置の読取りを得ることができる。装置の固定された位置に構成された後に、固定された装置の信号強度を、そのままにしておくか、あるいは固定された装置が無線装置に接続して所定の機能を実行するたびごとなどにアップデートすることができる。
【００３３】
例として、ユーザにとって使用可能にされ、したがって近接検出に関与するように構成された幾台かのプリンタのうちの１台などのプリンタを探しているモバイル装置のユーザについて考察する。モバイルユーザはこの最も近いプリンタ（または自動販売機など他のリソース）についてサーバに問い合わせることができる。図３の例においては、信号強度に基づいて、モバイル装置Ａのユーザは、それがプリンタであること、ネットワーク上のそのプリンタ用のデバイスドライバへのリンク、プリンタの正確な位置への方向という事実など、固定された装置Ｘについていくつかの情報と共に、固定された装置Ｘが現時点では最も近くにあることを知らされるはずである。かかる情報を、あらゆる他の関与するユーザと同様にデータベースからロードすることができ、またはサーバからプリンタ位置の機能の一部分としてなど他の何らかの方法でモバイル装置Ａに提供することができる。
【００３４】
一般に、本発明の実装は、「可視の」アクセスポイントのリストについての各無線装置スキャンを有することによって動作し、これらのアクセスポイントの各々からの信号強度を取得する。例えば、図２において、モバイル装置２０４１は、３つのアクセスポイント、すなわち基地局２０２１、基地局２０２２および基地局２０２３についての信号強度をスキャンし、取得する。次に、装置の各々は、取得データを中央サーバ２０６（または、一組のサーバ）に送信し、中央サーバは、信号強度を比較し、あらゆる２つの装置が近接にあるか否かについての結論を返送する。簡単に理解することができるように、近接計算を実行するサーバを必要としないピアツーピアモデルなど、他の代替形態も、本発明による近接検出を可能にすることができる。
【００３５】
信号強度を決定するために、クライアント（例えば、２０４１−２０４４）の各々は、ＭＡＣアドレスのアレイ、すなわち調べられるアクセスポイントごとの一意アドレスを集める。各クライアントはまた、各可視アクセスポイントからの信号強度の対応するアレイを集める。クライアントサーバモデル（ｃｌｉｅｎｔ−ｓｅｒｖｅｒ  ｍｏｄｅｌ）においては、これらのアレイは、これらの各クライアントによってサーバ２０６へと送信される。
【００３６】
信号強度を検出するために、受動的スキャン（ｐａｓｓｉｖｅ  ｓｃａｎｎｉｎｇ）または能動的スキャン（ａｃｔｉｖｅ  ｓｃａｎｎｉｎｇ）を使用することができる。受動的スキャンとは、クライアントがチャネルに対して同調し、そのチャネルの基地局（アクセスポイント）から受信される有効な８０２．１１パケットが聞こえないかと一定の周期の間、耳を澄ますことを要件とするものである。受信されるパケットは通常、１００ミリ秒間隔における基地局からのビーコン（Ｂｅａｃｏｎ）であるが、この周期については保証することができない。能動的スキャンとは、クライアントがチャネルに対して同調し、そのブロードキャストＳＳＩＤに等しいＳＳＩＤで、または有効なＳＳＩＤに等しいＳＳＩＤでプローブ要求（Ｐｒｏｂｅ  ｒｅｑｕｅｓｔ）を送信することを要件とするものである。ブロードキャストＳＳＩＤに等しいＳＳＩＤ、または基地局自体のＳＳＩＤに等しいＳＳＩＤを有するプローブ要求を受信する基地局は、プローブ応答（Ｐｒｏｂｅ  Ｒｅｓｐｏｎｓｅ）を用いてこのクライアントに応答することになる。
【００３７】
近接クライアントは、すべての８０２．１１チャネルを（能動的または受動的に）スキャンすることにより、これらのチャネルの基地局のＲＳＳＩを決定することができる。代わりに、近接クライアントは、指定された最小および最大期間の間、チャネルのサブセットを（能動的または受動的に）スキャンすることにより、性能を最適化し、クライアントに対する悪影響を減少させることができる。これら２つの方法を併せて使用することにより、性能を改善することができることに留意されたい。例えば、全チャネルのスキャンをローミングの目的で定期的に実行することができる。次いで、これらの結果を使用することにより、全チャネルのスキャンからの周波数よりも重要であるサブセットのスキャンからの周波数を用いて、サブセットのスキャンのためのチャネルの能動的なサブセットを決定することができる。
【００３８】
近接検出を簡易化するソフトウェアの説明を始めると、本発明のクライアント部分は、近接サーバ２０６と互いに伝達し合うためにユーザが実行するプログラムである。一実装においては、サーバに対するプログラムに基づいたインターフェースは、クライアントが使用するためのＡＰＩの単なるセットを提供するウェブサービスであり、例えばＷｉｎｄｏｗｓ（登録商標）ＸＰオペレーティングシステム、ポケットＰＣオペレーティングシステム、例えば信号強度、および簡単なＡＳＣＩＩパラメータとして符号化される関係のあるデータを有するＵＲＬに応答して従来のウェブブラウザ中で実行されるＡＳＰ（ａｃｔｉｖｅ  ｓｅｒｖｅｒ  ｐａｇｅ）などに対して新しいクライアントを書き込むことを容易にする。一実装において、サーバに対するウェブサービスインターフェースは、ＳＯＡＰ（ｓｉｍｐｌｅ  ｏｂｊｅｃｔ  ａｃｃｅｓｓ  ｐｒｏｔｏｃｏｌ）に基づいており、ＳＯＡＰによってあらゆる、ＳＯＡＰクライアントは、別のプラットフォームを実行することを含めて、サービスにアクセスすることができる。
【００３９】
一般に、各クライアントは、近接サーバに登録し、Ｗｉ−Ｆｉシグネチャを報告し、および／または近くの人および場所について問い合わせる。前述のように、クライアントは、実際に、ポケットＰＣを使用して階段を登録する場合など、別のリソースのために登録し報告することができることに留意されたい。本明細書中では、システムの機能を明示するために一般的なＷｉｎｄｏｗｓ（登録商標）ベースのクライアントについて説明しているが、Ｗｉｎｄｏｗｓ（登録商標）ベースではないクライアントも同等であることを簡単に理解することができる。さらに、本発明は、動作の大部分がサーバによって実行される環境に関して説明しているが、ピアツーピアモデル、または動作の大部分をクライアントへとシフトするモデルを実装することができることが理解されよう。
【００４０】
近接サーバを使用することにおける第１のステップは、図４に表された実施例のユーザインターフェースを介してなど、クライアントに対して、選択した名前で登録するステップである。新しいユーザは、あらゆる適切な名前を入力し、他者がそのクライアントについてより多くの情報を調べるために使用することができるＵＲＬ（ｕｎｉｆｏｒｍ  ｒｅｓｏｕｒｃｅ  ｌｏｃａｔｏｒ）を入力することができる。ユーザはまた、このサーバが以前のユーザを自動的に削除するトリガとしての役割を果たす、例えば時間または他の適切な単位における満了間隔を選択する。さらに、満了間隔により、ユーザがもはやサーバを使用しなくなった後にプライバシを保護するのを助けるためにユーザ名をサーバから自動的に除去することができるようになる。例えば、ユーザは、ミーティングの開始時にサーバに登録することにより、同じ部屋にいる他の人々の名前を見出すことができる。ユーザは、ミーティングが１時間で終了することを知っているので、満了時間を１時間に設定することができ、ユーザは、ミーティング後にサーバからユーザ名を除去することを記憶する必要はないことを意味する。
【００４１】
登録すると、クライアントアプリケーションは、サーバから（ＧＵＩＤ）を受信する。このＧＵＩＤをサーバが使用することにより、どのデータをどのクライアントに関連づけるかを識別する。ユーザがクライアントアプリケーションを中止し後で再開したいと欲する場合に、登録関数は、新しいユーザの代わりに以前のユーザとして登録する機会をユーザに提供する。次いでサーバは、クライアントが使用して将来の伝送にタグ付けを行う選択された以前のユーザのＧＵＩＤを用いて応答する。
【００４２】
ユーザは、以下の表にリストアップするように、人または別のリソースの型として登録することができる（型は、これらの例だけには限定されない）。
人物
会議室
プリンタ
エレベータ
階段
カフェテリア
キッチン
メールルーム
受付
バスルーム
ステッチ可能装置
実演者
非人物の型は、ユーザがＷｉ−Ｆｉのシグネチャを用いてオブジェクトまたは位置にタグ付けを行うことができるようにすることを意図している。適切なセキュリティメカニズムを提供することにより、ユーザが間違って何かをうっかりとあるいは悪意をもって登録する（例えば、存在しない場合、他のユーザに何かが近くにあるように見える可能性がある）ことを防ぐことができる。例えば、企業にとって代替的なより安全な登録方法では、ユーザ名／パスワードのスキームと同様なものを使用することができる。より広い展開では、マイクロソフトコーポレーションのドットネットパスポートなど公然とアクセス可能な認証サービスを使用することにより、ユーザを認証することができる。また、ユーザは、ユーザのインスタントメッセンジャの友達リストのような所定のグループだけに対して可視の状態を制限することができる。
【００４３】
登録済みの各非人物の実体にも名前が付与されるが、必ずしも満了期間が存在するとは限らない。したがって、固定されたリソースは、再度目盛り定めを行うことなくそのままとどまることができる。メンテナンスを近接サーバ上で実行することにより恒久的と考えられていたがもはや存在しないリソースを除去することができ、例えば、プリンタを除去することができる。タグ付けが行われた後に、人のユーザは、サーバにこれらのリソースの型の近くの実体、同様にして、他の登録済みのユーザの近くの実体について問い合わせることができる。
【００４４】
登録された後に、クライアントは、図５に表すように、アクセスポイント、およびアクセスポイントの測定されたＷｉ−Ｆｉの信号強度をサーバに報告することができる。クライアントプログラムにより、ユーザは、一度だけの報告を行うこともでき、また選択された時間間隔で連続周期の報告を配置することもできるようになる。周期モードは、移動するクライアントが使用することを意図したものである。一実装においては、クライアントは、一般的なＡＰＩコールを行って、アクセスポイントのＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスのリストを検索し、このＭＡＣアドレスは、８０２．１１アクセスポイントを一意に識別する６バイトの識別子である。クライアントは、検出可能なアクセスポイントごとに１つのＭＡＣアドレスを、また１つのリストごとに（例えば、８０２．１１）無線装置で検出されるような関連付けられた受信電界強度（ＲＳＳＩ）を検索する。このリストは、Ｗｉ−Ｆｉシグネチャである。ＲＳＳＩを、通常、１ミリワットと呼ばれるデシベルで、すなわちｄＢｍで測定し、一般に約１００ｄＢｍから−２０ｄＢｍの範囲にあり、整数として報告することができることに留意されたい。さらに、所与のアクセスポイントからのＲＳＳＩは、一般に、そのアクセスポイントからの距離と共に減少するが、減衰および反射による影響も受け、位置とＲＳＳＩの間の関係が複雑になってしまうことに留意されたい。クライアントは、通常、８０２．１１ＮＩＣ（ｎｅｔｗｏｒｋ  ｉｎｔｅｒｆａｃｅ  ｃａｒｄ）に少なくとも３秒を提供して、スキャンがトリガされた後にアクセスポイントに対してスキャンが行われる。一実装においては、クライアントは、検出されたアクセスポイントにフィルタをかけず、したがって、リストは、クライアントがそのネットワークと互いに伝達し合うための証明書を有していようがなかろうが、どのようなネットワークにも関連付けられたアクセスポイントを含むことができる。クライアントは、位置ビーコンのみとして効果的に機能するネットワーク接続のないアクセスポイントを検出することもできる。
【００４５】
ＭＡＣアドレスおよび信号強度の一組は、Ｗｉ−Ｆｉのシグネチャである。クライアントの報告は、クライアントのＧＵＩＤおよびＷｉ−Ｆｉのシグネチャを含み、ｎ個の検出可能なアクセスポイントに対して
｛ＧＵＩＤ，（ｍ１，ｓ１），（ｍ２，ｓ２），．．．，（ｍｎ，ｓｎ）｝
として表現することができる。ただし、ｍｉ、ｓｉは、それぞれｉ番目の検出されたアクセスポイントのＭＡＣアドレスおよびＲＳＳＩである。これらの順序付けされたペアを、どのような特定の順序でも報告しないが、例えば、最強から再弱への順序や、サーバの処理負荷の一部をクライアントに分散する他の方法で順序付けることができる。
【００４６】
クライアントはまた、図６および７に示すように、近くの人または場所について問合せを行うことができる。ユーザは、所望のリソースの型、例えば他の人、またはプリンタ、会議室、受付（図７）、など型のリストからの何か他のものの問合せを選択する。一実装においては、サーバは、この要求された型の近くの実体の２つの（おそらく空の）リストを用いて応答する。短距離の近接における、第１のリストは、距離によって大まかに分類される、問い合わせ中のクライアントと共通の少なくとも１つの検出可能なアクセスポイントを有するこれらの実体を示す。以下で説明するような長距離の近接における、第２のリストは、必要なホップ数によって分類される重複したカバレージをもつアクセスポイントを介して「ホッピング」によって到達することができる実体を含んでいる。ホッピング距離内に見出される実体の一部はまた、それまで移動するのにかかるはずの合計時間の評価を用いて報告される。
【００４７】
他の変形形態が実現可能であり、ユーザ用の「警報」として近接検出を使用することを含む。例えば、都市の中を歩いているユーザが、所定の型の店またはレストランに近づいたときを知りたいと望んでおり、ユーザの装置が、かかる通知を提供することができる。また、本発明は、１つまたは複数のユーザの関心を共有している、または探し求められているサービス／価値を有する誰かが近くにいる場合（例えば、会議、商取引、または社会的環境において、）警報を提供することもできる。
【００４８】
前述のように、１つのモデルにおいて、本発明は、信号強度データを収集し、信号強度および／または近接データをモバイルクライアント２０４１〜２０４４に分配するために使用される中央近接サーバ（または一組の通信サーバ）２０６を含んでいる。このモデルにおいて、近接検出に関与する少なくとも一部のモバイルの近接クライアントは、信号強度データを中央サーバ２０６に送信し、信号強度および／または近接データについてサーバ２０６に問い合わせる。データベース２０８もまた示されているが、このデータベースは、サーバの一部分と考えることができる。各装置のユーザについての伝記的なデータ（例えば、イメージおよびテキスト）など、装置識別子、強度、および／またはリストを超える情報を、クライアントに対して提供することができることに留意されたい。さらに、このデータベースは、共通のまたは異なるプロファイルの要素など追加の問合せの性能を可能にすることができる。
【００４９】
したがって、近接サーバ２０６は、例えば図２におけるクライアント２０４１〜２０４４など関与しているモバイルの近接クライアントが構成する信号強度データを記憶するために使用される中央コンピュータを含む。サーバは、各信号強度報告を、その報告が到来すると、キャッシュおよび／または不揮発性記憶装置などに記憶する。一実装において、近接サーバ２０６は、アクティブユーザ、静的リソース（例えば、プリンタおよび会議室）、およびこれらに関連付けられたＷｉ−Ｆｉのシグネチャの表を保持するＳＱＬデータベースを含む。サーバの観点からは、Ｗｉ−Ｆｉのシグネチャに関連付けられた人および場所はスキャンソースである。スキャンソースの型と共に、各スキャンソースは、ＧＵＩＤ、フレンドリな名前、オプションとしてのＵＲＬ、オプションとしての電子メールアドレス、および（主として人についての）満了時間を用いて表現される。近接サーバ２０６は、表を使用することにより、例えばウェブサービスの形式でＡＰＩを介して課されるクライアント要求に応答する。近接サーバ２０６は、例えば毎時に、期限切れになったスキャンソースがあるかを検査し、それらの名前を削除する。
【００５０】
サーバ上で、各Ｗｉ−Ｆｉのシグネチャには、スキャンソースのＧＵＩＤ、およびサーバによって生成されたタイムスタンプを用いてタグ付けされる。たとえ関連付けられたスキャンソースが満了によって削除されたとしても、Ｗｉ−Ｆｉのシグネチャは、通常、削除されない。プライバシのために、それらのシグネチャは、スキャンソースのＧＵＩＤを用いて識別されるにすぎないので、かかる取り残されたシグネチャは、それらの起源となるスキャンソースまでさかのぼってトレースすることができない。のＷｉ−Ｆｉのシグネチャはアクセスポイントのレイアウトを記述する表を計算するために保存される。
【００５１】
より詳細には、本発明の別の態様によれば、近接サーバ２０６は、Ｗｉ−Ｆｉのシグネチャから導出されるアクセスポイントの物理的なレイアウトについての距離およびトポロジのデータを保持する。タイムスタンプ付きのＷｉ−Ｆｉのシグネチャは、アクセスポイントの物理的なレイアウトに関する価値のある情報ソースである。次にレイアウト情報を使用することにより、長距離の近接計算を助けることができる。近接サーバ２０６は、２つの方法でＷｉ−Ｆｉのシグネチャを処理する。
【００５２】
最初に、サーバは、アクセスポイントのどのペアが同じクライアントによって同時に検出されているかを検査することにより、アクセスポイントのトポロジを計算する。このことは、アクセスポイントが、物理的に重複したカバレージを有し、したがって隣接していると考えられることを示す。隣接したアクセスポイントは、同じネットワークバックボーン上に存在する必要もなく、またどのようなバックボーン上にも存在する必要さえないことに留意されたい。概念的には、近接サーバ２０６は、重複したカバレージを伴うアクセスポイントの隣接マトリックスを構築する。このマトリックスから、近接サーバ２０６は、図８に一般的に表されるような、隣接ノードの間のノードおよびエッジ（ｅｄｇｅ）としてのアクセスポイントを有する無向グラフを計算する。ただし、クライアントは、アクセスポイントＡないしＧから報告している。実際には、近接サーバ２０６は、アクセスポイントのペアとアクセスポイントの間のエッジまたはホップの最小数との表を、ホップの最大数（現在は８）まで計算する。近接サーバ２０６を、毎時など折に触れてこの表を再計算するためにプログラムすることにより、最新のＷｉ−Ｆｉのシグネチャに遅れないことを続ける。この方法において、近接サーバ２０６に知られている環境の物理的範囲は、より多くのユーザが、より多くの位置からＷｉ−Ｆｉのシグネチャを報告するにつれて、自動的に増大する。この表を使用することにより、クライアントの長距離の近接における人または事物を見出し、ここで、長距離とは、２つのスキャンソースが、検出可能なアクセスポイントを共有しないが、隣接するアクセスポイントの間でホップ数によって接続できることを示している。ホップ数をクライアントに報告することにより、長距離の近接におけるスキャンソースまでの距離の大まかなアイデアをそのユーザに提供する。
【００５３】
隣接アクセスポイントのこの表は、ちゃかしに対する監視（ａｎｔｉ−ｓｐｏｏｆｉｎｇ  ｇｕａｒｄ）としても使用される。クライアントを、Ｗｉ−Ｆｉのシグネチャ中のアクセスポイントが、あらゆる他のクライアントによって以前に一緒に見られたことがあるかどうかを検査して調べるウェブサービスコールを用いてオプション的にプログラムすることができる。そうでない場合、このことは、Ｗｉ−Ｆｉのシグネチャが有効ではなく、人為的に作成されたという疑いをもたらす。このちゃかしに対する検査は、データベースの完全な状態の保持を助けるが、この検査はまた、隣接するアクセスポイントのリストのどのような増大をも防止し、したがってこの検査を、信頼のないクライアントに対してのみ使用する。
【００５４】
レイアウト情報の第２の部分は、アクセスポイントの間の距離関係に関係しており、Ｗｉ−Ｆｉシグネチャ上のタイムスタンプに由来する。タイムスタンプを使用することにより、アクセスポイントのペアの間の最小移動時間を見出し、この最小移動時間は、長距離の近接リスト上に現れる誰かまたは何かの所まで移動するのにどれくらいの時間がかかることになるかについてのアイデアをユーザに提供することができる。もちろん、中間（ｍｅａｎ）や平均（ａｖｅｒａｇｅ）など最小以外の何かを使用することができる（結果として、走っているユーザも、ほとんどの人にとって何か非現実的な所まで評価された時間をそれることがなくなる）。毎時になど折に触れて、近接サーバ２０６は、それらの情報が同じスキャンソース（例えば、同じ人）に由来することを意味する同じＧＵＩＤを共有するＷｉ−Ｆｉのシグネチャのグループを作成するようにプログラムされる。近接サーバ２０６は、各グループ内の可能性のある一意のアクセスポイントのペアを構築し、各ペアのメンバごとに、サーバは、それぞれのタイムスタンプを調べ、結果である時間間隔をペアに対して割り当てる。アクセスポイントのペアは、再結合され、ここで最小（または平均など他の時間）以外のすべての時間間隔が二重のペアについて保たれる。結果は、ＭＡＣアドレスのペアと、あらゆるクライアントがクライアントの間を移動できた最小時間とのリストである。最小時間を、図６および７に示すように、長距離の近接におけるスキャンソースのリスト中に含む。時間は、そのスキャンソースまで直接に移動するのにどれだけの長い時間がかかるはずであるかの上限としての役割を果たす。観測された最小時間が、２つのアクセスポイントの間を直接に横切ったことに由来するという保証がないので、時間は、上限となる。理解されるように、時間の解析の代替版は、アクセスポイントの間の移動時間をクラスタリングすることにより、徒歩、自転車、車の運転のような交通の可能な異なるモードの異なる速度について説明することができる。
【００５５】
トポロジおよび距離の表も共に、価値ある近接情報を提供し、システムの人間のクライアントまたは保守管理者から要求されるどのような余分な目盛り定め作業をせずに、自動的に計算される。トポロジおよび距離の表についてのデータには、人間のユーザが寄与するが、このデータは、満了の後にデフォルトで匿名になる。簡単に理解することができるように、この型の長距離の近接情報を使用することにより、大きなオフィスビルの受付、カフェテリア、キャンパスにいる友人、または管理人など、１つのアクセスポイントの範囲外に一般に存在することもある人および場所を見出すことができる。移動時間データは、必要なアイテムのいちばん近くを選ぶために、同様にして、どれくらいの時間でそこに到達することができるかを計画するために有用なはずである。
【００５６】
長距離の近接表は、サーバに提出された過去のデータに基づいて計算される。環境におけるアクセスポイントが除去または追加される場合、長距離の近接計算は、依然として有効になることになる。特にトポロジの別の部分へ、アクセスポイントを移動することにより、無効なグラフリンクが作成され、無効なグラフリンクは所定のしきい値よりも以前のアクセスポイントを期限切れにすることによって調整することができる。
【００５７】
アクセスポイントのデータベースは、アクセスポイントデータが絶対位置を含まなければならないことが必要な従来技法に依存してはいない。代わりに、データベースは、クライアントの使用の通常の成り行きにおいて構築され、プリンタや会議室など対象となる位置の名前を提供する。本発明では絶対位置が提供されないが、さらに従来からのデータベースでも、容易に、近接データと共同して動作することに順応することができ、この逆もまた同様であることに留意されたい。
【００５８】
本発明の別の態様によれば、クライアントおよびクライアントの短距離の近接内の他のリソースは、クライアントと少なくとも１つのアクセスポイントを共有するクライアントおよび他のリソースとして定義される。サーバ上で近距離リストを計算することにおいて、クライアントからの距離によってリストを分類することが有用である。次いで、例えば、ユーザは、いちばん近くのプリンタを選択し、またはいちばん近くにいるＮ人の人を選択することができる。
【００５９】
本発明の一態様によれば、２つのスキャンソースの間の距離は、スキャンソースのＷｉ−Ｆｉのシグネチャの類似性に関連している。スキャンソースが、共通ないくつかのアクセスポイントを見る場合、およびスキャンソースのアクセスポイントからの信号強度が同様である場合には、２つは、互いに近くにある可能性がより高いことになる。
【００６０】
クライアントａおよびｂからの２つのＷｉ−Ｆｉのシグネチャについて考察すると以下のように表される。
【００６１】
【数１】
2006010687.tif 000003
【００６２】
および
【００６３】
【数２】
2006010687.tif 000004
【００６４】
ただし、ｍは、そのＡＰ  ＭＡＣアドレスであり、ｓは、その関連付けられた信号強度である。クライアントａが、ｎａ個のアクセスポイントを検出し、クライアントｂがｎｂ個のアクセスポイントを検出した。類似特徴を定義するために、本発明は、まず両方のクライアントによって検出された一組のアクセスポイントと、各クライアントからの関連付けられた信号強度とを形成する。
【００６５】
【数３】
2006010687.tif 000005
【００６６】
ここで、両方のクライアントによって検出されたｎ∩個のアクセスポイントが存在し、これらのアクセスポイントうちのｉ番目がｍ∩，ｉであり、クライアントａおよびｂが、それぞれ信号強度
【００６７】
【数４】
2006010687.tif 000006
【００６８】
および
【００６９】
【数５】
2006010687.tif 000007
【００７０】
で測定した。
【００７１】
２つのクライアントを分離する物理的距離を提供する２つのＷｉ−Ｆｉのシグネチャの数値関数を見出すために、数値的特徴が２つのシグネチャから作成される。４つのかかる特徴は、以下を含んでいる。
【００７２】
１．ｎ∩によって表現される、２つのクライアントの間の共通のアクセスポイント数。増大したｎ∩は、短距離の表示であることが予想される。
【００７３】
２．ρｓによって示される、スピアマンの順位相関係数。この数字は、信号強度によってクライアントの共通のアクセスポイントを順位付けた２つのクライアントが、どの程度近いかを表現する。直感的に、より類似した順位付けは、これらのクライアントがより近くに一緒に存在することを示す。順位付けの利点は、クライアント中のＷｉ−Ｆｉ  ＮＩＣなど異なる無線受信機が、異なる方法で、信号強度をうまく測定できることである。アクセスポイントが共に同じ信号強度を受信し、共に入力および測定された信号強度に関連する単調関数を有する場合、信号強度によるアクセスポイントの順位付けは、両方のクライアント上で同じになるであろう。順位付けは、絶対的な信号強度に含まれる情報を無視するが、絶対的な信号強度は、設計、製造、シールド（ｓｈｉｅｌｄｉｎｇ）、およびアンテナの指向性における違いを含め、ＮＩＣにおける避けられない変化に対して堅牢である。数学的に、ρｓは、両方のクライアントから共通に見える信号強度の２つの分類されたリストをまず作成することによって計算される。例えば、信号強度のリストは、
【００７４】
【数６】
2006010687.tif 000008
【００７５】
および
【００７６】
【数７】
2006010687.tif 000009
【００７７】
とすることができる。各リストにおいて、各信号強度を、リスト自体の中で信号強度の降順順位付けで置換えることにより、２つの順位付けリスト、例えば
【００７８】
【数８】
2006010687.tif 000010
【００７９】
および
【００８０】
【数９】
2006010687.tif 000011
【００８１】
を作成する。スピアマンρｓは、次式によって与えられる。
【００８２】
【数１０】
2006010687.tif 000012
【００８３】
ここで、
【００８４】
【数１１】
2006010687.tif 000013
【００８５】
および
【００８６】
【数１２】
2006010687.tif 000014
【００８７】
は、順位付けの平均値である。例においては、ρｓ＝０．５であり、ρｓは、−１から１までの範囲であり、それぞれ順位付けの間における弱い相関から完全相関までを示している。
【００８８】
３．信号強度の２乗差の総和。すなわち、以下の式で表される。
【００８９】
【数１３】
2006010687.tif 000015
【００９０】
より小さなｃの値は、より類似した信号強度および推定されるようにより短距離を示す。このことは、順位付け係数ρｓが無視することを意図された、信号強度を測定する際の変動性を説明するものではない。
【００９１】
４．各リスト中で説明されていないアクセスポイント数。これは、共通のアクセスポイントのリスト中に存在しない「使い残し（ｌｅｆｔ  ｏｖｅｒ）」のアクセスポイント数、すなわち、ｎｕ＝ｎａ＋ｎｂ−２ｎ∩を示す。より多くの説明されていないアクセスポイントは、クライアントがさらに離れていることを示すことができる。
【００９２】
以上の４つの特徴からＷｉ−Ｆｉのシグネチャのペアの特徴の一部または全部を取得する関数を見出し、クライアントの間の物理的距離についての推定値を返すために、これらの特徴と距離とを関係づけるよく確立された物理モデルが存在しないので、多項式が選択された。多項式の次数Ｎ０を１から４まで変化させ、特徴数Ｎｆを１から４まで変化させることにより、Ｎｆごとに全部で
【００９３】
【数１４】
2006010687.tif 000016
【００９４】
個の（「４からＮｆを選択する」）可能な特徴の組合せがテストされた。例えば、Ｎ０＝２、Ｎｆ＝３であり、これら３つの特徴がｎ∩、ρｓ、およびｃであった場合には、その多項式は、以下のようになるはずである。
【００９５】
ｄ＝ａ０００＋ａ１００ｎ∩＋ａ０１０ρｓ＋ａ００１ｃ＋
ａ１１０ｎ∩ρｓ＋ａ１０１ｎ∩ｃ＋ａ０１１ρｓｃ＋
ａ２００ｎ∩２＋ａ０２０ρｓ２＋ａ００２ｃ２
ただし、ｄは、２つのＷｉ−Ｆｉのシグネチャが取得される位置の間の物理的距離であり、ａは、最小２乗法を使用して発明者らが評価した係数である。係数を計算することにおいて、各ＮＩＣは、実験データ中では正確に等しく表現されていないので、、重み付けされた最小２乗法を使用して各々の可能なＮＩＣのペアの影響を等しくした。
【００９６】
多数のデータポイントから多項式の係数を計算するために、実際の最小２乗近似が、保持される各サブセットからの最小ｒｍｓ距離誤差を与えた係数を有する、各々のデータのランダムな１０％を含む１０個のサブセットに対して実施された。この結果を、以下の表に示す。
【００９７】
【表１】
2006010687.tif 000017
【００９８】
【表２】
2006010687.tif 000018
【００９９】
表において、「ＲＭＳ誤差（ＲＭＳ  Ｅｒｒ）（ｍ）」列の下の「トレーン（Ｔｒａｉｎ）」列は、オフィスビルのデータに対する最小２乗近似後のメートルで表したｒｍｓ誤差を示している。「スピアマン？」列の下の「トレーン」列は、どのぐらい上手く計算された多項式が、実際の距離と比較された、計算された距離を順位付けたのかを示している。２つの「テスト」列は、オフィスビルの多項式係数がカフェテリアにおいて取得されたデータに対してどれほどうまく機能したかを示している。一般に、特徴数および多項式の次数を増大させることにより、あまり精度は改善されなかった。
【０１００】
トレーニングデータでは、ｒｍｓ誤差は、すべての４つの特徴を使用した３次多項式に関して、最小値が６．４３メートルで、７メートルの近辺であった。実際の距離と計算され順位付けられた距離との間でスピアマンの順位相関係数を使用して、どれぐらい上手く計算された多項式が、距離を順位付けたのかについても評価が行われた。（スピアマンが２回使用されることに留意されたい。なぜならば、１回は、信号強度の順位類似性を測定するための方法として、１回は、どれぐらい上手く様々な多項式が、実際と比較された
物理的距離を順位付けるのかについてを評価するための方法としてである。）
【０１０１】
このことは有用である。なぜならば、一部のアプリケーションでは、人との絶対距離よりもむしろ近くにいる人の順位付けされたリストの提示を欲することがあるからである。トレーニングセットについてのスピアマン相関の最大値は、やはりすべての４つの特徴を使用した３次多項式では、０．４９であった。オフィスビルのトレーニングセットからの多項式の係数がカフェテリアデータセットと比較され、どの特徴および関数をあらゆる一般的な状況に対して使用することができるのかについて、より多くの情報を提供する。カフェテリアデータは、ｒｍｓ誤差の最小値が１３．９７メートルおよびスピアマン相関の最大値が０．４３で、妥当な性能を与え、共にｎ∩、ρｓ、およびｃ上の１次多項式を使用する。説明されていないアクセスポイント数ｎｕは、テストセット上におけるｒｍｓ誤差の観点からは最も悪い性能のひとつの特徴であった。直感的に、最も魅力的な特徴は、ｎ∩（共通のアクセスポイント数）およびρｓ（信号強度のスピアマン相関）である。なぜならば、ｎ∩およびρｓはＮＩＣの間の測定の差に対して堅牢であるからである。テストデータは、これらの２つの特徴について最もよい性能の多項式が１次多項式であり、１４．０４メートルのｒｍｓ誤差および０．３９のスピアマン相関を与え、共にすべてのテストケースにわたって最良の性能に非常に近い。この実際の多項式は、以下であった。
【０１０２】
ｄ＝−２．５３ｎ∩−２．９０ρｓ＋２２．３１
予想されるように、この式は、より多くのアクセスポイントが共通に見られる（ｎ∩）場合、および相対的な順位付けがより類似している（ρｓ）場合、メートルにおける評価された距離（ｄ）が減少することを示す。この式の興味ある一態様は、
【０１０３】
【数１５】
2006010687.tif 000019
【０１０４】
が成立することであり、ｎ∩およびρｓが評価された距離に対してほぼ同じレベルの影響力を有することを意味する。影響力におけるこの類似性を所与とすると、目的が距離によってＷｉ−Ｆｉのシグネチャのペアを分類することである場合、妥当な発見的方法（ｈｅｕｒｉｓｔｉｃ）は、単に和ｎ∩＋ρｓによって分類することであり、一実装においては、この方法は、サーバ上で行われることにより、短距離も近接における実体のリストを分類する。
【０１０５】
この式は、２つのテストデータセットでは妥当にうまく機能したが、実際の係数は、材料、アーキテクチャ、アクセスポイント密度、およびアクセスポイント伝送強度を構築することにおいて、差が存在することになる他の位置には大ざっぱに適用可能とすることができないことに留意されたい。適用することができない可能性のある一例は、アクセスポイントが高密度に配置された区域内である。かかるケースにおいては、ｎ∩は十分に大きくなる可能性があり、結果として計算された距離は負となる。しかし、近接については、多大な精度が必ずしも必要とは限らない。
【０１０６】
短距離の近接計算は、アクセスポイントの追加および削除に対して堅牢である。なぜならば、距離計算が２つのＷｉ−Ｆｉのシグネチャが共通に有するアクセスポイントのリストにのみ基づくからである。サーバが、適切にアップデートされない場合、移動したアクセスポイントは、大きなエラーを引き起こす可能性がある。しかし、アクセスポイントのＷｉ−Ｆｉのシグネチャを頻繁にアップデートしている近くの人を見出すために、クライアントは、移動したアクセスポイントでさえ容易に許容することができる。
【０１０７】
図４−７に表されるクライアントの例では、人および場所をＵＲＬに登録する。例えば、ユーザは、ホームページとともに登録することができる。受付のような場所では、地図を提供することにより訪問者が道を見つけることを助けるＵＲＬを登録することができる。一実装においては、登録済みのＵＲＬを有する実体が、名前の後ろに省略符号（”．．．”）を伴って近接リスト上に現れることになる。ユーザは、名前をクリックすることにより、ウェブブラウザを呼び出しそのＵＲＬの内容を表示することができる。各登録済みの人および場所には、位置に基づいてフィルタリングする機能を果たすＷｉ−Ｆｉのシグネチャが実質的にタグ付けされている。関連付けられたＵＲＬと共に、基部に近い人および場所の変化するリストにより、近くで何が利用可能かについての動的な検索サービスを作成する。
【０１０８】
図９のスクリーンショットは、ユーザが名前および電子メールアドレスとともに近接サーバに登録できるようにする局所的な電子メールプログラムを示している。Ｗｉ−Ｆｉのシグネチャでデータベースをアップデートした後、近くにいる登録済みのユーザのリストが現れる。ユーザは、このリストから名前を選択し、彼らに電子メールを送信することができ、このことは、昼食に出かけ、またはある問題に伴って顔を突き合わせての助けを求めるようなほとんど即時の要求では有用なはずである。他のプログラムでは、代替として、インスタントメッセージを送信および／または登録済みのユーザの電話番号を自動的にダイアルすることができ、提供されたこの情報を知る。可能性のある受信者リストは、物理的距離によって分類されるので、リスト中の上位Ｎ個を選択することは、本明細書の距離の概算誤差に適して、Ｎ人のいちばん近くにいる人を選択することと同等である。距離分解能は、現在では何十メートル程度であるので、距離の誤差は、本アプリケーションについては許容可能と思われる。近接は、電子メールの受信者についてのいくつかのフィルタのうちの１つとして使用することができ、例えば、受信者の型および対象区域に対するフィルタに追加してオプション的に使用することができることに留意されたい。
【０１０９】
本発明の別の態様によれば、別のクライアントは、本発明の近接検出を使用することにより、共に位置された共同のために関連付けられたモバイル装置の間の同期式ユーザ操作を検出する際の支援を行う。ステッチング、同期式ジェスチャ、およびＳｙｎｃＴａｐは、かかる技術の例である。例えば、ステッチングは、ペンストロークが２つの装置のディスプレイにまたがる場合、ペンストロークのスクリーン座標、方向、およびタイミングを他の近くの装置と共有することにより確立する。例えば、このことにより、ユーザが、例えば図１０に示すように、２つの別々のペン操作が行われる無線装置の間で、ファイルをドラッグすることを容易にする。
【０１１０】
このクラスのシステムにおける重大な問題は、どの装置を可能性のある同期式ユーザ操作についての候補として考えるべきかを決定することである。例えば、ＳｙｎｃＴａｐでは、ユーザアクティビティを共有するためにマルチキャストを使用することおよび他の装置と時計を合わせることを提案しているが、ＳｙｎｃＴａｐでは、かりにも意図的に関連づけるにはあまりにも遠くに離れている多数の関係のない装置に不必要に情報を送信することもある。本当に近くにある装置に通信を制限することにより、（多数の装置に対する偶発的操作の純粋な同期の変化に起因して）同期式ユーザ操作が間違って存在すると認識する可能性を低減し、（近接ではない装置との同期を確立しようとする無駄な計算およびメッセージ伝送を減らすことによって）電源消費要件を低減する助けを行うこともできる。
【０１１１】
本発明では、他の装置との連携を求める装置ごとに近くにある装置のリストを提供することによって、上述の問題を解決している。ステッチング技術では、（「ステッチ可能装置」と呼ばれる）装置は、互いに短距離の近接内に存在すると識別されている装置の組の内部の相互に関連するペンストロークだけを探すステッチングシステムのソフトウェアを含んでいる。ステッチ可能な装置は、かなり定期的に（例えば、２０秒ごとに）本発明を使用してそれらの信号強度をアップデートし、結果として、その一組のステッチ可能装置は、どの時点においても動的であり、装置自体をステッチするための資格があるようにしたいと所望のあらゆる新しいクライアントによって発見可能である。本アプリケーションでは、短距離の近接内のあらゆる装置についての連携を考慮しているが、距離の評価に基づいて、物理的距離内の装置だけを考慮するように変更することもできる。実装されると共に、本発明では、可能性のある関連づけ可能な装置のリストが全世界から１つのアクセスポイントの範囲内の装置だけにへと減少される。
【０１１２】
簡単に理解することができるように、本発明を、中央データベースに依存した形式よりむしろピアツーピア形式で実装することもできる。短距離の近接では、ピアは、Ｗｉ−Ｆｉのシグネチャを交換することができ、次いでクライアントに分離距離を評価するための関数を実行させることができる。機能するはずの別のプラットフォームは、Ｗｉ−Ｆｉのカードを装備したセル電話である。すなわち、１つのアプローチにおいては、電話は、Ｗｉ−Ｆｉのカードを使用することにより、Ｗｉ−Ｆｉのシグネチャを作成し、次いでキャリアのネットワークを使用することにより、近接サーバにアクセスするはずである。ブルートゥースおよびラジオやテレビの民間ブロードキャストなど、他の型の無線を位置のシグネチャとして組み込むことができる。
【０１１３】
前述の詳細な説明から分かるように、他のネットワーク装置に近いネットワーク装置または他のリソースを検出するための方法およびシステムが提供される。信号強度（または他の感知された状態）を使用することにより、既存のインフラストラクチャおよびハードウェアを利用してネットワーク装置にネットワーク装置のユーザに対して意味のある近接データを提示するために必要とされる情報を提供する。絶対的な位置を計算せずに近くにいる人および場所のリストを提供することにより、従来の位置に基づいたシステムを用いるよりも展開が容易であり、短距離の近接についての絶対的および相対的な距離の推定値を依然として提供することができ、また長距離の近接についての移動時間の推定値も提供することができる。より多くの人々がこのクライアントを使用するにつれてデータベースを増大させることにより、近接して見出すことができる人および場所の豊富さおよび範囲が増大する。さらに、データベースは、ユーザが指定した時間周期の後、データを匿名にして保持することにより、ユーザのプライバシを保護する助けを行い、データベースがすでに見ているものと対照してデータを検証することによって偽造されたアクセスポイントのシグネチャからデータベース自体を保護することができる。
【０１１４】
本発明では、様々な修正および代替構築を行うことができるが、所定の例示の実施形態について図面に示し、以上で詳細に説明してきた。しかし、本発明を開示の特定の形態に限定する意図はないが、その逆に、本発明の趣旨および範囲に含まれるすべての修正形態、代替構造、および等価形態を包含することを意図していることを理解されたい。
【図面の簡単な説明】
【０１１５】
【図１】本発明を組み込むことができるコンピュータシステムを一般的に表すブロック図である。
【図２】本発明の一態様に従って信号強度データを使用するように構成された、複数のネットワーク装置に対する無線接続を有する複数の基地局を含む、ネットワークを一般的に表すブロック図である。
【図３】本発明の一態様に従って信号強度データを使用するように構成された、複数のネットワーク装置に対する無線接続を有する複数の基地局を含む、別のネットワークを一般的に表すブロック図である。
【図４】本発明の一態様による、近接に関連した情報を用いて機能する例示的クライアントプログラムのユーザインターフェースを表すスクリーンショットの図である。
【図５】本発明の一態様による、近接に関連した情報を用いて機能する例示的クライアントプログラムのユーザインターフェースを表すスクリーンショットの図である。
【図６】本発明の一態様による、近接に関連した情報を用いて機能する例示的クライアントプログラムのユーザインターフェースを表すスクリーンショットの図である。
【図７】本発明の一態様による、近接に関連した情報を用いて機能する例示的クライアントプログラムのユーザインターフェースを表すスクリーンショットの図である。
【図８】本発明の一態様に従って、どのようにしてアクセスポイントをグラフに概念的にマッピングして長距離の近接データを提供することができるかを表す図である。
【図９】本発明の一態様による、近接に関連した情報を介して決定された近くのクライアントに対して電子メールのメッセージを送信するための例示的クライアントプログラムのユーザインターフェースを表すスクリーンショットの図である。
【図１０】本発明の一態様に従って確認されるこれらの近接を用いて、一緒にステッチされる２台のコンピュータを表す図である。
【図１】
2006010687.tif 000020
【図２】
2006010687.tif 000021
【図３】
2006010687.tif 000022
【図４】
2006010687.tif 000023
【図５】
2006010687.tif 000024
【図６】
2006010687.tif 000025
【図７】
2006010687.tif 000026
【図８】
2006010687.tif 000027
【図９】
2006010687.tif 000028
【図１０】
2006010687.tif 000029