(57)【特許請求の範囲】
【請求項１】
コンピュータ可読媒体に記録され、広い対象地域内のＷｉ−Ｆｉアクセスポイントに関する情報を含むＷｉ−Ｆｉアクセスポイント情報の参照データベースを備えるＷｉ−Ｆｉ測位システムにおいて、その位置を推定するためにクライアント装置によって使用される前記参照データベースからＷｉ−Ｆｉアクセスポイント情報の下位集合を選択し、Ｗｉ−Ｆｉ通信ロジックを備える少なくとも１つのモバイルクライアント装置に提供する方法であって、
前記Ｗｉ−Ｆｉ測位システムが、
前記下位集合を、選択された再分割に対する前記クライアント装置の近接性に基づき、広範な対象地域内にＷｉ−Ｆｉアクセスポイントに関する情報を含むように改変し、
地理的地域の組み合わせを提供し、
それぞれの地理的地域は広範囲の対象地域を再分割したものであり、それぞれの地理的地域は複数のWi-Fiアクセスポイントを有し、
前記モバイル装置と該当する地理的地域との近接性に基づき、前記地理的地域の組み合わせから、少なくとも１つの該当する地理的地域を含む集合を選択し、
参照データベースから少なくとも1つの該当する地理的地域内に含まれるWi-Fiアクセスポイントの下位集合を選択し、
前記少なくとも１つの該当する地理的地域内に所在する前記Ｗｉ−Ｆｉアクセスポイントの下位集合に関する前記参照データベースからの情報を、前記モバイルクライアント装置に提供し、
前記情報は、前記該当する地理的地域におけるWi-Fiアクセスポイントに対応するための識別子を含み、また前記対応するWi-Fiアクセスポイントの推定される地理的位置を含み、
前記モバイルクライアント装置が、前記該当する地理的地域における、少なくとも１つの前記Wi-Fiアクセスポイントの前記推定される地理的位置を使用してその場所をその後、推定し得ること、とを含む方法。
【請求項２】
事前スキームに従って前記対象地域を前記一定の地理的地域の集合に区分けすることをさらに含む、請求項１に記載の方法。
【請求項３】
前記事前区分けスキームが、前記対象地域を幾何学的に類似する多角形タイルの集合に分割する、請求項２に記載の方法。
【請求項４】
前記多角形タイルが、大きい方のタイル内で小さい方のタイルが入れ子になる階層を形成する、請求項３に記載の方法。
【請求項５】
単一の多角形タイル内に含まれ得る最大数のＷｉ−Ｆｉアクセスポイントを選択することと、前記最大数よりも多く含むタイルが存在しないように前記多角形タイルのサイズを選ぶことと、をさらに含む、請求項３に記載の方法。
【請求項６】
前記多角形タイルの各々について、前記タイル内のＷｉ−Ｆｉアクセスポイントに対応する参照データベースレコードの最新更新の時期を記憶することと、この情報を使用して、前記クライアント装置に記憶されている前記Ｗｉ−Ｆｉアクセスポイントデータが最新かどうかを判断することと、さらに含む、請求項３に記載の方法。
【請求項７】
前記クライアント装置の速度と進行方向とを推定することと、前記該当する少なくとも１つの地理的地域を選択する際に前記推定値を使用することと、をさらに含む、請求項１に記載の方法。
【請求項８】
前記クライアント装置が進行しているルートを予測することと、前記該当する少なくとも１つの地理的地域を選択する際にこの予測されたルートを使用することと、をさらに含む、請求項１に記載の方法。
【請求項９】
前記クライアント装置が、Ｗｉ−Ｆｉアクセスポイントデータを記憶するための限られたメモリ量を割り当てており、前記クライアント装置によって割り当てられた前記メモリ量に従って前記該当する少なくとも１つの地理的地域が選択される、請求項１に記載の方法。
【請求項１０】
前記クライアント装置と前記アクセス・ポイント・参照データベースとの間での情報の伝送が特定の最大速度を超えることがなく、前記該当する少なくとも１つの地理的地域が前記クライアント装置と前記参照データベースとの間でのこの最大通信速度に従って選択される、請求項１に記載の方法。
【請求項１１】
前記モバイルクライアント装置の位置の推定が前記モバイルクライアント装置によって実行される、請求項１に記載の方法。
【請求項１２】
前記モバイルクライアント装置が指定された地理的地域内に所在するＷｉ−Ｆｉアクセスポイントの初期集合に関する情報を備える、請求項１に記載の方法。
【請求項１３】
現在のモバイルクライアント装置の範囲内で、少なくとも１つのＷｉ−Ｆｉアクセスポイントからの信号と、少なくとも１つのＷｉ−Ｆｉアクセスポイントを識別する前記モバイルクライアント装置によって検出された信号の情報を抽出することを含み、前記少なくとも１つの該当する地理的地域の選択は少なくとも１つの識別されたＷｉ−Ｆｉアクセスポイントに基づくことをさらに含む、請求項１に記載の方法。
【請求項１４】
前記モバイルクライアント装置の位置を推定することを含み、前記少なくとも１つの該当する地理的地域の選択は少なくとも１つの識別されたＷｉ−Ｆｉアクセスポイントに基づくことをさらに含む、請求項１に記載の方法。
【請求項１５】
前記モバイルクライアント装置の位置を推定し、現在のモバイルクライアント装置の範囲内の、前記モバイルクライアント装置によって検出された少なくとも１つのＷｉ−Ｆｉアクセスポイントを識別することと、識別されたＷｉ−ＦｉアクセスポイントのＷｉ−Ｆｉアクセスポイント情報を取得することと、前記取得された情報を利用して前記モバイルクライアント装置の位置を推定することと、を含む、請求項１４に記載の方法。
【請求項１６】
広範な対象地域の少なくとも一部を再分割することにより、地理的地域の集合を決定することと、前記再分割はＷｉ−Ｆｉアクセスポイントのカバレージエリアとは別の基準に基づいていることをさらに含む、請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は、２００５年１０月２８日に出願された「Ｓｅｒｖｅｒ  ｆｏｒ  Ｕｐｄａｔｉｎｇ  Ｌｏｃａｔｉｏｎ  Ｂｅａｃｏｎ  Ｄａｔａｂａｓｅ（位置情報ビーコンデータベースを更新するためのサーバ）」と題する米国特許出願第１１／２６１，８９８号の一部継続出願であり、同出願に対する米国特許法第１２０条下での優先権を主張し、同出願は、本明細書において参照によりすべて援用されるものとする。
【０００２】
本発明は概して、Ｗｉ−Ｆｉ対応装置の位置を判断するための方法およびシステムに関し、より詳細には、Ｗｉ−Ｆｉ位置データを効率的に管理し、クライアントがかかる情報を使用してその場所を推定できるようにモバイルクライアント装置に配信するための方法およびシステムに関する。
【背景技術】
【０００３】
近年、モバイル演算装置の数は劇的に増加し、より高度なモバイルおよびワイヤレスサービスに対するニーズを生み出してきた。モバイル電子メール、携帯無線電話サービス、マルチプレーヤー型ゲーム、およびコール追跡は、モバイル装置に新たな用途が出現している様子を示す例である。加えて、ユーザは、自身の現在位置を利用するだけでなく、その位置情報を他者と共有するアプリケーションも要求し、探し始めている。親は自身の子どもの所在を把握したと考え、監督者は会社の配送車両の位置を追跡する必要があり、業務出張者は、処方薬を受け取れる最寄りの薬局を見つけようとする。これらの例はすべて、個人が自身の現在位置または他者の現在位置を知っておく必要がある。現在まで、私たちは皆、指示を求めるか、人々に電話をかけて所在を尋ねるか、従業員に居場所を時々確認してもらうことに頼ってきた。
【０００４】
位置ベースのサービスは、装置が現在の地理的場所を計算できる能力を活用し、その場所をユーザまたはサービスに報告する新興クラスのモバイルアプリケーションを表す。これらのサービスの一部の例は、地域の気象情報、最新の交通事情、運転指示、子供追尾、仲間ファインダ、および都市案内サービスを含む。これらの新しい位置感受装置はすべて、同じ一般概念を使用する各種技術に依存しており、具体的には、これらの装置は、既知の基準点を端緒とする無線信号を使用して、これらの基準点に対するユーザの場所を数学的に計算することができる。これらの技術はそれぞれ、各技術が使用する特定の無線技術および測位アルゴリズムに準じた長所と短所を有する。
【０００５】
米国政府によって運営されている全地球測位システム（ＧＰＳ）は、基準点として何十台もの軌道周回衛星を活用している。これらの衛星は、ＧＰＳレシーバによって捕捉される無線信号を同報する。レシーバは、受信信号がそのレシーバに達するまでに要した時間を測定する。３つ以上のＧＰＳ衛星から信号を受け取った後、レシーバは、地球上のその場所を三角測量することができる。システムが効果的に機能するためには、無線信号が、干渉をほとんどまたは全く受けずにレシーバに到達しなくてはならない。レシーバが３つ以上の衛星に対する明瞭な照準線を必要とするため、天気、建物または構造物、および木の葉がこの処理に干渉することがある。干渉は、多重経路と呼ばれる現象によっても発生し得る。衛星からの無線信号は、物理的な構造物に当たってはね返ることにより、同じ衛星からの複数の信号が異なる時期にレシーバに到達する。レシーバの計算は信号がレシーバに到達するまでに要した時間に基づくため、多重経路信号がレシーバを混乱させ、相当の誤差を招く。
【０００６】
セルタワー三角測量は、ワイヤレスおよびセルラー通信業者がユーザまたは装置の位置を判断するために使用している別の方法である。ワイヤレスネットワークおよびハンドヘルド装置は、互いに通信することによって、ネットワークが装置の位置を計算する目的で使用できる信号情報を共有する。これらの信号は直接的な見通し線を必要とせず、建物を良好に貫通できるため、当初はこの手法が、ＧＰＳよりも優れたモデルとみなされた。残念ながらこれらの手法は、セルラー・タワー・ハードウェアの異質性に加え、多重経路信号の問題やセルラータワーの測位における均一性の欠如もあり、最適ではないことが判明した。
【０００７】
アシステッドＧＰＳは、ＧＰＳ技術とセルラータワー技術との両方を組み合わせて、モバイルユーザにとって精度と信頼性がより高い位置計算を実現する新しいモデルである。このモデルでは、ワイヤレスネットワークが、ＧＰＳ衛星のクロックオフセットと、被接続セルタワーの位置に基づくユーザの全般的な位置とに関する情報を伝送することにより、ＧＰＳによる信号受信の改善を試みる。これらの技術は、屋内で経験される弱い信号をＧＰＳレシーバが処理するのを支援し、より高速な「第１の測定値」をさらに速やかに提供する最寄りの衛星の「位置」をレシーバが取得するのに役立つ。ただし、応答時間の遅さと、都心部では１００メートル超という精度の悪さとが、これらのシステムにとっての障害であった。
【０００８】
最近では、より新しい代替モデルが開発され、ＧＰＳ、Ａ−ＧＰＳおよびセルタワー測位に関する既知の問題への対処が図られてきた。その１つであるＴＶ−ＧＰＳと呼ばれるモデルは、テレビ放送塔からの信号を利用する（Ｍｕｔｈｕｋｒｉｓｈｎａｎ，Ｋらによる「Ｔｏｗａｒｄｓ  Ｓｍａｒｔ  Ｓｕｒｒｏｕｎｄｉｎｇｓ：Ｅｎａｂｌｉｎｇ  Ｔｅｃｈｎｉｑｕｅｓ  ａｎｄ  Ｔｅｃｈｎｏｌｏｇｉｅｓ  ｆｏｒ  Ｌｏｃａｌｉｚａｔｉｏｎ，ｆｒｏｍ  Ｌｏｃａｔｉｏｎ−  ａｎｄ  Ｃｏｎｔｅｘｔ−Ａｗａｒｅｎｅｓｓ（洗練された環境に向けて：位置およびコンテキスト認識による測位技術の実現）」スプリンガー・ベルリン、ハイデルベルク、２００５年５月などを参照）。この概念は、大部分の大都市圏が３つ以上のテレビ放送塔を有するという事実に依存する。専用のハードウェアチップが、これらの各種タワーからテレビ信号を受信し、これらのタワーの既知の位置を基準点として使用する。このモデルが直面する課題は、新しいハードウェアレシーバのコスト、および非常に小さな基準点の集合を使用するという制限である。例えば、ユーザがタワー周辺部から離れた場所にいると、このシステムは妥当な精度をなかなか提供できない。代表的な例は、海岸線沿いにいるユーザである。海にはテレビ塔がないため、基準点間の参照対称を提供する方法がなく、ユーザよりも大きく内陸側で位置が計算されることになる。
【０００９】
マイクロソフト社およびインテル社が、Ｗｉ−Ｆｉスキャンデータを公共コミュニティのウェブサイトに提出しているアマチュアスキャナ（「ｗａｒｄｒｉｖｅｒｓ」と呼ばれる）から取得したアクセスポイント位置のデータベースを使用したＷｉ−Ｆｉ位置情報システムを（ＰｌａｃｅＬａｂと呼ばれる研究グループを通じて、開発した（ＬａＭａｒｃａ，Ａらによる「Ｐｌａｃｅ  Ｌａｂ：Ｄｅｖｉｃｅ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｕｓｉｎｇ  Ｒａｄｉｏ  Ｂｅａｃｏｎｓ  ｉｎ  ｔｈｅ  Ｗｉｌｄ，ｉｎ  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  Ｔｈｉｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｐｅｒｖａｓｉｖｅ  Ｃｏｍｐｕｔｉｎｇ（ＰｌａｃｅＬａｂ：荒野で無線機ビーコンを使用した装置測位、パベイシブ・コンピューティングに関する第３回国際会議議事録）」２００５年５月を参照）。具体例としては、ＷｉＧＬＥ、Ｗｉ−ＦｉＭａｐｓ．ｃｏｍ、Ｎｅｔｓｔｕｍｂｌｅｒ．ｃｏｍ、およびＮｏｄｅＤＢを含む。マイクロソフトおよびインテルの両社は、ｗａｒｄｒｉｖｅｒｓによって提出されたＷｉ−Ｆｉ情報をクライアント装置の位置を推定する際の規準として使用する独自のクライアントソフトウェアを開発した。
【００１０】
個人が自発的にデータを提供しているため、これらのシステムは、性能および信頼性に関するいくつかの課題を抱えている。第一に、データベース全体のデータに同時性がない。即ち、データの一部は新しく、他の部分は３〜４年経過している。時間の経過とともにアクセスポイントは移動したり、オフラインになったりすることがあるため、Ｗｉ−Ｆｉ位置データの年数は重要である。第二に、データは、さまざまなハードウェアおよびソフトウェア構成を使用して取得されている。すべての８０２．１１無線機およびアンテナは、信号受信特性が異なり、信号の強度の表示に影響する。スキャンフトウェアの各実施はさまざまな方法でＷｉ−Ｆｉ信号をスキャンしており、その時間間隔もさまざまである。そのため、データベースのアクセスポイント情報には、参照に関する共通の基準が欠けている。第三に、ユーザ提供のデータには、幹線道路バイアスがかかっている。指定されたスキャンルートをたどっていない個人によってデータが自己申告されているため、交通量の多い地域を中心にデータが集まる傾向がある。幹線道路バイアスにより、位置推定値は幹線道路の方へ「引き寄せ」られ、結果的に相当な精度誤差が生まれる。第四に、これらのデータベースは、８０２．１１ハードウェアによって取得された生のスキャンデータではなく、スキャンされたアクセスポイントの計算済み位置を含む。これらのデータベースの各々は、アクセスポイント位置を計算する方法が異なり、各々が初歩的な加重平均式を用いている。そのため、データベースにおける一部のアクセスポイントの位置推定値は極めて不正確である。
【００１１】
屋内での測位を対象とした商用のＷｉ−Ｆｉ位置情報システムはこれまでいくつか提供されてきた（Ｍｕｔｈｕｋｒｉｓｈｎａｎ，Ｋらによる２００５年１月発行の「Ｔｏｗａｒｄｓ  Ｓｍａｒｔ  Ｓｕｒｒｏｕｎｄｉｎｇｓ：Ｅｎａｂｌｉｎｇ  Ｔｅｃｈｎｉｑｕｅｓ  ａｎｄ  Ｔｅｃｈｎｏｌｏｇｉｅｓ  ｆｏｒ  Ｌｏｃａｌｉｚａｔｉｏｎ，Ｌｅｃｔｕｒｅ  Ｎｏｔｅｓ  ｉｎ  Ｃｏｍｐｕｔｅｒ  Ｓｃｉｅｎｃｅ（洗練された環境に向けて：測位技術の実現）」、コンピュータサイエンスの講義メモ第３４７９号の３５０〜３６２ページ、Ｈａｚａｓ，Ｍらによる２００４年２月発行の「Ｌｏｃａｔｉｏｎ−Ａｗａｒｅ  Ｃｏｍｐｕｔｉｎｇ  Ｃｏｍｅｓ  ｏｆ  Ａｇｅ（位置認識コンピューティングの成熟）」ＩＥＥＥコンピュータ第３７号（２）の９５〜９７ページ等を参照。これらは共に参照によって本明細書に援用される）。これらのシステムは、企業の敷地や病院施設、出荷場のような制御された環境内で追跡している資産と人とを対象にするような設計になっている。その代表例は、心停止の患者が出たときに病院スタッフが緊急用カートを見つけることで時間を浪費することがないよう、病院内における緊急用カートの正確な位置を監視することができるシステムを有することである。これらの使用事例における精度要件は極めて高く、１〜３メートルの精度が求められるのが通常である。これらのシステムは、敷地内の全平方フィートに対する詳細な現場調査の実施など、各種技術を用いてその精度を微調整し、無線信号伝播を測定する。また、アクセスポイントおよびクライアント無線機が、Ａ−ＧＰＳの動作と同様の方法で同期情報を交換できるように、常時ネットワーク接続が必要である。これらのシステムは、これらの屋内使用事例に関しては信頼性を高めてきているものの、広域展開になると効果がない。街全体で必要とされるそのような詳細な現場調査を実行することは不可能であり、大都市圏全域に８０２．１１アクセスポイントを有する常時通信経路に、これらのシステムによって必要とされる程度まで依存する方法がない。最も重要なことは、屋外の電波伝播は、屋内の電波伝播とは根本的に異なり、これら屋内の測位アルゴリズムが広域状況だとほぼ無用になってしまうということである。
【００１２】
８０２．１１信号の存在を記録し、この情報をＧＰＳ位置測定値と関連付ける８０２．１１位置スキャンクライアントは多数出回っている。これらのソフトウェアアプリケーションは、手動で操作され、測定値のログファイルを生成する。かかるアプリケーションの例としては、Ｎｅｔｓｔｕｍｂｅｒ、Ｋｉｓｍｅｔ、およびＷｉ−ＦｉＦｏＦｕｍがある。一部の愛好者は、これらのアプリケーションを使用して、それらが検出した８０２．１１アクセスポイント信号の位置をマークし、互いに共有する。このデータの管理およびその情報の共有は、アドホックベースで行われる。これらのアプリケーションは、アクセスポイントの物理的位置に関する計算は一切実行せず、アクセスポイントの検出元位置を単に記録するだけである。
【００１３】
これらのシステムのいずれかによって収集されたデータを使用するには、収集された生データ、またはアクセスポイントごとに計算された位置のいずれかが必要である。これらのデータを使用する必要がある装置は、何らかの方法でこのデータにアクセスしなければならない。このアクセスは、（ｉ）モバイル装置とネットワーク接続されたサーバとの間でのネットワークリクエスト−レスポンスのやりとりか、（ｉｉ）Ｗｉ−Ｆｉアクセス・ポイント・データベースをモバイル装置自体に記憶するという二つの方法のどちらかによって達成されるのが一般的である。
【００１４】
モバイル装置上で動作するソフトウェアは、かかる装置の限られた物理的能力と、モバイルリソースおよびサービスの費用とによる制約を受けることが多い。これらの制約は、ハードウェア（メモリ容量、電力の貯蔵および消費、ＣＰＵ速度、ネットワークの容量および可用性）ならびにネットワークアクセスおよび帯域幅消費に関する制約との両方を含む。これらの制限は、利用可能なリソースを利用することを意図したいかなるソリューションにも負担となり、特に、Ｗｉ−Ｆｉ位置データを効率的に管理および配信するに当たっての最適化に関する課題を生む。
【００１５】
この最適化という課題は、Ｗｉ−Ｆｉ位置情報データベース自体に頻繁な更新が必要であるという事実によって増幅される。これは、移動または退役することの多いＷｉ−Ｆｉアクセスポイントの一過性の性質がもたらす結果である。そのため、データベースを定期的に更新して、比較的新しいＷｉ−Ｆｉ位置情報を確実に含むようにしなければならない。
【先行技術文献】
【非特許文献】
【００１６】
【非特許文献１】Ｍｕｔｈｕｋｒｉｓｈｎａｎ，Ｋら、「Ｔｏｗａｒｄｓ  Ｓｍａｒｔ  Ｓｕｒｒｏｕｎｄｉｎｇｓ：Ｅｎａｂｌｉｎｇ  Ｔｅｃｈｎｉｑｕｅｓ  ａｎｄ  Ｔｅｃｈｎｏｌｏｇｉｅｓ  ｆｏｒ  Ｌｏｃａｌｉｚａｔｉｏｎ，Ｌｅｃｔｕｒｅ  Ｎｏｔｅｓ  ｉｎ  Ｃｏｍｐｕｔｅｒ  Ｓｃｉｅｎｃｅ」、コンピュータサイエンスの講義メモ第３４７９号、３５０〜３６２ページ、２００５年１月発行
【非特許文献２】Ｈａｚａｓ，Ｍら、「Ｌｏｃａｔｉｏｎ−Ａｗａｒｅ  Ｃｏｍｐｕｔｉｎｇ  Ｃｏｍｅｓ  ｏｆ  Ａｇｅ」ＩＥＥＥコンピュータ第３７号（２）、９５〜９７ページ、２００４年２月発行
【発明の概要】
【発明が解決しようとする課題】
【００１７】
本発明は、クライアント装置がリソースの効率的な利用によってその場所を推定できるように、該当するＷｉ−Ｆｉ位置情報の下位集合を選択し、モバイルクライアント装置に提供するための方法およびシステムを提供する。
【課題を解決するための手段】
【００１８】
本発明の一実施態様の下で、該当するＷｉ−Ｆｉ位置情報の下位集合を選択し、提供する方法は、クライアント装置の範囲内にあるＷｉ−Ｆｉアクセスポイントをスキャンすることと、広い対象地域を網羅するＷｉ−Ｆｉデータベースを使用してこれらのアクセスポイントに関する情報を取得することと、この情報を使用してモバイルクライアント装置の場所を推定することと、クライアント装置の推定位置付近の限られた地域を選択することと、この限られた地域内にあるＷｉ−Ｆｉアクセスポイントに関する情報をクライアントに提供することと、を含む。
【００１９】
本発明の別の態様の下では、データベースの対象地域が事前スキームに従って一定の地理的区分の集合に区分けされており、この限られた地域はこれらの区分の１つ以上から成る。
【００２０】
本発明の別の態様の下では、データベースの対象地域が、幾何学的に類似する多角形のタイルの集合に区分けされている。
【００２１】
本発明の別の態様の下では、多角形タイルが、大きい方のタイル内で小さい方のタイルが入れ子になる階層を形成する。
【００２２】
本発明の別の態様の下では、単一の多角形タイル内に含まれ得る最大数のＷｉ−Ｆｉアクセスポイントが選択され、多角形タイルのサイズはこの最大数に従って判断される。
【００２３】
本発明の別の態様の下では、各多角形タイルが、そのタイル内にあるアクセスポイントの最新の更新を反映するタイムスタンプと関連付けられており、このタイムスタンプを使用して、クライアント装置にキャッシュされているデータが最新であるかどうかが判断される。
【００２４】
本発明の別の態様の下では、クライアント装置の推定速度および進行方向が、限られた地域を判断する際に使用される。
【００２５】
本発明の別の態様の下では、クライアント装置の予測ルートが、限られた地域を判断する際に使用される。
【００２６】
本発明の別の態様の下では、クライアント装置の利用可能メモリの量が、限られた地域を判断する際に使用される。
【００２７】
本発明の別の態様の下では、クライアント装置とデータベースとの間の通信速度が、限られた地域を判断する際に使用される。
【００２８】
本発明の別の態様の下では、指定された地理的地域に対応する一部のＷｉ−Ｆｉデータによってクライアント装置が初期化され、このデータはＷｉ−Ｆｉデータベースと通信することによって更新される。
【００２９】
本発明の各種実施形態を完全に理解するために、添付の図面と関連付けて以下の説明に言及する。
【図面の簡単な説明】
【００３０】
【図１】Ｗｉ−Ｆｉ測位システムの特定の実施形態を表す。
【図２】本発明の特定の実施形態にかかるスキャン装置を含むスキャン車両を表す。
【図３】データ集合における幹線道路バイアスという課題を示すためのスキャン状況の例を表す。
【図４】本発明の特定の実施形態にかかるスキャン車両用のプログラム準拠ルートを使用した例を表す。
【図５】ユーザ装置を見つける際にＷｉ−Ｆｉアクセスポイントの参照対称が欠けているという課題を例示するための例示的状況を表す。
【図６】ユーザ装置見つける際のＷｉ−Ｆｉアクセスポイントの参照対称を示すための例示的状況を表す。
【図７】本発明の特定の実施形態にかかるスキャン装置を含むスキャン車両を表す。
【図８】本発明の特定の実施形態にかかるＷｉ−Ｆｉアクセスポイントの中央データベースを含む中央ネットワークサーバを表す。
【図９】本発明の特定の実施形態にかかる測位ソフトウェアの例示的なアーキテクチャを表す。
【図１０】本発明の特定の実施形態にかかるスキャンクライアントの例示的な構造を表す。
【図１１】ランダム・スキャン・モデルの効果を、チャイニーズポストマン経路探索アルゴリズムモデルを使用した効果と比較し、対比する。
【図１２】Ｗｉ−Ｆｉ測位システムの特定の実施形態を表す。
【図１３】本発明の特定の実施形態にかかるＷｉ−Ｆｉ測位システムのクライアントコンポーネントを表す。
【図１４】本発明の特定の実施形態にかかるＷｉ−Ｆｉ測位システムのサーバコンポーネントを表す。
【図１５】本発明の特定の実施形態にかかる、クライアントアプリケーションからの位置情報リクエストに応答するＷｉ−Ｆｉ測位システムのクライアントコンポーネントの動作を表す。
【図１６】本発明の特定の実施形態にかかる、クライアントコンポーネントからの位置情報リクエストに応答するＷｉ−Ｆｉ測位システムのサーバコンポーネントの動作を表す。
【図１７】本発明の特定の実施形態にかかる、タイル識別子のリストの受信時におけるＷｉ−Ｆｉ測位システムのクライアントコンポーネントの動作を表す。
【図１８】本発明の特定の実施形態にかかる、クライアントコンポーネントからのタイルリクエストに応答するＷｉ−Ｆｉ測位システムのサーバコンポーネントの動作を表す。
【図１９】本発明の特定の実施形態にかかる、Ｗｉ−Ｆｉ測位システムのサーバコンポーネントが適切なタイルサイズを判断するためにＷｉ−Ｆｉアクセスポイントの密度を使用する方法を表す。
【図２０】地球の表面を多角形タイルの階層に区分けするためのスキームと、タイルの各々に対応するグローバルな一意の識別子を生成するためのスキームとを表す。
【図２１】本発明の特定の実施形態にかかる、通常作動時におけるＷｉ−Ｆｉ測位システムの各種コンポーネント間の通信を表す。
【図２２】本発明の特定の実施形態にかかる、クライアントの位置情報リクエストに対してＷｉ−Ｆｉ測位システムのサーバコンポーネントによって推奨されるタイルの一部を表す。
【発明を実施するための形態】
【００３１】
はじめに
本発明の好適な実施形態は、モバイル装置の地理的位置を推定する目的で使用されるＷｉ−Ｆｉ測位システム（ＷＰＳ）を提供する。ＷＰＳは、クライアントの位置を推定する際に基準点として使用される既知のアクセスポイント（ＡＰ）位置のデータベースを含む。好適な実施形態は、クライアント装置にあるＷｉ−Ｆｉアクセスポイントデータのキャッシュを維持する。この手法の下、サーバは、クライアント装置の概ね付近にあるＷｉ−Ｆｉアクセスポイントを含むＷｉ−Ｆｉアクセス・ポイント・データベースの下位集合をクライアントに送信する。クライアントはこの情報をそのローカル・メモリ・キャッシュに記憶し、そこで以降の位置情報リクエストを満たす目的で使用することができる。クライアント装置は、自身を見つけるために必要な情報をキャッシュに含んでいないこと、またはキャッシュにあるデータが最新でないことを検出した場合、あるいは、クライアントが、さらに多くのデータが近い将来必要になると予想した場合には、アクセス・ポイント・データベースから必要なデータをダウンロードすることによってキャッシュを補充する。特定の実施形態において、このプロセスは、アクセスポイントを一定の地理的地域に対応する「タイル」にグループ化することによって合理化される。
【００３２】
図１は、ＷＰＳの好適な実施形態の一部を表す。測位システムは、演算装置［１０１］にある測位ソフトウェア［１０３］を含む。特定のカバレージエリア全体に、制御／共通チャンネル放送信号を使用して情報を同報する一定のワイヤレスアクセスポイント［１０２］がある。クライアント装置は、同報信号を監視するか、探査リクエストによってその伝送をリクエストする。各アクセスポイントは、ＭＡＣアドレスと呼ばれる固有のハードウェア識別子を含む。クライアント測位ソフトウェアは、範囲内にある８０２．１１アクセスポイントから信号ビーコンを受信し、その信号ビーコンの特徴を使用して、演算装置の地理的位置を計算する。それらの特徴は、ＭＡＣアドレスと呼ばれる、８０２．１１アクセスポイントの一意の識別子と、クライアント装置に到達する信号の強度とを含む。クライアントソフトウェアは、観測された８０２．１１アクセスポイントを、アクセスポイントの参照データベース［１０４］に含まれるアクセスポイントと比較する。このデータベースは、装置にも存在する場合もあれば、存在しない場合もある。参照データベースは、収集システムが回収したすべてのアクセスポイントに関する計算された地理的位置または電力プロファイルを含む。電力プロファイルは、各種位置情報からの信号の力を表す測定値の集合である。これらの既知の位置を使用して、クライアントソフトウェアは、ユーザ装置［１０１］の相対的な位置を計算し、緯度および経度測定値という形でその地理座標を判断する。それらの測定値はその後、友人ファインダ、地域情報検索ウェブサイト、車両管理システム、Ｅ９１１サービスなどの位置ベースのアプリケーションに供給される。
【００３３】
この測位ソフトウェアについては、測位ソフトウェア１０３の例示的なコンポーネントを表す図９を参照してさらに詳しく記載する。典型的には、位置測定値を利用して何らかの値（走行方向など）をエンドユーザ）に提供するアプリケーションまたはサービス［９０１］が存在する。この位置検出アプリケーションは、その特定の瞬間における装置の位置を求める測位ソフトウェアのリクエストを出す。そのリクエストがスキャナ［９０２］を開始し、それによってこの装置で８０２．１１無線機［９０３］に対する「スキャンリクエスト」が出される。８０２．１１無線機は、範囲内にあるすべての８０２．１１アクセスポイント［９０４］に探査リクエストを送信する。８０２．１１プロトコルに従って、探査リクエストを受信したそれらのアクセスポイントは、アクセスポイントに関する情報を含む同報ビーコンを送信する。そのビーコンは、装置のＭＡＣアドレス、ネットワーク名、その装置がサポートするプロトコルの正確なバージョン、およびその装置のセキュリティ構成を、装置に接続する方法に関する情報と併せて含む。８０２．１１無線機は、応答した各アクセスポイントからこの情報を収集し、各アクセスポイントの信号強度を計算して、それをスキャナに返送する。
【００３４】
スキャナは、観測された各アクセスポイントのＭＡＣアドレスをアクセスポイント参照データベース［９０５］と照合するロケータ［９０６］にこのアクセスポイントの配列を渡す。このデータベースは、装置に置かれる場合もあれば、ネットワーク接続を経由した離れた場所に置かれる場合もある。アクセスポイント参照データベースは、システムにとって既知の観測されたアクセスポイントごとに位置データを返す。ロケータは、各アクセスポイントから返された信号の特徴とともに、この位置情報の集合を不良データフィルタ［９０７］に渡す。このフィルタは、各アクセスポイントに対して多数の比較判定テストを実施して、これらのアクセスポイントのいずれかが、アクセス・ポイント・データベースに追加された後に移動したかどうかを判断する。不良データレコードを取り除いた後、フィルタは、残りのアクセスポイントを位置計算コンポーネント［９０８］に送信する。位置計算コンポーネントは、アクセス・ポイント・データベースの参照データとスキャナの信号強度測定値とを使用して、その時点における装置の位置を演算する。その位置データは、ロケータに返送される前に、過去の一連の測位値を平均化する補整エンジン［９０９］によって処理され、前回の計算における異常測定値が削除される。調整された測位データはその後、ロケータに返送される。
【００３５】
ロケータによって生成される計算された測位値は、アプリケーション・プログラミング・インタフェース（ＡＰＩ）を含むアプリケーションインタフェース［９１０］を通じて、あるいは仮想ＧＰＳ機能［９１１］によってこれらの位置ベースのアプリケーション［９０１］に伝達される。ＧＰＳレシーバは、専有メッセージを使用するか、全米船舶用電子機器協会（ＮＭＥＡ）によって開発された測位標準などを使用して、測位値を伝達する。機器のＣＯＭポートなどの標準インタフェースを使用して装置に接続することにより、メッセージが取得される。本発明の特定の実施形態は、いかなるＧＰＳ互換アプリケーションであっても、通信モデルまたはメッセージを変換することなくこの新しい測位システムと通信できる仮想ＧＰＳ機能を含む。
【００３６】
位置計算値は、ノイズの多いデータフローを信頼できる安定した測位値に変えるための一連の測位アルゴリズムを使用して生成される。クライアントソフトウェアは、観測されたアクセスポイントのリストを、計算された信号強度と併せて比較してユーザの位置に重みを付けることにより、装置ユーザの正確な位置を判断する。単純な信号強度加重平均モデル、最近隣モデルと三角測量技術との併用、および装置速度に基づく適応補整などのさまざまな技術が使用されている。状況が異なれば、より良好に機能するアルゴリズムも異なるため、それらを複合的に展開して併用することにより、最も正確な最終測定値が生成される傾向がある。本発明の好適な実施形態は、多数の測位アルゴリズムを使用し得る。どのアルゴリズムを使用するべきかという判断は、観測されたアクセスポイントの数と、そのアルゴリズムを使用しているユーザ事例アプリケーションとによって促される。従来のシステムが、決して移動することのない既知の基準点に依存しているため、フィルタリングモデルは従来の測位システムとは異なる。好適な実施形態のモデルにおいては、アクセスポイントの位置が一定であるとは想定されない。アクセスポイントは、測位システムによって所有されている訳ではないため、移動したり、オフラインになったりする可能性がある。フィルタリング技術は、一部のアクセスポイントが同じ場所に存在しない可能性があり、不良位置計算が生じる可能性があると想定する。したがってフィルタリングアルゴリズムは、位置が記録された後に移動したアクセスポイントを隔離しようと試みる。フィルタは動的であり、その時点に観測されたアクセスポイントの数に基づいて変化する。補整アルゴリズムは、単純な位置平均化と、カルマンフィルタを含む高度なベイズ論理とを含む。速度アルゴリズムは、各アクセスポイントの信号強度観測値からドップラー効果を推定することにより、装置の速度を計算する。
【００３７】
参照データベースを構築するためのスキャンデータの収集
図２は、各種アクセスポイントの位置情報を収集する目的で使用されるコンポーネントを表す。測位システム用の参照データベース（図１の１０４）を構築するために、大きな車両群［２０１］が配備されている。これらの車両２０１は、最高品質のデータを生成する最適な方法でデータを収集するために、プログラム準拠ルートをたどって対象スキャン領域を巡回する。対象スキャン領域は、典型的には大都市圏を表し、半径１５〜２０マイル圏内にある走行可能なすべての通りを含む。これらの車両は、このカバレージエリアを往来しながら８０２．１１信号の位置と特徴とを記録するように設計されたスキャン装置［２０２］を備えている。スキャン装置は、ＧＰＳ衛星［２０４］からの信号を使用して、スキャン車両の位置を毎秒追跡する。このスキャン装置は、範囲内にあるいずれの８０２．１１アクセスポイントの存在も追跡し、そのアクセスポイント信号の無線特性をスキャン車両のＧＰＳ位置と併せて記録する。収集されるデータの品質は、スキャン車両が使用するスキャン方法に大きく影響される。各モデルは、独自の利点および制限を有する。ランダムモデルと呼ばれる一つの手法は、車両内にスキャン装置を配置し、スキャン装置が事業または個人用途で日々の活動を行っている。これらの車両は、配達トラック、タクシー、移動中の営業社員、または単なる愛好家などであり得る。このコンセプトは、自身のランダムな方法で、時間の経過により、信頼できる参照データベースを構築するのに十分な数の通りを網羅するだろうというものである。実際このモデルは、データを収集する単純な手段を提供するが、結果的に得られたデータの質は「幹線道路バイアス」の問題による悪影響を受ける。図３は、ランダムモデルの課題を記載している。スキャン車両は、データの収集以外（パッケージの配達、人々の通勤など）の課題を解決するために設計されたルートを往来するとき、目的ルートをたどる傾向がある。目的ルートは、ドライバがＡからＢに到達する必要があり、そこに到達するための最速ルートを探す場合のルートである。そのためドライバは、高速道路か大通りかに関係なく、最寄りの幹線道路への最短ルートを探す。その結果、時間の経過とともに、ランダム走行は蓄積されるカバレージによって網羅する範囲を広げるものの、狭い道路や周辺道路を犠牲にし、主要道路、つまり幹線道路へのバイアスを示す。図３において、幹線道路［３０４］および［３０５］はスキャン車両によって何度も往来されるため、それらの通りについては十分な量のスキャンデータが得られる。しかし、通り［３０６］および［３０７］は、目的地が少なく、幹線道路がより最適な移動路であることが多いため、網羅されることがほとんどない。その結果、アクセスポイント［３０８］および［３０９］はスキャン車両によってまったくスキャンされないため、測位システムは、通り［３０６］および［３０７］を移動しているユーザをなかなか特定できない。その結果、システムがスキャンデータからアクセスポイントの位置を計算しようとする際に、バイアスのかかった入力データの集合に限られてしまう。図１１は、得られたデータの質の違いを示す。スキャン車両は、アクセスポイント［１１０１］付近を走行したとき、測定値とその位置とを継続的に記録する。その後測位システムは、観測されたデータ［１１０３］の集合全体を使用して、アクセスポイント［１１０２］の位置を計算しなければならない。ランダム・スキャン・モデルでは、データの集合が、アクセスポイントを通過する１本の主要道路に制限される。そのため、システムは、アクセスポイント自体の近くではなく、その道路の近くでアクセスポイントの位置を計算せざるを得ない。
【００３８】
もう一つの手法は、得られたデータの集合における幹線道路バイアスを避けることで、エンドユーザにとってより信頼できる測位システムとなるように、対象領域におけるすべての通りを含む経路探索アルゴリズムを開発することである。図４は、対象領域におけるすべての通りを最も効率よく網羅する走行ルートを計算するために、チャイニーズポストマンと呼ばれる最適化された経路探索アルゴリズムを記載している。チャイニーズポストマン経路探索アルゴリズムは、郵政機関、公共施設、および国勢調査機関によって使用される公知の技術であり、オイラーサイクル課題の異型である。オイラーサイクルは、各端を少なくとも１回は訪れるグラフの最短周回方法を求める課題である。（Ｋｗａｎ，Ｍ．Ｋ．著「Ｇｒａｐｈｉｃ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｕｓｉｎｇ  Ｏｄｄ  ｏｒ  Ｅｖｅｎ  Ｐｏｉｎｔｓ（奇数または偶数の点を使用したグラフィックプログラミング）」中国数学１、２７３〜２７７、１９６２年等を参照。）本発明の好ましい実施形態は、対象地域のカバレージを特定し、次にチャイニーズポストマン経路探索アルゴリズムを使用して車両ルートを計画するための方法論を含む。スキャン車両［４０１］は、いかなる通りに対するバイアスも示しておらず、観測可能なすべてのアクセスポイントがシステムによって確実に検出およびマッピングされるアルゴリズムに従って最適なルートをたどる。例えば、アクセスポイント［４０８］および［４０９］は、チャイニーズ・ポストマン・モデルを使用してアクセス・ポイント・データベースに加えられるが、ランダムモデルを使用していたら見逃されたであろう。再び図１１を参照すると、チャイニーズ・ポストマン・スキャン・モデルでは、車両がすべての道路を走行して、できるだけ完全なアクセスポイント［１１０４］用スキャンレコード［１１０６］の集合を取得する。その結果、アクセス１１０２のスキャンデータよりもアクセスポイント１１０４のスキャンデータの方がより均一に分散するため、システムは、アクセスポイントの位置［１１０５］を小さな誤差で計算することができる。チャイニーズ・ポストマン・スキャン・モデルは、対象領域全体で、より多くのアクセスポイントを均一に集めるだけでなく、結果的に集まったデータから、アクセスポイント位置をより正確に計算することができる。
【００３９】
より高精度のＡＰ位置
スキャンデータは、いったん収集される（または部分的に収集される）と、処理される中央アクセス・ポイント・データベース（本願で後述）へと逆にアップロードされる。アクセスポイントごとの生観測データは、アクセスポイントの実際の物理的位置を逆三角測量するか、そのアクセスポイントの電波伝播を表す電力プロファイルを作成する目的で使用される。特定のアクセスポイントの位置を最も正確に計算したり、最も正確な電力プロファイルを作成したりするために、スキャン車両は、できるだけ多くの異なる角度からアクセスポイントを観測しなければならない。ランダムモデル［図３］では、多数のアクセスポイントが、わずか１本の通りから観測されているため、システムは、通り［３０３］に基づいてそれらの位置情報を直接計算せざるを得ない。これらの位置は、方向バイアスを呈しており、これらのアクセスポイント［３０２］の実際の位置とは大きく異なる。測位システムの基準点位置が不正確であれば、その測位システムに誤差がもたらされる。そのため、この測位システムでは、アクセスポイント位置の精度が、エンドユーザの測位精度の精度において大きな役割を果たす。スキャン車両は、チャイニーズ・ポストマン・モデル［図４］を使用して、アクセスポイントを収容している建物のできるだけ多くの側から特定のアクセスポイントを検出する。この付加データが、アクセスポイント［４０３］の位置を計算する目的で使用される逆三角測量式の結果を大きく改善する。アクセスポイント位置情報の質については、図１１にさらに詳しく記載されている。
【００４０】
このシステムから収集されるスキャンデータは、その固有の環境におけるアクセスポイントごとの信号伝播パターンの代替表示として信頼性が高い。すべての無線装置および関連する周囲の環境により、一意の信号指紋が生成される。この信号指紋は、信号の到達距離と、信号指紋内のさまざまな位置における信号の強度とを示す。この指紋データは、計算されたアクセスポイント位置と併用され、測位システムの高い精度を促す。この指紋は、各位置の信号強度が信号電力として測定されワットで示されるため、「電力プロファイル」とも呼ばれる。測位システムは、指紋データを解釈して、８０２．１１アクセスポイント無線機の特定の信号強度がそのアクセスポイントからの特定の距離と関連付けられていることを示すことができる。信号指紋化技術は、屋内Ｗｉ−Ｆｉ測位で使用されるが、指紋データの収集に関連する困難を理由に、広い屋外環境で再現するのは困難であることが判明している。複数のアクセスポイントの指紋または電力プロファイルが重なると、測位システムは、観測された信号強度が複合指紋と一致する１つの位置を見つけるだけで、装置の位置を判断することができる。本発明の好適な実施形態は、何百万ものアクセスポイントを有する大規模なカバレージエリア全体でこの指紋データを取得して、指紋ベースの測位アルゴリズムを利用するための信頼できるシステムを提供する。
【００４１】
参照対称
測位システムは、典型的には、追跡されている装置の周辺に３つ以上の基準点を有することによって機能する。これらの測位システムは、これらの基準点からの無線信号をさまざまな方法で使用して、装置の現在位置を計算する。基準点の数が不十分な場合、または基準点がユーザの周辺でバランスや対称性を欠いている場合に、大きな誤差が発生する。図５に示すように、ランダムモデルの場合に発生する幹線道路バイアスは、エンドユーザ［５０１］が、記録されたアクセスポイント位置［５０２］が自身の一方の側にだけ存在する物理的領域に移動する多くの状況を導く。エンドユーザ周辺の基準点の分布に対称性がないと、測位アルゴリズムによる装置の位置［５０３］の計算が大きな誤差が生じる。アクセスポイントをスキャンするチャイニーズ・ポストマン・モデルの場合、ユーザは、装置の８０２．１１無線機の範囲［６０４］内にいるユーザ［６０１］のすべての側に多数のアクセスポイント位置［６０２］が存在する物理的位置［図６］に遭遇するのが典型的である。得られた位置計算値［６０３］は位置バイアスを減らしているため、より正確である。図１１は、良質な位置計算の影響を示す別例である。
【００４２】
スキャン装置
図７は、各種Ｗｉ−Ｆｉアクセスポイントを検出し、特定する目的で使用されるスキャン装置７０２の好適な実施形態の詳細を表す。スキャン車両［７０１］は、ＧＰＳ衛星［７０８］および８０２．１１アクセスポイント［７０７］からの無線信号を求めて空路を継続的にスキャンするスキャン装置［７０２］を含む。このスキャン装置は、プロセス全体を制御するスキャン・クライアント・ソフトウェア［７０４］を実行する。スキャンクライアントは、ＧＰＳレシーバ［７０５］と８０２．１１無線機［７０６］との両方を起動する。ＧＰＳレシーバは、装置の地理的位置を毎秒計算する連続受信モードに設定されている。その計算値は、スキャンクライアントによって読み込まれ、ローカルデータ記憶装置［７０３］に記憶される。スキャンクライアントは、８０２．１１無線機を開始し、指向性アンテナ［７０９］を使用して８０２．１１探査リクエストの送信を始める。探査リクエストの範囲内にあるどの８０２．１１アクセスポイント［７０７］も、８０２．１１プロトコルに従って信号ビーコンで応答する。応答している信号ビーコンは、アクセスポイントのネットワーク名（ＳＳＩＤとして知られている）、アクセスポイント装置のＭＡＣアドレス、さらにアクセスポイントに関する他のメタ情報を含む。応答している信号は、発信源のベクトルとアクセスポイントの近接性とに基づき、さまざまな信号強度で指向性アンテナの各々に到達する。そのベクトルは、その特定のアンテナの識別子、およびアクセスポイントに関するメタ情報と併せて記録される。この探査受信記録プロセスは、１０分の１秒ごとに連続的に行われる。配備されるスキャン装置は、Ｘｔｒａｃバージョン２．０ファームウェアを搭載した統合型ＳｉＲＦ  ＩＩタイプＧＰＳレシーバ付きｉＰＡＱ  ４１５５ポケットＰＣとＰｏｗｅｒｅｄ  ＧＰＳ  ＰＤＡマウントクレードルとの組み合わせである。
【００４３】
特定の実施形態のスキャンクライアント７０４を、図１０と関連付けて説明する。クライアントは、データマネージャ［１００１］、システムマネージャ［１００２］およびアップロードマネージャ［１００３］という３つの主要コンポーネントから成る。データマネージャ［１００１］は、ＧＰＳ無線機［１００６］と８０２．１１無線機［１００７］との両方の動作を制御する。データマネージャは、これらの無線機が信号をスキャンし、それらの信号を処理する時期と頻度を制御する。いったん起動したＧＰＳ無線機は、ＧＰＳ衛星［１００４］から信号を受信し、その地理的位置を計算する。ＧＰＳレコーダ［１００８］は、それらの測定値のすべてを毎秒記録し、ファイルマネージャ［１０１０］に送信する。Ｗｉ−Ｆｉレコーダ［１００９］は、８０２．１１無線機を起動して、それらの８０２．１１測定値を１０分の１秒ごとにスキャンし、ＧＰＳ無線機からのＧＰＳ測定値と関連付けて、得られたデータをファイルマネージャに送信する。ファイルマネージャは、ＧＰＳレコーダとＷｉ−Ｆｉレコーダとの両方からスキャンデータを受信し、装置に記憶ファイルを作成する。このプロセスは、装置が動作しており、両方の無線機が機能している限り継続する。
【００４４】
アップロードマネージャ［１００３］には、８０２．１１のスキャン結果を監視するホットスポット検出器［１０１７］があり、装置がアクセスを許可されている公共のホットスポット［１０２４］（Ｔモバイルなど）の構成済みネットワークを検索する。ホットスポット検出器は、有効なホットスポットを検出すると、ユーザにその存在を通知する。ユーザは、接続確立コンポーネント［１０１８］を起動することによって、ホットスポットに接続することを選択できる。このコンポーネントは、ホットスポットのアクセスポイントと関連付けられており、８０２．１１接続を確立する。次に、ホットスポット認証モジュール［１０１９］が、有効な認証情報を装置に提供する。ホットスポットは、アカウントを有効化して、装置にネットワークアクセスを提供する。次に、アップロードマネージャが、アップロードサーバ認証プロセス［１０２０］を開始して中央ネットワークサーバ［１０２５］に接続し、有効な認証情報を提供する。認証されると、アップロードおよびデータ検証モジュール［１０２１］が開始される。このモジュールは、スキャン・データ・ストア［１０１１］からスキャンデータを取得し、ＦＴＰを使用してこのデータを中央ネットワークサーバにアップロードする。中央ネットワークサーバは、すべてのデータを中央アクセス・ポイント・データベースに記憶するためのプロセスを開始する。アップロード完了後、アップロードプロセスにより、スキャンデータはスキャン・データ・ストア［１０１１］から装置側のバックアップ・データ・ストア［１０１２］に移動する。アップロードが完了し、検証が行われると、新バージョンモジュール［１０２２］が中央ネットワークサーバを確認して、その装置に対して利用可能なクライアントソフトウェアの新バージョンの有無を判断する。新バージョンがある場合には、そのソフトウェアがダウンロードされ、新バージョンインストール［１０２３］プロセスによってクライアントソフトウェアのアップグレードが開始される。インストールプロセスが完了すると、中央ネットワークサーバとの接続が終了し、ホットスポットとの接続が終了して、装置は通常のスキャン動作に戻る。
【００４５】
スキャンクライアント７０４には、装置の管理とシステムエラーの低減に役立つユーティリティの集合が含まれている。無線機マネージャ［１０１３］は、ＧＰＳ無線機およびＷｉ−Ｆｉ無線機の動作を監視して、それらが適切に機能していることを確認する。無線機マネージャは、無線機の１つに関して問題に遭遇すると、無線機を再起動する。ユーザ・インタフェース・コントローラ［１０１４］は、ツールが効果的に動作するように、ツールと更新版とをユーザに提示する。エラーの処理および記録［１０１５］は、システムに関するすべての問題を装置に記録し、それらに対処できるようユーザに警告する。問題を解決できない場合には、システム再起動モジュール［１０１６］が呼び出される。このモジュールは、装置をシャットダウンし、ハードウェア、オペレーティングシステム、およびスキャンクライアントを再起動して、適切な動作を確保する。
【００４６】
１／１０秒という８０２．１１のスキャン間隔は、既製のハードウェアを使用しているこれらの条件下で、８０２．１１に最適なスキャン期間が提供されることを理由に選択された。８０２．１１ｂ／ｇ／ｎは、認可不要のスペクトルの１４本のチャネルを使用して動作する。個々のアクセスポイントは、所定の時期にそれらのチャネルの１つを介してその信号ビーコンを同報する。スキャン装置は、できるだけ多くのアクセスポイントを観測するために各チャネルを調査する必要がある。スキャン間隔は、スキャンクライアントが特定地域の周波数帯を網羅する方法を最適化するために、スキャン車両の平均速度と相関している。
【００４７】
中央ネットワークサーバ
図８を参照すると、保有車両群が、事前に指定されたルートを走行しながら、スキャンルーチンを実行する。各車両［８０１］は周期的に、利用可能な８０２．１１アクセスポイントに接続し、中央ネットワークサーバのデータ通信モジュール［８０７］を認証する。典型的には、中央ネットワークサーバと通信する目的で使用されるアクセスポイントは、信頼できる従量制アクセスを保証しているＴモバイル社が運営しているホットスポットなど、公共のホットスポットである。この接続のプロビジョニングは、利用可能な任意の公共アクセスポイントを介して実施され得る。スキャン車両は、近くのホットスポット位置で停止し、アクセスポイントに接続する処理を開始する。いったん認証されると、スキャンクライアント［７０４］は、ローカル記憶装置［７０３］から最近収集されたスキャンデータを特定し、そのデータを中央ネットワークサーバ［８０２］にアップロードする。
【００４８】
いったんデータがデータベースにアップロードされると、パーサおよびフィルタプロセス［８０３］が始まる。パーサおよびフィルタプロセスによって、アップロードスキャンデータがすべて読み込まれ、データベースの適切なテーブルにロードされる。この過程で、データの品質面が評価される。場合によっては、ＧＰＳレシーバが一定の期間にわたって誤ったレコードやエラーレコードを記録することがあり、それにより最終的なアクセスポイント位置計算に悪影響を及ぼす可能性がある。パーサおよびフィルタプロセスにより、これらの不良レコードが特定され、修正されるか、システムから除去される。フィルタリングプロセスでは、エラーを起こしやすいＧＰＳ測定値を除外するためのクラスタリング技術が使用される。例えば、測定値の９０％が、互いの２００メートル以内にあっても、測定値の残りの１０％が５キロメートル離れている場合、それらの異常値はフィルタによって除去され、さらなる分析のためにデータベースの破損テーブルに記憶される。特に、システムはまず、報告されたすべてのデータを使用して、アクセスポイントの重み付け重心を計算する。次に、報告された位置の分布に基づいて標準偏差を判断する。システムは、この分布のシグマに基づく定義可能なしきい値を使用して、エラーになっているアクセスポイントを除外する。これらのエラーレコードがマークされると、残りの位置情報記録によって重心が再計算され、後述する逆三角測量法を使用して最終的な重心を判断する。
【００４９】
なお、エラーレコードは、移動したアクセスポイントの結果である場合があることに留意すること。この場合、アクセスポイントの重心が、記録の優勢に基づき、新しい位置に速やかに「切り換わる」。アルゴリズムのさらなる改善は、レコードの年齢に基づく重み付け値によって、新しいレコードが所与のアクセスポイントの現在位置を示す重要な指標となることを含む。
【００５０】
解析プロセスが完了すると、中央ネットワークシステムが逆三角測量モデル［８０４］を開始して、新しいデータの処理を開始する。このプロセスの実行中に、１）新しいアクセスポイントがデータベースに追加されてそれらの物理的位置が計算され、２）既存のアクセスポイントは、スキャナによって記録された新しいデータに基づいて場所が移される。逆三角測量アルゴリズムは、記録件数と、それらが関連付けられている信号強度とを織り込んで、擬似加重平均モデルの場合の弱い信号よりも強い信号測定値の方に重みを付ける。
【００５１】
データ収集の間、ＷＰＳユーザは、利用可能なすべてのＷｉ−Ｆｉアクセスポイントからの受信信号強度（ＲＳＳ）を測定するＷｉ−Ｆｉレシーバ装置を装着し、対応するアクセスポイントの位置情報を抽出する。測定されたアクセスポイントｉのＲＳＳ値は、ＲＳＳｉと表記される。
【００５２】
アクセスポイントｉの対応する記録されたＧＰＳ位置が｛Ｌａｔｉ，Ｌｏｎｇｉ｝と表記され、計算されたアクセスポイント位置が｛Ｌａｔｉ，Ｌｏｎｇｉ｝と表記された場合、三角測量された位置は、以下のアルゴリズムを適用することによって求められる。
【数１】
0005419891.tif 000002
【数２】
0005419891.tif 000003
【００５３】
四乗根は平方根の平方根と同義であることから、アルゴリズムの実施を容易にするために四乗根が選択される。
【００５４】
第２のポイントは、係数のダイナミックレンジを調整することに言及している。係数のダイナミックレンジが懸念される場合には、アルゴリズムの係数を、例えば以下のように、定数で割ることができる。
【数３】
0005419891.tif 000004
【数４】
0005419891.tif 000005
【００５５】
パラメータＣは任意の数であってよく、理論的には結果に影響しない。加重平均は係数の比率に基づいており、絶対値ではないため、理論的には、すべての係数を定数Ｃで割っても結果には影響しないが、係数値のダイナミックレンジを変える。
【００５６】
そしてこの最終的な｛Ｌａｔｉ，Ｌｏｎｇｉ｝が、そのアクセスポイントの位置に対する最終的な重心値として使用される。次に、緯度および経度は、三角測量計算の新しさを示すタイムスタンプを含めてデータベースに記憶される。
【００５７】
中央ネットワークデータベースが更新され、各アクセスポイントの場所が移された後、データ・パック・ビルダ［８０５］は、国または世界の地域に基づいてデータベースの下位集合を作成する。パックビルダは、地域の特定の地勢だけが興味の対象である各種使用事例用データベースの配信を容易にする。パックビルダは、国、タイムゾーン、および大都市圏を表す地域座標で構成されている。この技術を利用して、ユーザは、米国西海岸の測位データだけをダウンロードすることができる。パックビルダは、データレコードを分割し、それらを圧縮する。
【００５８】
車両群管理モジュール［８０６］は、オペレーション担当者がスキャン車両を管理し、それらが経路進行手順を確実に守るよう支援する。このモジュールは、すべてのスキャンデータを処理し、システム内で車両ごとに位置トラックを構築する。オペレーションマネージャは、マップビルダ［８０８］を使用して車両トラックの地図を作成し、特定地域のカバレージ（coverage）を視覚的に調査することができる。各装置からのＧＰＳ追跡データは、ルート・マッピング・ソフトウェアで見直されることにより、カバレージの完了が確認され、網羅しきれていない領域が特定される。均一範囲を監査し、検証できることにより、システムが最善のデータを確実に実現する。また、このモジュールは、車両の走行時間を計算して、平均速度の判断とアイドルタイムの控除も行う。これらの出力結果は、システム全体の効率を監視する目的で、および将来のカバレージを計画する際に使用される。
【００５９】
関連方法および技術
本明細書に開示される技術は、後述する関連出願に記載の方法、システム、および装置と共に使用することができ、それらはすべて参照によって本明細書に援用される。前述のように、本発明の実施形態は、クライアント装置の範囲内で検出されたアクセスポイントに基づいて位置推定技術を選択する。かかる技術は、２００６年５月８日に出願された「Ｅｓｔｉｍａｔｉｏｎ  ｏｆ  Ｐｏｓｉｔｉｏｎ  Ｕｓｉｎｇ  ＷＬＡＮ  Ａｃｃｅｓｓ  Ｐｏｉｎｔ  Ｒａｄｉｏ  Ｐｒｏｐａｇａｔｉｏｎ  Ｃｈａｒａｃｔｅｒｉｓｔｉｃｓ  Ｉｎ  ａ  ＷＬＡＮ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ（測位システムにおけるＷＬＡＮアクセスポイントの無線電波伝播特性を使用した位置推定）」と題する米国特許出願第１１／４３０，２２２号と、２００７年７月６日に出願された「Ｓｙｓｔｅｍ  ａｎｄ  Ｍｅｔｈｏｄ  ｏｆ  Ｇａｔｈｅｒｉｎｇ  ＷＬＡＮ  Ｐａｃｋｅｔ  Ｓａｍｐｌｅｓ  ｔｏ  Ｉｍｐｒｏｖｅ  Ｐｏｓｉｔｉｏｎ  Ｅｓｔｉｍａｔｅｓ  Ｏｆ  ＷＬＡＮ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｄｅｖｉｃｅ（ＷＬＡＮパケットサンプルを収集してＷＬＡＮ測位装置の位置推定を改善するシステムおよび方法）」と題する米国特許出願第１１／７７４，３９２号とに記載の技術を含み得る。例えば、それらの出願は、特定のＷｉ−Ｆｉアクセスポイントに対するクライアント装置の位置に応じて所与のＷｉ−Ｆｉアクセスポイントの予想受信信号強度測定値を判断するための方法およびシステムについて記述している。加えて、それらの出願は、単一のアクセスポイントからの複数のパケット通信を評価することによってクライアント装置の位置推定を改善するための技術を開示している。
【００６０】
本明細書に記載の本発明の実施形態は、ユーザ装置の場所を推定するのに役立つものとして提示される一方、２００６年５月８日に出願された「Ｅｓｔｉｍａｔｉｏｎ  Ｏｆ  Ｓｐｅｅｄ  ａｎｄ  Ｄｉｒｅｃｔｉｏｎ  ｏｆ  Ｔｒａｖｅｌ  Ｉｎ  Ａ  ＷＬＡＮ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ（ＷＬＡＮ測位システムにおける移動の速度および方向の推定）」と題する米国特許出願第１１／４３０，０７９号、２００７年４月５日に出願された「Ｔｉｍｅ  Ｄｉｆｆｅｒｅｎｃｅ  ｏｆ  Ａｒｒｉｖａｌ  Ｂａｓｅｄ  Ｅｓｔｉｍａｔｉｏｎ  ｏｆ  Ｓｐｅｅｄ  ｉｎ  ａ  ＷＬＡＮ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ（ＷＬＡＮ測位システムにおける到着時期の違いに基づく速度の推定）」と題する米国特許出願第１１／６９６，８３２号、および２００７年４月５日に出願された「Ｔｉｍｅ  Ｄｉｆｆｅｒｅｎｃｅ  ｏｆ  Ａｒｒｉｖａｌ  Ｂａｓｅｄ  Ｅｓｔｉｍａｔｉｏｎ  ｏｆ  Ｄｉｒｅｃｔｉｏｎ  ｏｆ  Ｔｒａｖｅｌ  ｉｎ  ａ  ＷＬＡＮ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ（（ＷＬＡＮ測位システムにおける到着時期の違いに基づく移動方向の推定））」と題する米国特許出願第１１／６９６，８３３号において開示された技術と組み合わせて使用することもできる。それらの出願は、ユーザ装置の移動の速度および方向を判断する方法について説明している。以下に詳述するように、本出願に記載される技術は、Ｗｉ−Ｆｉアクセスポイント情報の集合をクライアント装置で使用する下位集合に再分割する方法について説明している。上記援用された出願におけるクライアント装置の移動の速度および／または方向を判断するための方法およびシステムを使用して、クライアント装置に提供されるべきＷｉ−Ｆｉアクセスポイント情報の下位集合の優先順位を決定することができる。例えば、装置の現在の移動の速度および方向に基づいて、クライアント装置が到着しそうな領域におけるＷｉ−Ｆｉアクセスポイントに関する情報を、その特定領域への到着に先立ってクライアント装置に提供することができる。
【００６１】
加えて、データベースにおけるアクセスポイントが移動したり、新しいアクセスポイントがクライアント装置によって対象領域で検出されたりすることがある。かかるアクセスポイントと関連付けられている情報は修正または更新されることがあり、あるいは、２００６年２月２２日に出願された「Ｃｏｎｔｉｎｕｏｕｓ  Ｄａｔａ  Ｏｐｔｉｍｉｚａｔｉｏｎ  ｏｆ  Ｅｘｉｓｔｉｎｇ  Ａｃｃｅｓｓ  Ｐｏｉｎｔｓ  Ｉｎ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍｓ（測位システムにおける既存アクセスポイントの連続的なデータ最適化）」と題する米国特許出願第１１／３５９，１５４号において開示された技術により、アクセスポイント情報が位置推定目的で無視されることがある。以下にさらに詳しく述べるように、本発明の態様は、特定のアクセスポイントに関する情報が変更または更新された時期を示すことを含む。このように、上記出願に記載の技術は、これらの態様と連動して使用することもできる。同様に、２００７年２月２３日に出願された「Ｍｅｔｈｏｄｓ  ａｎｄ  Ｓｙｓｔｅｍｓ  Ｆｏｒ  Ｅｓｔｉｍａｔｉｎｇ  ａ  Ｕｓｅｒ  Ｐｏｓｉｔｉｏｎ  Ｉｎ  ａ  ＷＬＡＮ  Ｐｏｓｉｔｉｏｎ  Ｓｙｓｔｅｍ  Ｂａｓｅｄ  Ｏｎ  Ｕｓｅｒ  Ａｓｓｉｇｎｅｄ  Ａｃｃｅｓｓ  Ｐｏｉｎｔ  Ｌｏｃａｔｉｏｎｓ（ユーザが割り当てたアクセスポイント位置に基づいてＷＬＡＮ測位システムでユーザ位置を推定するための方法およびシステム）」と題する米国特許出願第１１／６７８，３０１号に記載の実施形態を、クライアント装置の位置を推定するために本願明細書において述べられている技術と組み合わせて使用することもできる。
【００６２】
２００６年５月８日に出願された「Ｃａｌｃｕｌａｔｉｏｎ  ｏｆ  Ｑｕａｌｉｔｙ  ｏｆ  ＷＬＡＮ  Ａｃｃｅｓｓ  Ｐｏｉｎｔ  Ｃｈａｒａｃｔｅｒｉｚａｔｉｏｎ  ｆｏｒ  Ｕｓｅ  Ｉｎ  ａ  ＷＬＡＮ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ（ＷＬＡＮ測位システムで使用するためのＷＬＡＮアクセスポイントの質の計算）」と題する米国特許出願第１１／４３０，２２４号および２００７年１月２２日に出願された「Ｓｙｓｔｅｍ  ａｎｄ  Ｍｅｔｈｏｄ  ｆｏｒ  Ｅｓｔｉｍａｔｉｎｇ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｅｒｒｏｒ  ｗｉｔｈｉｎ  ａ  ＷＬＡＮ  Ｂａｓｅｄ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ（ＷＬＡＮベースの測位システム内での測位エラーを推定するためのシステムおよび方法）」と題する米国特許出願第１１／６２５，４５０号は、所与のアクセスポイントに関する情報の質を評価するため、および所与の位置推定と関連付けられた測位誤差を判断するための技術を開示している。これらの技術は、本発明の実施形態で使用することができる。例えば、特定のＷｉ−Ｆｉアクセスポイント情報は、情報が低質であり、そのために、位置推定に使用するには信頼性が低いと判断されたため、クライアント装置に提供されてはならない。同様に、所与の位置推定と関連付けられたエラーは、クライアント装置に提供すべきアクセスポイント情報の下位集合を判断する際の要因になり得る。
【００６３】
Ｗｉ−Ｆｉアクセスポイントに関する情報は、２００６年３月１日に出願された「Ｅｎｃｏｄｉｎｇ  ａｎｄ  Ｃｏｍｐｒｅｓｓｉｎｇ  ａ  ＷｉＦｉ  Ａｃｃｅｓｓ  Ｐｏｉｎｔ  Ｄａｔａｂａｓｅ（Ｗｉ−Ｆｉアクセス・ポイント・データベースの符号化と圧縮）」と題する米国特許出願第１１／３６５，５４０号に記載されたとおりに符号化され得る。
【００６４】
Ｗｉ−Ｆｉアクセスポイントデータの効率的な管理および配信
本発明の好適な実施形態は、Ｗｉ−Ｆｉ位置データをＷｉ−Ｆｉ測位システムの各種コンポーネント間で効率的に管理し、配信するためのシステムおよび方法も提供する。かかる実施形態において、クライアントは、自身を見つける目的で使用するＷｉ−Ｆｉアクセスポイントデータのキャッシュを記憶する。上記のとおり、Ｗｉ−Ｆｉアクセスポイントデータは、アクセスポイント自体の起動、移動、および退役に合わせて常に変化している。クライアント装置は、ＷＰＳが高水準の精度で確実に機能するように、効率的な方法でこれらの変化を認識しなければならない。
【００６５】
図１２は、本発明の特定の実施形態の一般的な使用状況を表す。モバイル装置［１２０３］を利用しているモバイルユーザ［１２０２］は、装置の（すなわちユーザの）現在の地理的位置に関連する情報を必要とする。クライアント装置は、モバイルユーザによって操作されているモバイル演算装置（携帯電話など）であるのが一般的である。クライアント装置は、ＷＰＳクライアントソフトウェア［１２０４］を備えている。ＷＰＳクライアントソフトウェアは、自発的に、またはＷＰＳサーバ［１２０８］と通信することによって動作することができる。
【００６６】
また、ＷＰＳクライアントは、限られた地理的領域のＷｉ−Ｆｉデータを表す「タイル」の集合に対応するサーバからＷｉ−Ｆｉアクセスポイントデータを受信することにより、半自律的に動作することもできる。このデータはその後、クライアント装置のタイルストア［１２０６］にローカルに記憶され、その後ＷＰＳクライアントがこのデータを使用して、その位置を自律的に推定し得る。
【００６７】
クライアントには、特定の地理的地域に対応するＷｉ−Ｆｉデータがプリインストールされていることもある。クライアントはその後、データベースを使用して、プリインストールされたこのデータを更新することにより、その位置推定値が最新のデータに確実に基づく。
【００６８】
ＷＰＳタイルおよびタイルＩＤ
ネットワークサーバ［１２０８］とモバイル装置［１２０３］との間でのアクセスポイント情報伝送に用いられる基本単位は、ワイヤレス測位タイル（ＷＰＳタイル）である。ＷＰＳタイル（または単に「タイル」）は、仕切られた地理的地域内にあるＷｉ−Ｆｉアクセスポイントの集合を参照する地理的に仕切られたＷｉ−Ｆｉアクセスポイント位置情報データベースの下位集合であり、緯度および経度座標を参照することによって定義される。
【００６９】
アクセス・ポイント・データベースが、標高情報を含み得ることで、クライアント装置の位置を三次元で把握することを可能にしているのに対し、タイルシステムは、経度および緯度次元だけを使用してデータベースを区分けする。すべてのＷｉ−Ｆｉアクセスポイントは地面に比較的近いため、標高情報は、クライアント装置の位置を推定する際にやはり使用される可能性があるものの、タイルシステムが標高寸法を考慮する必要はない。
【００７０】
タイルは、作成、特定、および保守に必要ないくつかの性質を有する。これらの性質は、以下のとおりである。
安定性−タイルの識別子は、時間が経過しても同じままである。
分割性−タイルは、記憶領域要件および密度要件を理由に、必要に応じて再分割または再構成することができる。
構成性−タイルは、再現可能な識別子を使用して親タイルを構成することができる。子タイルは、その親タイルを容易に特定することができ、その逆もまた同様である。
普遍性−タイルは、ＷＰＳシステムのカバレージ内にあるすべて地理的な緯度および経度座標を表すことができなければならない。
【００７１】
ＷＰＳタイルは、所与の地理的地域におけるＷｉ−Ｆｉアクセスポイントの密度だけでなく、クライアント装置の容量およびニーズに基づいてデータベースを動的に再分割する方法（後述する）に基づいて生成される。ＷＰＳタイルは、中央サーバで生成され、クライアント装置に分配される。
【００７２】
この要件集合を満たすタイルを実施する具体的な方法が本書に例示されると共に、同じ目的を達成するために使用できる異なるアルゴリズムもいくつかある。本方法は、安定性、分割性、構成性、普遍性といった所望される特性を満たす本発明の本態様の数ある可能な実施形態のうちの一つを表すに過ぎない。
【００７３】
タイルは、タイルＩＤと呼ばれるＷＰＳタイル識別子によって参照される。本明細書に記載の処理を用いて形成されるタイルＩＤは、対応するタイルの「レベル」を特定することによって、対応するタイルの領域の緯度および経度だけでなく、サイズ最小仕切り矩形（ＭＢＲ）も符号化する。本実施形態において、タイルは階層状に配置され、各タイルは所定の「レベル」を有する。レベル０タイルは、複数のレベル１タイルを含み、レベル１タイルは複数のレベル２タイルを含む、という具合である。本明細書に記載の方法は０〜９およびＡ〜Ｆの進数字を使用して、タイルＩＤを１６進数形式で記憶し、操作する。
【００７４】
レベル０タイル（最大のＷＰＳタイル）は、図２０に示すとおり、整数の緯度／経度によって仕切られている。すなわち各タイルは、左右側が正確に経度１度を表し、上下側が緯度１度を表す長方形である。経度は１８０度で、緯度は３６０まである。したがって、世界全体で１８０×３６０＝６４，８００個のレベル０タイルＩＤがある。レベル０タイルＩＤは、左から右（西から東）および下から上（南から北）に付番される。タイルＩＤによって順序付けられる第１のレベル０タイルは、緯度−９０度、経度−１８０度の位置［２００１］にある。最終のレベル０タイルは、緯度８９度、経度１７９度の位置［２００４］にある。緯度および経度が与えられた場合のレベル０タイルＩＤを計算するための公式は以下の通りである。
タイルＩＤ（ｌａｔ，ｌｏｎ）＝３６０×ｆｌｏｏｒ（９０＋ｌａｔ）＋ｆｌｏｏｒ（１８０＋ｌｏｎ）
【００７５】
上記および図２０に示すとおり、レベルＮタイルは、レベルＮ＋１の複数のサブタイルに再分割することができる。本明細書に記載の特定の実施は、レベルＮタイルを１６（４×４）枚のレベルＮ＋１のサブタイル［２００６］にタイルを分割する。サブタイルは、０〜９およびＡ〜Ｆという１６進数字を使用して、左から右に（西から東）および下から上（南から北）に付番される。サブタイルのサブタイルは、適切な１６進数字をサブタイルｌＤに単純に加えて付番される。例えば、タイルＩＤ  ＢＡ０Ｃ．７６Ｄは、タイルＩＤがＢＡＯＣ．７６であるタイルの１６枚のサブタイルの中の１枚を表す。したがって、タイルＩＤにおける「．」の後の桁数は、対応するタイルのレベルに等しい。
【００７６】
各タイルを１６枚のサブタイルに再分割することには、いくつかの利点がある。第一に、タイルが自動分解され、世界を所望されるタイル当たりの平均アクセスポイント数を持つタイルにすばやく再分割することができる。起動したアクセスポイントが増えた結果、タイル当たりのアクセスポイント密度が最大所望密度を超えた場合には、高い方のレベルのタイル（すなわち小さい方のタイル）が使用できる。十分な数のアクセスポイントが退役して、アクセスポイントの数が最小所望密度を下回った場合には、低い方のレベルのタイル（すなわち大きい方のタイル）が使用できる。この漸進的な分解により、世界全体で見られるアクセスポイントの密度のばらつきに基づいて設定されたアクセスポイントデータの集合の適性分布が実現される。
【００７７】
第二に、タイル当たり１６枚のサブタイルを使用することにより、コンピュータ操作向けに最適化された符号化が行われる。１６枚のサブタイルの各々は、単一の１６進数字（０〜Ｆ）で符号化することができ、わずか４ビットでのバイナリ符号化のために最適化されている。この符号化が、ＷＰＳタイルＩＤの記憶と処理との両方において最適な効率を提供する。さらに、符号化により、レベルＮのタイルのタイルＩＤの方が、レベルＮ＋１のタイルより１６進数字が１つ少なくなるようになっている。そのため、対応するタイルＩＤの桁数に基づいて、タイルのレベルを容易に特定することができる。
【００７８】
記載したタイルＩＤシステムのさらに望ましい性質は、第１のタイルＩＤが第２のタイルＩＤの接頭辞であるときに、第１のタイルが第２タイルを含むということである。例えば、タイルＩＤ  ＢＡ０Ｃ．７６によって特定されるタイルは、同じ接頭辞で始まる全１６枚のサブタイルＢＡ０Ｃ．７６０、ＢＡ０Ｃ．７６１、．．．、ＢＡ０Ｃ．７６Ｆを含む。
【００７９】
各タイルは、タイルデータの更新ごとのタイルの特徴を反映するバージョン情報とも関連付けられている。この情報は、以下を含み得る。（ｉ）タイルデータが更新された時期（すなわちタイルタイムスタンプ）。これを使用して、クライアントが自身のタイルストアにおける最新のタイルデータを有しているかどうかを速やかに判断することができる。（ｉｉ）新しいＷｉ−Ｆｉアクセスポイントがタイルに入る時、タイルを離れる時、またはタイル内で移動する時の速度などのタイル内の環境が変化する頻度を示す測定基準。これを使用して、クライアントはタイルデータの経年の速度を自律的に推定することができる。（ｉｉｉ）タイル（ブルームフィルタや他の所定の符号化、すなわち、Ｗｉ−ＦｉアクセスポイントのＭＡＣアドレスおよび位置の一方向ハッシュ（ＭＤ５やＳＨＡ−１など）などのアクセスポイントの集合を簡潔に示す識別子。これを使用して、クライアントのキャッシュを更新する最善の方法、すなわちタイルデータを順次更新するか（下記参照）、またはタイルデータを、サーバによって送信された新しいタイルと完全に置き換えるための最善の方法を判断することができる。
【００８０】
バージョン情報は、クライアントがその位置を推定する際に古いキャッシュ情報を使用するのを確実に防ぐことと、タイルデータ伝送プロセスを確実に容易にすることとを目的に使用される。タイルストアにおける所与のタイルについて、クライアントは、サーバがタイルのバージョン情報を送信するようにリクエストすることがある。クライアント側のバージョン情報と併せてサーバによって返されるバージョン情報は、更新を実行する際に用いる最善の方法に加え、新しいタイルデータがクライアントにロードする必要があるかどうかも示す。一実施形態において、タイムスタンプ情報が、データベースサーバにあるタイルデータがクライアントのタイルストアにあるタイルデータよりも新しいことを示している場合、クライアントはより新しいバージョンをデータベースサーバからダウンロードすることによってそのキャッシュを更新する可能性がある。このプロセスは、ＷＰＳクライアントソフトウェアによって、あるいは必要に応じて位置情報リクエストを満たすために、周期的にトリガされ得る。
【００８１】
タイルＩＤを比較して、他のタイルがどのタイルを含むかを判断することは些細なことかもしれないが、データベースサーバ内に含まれる所与のタイルに隣接しているタイルの集合を判断する必要があるかもしれない。隣接するタイルが未知の仕切られていないレベルのタイルである可能性があることを考えると、タイルデータベース（サーバデータベースまたはクライアントのタイルストア）の一部の好適な実施形態においては、この判断を行うための些細な方法がない。一部の方法は、（ｉ）タイルに概ね近接しているアクセスポイントを検索し、対応するタイルＩＤを取得することと、（ｉｉ）より高いレベルでタイルを検索し、検索範囲をより高いレベルのタイルに順次拡大することと、（ｉｉｉ）空間インデックス化機能を有するデータベースを使用することとを含む。
【００８２】
システムについての説明
図１３は、ＷＰＳクライアントソフトウェア［１３０３］の一実施形態の各種コンポーネントをさらに詳しく示す。位置情報リクエストマネージャ（ＬＲＭ）［１３０４］は、クライアント装置で実行中のアプリケーションから位置情報リクエストを受信する。ＬＲＭは、スキャナモジュール［１３０５］を使用することと、データ通信マネージャ（ＤＣＭ）［１３０６］を制御することと、位置推定モジュール（ＬＥＭ）［１３０８］を使用して位置推定を開始することとを含む、リクエストを解決するのに必要なタスクを管理する。ＬＲＭは、タイルマネージャ［１３０７］を使用して、キャッシュされたＷｉ−Ｆｉアクセスポイントデータの記憶を調整する役割も担う。
【００８３】
８０２．１１スキャナモジュールはクライアント装置上にあり、クライアント装置が動作する無線環境に関する情報を収集する処理を管理する。スキャナは、装置の範囲内にあるすべてのアクセスポイントをスキャンするよう８０２．１１ネットワークアダプタに命令することにより、このプロセスを開始する。８０２．１１プロトコルに従って、範囲内にあるアクセスポイントは、ＭＡＣアドレスと呼ばれる一意の識別子を提供することによってスキャンに応答する。また、スキャナは、範囲内のアクセスポイントによって伝達されるデフォルトの同報信号に依存して、受動モードで動作することもできる。スキャナは、受信した信号の強度と共に、各アクセスポイントによって提供される識別子も記録する。その後スキャナは、ＬＥＭにこの情報を渡し、ＬＥＭは、観測された各アクセスポイントのＭＡＣアドレスを、タイルストア［２０９］に記憶されているアクセスポイントのＭＡＣアドレスと比較する。タイルストアは、システムが認識している観測されたアクセスポイントごとに位置データを返す。その後このデータは、モバイル装置の位置を推定する目的で位置推定モジュール（ＬＥＭ）［２０８］によって使用される。
【００８４】
ＬＥＭは、タイルストアに含まれるＷｉ−Ｆｉアクセスポイント情報に基づいてクライアント装置の位置を推定する役割を担う。必須の入力情報は、それらのＭＡＣアドレスによって特定されるＷｉ−Ｆｉアクセスポイントの集合と、それらの各受信信号強度情報とで構成される。付加的な入力情報は、クライアント装置の以前の位置、方向、速度、および利用できる可能性がある他の関連データを含み得る。このデータを使用して、ＬＥＭは、以前に提示され、参照により本明細書に援用される位置アルゴリズム（上記「関連する方法および技術」を参照）を任意に組み合わせてクライアント装置の位置を推定し得る。
【００８５】
データ通信マネージャ（ＤＣＭ）［１３０６］は、クライアント装置の位置を解決するのに必要なローカル情報が十分にない場合、またはローカル情報が古い場合に位置情報リクエストマネージャ［１３０４］によって開始される。ＤＣＭは、データ・ネットワーク・アダプタ［１３１０］を使用して中央サーバとの通信を開始し、スキャナモジュールによって収集された情報に加えてサーバクライアント属性（クライアントリソースの制約など）に提供する。中央サーバは初期位置を、サーバがクライアント側での位置解決に適切であると判断したタイルに対応する優先的なタイルＩＤの集合と併せて提供する。ＤＣＭは、中央サーバとの通信を継続して、所望される優先順位でタイルを取得する。
【００８６】
タイルマネージャ［１３０７］は、タイルストア［１３０９］に保持されているＷＰＳタイルを整理、追加、削除、アクセスする役割を担う。タイルマネージャは、ローカルのＷＰＳタイルの集合が、位置情報リクエストを解決するのに不十分かどうかを判断することができ、さらに多くのタイルが必要であることを位置情報リクエストマネージャに通知する。タイルマネージャは、古くなった情報と、以降のリクエストに関して近い将来必要となる可能性が低いデータとを削除することにより、クライアント装置のリソース利用状況を管理する役割も担う。タイルマネージャは、クライアントの進行速度および方向といった収集した情報に基づいて、または、位置情報リクエストを開始したクライアントアプリケーションによって提供される情報に基づいて、将来の位置情報リクエストで必要となる可能性のあるタイルを事前にリクエストすることができる。
【００８７】
本発明の一実施形態は、ＷＰＳタイルの解像度を段階的に変更するための方法を提供する。このプロセスは、精度の低い位置推定を提供するアクセスポイント位置情報の初期集合を提供するが、以降の解像度レベルがサーバから受信されるにつれて精度は向上する。このプロセスにより、極値に向かって解像度を下げ、投影される装置の位置付近の解像度を高めることができ、こうしてソリューション全体の汎用性をほとんど失うことなく、初期位置推定を構成するために必要とされるネットワーク伝送量を減らす。主要タイルは最大解像度で取得し、従属タイルを最初に低解像度で取得するといった具合に、単一タイル内またはタイル集合間で解像度の段階的変更を用いることができる。
【００８８】
クライアント装置のメモリを節約するために、タイルマネージャは、必要でなくなったタイルをタイルストアから削除することがある。タイルが必要でなくなった時期を判断するに当たっては、いくつかの要因が使用され得る。一実施形態において、タイルマネージャは、ＬＲＵ（Ｌｅａｓｔ  Ｒｅｃｅｎｔｌｙ  Ｕｓｅｄ：最近の最低使用頻度）アルゴリズムを使用して、キャッシュされたまま最も長い期間にわたって使用されていなかったタイルを削除する。他のキャッシングアルゴリズムを使用して、特定用途の記憶装置を強化し、最適化してもよい。加えて、装置所有者の自宅住所を含むタイルなどの頻繁に使用されるタイルは、キャッシュに「ピン留め」して、削除すべきでないことをタイルマネージャに対して示すようにしてもよい。タイルが必要でなくなった時期を判断するに当たっては、クライアント装置の速度および進行方向も使用され得る。また、道路などの地理的特徴を使用して、近い将来必要でなくなる可能性が高いタイルを予測してもよい。特定の実施形態においては、クライアント装置の移動の履歴が記録され、この情報を使用して、所与のタイルが将来必要となる可能性が判断される。
【００８９】
データ・ネットワーク・アダプタ（ＤＮＡ）［１３１０］は、クライアント装置と中央ネットワークサーバとの間でデータを送受信するための方法を提供する。ＤＮＡは、無線ネットワークアダプタであるのが一般的であるが、特定の実施形態の下では、有線ネットワークアダプタである場合もある。スキャンに使用される８０２．１１ネットワークアダプタは、特定の実施形態においては、データ・ネットワーク・アダプタの２倍の数になり得る。ＤＣＭが、適切な通信メカニズムを判断し、クライアントとサーバとの間の接続およびデータ伝送を管理する。
【００９０】
図１４は、ＷＰＳネットワークサーバ［１４０１］の各種コンポーネントをさらに詳しく示す。ネットワークサーバは、マスタＷｉ−Ｆｉアクセスポイント位置情報データベース［１４０６］を維持する。また、ＷＰＳタイルの作成および分散化に加え、サーバ側の位置解決も司る。ネットワークサーバは、ＷＰＳシステム全体の中央管理コンポーネントであり、中央無線機ビーコン位置情報データベースを維持し、データを分散用に最適化し、８０２．１１アクセスポイントに関連する新しい情報でデータベースをリフレッシュしながら、各種クライアント装置の動作を調整する。
【００９１】
Ｗｉ−Ｆｉ位置情報データベース［１４０６］は、中央サーバにあり、地理位置情報（緯度および経度など）、既知のＷｉ−Ｆｉアクセスポイントの各々の位置推定値の精度に関連する信頼度、各種データが収集された時期を表すタイムスタンプ、および各タイルを一意に特定する目的で使用されるタイルＩＤ情報（以下で詳述し、図２０に図示）から成る。
【００９２】
位置情報リクエストハンドラ［１４０４］は、クライアント装置からの位置解決リクエストを受け付ける。このコンポーネントは、位置情報リクエストを解決するのに必要な位置および／またはＷＰＳタイル情報で応答する。位置情報リクエストハンドラが、タイル位置を要求するリクエストに応答するのに対し、タイルリクエストハンドラ［１４０７］は、特定のＷＰＳタイルを要求するクライアント装置からのリクエストを受け付ける。このコンポーネントは、利用可能であれば、リクエストされたＷＰＳタイルで応答する。有効でなくなったタイルをクライアントがリクエストした場合、サーバは、リクエストされたＷＰＳタイルに代わるＷＰＳタイルを含む適切なエラー情報で応答する。
【００９３】
ＷＰＳタイルジェネレータ［１４０８］は、ＷＰＳシステムのカバレージエリア内にある各タイルの適切な多角形サイズを判断する役割を果たす。システムは、アクセスポイントの密度を計算し、地理的（緯度および経度）根拠を基に世界を再分割して、記憶サイズおよびＷｉ−Ｆｉアクセスポイント密度に合わせて多角形を最適化する。
【００９４】
ＷＰＳタイルとクライアントとの通信は、ＷＰＳタイルディストリビュータ［１４０９］によって処理される。リクエストを認証した後、ディストリビュータは、所与のＷＰＳタイルを要求元ＷＰＳクライアントへの分配用にパッケージ化する。
【００９５】
ネットワークサーバのデータ通信マネージャ（ＤＣＭ）［１４０３］は、クライアントＷＰＳ装置の上のＤＣＭと通信する。この２台のモジュールは、データがネットワーク経由で正しく伝送され、ローカル装置で検証され、持続するよう認証プロセスを管理し、通信を監視する。
【００９６】
タイルの作成
図１９は、適切なタイルサイズが生成され、指定されたタイルにアクセスポイントが割り当てられるプロセスを表す。ネットワークサーバは、どのタイルに調整が必要かを周期的に判断する［１９０１］。これは、タイルに追加された、またはタイルから削除されたアクセスポイント、さらにはタイル内で移動したそれらのアクセスポイントを特定することによって達成される。これらのアクセスポイントごとにレベル０のタイルを特定することは、アクセスポイントごとに緯度および経度の値を切り捨て、その結果得られるレベル０の別の集合を判断するだけの問題である。最適化のため、およびこれらのタイルの効率的な判断を可能にするために、現在の実施は、アクセスポイントに対して処理（ＡＰの位置が変更される等）が実行されるたびに、そのアクセスポイントのタイルＩＤをヌル（ｎｕｌｌ）に設定することによって変更する。同プロセスを用いて、アクセスポイントの移動または追加を理由に新たに作成する必要がある新しいタイル［８０２］を特定することができる。
【００９７】
上で特定されたタイルＩＤごとに、アルゴリズムが各タイルを、所望密度（例えば、タイルの地理的地域の区分内にあるアクセスポイントの数）に到達するまで、または最大レベルの粒度（本明細書に記載の特定の実施では、レベル４のタイルは実際に使用される最小のタイルを表す）に達するまで、繰り返し再分割する。これらの最適タイルごとに、ＭＢＲ内にあるアクセスポイントが対応するタイルＩＤに割り当てられる。
【００９８】
一般に、タイル当たりの所望平均アクセスポイント密度は、特定の実施形態に従って、効率および速度が最大化されるように最適化される。好適な一実施形態は、タイル当たり８０００か所というアクセスポイントの密度制限を使用し、それにより、符号化されたファイルサイズをタイル当たり約５０ＫＢに確実に収める。レベルＮのタイルが８０００か所を超えるアクセスポイントを含む場合には、領域全体がレベルＮ＋１のタイルに再分割される。分割可能な最低密度はタイル当たり１つのＡＰであり、アクセスポイントを含まないレベル０のタイルは単に無視されるだけである。
【００９９】
一部の実施形態は、更なる要因を用いてＷＰＳタイルのサイズを判断することがある。例えば、クライアント装置の移動履歴、メモリ容量、または利用可能なネットワーク帯域幅に従ってタイルサイズが選択されることがある。
【０１００】
相互作用の時系列
図１５および図１７は、クライアントシステムの動作を表す。図１６および図１８は、サーバシステムの動作を表す。以下の説明は、これらのダイアグラムを参照し、各種システムコンポーネント間での相互作用について記述する。
【０１０１】
第一に、モバイル装置で実行されているソフトウェアアプリケーションは、ＷＰＳシステム［１５０１］に位置情報をリクエストする。ＷＰＳシステムの位置情報リクエストによってクライアントスキャン［１５０３］が実行され、クライアント装置の８０２．１１ネットワークアダプタが受信できるＷｉ−Ｆｉアクセスポイントに関する情報が収集される。ＷＰＳクライアントソフトウェアはまず、以前に取得されたＷＰＳタイルを使用して、装置の位置を解決しようとする（［１５０５］［１５０６］）。情報がローカル装置に存在しない場合には、ＷＰＳクライアントソフトウェアが継続する。ＷＰＳクライアントソフトウェアは、データ通信マネージャとデータ・ネットワーク・アダプタとを介してＷＰＳ中央サーバにリクエストを出し、その現在位置と、以降の位置情報リクエストに必要なＷＰＳタイルに関する情報とを取得する（［１５１１］［１５１２］）。
【０１０２】
中央サーバは、データ通信マネージャでタイル位置情報リクエストを受信し、位置情報リクエストハンドラにそのリクエストを渡す。位置情報リクエストハンドラは、（ｉ）クライアントソフトウェアが送信したアクセスポイントのリストを使用してクライアントの位置を判断し（［１６０３］）、（ｉｉ）現在および将来の位置情報リクエストを解決するのに必要なＷＰＳタイルを判断し（［１６０７］）、（ｉｉｉ）位置情報リクエストハンドラとデータ通信マネージャとを通じて、ＷＰＳタイルの現在位置およびリストと、各ＷＰＳタイルの最新更新のタイムスタンプとで応答する。このリスト内の各タイルに、クライアントが近い将来自律的に自身を見つけるためにこのタイルを必要とする尤度に基づき、優先推定値が割り当てられる（［１６０８］）。
【０１０３】
さらに具体的には、ＷＰＳクライアント装置の推定位置を含むタイルに最高の優先順位が割り当てられ、その後周囲のタイルに、クライアント装置が将来そのタイル内またはそのタイルの付近に存在する確率に基づいて優先順位が割り当てられる。周囲のタイルは、上記のタイルＩＤスキームに従って中央タイルのタイルＩＤを変更することによって検出される。
【０１０４】
また、クライアントに送信される推奨タイルＩＤのリストは、クライアント装置が所在するタイル、および直接隣接する周囲のタイル以外を含み得る。ＷＰＳソフトウェアは、ユーザ装置の速度および挙動などの付加情報を利用して、事前に付加タイル情報をリクエストし得る。加えて、ＷＰＳソフトウェアは、道路などの地理的属性を利用して、クライアント装置の将来位置をより正確に予測し得る。将来の位置を事前に予測できることにより、クライアント装置が自律的に機能できる時間が長くなり、これにより、ネットワークサーバおよび通信ネットワーク自体への負荷が減る。メモリ容量と、バッテリ寿命と、ネットワーク速度およびコストとを含むクライアント装置の制限も、サーバによって推奨されるタイルＩＤのリストを判断する目的で使用され得る。
【０１０５】
リスト内の各タイルＩＤは優先順位と関係付けられており、その順位は、クライアント装置の位置履歴、道路などの地理的特徴、利用可能なネットワーク帯域幅、ユーザ装置の速度および方向を含むいくつかの要因に従って決定され得る。例えば、クライアントが、タイルＹに進む前にタイルＸに進むことが許可されていない道路を走行していた場合、タイルＹにはタイルＸより高い優先順位が割り当てられている可能性がある。
【０１０６】
クライアントＷＰＳソフトウェアは、サーバによって提供されるタイルＩＤのリストを調べて、対応するタイルのうちのどれが必要とされているかを判断する。この判断には、クライアントの速度および方向、道路および他の地理的属性、およびクライアント装置自体の物理的な制限などの情報が利用されることもある。
【０１０７】
クライアントは、タイルＩＤの集合を選択したときに、これらの各タイルごとにＷＰＳサーバへのリクエスト［１７０９］を整形する。ＷＰＳ中央サーバは、各ＷＰＳタイルリクエスト［１８０１］を認証し、必要に応じて、リクエストされたＷＰＳタイル［１８０５］を生成する。認証のプロセスにより、無認可のクライアント装置が中央サーバからタイルをダウンロードすることが確実に防止される。例えば、タイル取得システムの一実施形態はＨＴＴＰプロトコル上で動作し、正しく認可されたクライアントによってすべてのクライアント要求が確実に送信されるように、標準的なＨＴＴＰ認証スキームが使用され得る。
【０１０８】
リクエストされたＷＰＳタイルはその後パッケージ化され［１８０４］、ＷＰＳクライアントに返される。クライアント装置上にあるＷＰＳタイルマネージャが、新しいＷＰＳタイルを利用可能なリソース（メモリまたはデータ記憶装置など）内に確実に収め、古いまたは必須でないＷＰＳタイルを必要に応じて削除する。
【０１０９】
想定使用例
以下は、本発明の特定の実施形態の予測される使用例を示す。この例示的状況において、ＷＰＳソフトウェアを備えるモバイル装置のユーザは、街の郊外に住んでいるが、都心で働いている。ユーザは午前中に、（ナビゲーションソフトウェアなどのユーザアプリケーションを介して）装置に現在位置を判断するよう求める。この行動により、ＷＰＳソフトウェアが起動する。
【０１１０】
この状況では、ユーザアプリケーションが、ＷＰＳ位置情報プロバイダに位置情報をリクエストする。ＷＰＳ位置情報リクエストマネージャは、クライアント装置位置推定モジュールにリクエストを出す。ＬＥＭが位置を自律的に提供できない場合、位置情報リクエストマネージャはデータ通信マネージャに制御を渡して、中央サーバから位置およびＷＰＳタイルを必要に応じてリクエストし、取得する。Ｗｉ−Ｆｉスキャンの結果はサーバに渡され、サーバは上記の要因に従って優先順位付けされた推奨タイルＩＤのリストで応答する。クライアントはその後、所望のタイルＩＤごとにタイルリクエストを送信し、サーバから十分な数のタイルを受信すると、位置情報リクエストマネージャが位置推定モジュールに再び位置情報をリクエストする。今回は必要な情報がローカル装置に存在するため、これによってクライアント装置の位置が判断される。
【０１１１】
人が街に進入すると、クライアント装置に記憶されているＷＰＳタイルの境界線に向かって装置が移動する。ＷＰＳクライアントソフトウェアは、キャッシュされたタイルのタイルＩＤから、キャッシュされた領域の境界線を計算することができる。推定されたクライアント装置の位置がキャッシュの境界線のしきい値距離内にあると、タイルマネージャは追加タイルが必要であることを位置情報リクエストマネージャに知らせる。これにより、クライアントデータ通信モジュールと中央サーバとの間で別の一連の通信が開始され、追加タイルが取得される。このプロセスは、人の動きとクライアント装置の制約（記憶装置およびネットワーク容量など）に基づき、必要に応じて繰り返される。
【０１１２】
追加タイルの事前読み込みをトリガする目的で使用されるしきい値距離は、該当するタイルのサイズ、クライアント装置のメモリ容量、ユーザ装置の推定速度などを含むさまざまな要因に依存し得る。例えば、クライアント装置が境界線の方へ高速で移動している場合には、速やかに追加タイルをリクエストして、必要なタイルがダウンロードされる前にユーザが境界線を横切るのを確実に防ぐのが論理的である。クライアント装置が静止している場合には、追加タイルの必要性はそれほど緊急でないため、しきい値距離もそれに応じて短い可能性がある。
【０１１３】
クライアント装置が、すぐには使用しないかもしれないタイルを事前にリクエストすることもある。この事前読み込み処理は、現在のタイルのサイズ、クライアント装置のメモリ容量、ユーザ装置の推定速度、サーバとのネットワーク接続の帯域幅など、いくつかの要因に依存し得る。例えば、大容量ネットワークが存在する場合に多数のタイルを事前に読み込んで、装置が限られたネットワークを経由してサーバに接続しなければならない場合にコストの削減と実行速度の向上を図ることがある。事前読み込みに当たっては、道路などの地理的特徴、クライアント装置の移動の履歴、ユーザアプリケーションの必要精度、橋および交通手段などの物理的制約を含む更なる要因も用いられ得る。
【０１１４】
本発明の範囲は上記の実施形態に限定されるものではなく、むしろ添付の特許請求の範囲によって定義され、これらの特許請求の範囲が、記載内容の改変および改良を含むことは理解されたい。
【図１】
0005419891.tif 000006
【図２】
0005419891.tif 000007
【図３】
0005419891.tif 000008
【図４】
0005419891.tif 000009
【図５】
0005419891.tif 000010
【図６】
0005419891.tif 000011
【図７】
0005419891.tif 000012
【図８】
0005419891.tif 000013
【図９】
0005419891.tif 000014
【図１０】
0005419891.tif 000015
【図１１】
0005419891.tif 000016
【図１２】
0005419891.tif 000017
【図１３】
0005419891.tif 000018
【図１４】
0005419891.tif 000019
【図１５】
0005419891.tif 000020
【図１６】
0005419891.tif 000021
【図１７】
0005419891.tif 000022
【図１８】
0005419891.tif 000023
【図１９】
0005419891.tif 000024
【図２０】
0005419891.tif 000025
【図２１】
0005419891.tif 000026
【図２２】
0005419891.tif 000027