(57)【要約】  本開示は、ユーザにゾーン情報を提供するためのシステムおよび方法を含む。システムは、プロセッサと命令を記憶するためのメモリとを含み、命令は、実行されたとき、ユーザに関連する現在位置および移動速度を表すデータを受信するステップと、現在位置および移動速度に基づいてユーザに関連する移動状態を決定するステップと、移動状態に基づいてユーザ用の関連ゾーンを作成するステップであって、各領域が１つまたは複数の領域円にマッピングされる１つまたは複数の領域を関連ゾーンが含む、作成するステップと、関連ゾーンについての１つまたは複数のクエリを生成するステップと、１つまたは複数のクエリを使用して関連ゾーンに合致する１つまたは複数のクエリ結果を取得するステップと、１つまたは複数のクエリ結果を処理してユーザに関係するゾーン情報を生成するステップと、ユーザにゾーン情報を提供するステップとをシステムに行わせる。
2017502364.tif 000002
【特許請求の範囲】
【請求項１】
ユーザに関連する現在位置および移動速度を表すデータを受信するステップと、
前記現在位置および前記移動速度に基づいて、前記ユーザに関連する移動状態を決定するステップと、
前記移動状態に基づいて、前記ユーザ用の関連ゾーンであって、各領域が１つまたは複数の領域円にマッピングされる１つまたは複数の領域を含む関連ゾーンを作成するステップと、
前記関連ゾーンについての１つまたは複数のクエリを生成するステップと、
前記１つまたは複数のクエリを使用して、前記関連ゾーンに合致する１つまたは複数のクエリ結果を取得するステップと、
前記１つまたは複数のクエリ結果を処理して、前記ユーザに関係するゾーン情報を生成するステップと、
前記ユーザに前記ゾーン情報を提供するステップと
を含む、コンピュータに実装された方法。
【請求項２】
前記関連ゾーンを作成するステップが、
前記移動状態に基づいて、領域ごとの領域角および領域長を決定するステップと、
前記領域角および前記領域長に基づいて、前記１つまたは複数の領域を生成するステップと
を含む、請求項１に記載の方法。
【請求項３】
前記関連ゾーンを作成するステップが、
各領域内の前記１つまたは複数の領域円用の１つまたは複数の円の中心および１つまたは複数の半径を決定するステップと、
各領域を、前記１つまたは複数の円の中心および前記１つまたは複数の半径によって決定される前記１つまたは複数の対応する領域円に調和させるステップと、
各領域が前記１つまたは複数の対応する領域円にマッピングされた、前記１つまたは複数の領域を含む前記関連ゾーンを決定するステップと
を含む、請求項１に記載の方法。
【請求項４】
前記１つまたは複数のクエリが１つまたは複数の円クエリを含み、各円クエリが各領域内の前記１つまたは複数の領域円のうちの１つに対応する、請求項１から３のいずれか一項に記載の方法。
【請求項５】
前記１つまたは複数のクエリ結果を処理するステップが、
前記１つまたは複数のクエリ結果をフィルタリングして、重複するデータを除去するステップと、
前記１つまたは複数のクエリ結果をフィルタリングして、前記ユーザに関連する移動方向とは反対の方向に関係するデータを除去するステップと、
前記１つまたは複数のフィルタリングされたクエリ結果を組み合わせて、前記ユーザに関係する前記ゾーン情報を生成するステップと
を含む、請求項１から４のいずれか一項に記載の方法。
【請求項６】
前記ユーザに関連する移動方向を表すデータを受信するステップと、
前記現在位置に関連する局所地図を表すデータを受信するステップと、
前記現在位置を前記局所地図と照合して、道路タイプを特定するステップと
をさらに含み、
前記移動状態が、前記道路タイプおよび前記移動方向に基づいてさらに決定される、
請求項１から５のいずれか一項に記載の方法。
【請求項７】
前記関連ゾーンが、移動方向および道路タイプのうちの少なくとも１つに基づいて構成される、請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記１つまたは複数の領域が、前方領域、左方領域、および右方領域を含む、請求項１から７のいずれか一項に記載の方法。
【請求項９】
コンピュータ可読プログラムを含むコンピュータ使用可能媒体を備えるコンピュータプログラム製品であって、前記コンピュータ可読プログラムが、コンピュータ上で実行されたとき、
ユーザに関連する現在位置および移動速度を表すデータを受信するステップと、
前記現在位置および前記移動速度に基づいて、前記ユーザに関連する移動状態を決定するステップと、
前記移動状態に基づいて、前記ユーザ用の関連ゾーンであって、各領域が１つまたは複数の領域円にマッピングされる１つまたは複数の領域を含む関連ゾーンを作成するステップと、
前記関連ゾーンについての１つまたは複数のクエリを生成するステップと、
前記１つまたは複数のクエリを使用して、前記関連ゾーンに合致する１つまたは複数のクエリ結果を取得するステップと、
前記１つまたは複数のクエリ結果を処理して、前記ユーザに関係するゾーン情報を生成するステップと、
前記ユーザに前記ゾーン情報を提供するステップと
を前記コンピュータに行わせる、コンピュータプログラム製品。
【請求項１０】
前記関連ゾーンを作成するステップが、
前記移動状態に基づいて、領域ごとの領域角および領域長を決定するステップと、
前記領域角および前記領域長に基づいて、前記１つまたは複数の領域を生成するステップと
を含む、請求項９に記載のコンピュータプログラム製品。
【請求項１１】
前記関連ゾーンを作成するステップが、
各領域内の前記１つまたは複数の領域円用の１つまたは複数の円の中心および１つまたは複数の半径を決定するステップと、
各領域を、前記１つまたは複数の円の中心および前記１つまたは複数の半径によって決定される前記１つまたは複数の対応する領域円に調和させるステップと、
各領域が前記１つまたは複数の対応する領域円にマッピングされる、前記１つまたは複数の領域を含む前記関連ゾーンを決定するステップと
を含む、請求項９に記載のコンピュータプログラム製品。
【請求項１２】
前記１つまたは複数のクエリが１つまたは複数の円クエリを含み、各円クエリが各領域内の前記１つまたは複数の領域円のうちの１つに対応する、請求項９から１１のいずれか一項に記載のコンピュータプログラム製品。
【請求項１３】
前記１つまたは複数のクエリ結果を処理するステップが、
前記１つまたは複数のクエリ結果をフィルタリングして、重複するデータを除去するステップと、
前記１つまたは複数のクエリ結果をフィルタリングして、前記ユーザに関連する移動方向とは反対の方向に関係するデータを除去するステップと、
前記１つまたは複数のフィルタリングされたクエリ結果を組み合わせて、前記ユーザに関係する前記ゾーン情報を生成するステップと
を含む、請求項９から１２のいずれか一項に記載のコンピュータプログラム製品。
【請求項１４】
前記コンピュータ可読プログラムが、前記コンピュータ上で実行されたとき、
前記ユーザに関連する移動方向を表すデータを受信するステップと、
前記現在位置に関連する局所地図を表すデータを受信するステップと、
前記現在位置を前記局所地図と照合して、道路タイプを特定するステップと
をまた前記コンピュータに行わせ、
前記移動状態が、前記道路タイプおよび前記移動方向に基づいてさらに決定される、
請求項９から１３のいずれか一項に記載のコンピュータプログラム製品。
【請求項１５】
前記関連ゾーンが、移動方向および道路タイプのうちの少なくとも１つに基づいて構成される、請求項９から１４のいずれか一項に記載のコンピュータプログラム製品。
【請求項１６】
プロセッサと、
命令を記憶するメモリと
を備えるシステムであって、前記命令が、実行されたとき、
ユーザに関連する現在位置および移動速度を表すデータを受信するステップと、
前記現在位置および前記移動速度に基づいて、前記ユーザに関連する移動状態を決定するステップと、
前記移動状態に基づいて前記ユーザ用の関連ゾーンを作成するステップであって、各領域が１つまたは複数の領域円にマッピングされる１つまたは複数の領域を前記関連ゾーンが含む、作成するステップと、
前記関連ゾーンについての１つまたは複数のクエリを生成するステップと、
前記１つまたは複数のクエリを使用して、前記関連ゾーンに合致する１つまたは複数のクエリ結果を取得するステップと、
前記１つまたは複数のクエリ結果を処理して、前記ユーザに関係するゾーン情報を生成するステップと、
前記ユーザに前記ゾーン情報を提供するステップと
を前記システムに行わせる、システム。
【請求項１７】
前記命令が、実行されたとき、
前記移動状態に基づいて、領域ごとの領域角および領域長を決定するステップ、ならびに
前記領域角および前記領域長に基づいて、前記１つまたは複数の領域を生成するステップ
によって、前記システムに前記関連ゾーンを作成させる、請求項１６に記載のシステム。
【請求項１８】
前記命令が、実行されたとき、
各領域内の前記１つまたは複数の領域円用の１つまたは複数の円の中心および１つまたは複数の半径を決定するステップ、
前記１つまたは複数の円の中心および前記１つまたは複数の半径によって決定される前記１つまたは複数の対応する領域円に各領域を調和させるステップ、ならびに
各領域が前記１つまたは複数の対応する領域円にマッピングされる、前記１つまたは複数の領域を含む前記関連ゾーンを決定するステップ
によって、前記システムに前記関連ゾーンを作成させる、請求項１６に記載のシステム。
【請求項１９】
前記命令が、実行されたとき、
前記１つまたは複数のクエリ結果をフィルタリングして、重複するデータを除去するステップ、
前記１つまたは複数のクエリ結果をフィルタリングして、前記ユーザに関連する移動方
向とは反対の方向に関係するデータを除去するステップ、および
前記１つまたは複数のフィルタリングされたクエリ結果を組み合わせて、前記ユーザに関係する前記ゾーン情報を生成するステップ
によって、前記システムに前記１つまたは複数のクエリ結果を処理させる、請求項１６から１８のいずれか一項に記載のシステム。
【請求項２０】
前記命令が、実行されたとき、
前記ユーザに関連する移動方向を表すデータを受信するステップと、
前記現在位置に関連する局所地図を表すデータを受信するステップと、
前記現在位置を前記局所地図と照合して、道路タイプを特定するステップと
をまた前記システムに行わせ、
前記移動状態が、前記道路タイプおよび前記移動方向に基づいてさらに決定される、
請求項１６から１９のいずれか一項に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、ユーザに事前（Proactive）ゾーン情報を提供することに関する。詳細に
は、本明細書は、関連ゾーンに基づいてユーザに事前ゾーン情報を提供するためのナビゲーションシステムに関する。
【背景技術】
【０００２】
ユーザは、道路を進む前にその道路に関する情報を先に知りたい場合がある。いくつかの例では、ユーザは、交通情報を取得するために交通ラジオを聴くことができる。しかしながら、交通ラジオは、ユーザの旅行に関係する交通情報を提供しない場合がある。
【０００３】
いくつかの例では、ユーザは、全地球測位システム（ＧＰＳ）などのナビゲーションシステムを使用して、ユーザの旅行に関係する情報を取得することができる。既存のナビゲーションシステムは、目的地を入力することをユーザに要求し、目的地へのルートを計算し、次いで、計算されたルートに関係する情報をユーザに配信する。しかしながら、ユーザは、旅行するとき、ナビゲーションシステムに目的地を入力したくない場合がある。ユーザは、ナビゲーションシステムによって提供されたルートに従わない場合がある。ユーザは、旅行の最中に新しい目的地に行くことを決める場合がある。これらの場合、既存のナビゲーションシステムは、ユーザの旅行に関連する情報をユーザに提供することができない。
【発明の概要】
【０００４】
本開示に記載される主題の一革新的態様によれば、ユーザにゾーン情報を提供するためのシステムは、プロセッサと命令を記憶するためのメモリとを含み、命令は、実行されたとき、ユーザに関連する現在位置および移動速度（travel speed）を表すデータを受信することと、現在位置および移動速度に基づいてユーザに関連する移動状態（travel status）を決定することと、移動状態に基づいて、ユーザ用の関連ゾーン（zone of relevance）であって、各領域が１つまたは複数の領域円（regional circle）にマッピングされる
１つまたは複数の領域を含む関連ゾーンを作成することと、関連ゾーンについての１つまたは複数のクエリを生成することと、１つまたは複数のクエリを使用して関連ゾーンに合致（match）する１つまたは複数のクエリ結果を取得することと、１つまたは複数のクエ
リ結果を処理してユーザに関係するゾーン情報を生成することと、ユーザにゾーン情報を提供することとをシステムに行わせる。
【０００５】
一般に、本開示に記載される主題の別の革新的態様は、ユーザに関連する現在位置および移動速度を表すデータを受信することと、現在位置および移動速度に基づいてユーザに関連する移動状態を決定することと、移動状態に基づいて、ユーザ用の関連ゾーンであって、各領域が１つまたは複数の領域円にマッピングされる１つまたは複数の領域を含む関連ゾーンを作成することと、関連ゾーンについての１つまたは複数のクエリを生成することと、１つまたは複数のクエリを使用して関連ゾーンに合致する１つまたは複数のクエリ結果を取得することと、１つまたは複数のクエリ結果を処理してユーザに関係するゾーン情報を生成することと、ユーザにゾーン情報を提供することとを含む方法において具現化される場合がある。
【０００６】
他の態様は、上記その他の革新的態様のための対応する方法、システム、装置、およびコンピュータプログラム製品を含む。
【０００７】
上記その他の実装形態は、各々、場合によっては、以下の特徴のうちの１つまたは複数
を含む場合がある。たとえば、動作は、ユーザに関連する移動方向を表すデータを受信することと、現在位置に関連する局所地図を表すデータを受信することと、現在位置を局所地図と照合して道路タイプを特定することとを含む。
【０００８】
たとえば、特徴は、移動状態に基づいて領域ごとの領域角（regional angle）および領域長（regional length）を決定することと、領域角および領域長に基づいて１つまたは
複数の領域を生成することと、各領域内の１つまたは複数の領域円用の１つまたは複数の円の中心および１つまたは複数の半径を決定することと、１つまたは複数の円の中心および１つまたは複数の半径によって決定される１つまたは複数の対応する領域円に各領域を調和（match）させることと、各領域が１つまたは複数の対応する領域円にマッピングさ
れる１つまたは複数の領域を含む関連ゾーンを決定することと、各円クエリが各領域内の１つまたは複数の対応する領域円のうちの１つに対応する１つまたは複数の円クエリを１つまたは複数のクエリが含むことと、１つまたは複数のクエリ結果をフィルタリングして重複するデータを除去することと、１つまたは複数のクエリ結果をフィルタリングしてユーザに関連する移動方向とは反対の方向に関係するデータを除去することと、１つまたは複数のフィルタリングされたクエリ結果を組み合わせてユーザに関係するゾーン情報を生成することと、移動状態が道路タイプおよび移動方向に基づいてさらに決定されることと、関連ゾーンが移動方向および道路タイプのうちの少なくとも１つに基づいて構成されることと、１つまたは複数の領域が前方領域、左方領域、および右方領域を含むこととを含む。
【０００９】
本開示は、いくつかの点で特に有利であり得る。第１に、システムは、ユーザに関連する現在位置、移動速度、道路タイプ、および１つまたは複数の移動選好のうちの１つまたは複数を含むユーザの移動状態に基づいて、ユーザ用の関連ゾーンを作成する。システムは、ユーザに関連する最新の移動状態に調和するように関連ゾーンを動的に構成する。第２に、システムは、関連ゾーンに基づいて、ユーザの旅行に先んじて事前ゾーン情報をユーザに提供することが可能である。システムは、ユーザの移動状態に調和するように関連ゾーン情報を動的に更新する。第３に、システムは、目的地を入力することをユーザに要求せず、ユーザにゾーン情報を提供する前にルートを計算する必要がない。システムは、入力を提供することをユーザに要求せずに、ユーザに関係するゾーン情報を提供することが可能である。
【図面の簡単な説明】
【００１０】
【図１】ユーザにゾーン情報を提供するための例示的なシステムを示すブロック図である。
【００１１】
【図２】ナビゲーションアプリケーションの一例を示すブロック図である。
【００１２】
【図３】ユーザにゾーン情報を提供するための例示的な方法のフローチャートである。
【００１３】
【図４Ａ】ユーザにゾーン情報を提供するための別の例示的な方法のフローチャートである。
【図４Ｂ】ユーザにゾーン情報を提供するための別の例示的な方法のフローチャートである。
【００１４】
【図５】領域を１つまたは複数の領域円と調和させるための例示的な方法のフローチャートである。
【００１５】
【図６Ａ】いくつかの実施形態による、領域を１つまたは複数の領域円と調和させるプロセスを示すグラフィック表現である。
【図６Ｂ】いくつかの実施形態による、領域を１つまたは複数の領域円と調和させるプロセスを示すグラフィック表現である。
【図６Ｃ】いくつかの実施形態による、領域を１つまたは複数の領域円と調和させるプロセスを示すグラフィック表現である。
【００１６】
【図７Ａ】いくつかの実施形態による、様々な関連ゾーンを示すグラフィック表現である。
【図７Ｂ】いくつかの実施形態による、様々な関連ゾーンを示すグラフィック表現である。
【図７Ｃ】いくつかの実施形態による、様々な関連ゾーンを示すグラフィック表現である。
【図７Ｄ】いくつかの実施形態による、様々な関連ゾーンを示すグラフィック表現である。
【図７Ｅ】いくつかの実施形態による、様々な関連ゾーンを示すグラフィック表現である。
【図７Ｆ】いくつかの実施形態による、様々な関連ゾーンを示すグラフィック表現である。
【発明を実施するための形態】
【００１７】
本開示は例として示され、添付図面の図に限定するためではなく、その中では同様の要素を参照するために同様の参照番号が使用される。
【００１８】
概要
図１は、一実施形態により、ユーザにゾーン情報を提供するためのシステム１００のブロック図を示す。図示されたシステム１００は、ナビゲーションサーバ１０１と、１つまたは複数のクライアントデバイス１１５と、モバイルコンピューティングシステム１３５と、１つまたは複数のデータサーバ１２０とを含む。システム１００のエンティティは、ネットワーク１０５を介して通信可能に結合される。図１および残りの図において、参照番号、たとえば「１１５ａ」は、特定の参照番号を有する要素に対する参照を表す。後続文字をもたないテキスト内の参照番号、たとえば「１１５」は、その参照番号が書いてある要素のインスタンスに対する一般的な参照を表す。
【００１９】
ネットワーク１０５は、従来のタイプの、有線またはワイヤレスであり得るし、星形構成、トークンリング構成、または他の構成を含む、多数の様々な構成を有する場合がある。さらに、ネットワーク１０５は、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）（たとえば、インターネット）、および／または、複数のデバイスがそれを越えて通信することができる他の相互接続データパスを含む場合がある。いくつかの実施形態では、ネットワーク１０５は、ピアツーピアネットワークであり得る。ネットワーク１０５はまた、様々な異なる通信プロトコルでデータを送信するための電気通信ネットワークの部分に結合されるか、またはそれらを含む場合がある。いくつかの実施形態では、ネットワーク１０５は、ショートメッセージングサービス（ＳＭＳ）、マルチメディアメッセージングサービス（ＭＭＳ）、ハイパーテキスト転送プロトコル（ＨＴＴＰ）、直接データ接続、ＷＡＰ、電子メールなどを介して、データを送受信するためのＢｌｕｅｔｏｏｔｈ通信ネットワークまたはセルラー通信ネットワークを含む。図１は、ナビゲーションサーバ１０１、１つまたは複数のクライアントデバイス１１５、モバイルコンピューティングシステム１３５、および１つまたは複数のデータサーバ１２０に結合された１つのネットワーク１０５を示すが、実際には、１つまたは複数のネットワーク１０５をこれらのエンティティに接続することができる。
【００２０】
一実施形態では、ナビゲーションアプリケーション１０９ａはナビゲーションサーバ１０１上で動作可能であり、ナビゲーションサーバ１０１は信号線１０４を介してネットワークに結合される。ナビゲーションサーバ１０１は、プロセッサ、メモリ、およびネットワーク通信機能を含むハードウェアサーバであり得る。いくつかの実施形態では、ナビゲーションサーバ１０１は、データサーバ１２０ａ、１２０ｎ、クライアントデバイス１１５ａ、１１５ｎ、およびモバイルコンピューティングシステム１３５のうちの１つまたは複数との間でデータを送受信する。ナビゲーションサーバ１０１はまた、ストレージデバイス１４３を含み、ストレージデバイス１４３は下記でより詳細に記載される。図１は１つのナビゲーションサーバ１０１を示すが、システム１００は１つまたは複数のナビゲーションサーバ１０１を含むことができる。
【００２１】
別の実施形態では、ナビゲーションアプリケーション１０９ｂはクライアントデバイス１１５ａ上で動作可能であり、クライアントデバイス１１５ａは信号線１０８を介してネットワーク１０５に結合される。いくつかの実施形態では、クライアントデバイス１１５ａ、１１５ｎは、ナビゲーションサーバ１０１、データサーバ１２０ａ、１２０ｎ、およびモバイルコンピューティングシステム１３５のうちの１つまたは複数との間でデータを送受信する。クライアントデバイス１１５ａ、１１５ｎは、メモリおよびプロセッサを含むコンピューティングデバイス、たとえば、ラップトップコンピュータ、デスクトップコンピュータ、タブレットコンピュータ、携帯電話、携帯情報端末（ＰＤＡ）、モバイル電子メールデバイス、またはネットワーク１０５にアクセスすることが可能な任意の他の電子デバイスである。いくつかの実施形態では、クライアントデバイス１１５ａは、オンラインサービスにアクセスするためのブラウザ１７７と、クライアントデバイス１１５ａによってアクセス可能なデータを記憶するためのストレージデバイス１４５とを含む。ストレージデバイス１４５は下記でより詳細に記載される。図示された実施形態では、ユーザ１２５ａは信号線１１０を介してクライアントデバイス１１５ａと対話（interact）する。クライアントデバイス１１５ｎは、信号線１７５を介してネットワーク１０５に通信可能に結合される。ユーザ１２５ｎは信号線１１４を介してクライアントデバイス１１５ｎと対話する。図１は２つのクライアントデバイス１１５を示すが、システム１００は１つまたは複数のクライアントデバイス１１５を含むことができる。
【００２２】
いくつかの例では、ナビゲーションアプリケーション１０９ｂは、部分的に、クライアントデバイス１１５ａ、１１５ｎに記憶され得るシンクライアントアプリケーションとして働き、部分的に、ナビゲーションサーバ１０１およびモバイルコンピューティングシステム１３５のうちの１つまたは複数に記憶され得る構成要素として働く。たとえば、ナビゲーションサーバ１０１は、ユーザに関係するゾーン情報をストレージデバイス１４３に記憶し、ユーザにゾーン情報を描写するユーザインターフェースを提供するためのグラフィカルデータを生成する。ナビゲーションアプリケーション１０９ｂは、クライアントデバイス１１５に結合されたディスプレイデバイス（図示せず）上にユーザインターフェースを提示するように、ブラウザ１７７に命令を送信する。
【００２３】
さらに別の実施形態では、ナビゲーションアプリケーション１０９ｃはモバイルコンピューティングシステム１３５上で動作可能であり、モバイルコンピューティングシステム１３５は信号線１３４を介してネットワーク１０５に結合される。いくつかの実施形態では、モバイルコンピューティングシステム１３５は、ナビゲーションサーバ１０１、データサーバ１２０ａ、１２０ｎ、およびクライアントデバイス１１５ａ、１１５ｎのうちの１つまたは複数との間でデータを送受信する。モバイルコンピューティングシステム１３５は、メモリおよびプロセッサを含む任意のコンピューティングデバイスである。一実施形態では、モバイルコンピューティングシステム１３５は、車両、自動車、バス、生体工学インプラント、または、非一時的コンピュータエレクトロニクス（たとえば、プロセッサ、メモリ、もしくは非一時的コンピュータエレクトロニクスの任意の組合せ）を有する
任意の他のモバイルシステムのうちの１つである。一実施形態では、モバイルコンピューティングシステム１３５には、ラップトップコンピュータ、タブレットコンピュータ、携帯電話、または、プロセッサおよびメモリを含む任意の他のデバイスが含まれる。いくつかの実施形態では、モバイルコンピューティングシステム１３５はストレージデバイス１４４を含み、ストレージデバイス１４４は下記でより詳細に記載される。一実施形態では、ユーザ１２５はモバイルコンピューティングシステム１３５と対話する。たとえば、ユーザ１２５は、車両を運転するドライバ、または車両内に座る乗客であり得る。図１は１つのモバイルコンピューティングシステム１３５を示すが、システム１００は１つまたは複数のモバイルコンピューティングシステム１３５を含むことができる。
【００２４】
ナビゲーションアプリケーション１０９は、ユーザにゾーン情報を提供するためのコードおよびルーチンである。いくつかの実装形態では、ナビゲーションアプリケーション１０９は、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）または特定用途向け集積回路（ＡＳＩＣ）を含むハードウェアを使用して実装することができる。いくつかの他の実装形態では、ナビゲーションアプリケーション１０９は、ハードウェアとソフトウェアの組合せを使用して実装することができる。いくつかの実装形態では、ナビゲーションアプリケーション１０９は、デバイスとサーバの組合せ、またはデバイスもしくはサーバのうちの１つに記憶される場合がある。ナビゲーションアプリケーション１０９は、図２〜図５を参照して下記でより詳細に記載される。
【００２５】
ストレージデバイス１４３、１４４、および１４５は、各々、本明細書に記載される機能を実現するためのデータを記憶する非一時的メモリであり得る。ストレージデバイス１４３、１４４、および１４５は、各々、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）デバイス、スタティックランダムアクセスメモリ（ＳＲＡＭ）デバイス、フラッシュメモリ、または他の何らかのメモリデバイスであり得る。いくつかの実施形態では、ストレージデバイス１４３、１４４、および１４５はまた、各々、不揮発性メモリまたは同様の永続的なストレージデバイス、および、ハードディスクドライブ、フロッピーディスクドライブ、ＣＤ  ＲＯＭデバイス、ＤＶＤ  ＲＯＭデバイス、ＤＶＤ  ＲＡＭデバイス、ＤＶＤ  ＲＷデバイス、フラッシュメモリデバイス、またはより永続的に情報を記憶するための他の何らかのマスストレージデバイスを含む媒体を含む。
【００２６】
一実施形態では、ストレージデバイス１４３、１４４、および１４５は、各々、ユーザに関連する移動履歴データ（たとえば、ユーザの過去の旅行に関連する出発位置、目的地、ルート、移動継続時間など）を表すデータ、ユーザに関連する１つまたは複数の移動選好（travel preference）を表すデータ、ユーザに関連する現在位置を表すデータ、ユー
ザに関連する移動速度（たとえば、ユーザが運転しているか、または乗車している車両の速度）を表すデータ、ナビゲーション指示（たとえば、第１の位置から第２の位置へのルート）を表すデータ、ユーザに関連する関連ゾーンを表すデータ、およびユーザに関係するゾーン情報などのうちの１つまたは複数を記憶する。関連ゾーンおよびゾーン情報は、図２を参照して下記でより詳細に記載される。ストレージデバイス１４３、１４４、および１４５は、本明細書に記載される機能を実現するための他のデータを記憶することができる。
【００２７】
例示的な移動選好には、限定はしないが、ユーザの運転選好（たとえば、高速道路以外のルートを選ぶこと、移動時間が最も速いルートを選ぶことなど）、および関連ゾーンについてのユーザの設定選好（configuration preference. たとえば、ユーザによって設定される領域の数、領域ごとのサイズ、領域ごとの形状、角度オフセット、領域角、領域長など）が含まれる。
【００２８】
データサーバ１２０ａは、プロセッサ、メモリ、およびネットワーク通信機能を含むハ
ードウェアサーバであり得る。いくつかの実施形態では、データサーバ１２０ａは、ナビゲーションサーバ１０１、クライアントデバイス１１５ａ、１１５ｎ、およびモバイルコンピューティングシステム１３５のうちの１つまたは複数との間でデータを送受信する。図示された実施形態では、データサーバ１２０ａは、信号線１２１を介してネットワーク１０５に通信可能に結合される。データサーバ１２０ｎは、信号線１２３を介してネットワーク１０５に通信可能に結合される。図１は２つのデータサーバ１２０ａ、１２０ｎを示すが、システム１００は１つまたは複数のデータサーバ１２０を含む場合がある。
【００２９】
一実施形態では、データサーバ１２０ａは、ナビゲーションアプリケーション１０９に様々な情報を提供するデータソースとして働く。たとえば、データサーバ１２０ａは、ナビゲーションアプリケーション１０９に交通情報、道路工事情報、事故報告などを提供する交通プロバイダであり得る。別の例では、データサーバ１２０ａは、ナビゲーションアプリケーション１０９に軽食サービスの位置、ガソリンスタンド、観光名所、イベント（たとえば、スポーツイベント）、天気状況などを表すデータを提供する。
【００３０】
図示された実施形態では、データサーバ１２０ａは、マッピングアプリケーション１２２を含む。マッピングアプリケーション１２２は、ナビゲーションアプリケーション１０９から受信された要求またはクエリを処理するためのコードおよびルーチンであり得る。いくつかの実施形態では、マッピングアプリケーション１２２は、ナビゲーションアプリケーション１０９から地図に対する要求を受信する。たとえば、ナビゲーションアプリケーション１０９は、マッピングアプリケーション１２２に局所地図に対する要求を送信する。マッピングアプリケーション１２２は、要求を処理し、ナビゲーションアプリケーション１０９に局所地図を表すデータを返信する。
【００３１】
いくつかの実施形態では、マッピングアプリケーション１２２は、地理的領域に関係する情報を取得することが可能である。たとえば、マッピングアプリケーション１２２は、所与の半径および所与の中心点を有する円形の地理的領域に関係する交通情報、天気情報、または他の情報を取得する。いくつかの例では、マッピングアプリケーション１２２は、ナビゲーションアプリケーション１０９から関連ゾーンを指定するクエリを受信し、関連ゾーンに合致するクエリ結果を生成し、ナビゲーションアプリケーション１０９にクエリ結果を送信する。いくつかの例では、マッピングアプリケーション１２２は、ナビゲーションアプリケーション１０９から１つまたは複数の円クエリを受信し、１つまたは複数の円クエリに合致する１つまたは複数のクエリ結果を生成し、ナビゲーションアプリケーション１０９に１つまたは複数のクエリ結果を送信する。円クエリおよびクエリ結果は、図２を参照して下記に記載される。
【００３２】
例示的なナビゲーションアプリケーション
次に図２を参照すると、ナビゲーションアプリケーション１０９の例がより詳細に示される。図２は、いくつかの実施形態による、ナビゲーションアプリケーション１０９と、プロセッサ２３５と、メモリ２３７と、通信ユニット２４１と、入力／出力デバイス２４３と、ストレージデバイス２４５とを含むコンピューティングデバイス２００のブロック図である。コンピューティングデバイス２００の構成要素は、バス２２０によって通信可能に結合される。入力／出力デバイス２４３は、信号線２３０を介してバス２２０に通信可能に結合される。一実施形態では、コンピューティングデバイス２００はナビゲーションサーバ１０１である。別の実施形態では、コンピューティングデバイス２００はクライアントデバイス１１５である。さらに別の実施形態では、コンピューティングデバイス２００はモバイルコンピューティングシステム１３５である。
【００３３】
プロセッサ２３５は、算術論理演算ユニット、マイクロプロセッサ、汎用コントローラ、または、計算を実行し、ディスプレイデバイスに電子表示信号を供給する他の何らかの
プロセッサアレイを含む。プロセッサ２３５は、信号線２２２を介して他の構成要素と通信するためのバス２２０に結合される。プロセッサ２３５は、データ信号を処理し、複合命令セットコンピュータ（ＣＩＳＣ）アーキテクチャ、縮小命令セットコンピュータ（ＲＩＳＣ）アーキテクチャ、または命令セットの組合せを実装するアーキテクチャを含む、様々なコンピューティングアーキテクチャを含む場合がある。図２は単一のプロセッサ２３５を含むが、複数のプロセッサ２３５が含まれる場合がある。他のプロセッサ、オペレーティングシステム、センサ、ディスプレイ、および物理構成が可能である。
【００３４】
メモリ２３７は、プロセッサ２３５によって実行され得る命令および／またはデータを記憶する。メモリ２３７は、信号線２２４を介して他の構成要素と通信するためのバス２２０に結合される。命令および／またはデータは、本明細書に記載される技法を実行するためのコードを含む場合がある。メモリ２３７は、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）デバイス、スタティックランダムアクセスメモリ（ＳＲＡＭ）デバイス、フラッシュメモリ、または他の何らかのメモリデバイスであり得る。いくつかの実施形態では、メモリ２３７はまた、不揮発性メモリまたは同様の永続的なストレージデバイス、および、ハードディスクドライブ、フロッピーディスクドライブ、ＣＤ  ＲＯＭデバイス、ＤＶＤ  ＲＯＭデバイス、ＤＶＤ  ＲＡＭデバイス、ＤＶＤ  ＲＷデバイス、フラッシュメモリデバイス、またはより永続的に情報を記憶するための他の何らかのマスストレージデバイスを含む媒体を含む。
【００３５】
図示された実施形態では、通信ユニット２４１は、信号線２２６を介してバス２２０に通信可能に結合される。通信ユニット２４１は、ナビゲーションサーバ１０１、モバイルコンピューティングシステム１３５、クライアントデバイス１１５、およびデータサーバ１２０のうちの１つまたは複数との間でデータを送受信する。いくつかの実装形態では、通信ユニット２４１は、ネットワーク１０５または他の通信チャネルへの直接物理接続用のポートを含む。たとえば、通信ユニット２４１は、ＵＳＢ、ＳＤ、ＣＡＴ−５、またはクライアントデバイス１１５との有線通信用の同様のポートを含む。いくつかの実装形態では、通信ユニット２４１は、クライアントデバイス１１５とデータを交換するためのワイヤレストランシーバ、または、ＩＥＥＥ８０２．１１、ＩＥＥＥ８０２．１６、ＢＬＵＥＴＯＯＴＨ（登録商標）、専用短距離通信（ＤＳＲＣ）、もしくは別の適切なワイヤレス通信方法を含む、１つもしくは複数のワイヤレス通信を使用する他の通信チャネルを含む。
【００３６】
いくつかの実装形態では、通信ユニット２４１は、ショートメッセージングサービス（ＳＭＳ）、マルチメディアメッセージングサービス（ＭＭＳ）、ハイパーテキスト転送プロトコル（ＨＴＴＰ）、直接データ接続、ＷＡＰ、電子メール、または別の適切なタイプの電子通信などを含む、セルラー通信ネットワークを介してデータを送受信するためのセルラー通信トランシーバを含む。いくつかの実装形態では、通信ユニット２４１は、有線ポートおよびワイヤレストランシーバを含む。通信ユニット２４１はまた、ＴＣＰ／ＩＰ、ＨＴＴＰ、ＨＴＴＰＳ、およびＳＭＴＰなどを含む標準ネットワークプロトコルを使用して、ファイルおよび／またはメディアオブジェクトを配信するための、ネットワーク１０５への他の従来の接続を提供する。
【００３７】
ストレージデバイス２４５は、本明細書に記載される機能を実現するためのデータを記憶する非一時的メモリであり得る。ストレージデバイス２４５は、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）デバイス、スタティックランダムアクセスメモリ（ＳＲＡＭ）デバイス、フラッシュメモリ、または他の何らかのメモリデバイスであり得る。いくつかの実施形態では、ストレージデバイス２４５は、不揮発性メモリまたは同様の永続的なストレージデバイス、および、ハードディスクドライブ、フロッピーディスクドライブ、ＣＤ  ＲＯＭデバイス、ＤＶＤ  ＲＯＭデバイス、ＤＶＤ  ＲＡＭデバイス、ＤＶＤ  Ｒ
Ｗデバイス、フラッシュメモリデバイス、またはより永続的に情報を記憶するための他の何らかのマスストレージデバイスを含む媒体を含む。
【００３８】
図示された実施形態では、ストレージデバイス２４５は、信号線２２８を介してバス２２０に通信可能に結合される。一実施形態では、ストレージデバイス２４５は、ナビゲーションサーバ１０１内のストレージデバイス１４３を表す。別の実施形態では、ストレージデバイス２４５は、モバイルコンピューティングシステム１３５内のストレージデバイス１４４を表す。さらに別の実施形態では、ストレージデバイス２４５は、クライアントデバイス１１５内のストレージデバイス１４５を表す。
【００３９】
図示された実施形態では、ナビゲーションアプリケーション１０９は、コントローラ２０２と、地図モジュール２０４と、状態モジュール２０６と、ゾーンクリエイタ２０７と、検索モジュール２０８と、処理モジュール２１０と、プレゼンテーションモジュール２１２と、ユーザインターフェースモジュール２１４とを含む。ナビゲーションアプリケーション１０９のこれらの構成要素は、バス２２０を介して通信可能に結合される。
【００４０】
コントローラ２０２は、ナビゲーションアプリケーション１０９とコンピューティングデバイス２００の他の構成要素との間の通信を処理するためのルーチンを含むソフトウェアであり得る。いくつかの実装形態では、コントローラ２０２は、ナビゲーションアプリケーション１０９とコンピューティングデバイス２００の他の構成要素との間の通信を処理するための下記に記載される機能を実現するために、プロセッサ２３５によって実行可能な１組の命令であり得る。いくつかの実装形態では、コントローラ２０２は、コンピューティングデバイス２００のメモリ２３７に記憶することができ、プロセッサ２３５によってアクセス可能かつ実行可能であり得る。コントローラ２０２は、プロセッサ２３５およびコンピューティングデバイス２００の他の構成要素との協働および通信に適合される場合がある。
【００４１】
コントローラ２０２は、ナビゲーションアプリケーション１０９がどこに記憶されているかに応じて、クライアントデバイス１１５、データサーバ１２０、ナビゲーションサーバ１０１、およびモバイルコンピューティングシステム１３５のうちの１つまたは複数との間で、通信ユニット２４１を介してデータを送受信する。たとえば、コントローラ２０２は、通信ユニット２４１を介して、データサーバ１２０からクエリ結果を表すデータを受信し、検索モジュール２０８にクエリ結果を送信する。別の例では、コントローラ２０２は、ユーザインターフェースモジュール２１４からユーザにユーザインターフェースを提供するためのグラフィカルデータを受信し、クライアントデバイス１１５またはモバイルコンピューティングシステム１３５にグラフィカルデータを送信し、ユーザにユーザインターフェースを提示することをクライアントデバイス１１５またはモバイルコンピューティングシステム１３５に行わせる。
【００４２】
いくつかの実装形態では、コントローラ２０２は、ナビゲーションアプリケーション１０９の他の構成要素からデータを受信し、ストレージデバイス２４５にデータを記憶する。たとえば、コントローラ２０２は、ユーザインターフェースモジュール２１４からグラフィカルデータを受信し、ストレージデバイス２４５にグラフィカルデータを記憶する。いくつかの実装形態では、コントローラ２０２は、ストレージデバイス２４５からデータを取得し、ナビゲーションアプリケーション１０９の他の構成要素に取得されたデータを送信する。たとえば、コントローラ２０２は、ストレージ２４５から関連ゾーンを表すデータを取得し、検索モジュール２０８にデータを送信する。
【００４３】
地図モジュール２０４は、地図上の位置を照合するためのルーチンを含むソフトウェアであり得る。いくつかの実装形態では、地図モジュール２０４は、地図上の位置を照合す
るための下記に記載される機能を実現するために、プロセッサ２３５によって実行可能な１組の命令であり得る。いくつかの実装形態では、地図モジュール２０４は、コンピューティングデバイス２００のメモリ２３７に記憶することができ、プロセッサ２３５によってアクセス可能かつ実行可能であり得る。地図モジュール２０４は、プロセッサ２３５およびコンピューティングデバイス２００の他の構成要素との協働および通信に適合される場合がある。
【００４４】
一実施形態では、地図モジュール２０４は、ユーザに関連する現在位置を表すデータを受信する。たとえば、地図モジュール２０４は、ユーザによって操作される、クライアントデバイス１１５またはモバイルコンピューティングシステム１３５にインストールされた全地球測位システム（ＧＰＳ）から、ユーザに関連する現在位置を表すデータを受信する。一実施形態では、地図モジュール２０４は、データサーバ１２０から、ユーザの現在位置に関連する局所地図を表すデータを取得する。たとえば、地図モジュール２０４は、ネットワーク１０５を介してマッピングアプリケーション１２２に局所地図に対する要求を送信し、マッピングアプリケーション１２２から局所地図を表すデータを受信する。
【００４５】
地図モジュール２０４は、局所地図上の現在位置を照合し、ユーザの現在位置に関連する道路タイプを特定する。たとえば、地図モジュール２０４は、局所地図上の現在位置を正確に示し、現在位置に関連する道路タイプを特定する。例示的な道路タイプには、限定はしないが、高速道路、地方道路、駐車場、小道、橋、トンネル、または私道などが含まれる。他の例示的な道路タイプが可能である。一実施形態では、地図モジュール２０４は、状態モジュール２０６に道路タイプを表すデータを送信する。別の実施形態では、地図モジュール２０４は、ストレージ２４５に道路タイプを表すデータを記憶する。
【００４６】
状態モジュール２０６は、ユーザに関連する移動状態を決定するためのルーチンを含むソフトウェアであり得る。いくつかの実装形態では、状態モジュール２０６は、ユーザに関連する移動状態を決定するための下記に記載される機能を実現するために、プロセッサ２３５によって実行可能な１組の命令であり得る。いくつかの実装形態では、状態モジュール２０６は、コンピューティングデバイス２００のメモリ２３７に記憶することができ、プロセッサ２３５によってアクセス可能かつ実行可能であり得る。状態モジュール２０６は、プロセッサ２３５およびコンピューティングデバイス２００の他の構成要素との協働および通信に適合される場合がある。
【００４７】
一実施形態では、状態モジュール２０６は、ユーザによって操作される、クライアントデバイス１１５またはモバイルコンピューティングシステム１３５にインストールされたＧＰＳから、ユーザに関連する現在位置、移動速度、現在の移動ルート、移動方向のうちの１つまたは複数を表すデータを受信する。例示的な移動方向には、限定はしないが、南に進む方向、北に進む方向、南東に進む方向、高速道路に入る方向、高速道路から出る方向などが含まれる。他の例示的な移動方向が可能である。一実施形態では、状態モジュール２０６は、地図モジュール２０４から、現在位置に関連する道路タイプを表すデータを受信する。
【００４８】
状態モジュール２０６は、ユーザに関連する移動状態を決定する。移動状態は、ユーザに関連する移動の状態を表すデータである。一実施形態では、移動状態は、ユーザに関連する現在位置、移動速度、移動ルート、移動方向、および道路タイプのうちの１つまたは複数を含む。たとえば、移動状態は、ユーザが運転する車両のエンジンがちょうどオンにされ、移動速度がゼロなので、ユーザが移動の出発点にいることを示す。別の例では、移動状態は、ユーザが左に曲がり、新しい移動方向に前進することを示す。さらに別の例では、移動状態は、ユーザが高速道路上で毎時６５マイルの速度で南向きの方向に移動していることを示す。さらに別の例では、移動状態は、ユーザが２つの道路の交差点で止まる
ことを示す。さらに別の例では、移動状態は、移動速度がゼロであり、ユーザが運転する車両のエンジンがちょうどオフにされたので、ユーザが移動の終着点にいることを示す。他の例示的な移動状態が可能である。
【００４９】
一実施形態では、状態モジュール２０６は、ゾーンクリエイタ２０７に移動状態を表すデータを送信する。別の実施形態では、状態モジュール２０６は、ストレージ２４５に移動状態を表すデータを記憶する。
【００５０】
ゾーンクリエイタ２０７は、ユーザに関連する関連ゾーンを作成するためのルーチンを含むソフトウェアであり得る。いくつかの実装形態では、ゾーンクリエイタ２０７は、ユーザに関連する関連ゾーンを作成するための下記に記載される機能を実現するために、プロセッサ２３５によって実行可能な１組の命令であり得る。いくつかの実装形態では、ゾーンクリエイタ２０７は、コンピューティングデバイス２００のメモリ２３７に記憶することができ、プロセッサ２３５によってアクセス可能かつ実行可能であり得る。ゾーンクリエイタ２０７は、プロセッサ２３５およびコンピューティングデバイス２００の他の構成要素との協働および通信に適合される場合がある。
【００５１】
関連ゾーンは、ユーザに関係する地理的領域または複数の地理的領域の組合せである。たとえば、関連ゾーンは、ユーザに関連する現在位置から前方に拡張された地理的領域または複数の地理的領域の組合せである。一実施形態では、関連ゾーンは１つまたは複数の領域を含む。領域は、関連ゾーンからのサブエリアである。一実施形態では、領域は、ユーザの現在位置に関連するサブエリアである。たとえば、領域は、ユーザの現在位置から前方に拡張されたサブエリアである。一実施形態では、領域は、三角形、長方形、円形、または任意の他の幾何形状を有するサブエリアである。別の実施形態では、領域は、様々な幾何形状を有する地理的領域の組合せによって形成される。たとえば、領域は、図７Ｅに示された円形の地理的領域の組合せによって形成される。関連ゾーン内の例示的な領域が、図７Ａ〜図７Ｆを参照して示される。
【００５２】
一実施形態では、関連ゾーンは、前方領域、左方領域、および右方領域を含む。前方領域は、ユーザが現在位置から前方に移動すると予想される領域であり得る。たとえば、前方領域は、ユーザに関連する移動方向と一直線になっている領域である。別の例では、ユーザが高速道路上で移動している場合、前方領域は、ユーザの現在位置から前方に拡張された、高速道路に沿った領域である。ユーザに関連する移動方向の方を向くと、左方領域は前方領域の左手側にある領域であり、右方領域は前方領域の右手側にある領域である。
【００５３】
図７Ａを参照すると、前方領域７０４、左方領域７０２、および右方領域７０６を含む関連ゾーンが、いくつかの例によって示される。前方領域７０４、左方領域７０２、および右方領域７０６は、各々、三角形（たとえば、二等辺三角形）を有する。図７Ａは、ユーザに関連する現在位置７２４および移動方向７２５を示す。
【００５４】
いくつかの実施形態では、中心線は領域を２つの等しい部分に分割する線である。たとえば、中心線７０８ａは左方領域７０２を２つの等しい部分に分割し、中心線７０８ｂは前方領域７０４を２つの等しい部分に分割し、中心線７０８ｃは右方領域７０６を２つの等しい部分に分割する。
【００５５】
いくつかの実施形態では、領域角は、領域の中心線と境界線によって形成される角度であり、境界線は、ユーザに関連する現在位置から延びる。図７Ａは、左方領域７０２の領域角７１０ａ、前方領域７０４の領域角７１０ｂ、および右方領域７０６の領域角７１０ｃを示す。
【００５６】
いくつかの実施形態では、領域長は、ユーザに関連する現在位置から領域の底部境界までの距離である。たとえば、領域長は、現在位置から三角形領域の底部側までの距離である。図７Ａは、左方領域７０２の領域長７２０ａ、前方領域７０４の領域長７２０ｂ、および右方領域７０６の領域長７２０ｃを示す。
【００５７】
いくつかの実施形態では、２つの領域に関連する角度オフセットは、２つの領域の２つの中心線の間の角度である。図７Ａは、左方領域７０２と前方領域７０４に関連する角度オフセット７１２ａ、および前方領域７０４と右方領域７０６に関連する角度オフセット７１２ｂを示す。
【００５８】
図２に戻ると、一実施形態では、ゾーンクリエイタ２０７は、状態モジュール２０６からユーザに関連する移動状態を表すデータを受信する。ゾーンクリエイタ２０７は、ユーザの移動状態に基づいて、ユーザ用の１つまたは複数の領域を含む関連ゾーンを決定する。たとえば、ゾーンクリエイタ２０７は、ユーザに関連する現在位置、移動速度、移動方向、道路タイプ、および１つまたは複数の移動選好のうちの１つまたは複数に基づいて、関連ゾーンのサイズ（たとえば、関連ゾーンによって指定された地理的領域のサイズ）を決定する。
【００５９】
いくつかの実装形態では、ゾーンクリエイタ２０７は、移動状態に基づいて、領域の数、領域ごとのサイズ、および２つの領域間の距離を決定する。たとえば、ゾーンクリエイタ２０７は、現在位置、道路タイプ、移動方向、および移動速度などのうちの１つまたは複数に基づいて、（１）領域ごとの領域角、（２）領域ごとの領域長、および（３）２つの隣接する領域間の角度オフセットのうちの１つまたは複数を決定する。いくつかの実装形態では、各領域は、同じ領域角および同じ領域長を有し、各々の２つの隣接する領域は、同じ角度オフセットを有する。いくつかの他の実装形態では、各領域は、異なる領域角および異なる領域長を有し、各々の２つの隣接する領域は、異なる角度オフセットを有する。
【００６０】
ゾーンクリエイタ２０７は、ユーザが前方に移動するにつれて、移動速度、道路タイプ、および移動方向などに更新を適応するように、関連ゾーンを連続して動的に構成することが可能である。たとえば、ゾーンクリエイタ２０７が、関連ゾーン用の前方領域、左方領域、および右方領域を生成すると仮定する。移動の開始時、ゾーンクリエイタ２０７は、（１）前方領域用の第１の領域角および第１の領域長、（２）左方領域用の第２の領域角および第２の領域長、（３）右方領域用の第３の領域角および第３の領域長、（４）前方領域と左方領域との間の第１の角度オフセット、ならびに（５）前方領域と右方領域との間の第２の角度オフセットを生成する。前方領域、左方領域、および右方領域によって形成された関連ゾーンは、ユーザの現在位置から前方に拡張された広範な地理的領域（たとえば、ユーザの移動方向の前方に拡張された広範な地理的領域）をカバーする。
【００６１】
ユーザが前方に移動するにつれて、ゾーンクリエイタ２０７は、（１）前方領域用の第１の領域角を減少させること、および／または第１の領域長を増大させること、（２）左方領域用の第２の領域角を減少させること、および／または第２の領域長を増大させること、（３）右方領域用の第３の領域角を減少させること、および／または第３の領域長を増大させること、（４）前方領域と左方領域との間の第１の角度オフセットを減少させること、ならびに（５）前方領域と右方領域との間の第２の角度オフセットを減少させることのうちの１つまたは複数によって、関連ゾーンを徐々に絞り込みかつ移動方向に集束されるように関連ゾーンを延長させる。
【００６２】
利用可能な方向選択が限定される道路（たとえば、高速道路）にユーザが入った場合、ゾーンクリエイタ２０７は、さらに、（１）前方領域用の第１の領域角を減少させること
、および／もしくは第１の領域長を増大させること、（２）左方領域用の第２の領域角を減少させること、および／もしくは第２の領域長を増大させること、（３）右方領域用の第３の領域角を減少させること、および／もしくは第３の領域長を増大させること、（４）前方領域と左方領域との間の第１の角度オフセットを減少させること、ならびに／または（５）前方領域と右方領域との間の第２の角度オフセットを減少させることによって、関連ゾーンをさらに絞り込み、かつユーザの移動方向にさらにいっそう集束されるように関連ゾーンを延長させる。この場合、関連ゾーンは、道路によって決定されたルート（たとえば、高速道路によって画定されたルート）に集束される。関連ゾーンは、ルートのすぐ近くに交差点を含む場合もある。
【００６３】
一実施形態では、ゾーンクリエイタ２０７は、各々の生成された領域を１つまたは複数のサブ領域に調和させる。ここで、各サブ領域は、完全または部分的にそれぞれの領域内に位置する。サブ領域は、長方形、正方形、円形、または任意の他の形状であり得る。領域内に少なくとも部分的に位置する円形を有するサブ領域は、領域の領域円と呼ばれる。いくつかの例では、ゾーンクリエイタ２０７は、各々の生成された領域を１つまたは複数の領域円に調和させる。ここで、各領域円は、完全または部分的にそれぞれの領域内に位置する。たとえば、ゾーンクリエイタ２０７は、各領域内の１つまたは複数の領域円用の１つまたは複数の円の中心および１つまたは複数の半径を決定する。ここで、１つまたは複数の領域円は、１つまたは複数の円の中心および１つまたは複数の半径によって画定される。領域と１つまたは複数の領域円との間の調和プロセスは、図５〜図６Ｃを参照して下記に記載される。
【００６４】
いくつかの実装形態では、１つまたは複数の領域円はしだいに増大する半径を有する。１つまたは複数の領域円は、それぞれの領域の中心線上に位置する円の中心を有する。いくつかの他の実装形態では、いくつかの領域円は同じ半径を有し、いくつかの領域円は、それぞれの領域の中心線上に位置しない円の中心を有する。一実施形態では、領域円は重複する円であり得る。たとえば、領域円は、同じ領域内の別の隣接する領域円と重複することができる。重複する領域円を有する例示的な領域が図７Ｅに示される。別の実施形態では、領域円は重複しない円であり得る。たとえば、領域円は、同じ領域内の別の隣接する領域円と重複しない。
【００６５】
一実施形態では、ゾーンクリエイタ２０７は、各領域が上述されたように１つまたは複数の領域円にマッピングされている、１つまたは複数の領域（たとえば、左方領域、前方領域、および右方領域）を含む関連ゾーンを作成する。ゾーンクリエイタ２０７は、すべての領域内のすべての領域円を含む関連ゾーンを表すデータを検索モジュール２０８に送信する。一実施形態では、ゾーンクリエイタ２０７は、ストレージ２４５に関連ゾーンを表すデータを記憶する。
【００６６】
検索モジュール２０８は、クエリに合致するクエリ結果を取得するために１つまたは複数のデータソースを検索するためのルーチンを含むソフトウェアであり得る。いくつかの実装形態では、検索モジュール２０８は、１つまたは複数のデータソースを検索してクエリに合致するクエリ結果を取得するための下記に記載される機能を実現するために、プロセッサ２３５によって実行可能な１組の命令であり得る。いくつかの実装形態では、検索モジュール２０８は、コンピューティングデバイス２００のメモリ２３７に記憶することができ、プロセッサ２３５によってアクセス可能かつ実行可能であり得る。検索モジュール２０８は、プロセッサ２３５およびコンピューティングデバイス２００の他の構成要素との協働および通信に適合される場合がある。
【００６７】
クエリ結果はクエリに合致する検索結果である。たとえば、クエリ結果は、クエリによって指定された関連ゾーンに合致する。別の例では、クエリ結果は、道路地図、交通情報
、道路工事情報、事故報告、軽食サービスの位置、ガソリンスタンド、観光名所、イベント（たとえば、スポーツイベント）、天気状況、ユーザの移動履歴データ、および関連ゾーンに関係する任意の他のデータのうちの１つまたは複数を含む。
【００６８】
一実施形態では、検索モジュール２０８は、ゾーンクリエイタ２０７から関連ゾーンを表すデータを受信する。検索モジュール２０８は、関連ゾーンについてのクエリを生成し、１つまたは複数のデータソースを検索してクエリに合致するクエリ結果を取得する。例示的なデータソースには、限定はしないが、ナビゲーションサーバ１０１、モバイルコンピューティングシステム１３５、および１つまたは複数のデータサーバ１２０が含まれる。たとえば、検索モジュール２０８は、モバイルコンピューティングシステム１３５内のストレージデバイス１４４を検索して、関連ゾーンに関係するユーザの移動履歴データを取得する。別の例では、検索モジュール２０８は、１つまたは複数のデータサーバ１２０を検索して、関連ゾーンに関係するリアルタイムの交通最新情報、ガソリンスタンドの位置、天気状況最新情報などのうちの１つまたは複数を取得する。検索モジュール２０８は、処理モジュール２１０にクエリ結果を送信する。
【００６９】
一実施形態では、検索モジュール２０８は、１つまたは複数の領域を含む関連ゾーンを表すデータを受信する。ここで、各領域は１つまたは複数の領域円にマッピングされている。検索モジュール２０８は、関連ゾーンについての１つまたは複数の円クエリを生成し、各円クエリは１つの領域円に対応する。円クエリは、領域円に合致するクエリ結果を取得するために使用されるクエリである。検索モジュール２０８は、１つまたは複数のデータソースを検索して、１つまたは複数の円クエリを使用して１つまたは複数のクエリ結果を取得する。各クエリ結果は円クエリのうちの１つに対応し、それぞれの円クエリに関連する領域円に合致する。たとえば、円クエリに対応するクエリ結果は、交通情報、軽食サービスの位置、ガソリンスタンド、観光名所、イベント、天気状況、ユーザの移動履歴データ、および／または円クエリに関係する領域円に合致する任意の他のデータのうちの１つまたは複数を含む。
【００７０】
一実施形態では、検索モジュール２０８は、ストレージ２４５に１つまたは複数のクエリ結果を記憶する。別の実施形態では、検索モジュール２０８は、処理モジュール２１０に１つまたは複数のクエリ結果を送信する。
【００７１】
処理モジュール２１０は、１つまたは複数のクエリ結果を処理するためのルーチンを含むソフトウェアであり得る。いくつかの実装形態では、処理モジュール２１０は、１つまたは複数のクエリ結果を処理するための下記に記載される機能を実現するために、プロセッサ２３５によって実行可能な１組の命令であり得る。いくつかの実装形態では、処理モジュール２１０は、コンピューティングデバイス２００のメモリ２３７に記憶することができ、プロセッサ２３５によってアクセス可能かつ実行可能であり得る。処理モジュール２１０は、プロセッサ２３５およびコンピューティングデバイス２００の他の構成要素との協働および通信に適合される場合がある。
【００７２】
一実施形態では、処理モジュール２１０は、検索モジュール２０８から１つまたは複数のクエリ結果を受信し、１つまたは複数のクエリ結果を処理する。いくつかの実装形態では、処理モジュール２１０は、１つまたは複数のクエリ結果をフィルタリングして、重複するデータ（たとえば、重複する交通報告、重複する天気予報など）を除去する。いくつかの実装形態では、処理モジュール２１０は、１つまたは複数のクエリ結果をフィルタリングして、ユーザの移動方向とは反対の方向に関係するデータを除去する。たとえば、ユーザが南向きの方向の高速道路上を移動すると仮定する。処理モジュール２１０は、クエリ結果をフィルタリングして、高速道路の北向きの方向の交通の流れにのみ影響する交通情報、道路工事情報、事故報告などを除去する。
【００７３】
処理モジュール２１０は、処理されたクエリ結果に基づいて、ユーザに関係するゾーン情報を生成する。たとえば、処理モジュール２１０は、１つまたは複数のフィルタリングされたクエリ結果を組み合わせて、ユーザに関係するゾーン情報を生成する。ゾーン情報は、ユーザに関連する関連ゾーンに関係する任意の情報である。一実施形態では、ゾーン情報は、ユーザに関連する関連ゾーンに合致する。たとえば、ゾーン情報は、関連ゾーン内の１つまたは複数の領域内の１つまたは複数の領域円に合致する。たとえば、ゾーン情報は、関連ゾーンに関係する交通情報（たとえば、関連ゾーン内のリアルタイムの交通最新情報、事故報告、現在の交通状態）、道路工事情報、軽食サービスの位置、ガソリンスタンド、観光名所、イベント、天気状況、およびユーザの移動履歴データのうちの１つまたは複数を含む。ゾーン情報は、関連ゾーンに関係する他の情報を含む場合がある。
【００７４】
一実施形態では、処理モジュール２１０は、プレゼンテーションモジュール２１２にゾーン情報を送信する。別の実施形態では、処理モジュール２１０は、ストレージ２４５にゾーン情報を記憶する。
【００７５】
プレゼンテーションモジュール２１２は、ユーザにゾーン情報を提示するためのルーチンを含むソフトウェアであり得る。いくつかの実装形態では、プレゼンテーションモジュール２１２は、ユーザにゾーン情報を提示するための下記に記載される機能を実現するために、プロセッサ２３５によって実行可能な１組の命令であり得る。いくつかの実装形態では、プレゼンテーションモジュール２１２は、コンピューティングデバイス２００のメモリ２３７に記憶することができ、プロセッサ２３５によってアクセス可能かつ実行可能であり得る。プレゼンテーションモジュール２１２は、プロセッサ２３５およびコンピューティングデバイス２００の他の構成要素との協働および通信に適合される場合がある。
【００７６】
一実施形態では、プレゼンテーションモジュール２１２は、処理モジュール２１０からユーザに関係するゾーン情報を受信する。プレゼンテーションモジュール２１２は、ユーザにゾーン情報を提供する。たとえば、プレゼンテーションモジュール２１２は、クライアントデバイス１１５および／またはモバイルコンピューティングシステム１３５にゾーン情報を配信し、スピーカシステム（図示せず）を使用してユーザにゾーン情報を再生することをクライアントデバイス１１５および／またはモバイルコンピューティングシステム１３５に行わせる。別の例では、プレゼンテーションモジュール２１２は、ユーザにゾーン情報を描写するユーザインターフェースを提供するためのグラフィカルデータを生成するように、ユーザインターフェースモジュール２１４に命令する。
【００７７】
ユーザインターフェースモジュール２１４は、ユーザにユーザインターフェースを提供するためのグラフィカルデータを生成するためのルーチンを含むソフトウェアであり得る。いくつかの実装形態では、ユーザインターフェースモジュール２１４は、ユーザにユーザインターフェースを提供するためのグラフィカルデータを生成するための下記に記載される機能を実現するために、プロセッサ２３５によって実行可能な１組の命令であり得る。いくつかの実装形態では、ユーザインターフェースモジュール２１４は、コンピューティングデバイス２００のメモリ２３７に記憶することができ、プロセッサ２３５によってアクセス可能かつ実行可能であり得る。ユーザインターフェースモジュール２１４は、プロセッサ２３５およびコンピューティングデバイス２００の他の構成要素との協働および通信に適合される場合がある。
【００７８】
いくつかの実装形態では、ユーザインターフェースモジュール２１４は、ユーザにゾーン情報を提示するユーザインターフェースを提供するためのグラフィカルデータを生成する。ユーザインターフェースモジュール２１４は、クライアントデバイス１１５および／またはモバイルコンピューティングシステム１３５にグラフィカルデータを送信し、ユー
ザにユーザインターフェースを提示することをクライアントデバイス１１５および／またはモバイルコンピューティングシステム１３５に行わせる。
【００７９】
いくつかの実装形態では、ユーザインターフェースモジュール２１４は、ユーザにゾーン情報を提供するユーザインターフェースを提供するためのグラフィカルデータを生成し、ユーザが関連ゾーンを設定することを可能にする。たとえば、ユーザインターフェースは、ユーザが領域の数、各領域のサイズ、および各領域の形状を設定することを可能にする。ユーザインターフェースモジュール２１４は、ユーザに他のユーザインターフェースを提供するためのグラフィカルデータを生成することができる。
【００８０】
方法
図３は、ユーザにゾーン情報を提供するための例示的な方法３００のフローチャートである。一実施形態では、コントローラ２０２は、場合によっては、ユーザに関連する移動の出発点を示すデータを受信する（３０２）。たとえば、コントローラ２０２は、ユーザが運転する車両のエンジンがオンにされたことを示すデータを受信する。コントローラ２０２は、ユーザに関連する現在位置、移動速度、および移動方向のうちの１つまたは複数を表すデータを受信する（３０４）。コントローラ２０２は、現在位置に関連する局所地図を表す地図データを受信する（３０６）。状態モジュール２０６は、現在位置、移動速度、移動方向、および現在位置に関連する道路タイプのうちの１つまたは複数を含む、ユーザに関連する移動状態を決定する（３０８）。ゾーンクリエイタ２０７は、移動状態に基づいて、ユーザ用の関連ゾーンを作成する（３１０）。検索モジュール２０８は、関連ゾーンについてのクエリを生成する（３１１）。検索モジュール２０８は、クエリに合致するクエリ結果を取得するために１つまたは複数のデータソースを検索する（３１２）。処理モジュール２１０は、クエリ結果を処理して、ユーザに関係するゾーン情報を生成する（３１４）。プレゼンテーションモジュール２１２は、ユーザにゾーン情報を提供する（３１６）。方法３００は、ユーザが移動の終着点にいるかどうかを判定する（３１８）。ユーザが移動の終着点にいる場合、方法３００は終了する。そうでない場合、方法３００はステップ３０４に進む。
【００８１】
図４Ａおよび図４Ｂは、ユーザにゾーン情報を提供するための別の例示的な方法４００のフローチャートである。図４Ａを参照すると、コントローラ２０２は、場合によっては、ユーザに関連する移動の出発点を示すデータを受信する（４０２）。コントローラ２０２は、ユーザに関連する現在位置、移動速度、および移動方向のうちの１つまたは複数を表すデータを受信する（４０４）。コントローラ２０２は、現在位置に関連する局所地図を表す地図データを受信する（４０６）。地図モジュール２０４は、現在位置を局所地図と照合することによって、現在位置に関連する道路タイプを特定する（４０８）。状態モジュール２０６は、現在位置、移動速度、移動方向、および道路タイプのうちの１つまたは複数を含む、ユーザに関連する移動状態を決定する（４１０）。
【００８２】
ゾーンクリエイタ２０７は、場合によっては、関連ゾーンに含まれるべき領域の数を決定する（４１１）。ゾーンクリエイタ２０７は、移動状態に基づいて、領域ごとの領域角および領域長を決定する（４１２）。場合によっては、ゾーンクリエイタ２０７は、移動状態に基づいて、２つの隣接する領域間の角度オフセットを決定する（４１３）。ゾーンクリエイタ２０７は、領域の数、領域ごとの領域角、領域ごとの領域長、および２つの隣接する領域間の角度オフセットのうちの１つまたは複数に基づいて、１つまたは複数の領域を生成する（４１４）。
【００８３】
図４Ｂを参照すると、ゾーンクリエイタ２０７は、各領域内の１つまたは複数の領域円用の１つまたは複数の円の中心および１つまたは複数の半径を決定する（４１５）。ゾーンクリエイタ２０７は、１つまたは複数の領域円に各領域を調和させる（４１６）。ゾー
ンクリエイタ２０７は、それぞれが１つまたは複数の対応する領域円にマッピングされる１つまたは複数の領域を含む関連ゾーンを作成する（４１８）。検索モジュール２０８は、関連ゾーンについて、それぞれが１つの領域円に対応する１つまたは複数の円クエリを生成する（４２０）。検索モジュール２０８は、１つまたは複数のデータソースを検索して、１つまたは複数の円クエリを使用して１つまたは複数のクエリ結果を取得する（４２２）。各クエリ結果は、円クエリのうちの１つに合致する。処理モジュール２１０は、１つまたは複数のクエリ結果を処理して、ユーザに関係するゾーン情報を生成する（４２４）。プレゼンテーションモジュール２１２は、ユーザにゾーン情報を提供する（４２６）。方法４００は、ユーザが移動の終着点にいるかどうかを判定する（４２８）。ユーザが移動の終着点にいる場合、方法４００は終了する。そうでない場合、方法４００はステップ４０４に進む。
【００８４】
図５は、領域を１つまたは複数の領域円と調和させるための例示的な方法５００のフローチャートである。以下の説明では、例示的な方法５００は、図６Ａ〜図６Ｃを参照して記載される。一実施形態では、ゾーンクリエイタ２０７は、初期値を有する距離パラメータ（「ｄ」と表される）を構成する（５０２）。たとえば、ゾーンクリエイタ２０７は、デフォルト値で距離パラメータ「ｄ」を初期化する。距離パラメータは、領域の中心線上の起点からの距離を表すデータである。いくつかの例では、起点はユーザの現在位置である。ゾーンクリエイタ２０７は、距離パラメータ「ｄ」および領域に関連する領域角（αと表される）に基づいて、領域円用の半径（「ｒ」と表される）を決定する（５０４）。たとえば、ゾーンクリエイタ２０７は、半径を次のように決定する。
【００８５】
【数１】
2017502364.tif 000003
【００８６】
ゾーンクリエイタ２０７は、「ｄ＋ｒ」に等しい中心距離を有する中心線上の点として、領域円用の円の中心を決定する（５０６）。中心距離は、円の中心と起点との間の距離である。たとえば、中心距離は「ｄ＋ｒ」に等しい。ゾーンクリエイタ２０７は、半径「ｒ」と円の中心によって決定される領域円を生成する（５０７）。ゾーンクリエイタ２０７は、最新の生成された領域円の中心距離が領域の領域長以上であるかどうかを判定する（５０８）。たとえば、ゾーンクリエイタ２０７は、「ｄ＋ｒ」が領域の領域長以上であるかどうかを判定する。
【００８７】
中心距離が領域長よりも小さい（たとえば、中心距離が領域長に等しくなく、かつ領域長よりも大きくない）場合、ゾーンクリエイタ２０７は、距離パラメータ「ｄ」を更新する（５１０）。一実施形態では、領域内の領域円は重複しない円であり、ゾーンクリエイタ２０７は、距離パラメータ「ｄ」に値「２ｒ」を加算することによって、距離パラメータ「ｄ」の値を増大させる（たとえば、「ｄ」が「ｄ＋２ｒ」に更新される）。別の実施形態では、領域内の領域円は、中心線上の重複距離（「ｄｐ」と表される）を有する、重複する円である。重複距離は、２つの隣接する領域円が互いに重複する中心線上の距離である。ゾーンクリエイタ２０７は、距離パラメータ「ｄ」に値「２ｒ−ｄｐ」を加算することによって、距離パラメータ「ｄ」の値を増大させる（たとえば、「ｄ」が「ｄ＋２ｒ−ｄｐ」に更新される）。
【００８８】
距離パラメータ「ｄ」を更新した後、ゾーンクリエイタ２０７は、中心距離「ｄ＋ｒ」が領域長以上になるまで動作５０４〜５１０を繰り返すことによって、領域用のさらなる領域円を生成することを続ける。
【００８９】
たとえば、図６Ａを参照すると、ゾーンクリエイタ２０７は、初期値「ｄ０」を有する距離パラメータ「ｄ」を構成する（たとえば、ｄ＝ｄ０）。第１の領域円６１０用の半径が「ｒ０」として示される。図６Ａに示されたように、ｓｉｎ（α）＝ｒ０／（ｄ０＋ｒ０）であり、ゾーンクリエイタ２０７は、第１の領域円６１０用の半径「ｒ０」を、ｒ０＝ｄ０ｓｉｎ（α）／（１−ｓｉｎ（α））として決定する。ゾーンクリエイタ２０７は、第１の領域円６１０用の円の中心（中心点６０４）を領域の中心線６０６上の点として決定する。ここで、中心点６０４と起点６０２との間の中心距離は「ｄ０＋ｒ０」に等しい。ゾーンクリエイタ２０７は、半径「ｒ０」と中心点６０４によって決定される第１の領域円６１０を生成する。
【００９０】
中心距離「ｄ０＋ｒ０」は領域長よりも小さいので、ゾーンクリエイタ２０７は、領域内のさらなる領域円を生成することを続ける。一実施形態では、領域内の領域円は、図６Ｂに示されたように重複しない円であり、ゾーンクリエイタ２０７は、「ｄ１＝ｄ０＋２ｒ０」になるように距離パラメータを更新する。ここで、シンボル「ｄ１」は更新された距離パラメータを表す。別の実施形態では、領域内の領域円は、図６Ｃに示されたように重複距離「ｄｐ」を有する重複する円であり、ゾーンクリエイタ２０７は、「ｄ１＝ｄ０＋２−ｄｐ」になるように距離パラメータを更新する。
【００９１】
図６Ｂまたは図６Ｃに示されたいずれかの実施形態では、ゾーンクリエイタ２０７は、第２の領域円６６０用の（「ｒ１」と表される）半径を、ｒ１＝ｄ１ｓｉｎ（α）／（１−ｓｉｎ（α））として決定する。ゾーンクリエイタ２０７は、第２の領域円６６０用の円の中心（中心点６５４）を領域の中心線６０６上の点として決定する。ここで、中心点６５４と起点６０２との間の中心距離は「ｄ１＋ｒ１」に等しい。ゾーンクリエイタ２０７は、半径「ｒ１」と中心点６５４によって決定される第２の領域円６６０を生成する。最新の生成された領域円の中心距離が領域長に等しくなく、領域長よりも大きくない場合、ゾーンクリエイタ２０７は、上述された動作と同様の動作を実行することによって、領域用のさらなる領域円を生成することを続けることができる。
【００９２】
グラフィック表現
図６Ａ〜図６Ｃは、いくつかの実施形態による、領域を１つまたは複数の領域円に調和させるプロセスを示すグラフィック表現６００、６５０、６７０である。図６Ａ〜図６Ｃは図５を参照して上述されたので、ここでは説明を繰り返さない。
【００９３】
図７Ａ〜図７Ｆは、いくつかの実施形態による、様々な関連ゾーンを示すグラフィック表現７００、７３０、７４０、７５０、７６０、７７０である。図７Ａは図２を参照して上述されたので、ここでは説明を繰り返さない。図７Ｂは、一実施形態による、移動の出発点にいるユーザに関連する関連ゾーンの左方領域７３２、前方領域７３４、および右方領域７３６を示す。図７Ｃは、一実施形態による、ユーザに関連する移動方向に従って構成された関連ゾーンの左方領域７４２、前方領域７４４、および右方領域７４６を示す。図７Ｄは、一実施形態による、ユーザが高速道路上を移動するときのユーザに関連する関連ゾーンの左方領域７５２、前方領域７５４、および右方領域７５６を示す。図７Ｅは、一実施形態による、ユーザが高速道路上を移動するときのユーザに関連する関連ゾーンの左方領域７６２、前方領域７６４、および右方領域７６６を示す。図７Ｅ内の各領域は、複数の領域円７６８にマッピングされている。
【００９４】
図７Ｅを参照すると、左方領域７７２、前方領域７７８、および右方領域７８０を有する関連ゾーンが示される。図７Ｅはまた、ユーザに関連する現在位置７７４および移動方向７７５、左方領域７７２用の中心線７７６ａ、前方領域７７８用の中心線７７６ｂ、および右方領域７８０用の中心線７７６ｃを示す。左方領域７７２、前方領域７７８、および右方領域７８０は長方形である。
【００９５】
以上の記述では、説明の目的で、本明細書を完全に理解するために、非常に多くの特定の詳細が明記されている。しかしながら、本開示はこれら特定の詳細なしに実践できることは、当業者には明らかである。他の実装形態では、説明を不明瞭にすることを回避するために、構造およびデバイスがブロック図の形で示される。たとえば、本実装形態は、主にユーザインターフェースおよび特定のハードウェアを参照して下記の一実装形態に記載される。しかしながら、本実装形態は、データおよびコマンドを受信することができる任意のタイプのコンピューティングデバイス、ならびにサービスを提供する任意の周辺デバイスに適用される。
【００９６】
本明細書における「一実装形態」または「実装形態」への参照は、その実装形態とともに記載される特定の特徴、構造、または特性が説明の少なくとも１つの実装形態に含まれていることを意味する。本明細書における様々な場所での「一実装形態では」というフレーズの出現は、必ずしもすべて同じ実装形態をすべて参照しているとは限らない。
【００９７】
以下に続く詳細説明のいくつかの部分は、コンピュータメモリ内のデータビット上の演算のアルゴリズムおよびシンボル表現の観点から提示される。これらのアルゴリズム的な記述および表現は、データ処理技術分野の当業者により、他の当業者に自分の仕事の本質を最も効果的に伝達するために使用される手段である。本明細書において、かつ一般的に、アルゴリズムは、望ましい結果に導く自己矛盾のない一連のステップであると考えられる。ステップは、物理量の物理操作を必要とするステップである。必ずしもそうであるとは限らないが、通常、これらの量は、記憶、転送、合成、および場合によっては操作することが可能な電気信号または磁気信号の形態をとる。主に共通使用の理由で、これらの信号をビット、値、要素、シンボル、文字、用語、番号などとして参照することは、時には好都合であると証明されている。
【００９８】
しかしながら、これらおよび同様の用語のすべてが、適切な物理量に関連付けられ、これらの量に適用された便利なラベルにすぎないことは留意されるべきである。以下の説明から明白であると特に断りのない限り、説明全体にわたって、「処理」または「計算」または「算出」または「決定」または「表示」などを含む用語を利用する説明は、コンピュータシステムのレジスタおよびメモリ内の物理（電子）量として表されるデータを操作し、コンピュータシステムのメモリまたはレジスタまたは他のそのような情報を記憶、送信、または表示するデバイス内の物理量と同様に表される他のデータに変換する、コンピュータシステムまたは同様の電子コンピューティングデバイスのアクションおよびプロセスを参照する。
【００９９】
本明細書の本実装形態はまた、本明細書において動作を実行するための装置を参照する。この装置は、必要な目的のために特別に構築される場合があるか、またはコンピュータに記憶されたコンピュータプログラムによって、選択的にアクティブ化もしくは再構成される汎用コンピュータを備える場合がある。そのようなコンピュータプログラムは、限定はしないが、各々がコンピュータシステムバスに結合される、フロッピーディスク、光ディスク、ＣＤ  ＲＯＭ、および磁気ディスクを含む任意のタイプのディスク、読取り専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カードもしくは光カード、不揮発性メモリを有するＵＳＢキーを含むフラッシュメモリ、または電子命令を記憶するのに適した任意のタイプの媒体を含む、コンピュータ可読記憶媒体に記憶される場合がある。
【０１００】
本明細書は、全体的にハードウェアの実装形態、全体的にソフトウェアの実装形態、またはハードウェアとソフトウェアの両方の要素を含んでいる実装形態の形態をとることができる。好ましい実装形態では、本明細書は、限定はしないが、ファームウェア、常駐ソ
フトウェア、マイクロコードなどを含む、ソフトウェアに実装される。
【０１０１】
さらに、説明は、コンピュータまたは任意の命令実行システムが使用するか、またはそれとともに使用されるプログラムコードを提供する、コンピュータ使用可能媒体またはコンピュータ可読媒体からアクセス可能なコンピュータプログラム製品の形態をとることができる。この説明の目的で、コンピュータ使用可能媒体またはコンピュータ可読媒体は、命令実行システム、命令実行装置、または命令実行デバイスが使用するか、またはそれとともに使用されるプログラムを、内蔵、記憶、通信、伝播、または転送することができる任意の装置であり得る。
【０１０２】
プログラムコードを記憶および／または実行するのに適したデータ処理システムは、システムバスを介してメモリ要素に直接的または間接的に結合された少なくとも１つのプロセッサを含む。メモリ要素は、プログラムコードの実際の実行中に利用されるローカルメモリ、バルクストレージ、および、実行中にコードがバルクストレージから取り出されねばならない回数を低減するために少なくともいくつかのプログラムコードの一時的ストレージを提供する、キャッシュメモリを含むことができる。
【０１０３】
（限定はしないが、キーボード、ディスプレイ、ポインティングデバイスなどを含む）入力／出力デバイスまたはＩ／Ｏデバイスは、直接または介在するＩ／Ｏコントローラを介して、システムに結合することができる。
【０１０４】
ネットワークアダプタは、データ処理システムが、介在する専用ネットワークまたは公共ネットワークを介して、他のデータ処理システムまたはリモートプリンタまたはストレージデバイスに結合されるようになることを可能にするために、システムに結合される場合もある。モデム、ケーブルモデム、およびイーサネットカードが、現在利用可能なタイプのネットワークアダプタのうちのほんの一部である。
【０１０５】
最後に、本明細書に提示されたアルゴリズムおよびディスプレイは、本来、任意の特定のコンピュータまたは他の装置に関係しない。様々な汎用システムは、本明細書における教示によるプログラムとともに使用される場合があるか、または必要な方法ステップを実行するためにより特化した装置を構築することが好都合であると証明する場合がある。様々なこれらのシステムに必要な構造は、下記の説明から明らかになる。加えて、本明細書は、いかなる特定のプログラミング言語も参照して記載されていない。本明細書に記載された明細書の教示を実装するために、様々なプログラミング言語を使用できることが理解されよう。
【０１０６】
本明細書の実装形態の前述の説明は、例示および説明の目的で提示されている。本明細書を開示されたそのままの形態に徹底または限定するものではない。上記の教示に照らして、多くの修正形態または変形形態が可能である。本開示の範囲は、この詳細説明によって限定されず、むしろ本出願の特許請求の範囲によって限定されるものである。当業者には理解されるように、本明細書は、その概念または本質的な特性から逸脱することなく、他の固有の形態で具現化される場合がある。同様に、モジュール、ルーチン、特徴、属性、方法、および他の態様の特定の命名および分割は、必須または重要ではなく、本明細書またはその特徴を実装するメカニズムは、様々な名称、分割、および／またはフォーマットを有する場合がある。さらに、当業者には明らかであるように、本開示のモジュール、ルーチン、特徴、属性、方法、および他の態様は、ソフトウェア、ハードウェア、ファームウェア、またはその３つの任意の組合せとして実装することができる。また、その例がモジュールである本明細書の構成要素がソフトウェアとして実装される場合はいつでも、構成要素は、スタンドアロンプログラムとして、より大きいプログラムの一部として、複数の別々のプログラムとして、静的もしくは動的にリンクされたライブラリとして、カー
ネルのロード可能なモジュールとして、デバイスドライバとして、ならびに／または、コンピュータプログラミングの当業者に現在知られているか、もしくは将来知られるすべておよび任意の他の方法で、実装することができる。加えて、本開示は、任意の固有のプログラミング言語、または任意の固有のオペレーティングシステムもしくは動作環境における実装に全く限定されない。したがって、本開示は、以下の特許請求の範囲で明記される本明細書の範囲を限定するものではなく、例示するものである。
【図１】
2017502364.tif 000004
【図２】
2017502364.tif 000005
【図３】
2017502364.tif 000006
【図４Ａ】
2017502364.tif 000007
【図４Ｂ】
2017502364.tif 000008
【図５】
2017502364.tif 000009
【図６Ａ】
2017502364.tif 000010
【図６Ｂ】
2017502364.tif 000011
【図６Ｃ】
2017502364.tif 000012
【図７Ａ】
2017502364.tif 000013
【図７Ｂ】
2017502364.tif 000014
【図７Ｃ】
2017502364.tif 000015
【図７Ｄ】
2017502364.tif 000016
【図７Ｅ】
2017502364.tif 000017
【図７Ｆ】
2017502364.tif 000018
【手続補正書】
【提出日】平成27年11月19日(2015.11.19)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザに関連する現在位置および移動速度を表すデータを受信するステップ（３０４，４０４）と、
前記現在位置および前記移動速度に基づいて、前記ユーザに関連する移動状態を決定するステップ（３０８，４１０）と、
前記移動状態に基づいて、前記ユーザ用の関連ゾーンであって、各領域が１つまたは複数の領域円から形成される前方領域、左方領域、および右方領域を含む関連ゾーンを作成するステップ（３１０，４１８）と、
前記関連ゾーンについての１つまたは複数のクエリを生成するステップ（３１１，４２０）と、
前記１つまたは複数のクエリを使用して、前記関連ゾーンに合致する１つまたは複数のクエリ結果を取得するステップ（３１２，４２２）と、
前記１つまたは複数のクエリ結果を処理して、前記ユーザに関係するゾーン情報を生成するステップ（３１４，４２４）と、
前記ユーザに前記ゾーン情報を提供するステップ（３１６，４２６）と
を含み、
前記各領域は前記ユーザに関連する現在位置から延びる領域であり、各領域の延長方向が互いに異なる、コンピュータに実装された方法。
【請求項２】
前記各領域は、三角形形状を有し、
前記関連ゾーンを作成するステップが、
前記移動状態に基づいて、領域ごとの領域角および領域長を決定するステップ（４１２）と、
前記領域角および前記領域長に基づいて、前記１つまたは複数の領域を生成するステップ（４１４）と
を含む、請求項１に記載の方法。
【請求項３】
前記領域角および前記領域長の少なくともいずれかが、任意の２つの領域の間で異なる、
請求項２に記載の方法。
【請求項４】
前記ユーザが移動の開始地点から前方に進むにつれて、前記領域の前記領域角が徐々に減少されるか、前記領域の前記領域長が徐々に増大されるか、または、前記領域の前記延長方向と前記ユーザの移動方向とのなす角度が徐々に減少されるかする、
請求項２または３に記載の方法。
【請求項５】
前記関連ゾーンを作成するステップが、
各領域内の前記１つまたは複数の領域円用の１つまたは複数の円の中心および１つまたは複数の半径を決定するステップ（４１５）と、
各領域を、前記１つまたは複数の円の中心および前記１つまたは複数の半径によって決定される前記１つまたは複数の対応する領域円に調和させるステップ（４１６）と、
各領域が前記１つまたは複数の対応する領域円にマッピングされた、前記１つまたは複数の領域を含む前記関連ゾーンを決定するステップ（４１８）と
を含む、請求項１から４のいずれか１項に記載の方法。
【請求項６】
前記１つまたは複数のクエリが１つまたは複数の円クエリを含み、各円クエリが各領域内の前記１つまたは複数の領域円のうちの１つに対応する、請求項１から５のいずれか一項に記載の方法。
【請求項７】
前記１つまたは複数のクエリ結果を処理するステップが、
前記１つまたは複数のクエリ結果をフィルタリングして、重複するデータを除去するステップと、
前記１つまたは複数のクエリ結果をフィルタリングして、前記ユーザに関連する移動方向とは反対の方向に関係するデータを除去するステップと、
前記１つまたは複数のフィルタリングされたクエリ結果を組み合わせて、前記ユーザに関係する前記ゾーン情報を生成するステップと
を含む、請求項１から６のいずれか一項に記載の方法。
【請求項８】
前記ユーザに関連する移動方向を表すデータを受信するステップ（３０４，４０４）と、
前記現在位置に関連する局所地図を表すデータを受信するステップ（３０６，４０６）と、
前記現在位置を前記局所地図と照合して、道路タイプを特定するステップ（４０８）とをさらに含み、
前記移動状態が、前記道路タイプおよび前記移動方向に基づいてさらに決定される、
請求項１から７のいずれか一項に記載の方法。
【請求項９】
前記関連ゾーンが、移動方向および道路タイプのうちの少なくとも１つに基づいて構成される、請求項１から８のいずれか一項に記載の方法。
【請求項１０】
コンピュータ可読プログラムを含むコンピュータ使用可能媒体であって、前記コンピュータ可読プログラムが、コンピュータ上で実行されたとき、請求項１から９のいずれか１項に記載の方法の各ステップをコンピュータに実行させる、コンピュータ使用可能媒体。
【請求項１１】
プロセッサと、
実行されたとき、請求項１から９のいずれか１項に記載の方法の各ステップをシステムに実行させる命令を格納したメモリと、
を備える、システム。
【国際調査報告】
2017502364.tif 000019
2017502364.tif 000020