(57)【特許請求の範囲】
【請求項１】
システムであって、
地図を定義する地図データを記憶する地図データベースと、
前記地図データベースと通信している地図サーバであって、
該地図サーバは、特定の地理的ロケーションを視覚的に示す対話式地図を提示するようにとの要求をクライアントデバイスから受信し、前記クライアントデバイス上のユーザインターフェース内に提示するための地図空間を選択し、
前記地図空間が前記特定の地理的ロケーションを含む、地図サーバと、
1つまたは複数のサーバであって、
該1つまたは複数のサーバは、前記選択された地図空間によって視覚的に示された地理的領域内に位置する地理的ロケーションを有する複数の関心ポイントを識別し、クライアントデバイスのディスプレイ特性に基づいて前記地図空間内の前記識別された関心ポイントのうちの少なくともいくつかの前記識別された関心ポイントの地理的ロケーションにおける1つまたは複数の視覚成分を前記クライアントデバイスにおいて動的に提示するオーバレイを生成し、
前記オーバレイを生成することが、
前記関心ポイントを表す前記視覚成分の各々との対話の可能性に基づいて、前記識別された複数の関心ポイントをランク付けすることと、
前記識別された関心ポイントに関して提示される視覚成分の数が前記クライアントデバイスの前記ディスプレイ特性に対応する関心ポイント密度閾値を超えるのを防ぐオーバレイを生成することであって、前記関心ポイント密度閾値が、前記クライアントデバイスの前記ディスプレイ特性に基づいて選択される、生成することと、
前記ランク付けに基づいて、前記クライアントデバイスにおける前記対話式地図とのユーザ対話に応答して、前記提示される視覚成分の前記数によってどの関心ポイントを表す視覚成分が提示されるかを動的に変更するオーバレイを生成することと
を含む、1つまたは複数のサーバと
を含み、
前記生成されたオーバレイに対応するオーバレイ情報が、前記クライアントデバイスに提供され、前記クライアントデバイスにおいてキャッシュされ、
前記キャッシュされたオーバレイ情報が、前記クライアントデバイスの前記ユーザインターフェースを更新するために使用される、システム。
【請求項２】
前記地図サーバによって選択される前記地図空間が、前記地図空間とのユーザ対話に先立って、前記地図空間の少なくとも一部分を前記クライアントデバイスのビューポートの外部に生じさせる地図エリアを有する、請求項1に記載のシステム。
【請求項３】
前記オーバレイを生成することが、前記キャッシュされたオーバレイ情報を使用する前記クライアントデバイスにおいて、前記地図空間が前記ビューポート内に提示されるズームレベルを変更するビュー変更制御とのユーザ対話に基づいて前記提示された視覚成分によって識別された関心ポイントを更新するオーバレイを生成することを含み、
前記更新が、前記1つまたは複数のサーバに対する追加のネットワーク呼出しを開始することを前記クライアントデバイスに要求せずに実行される、請求項2に記載のシステム。
【請求項４】
前記提示された視覚成分によって識別された前記関心ポイントを更新することが、
前記ビュー変更制御とのユーザ対話に応答して前記地図空間が提示されているズームレベルを識別することと、
前記キャッシュされたオーバレイ情報内で、前記識別されたズームレベルに対する対応する関心ポイント密度閾値を識別することと、
前記キャッシュされたオーバレイ情報内で、前記識別されたズームレベルで前記ビューポート内に視覚的に示された地理的ロケーションを有する関心ポイントのセットを識別することと、
対応する視覚成分を使用して視覚的に識別されるべき1つまたは複数の関心ポイントを関心ポイントの前記識別されたセットから選択することであって、選択される前記関心ポイントの総数が、前記識別されたズームレベルに対する前記対応する関心ポイント密度閾値以下である、選択することと
を含む、請求項3に記載のシステム。
【請求項５】
前記1つまたは複数の関心ポイントを選択することが、最高位にランク付けされた関心ポイントの総数を前記ランク付けから選択することを含む、請求項4に記載のシステム。
【請求項６】
前記識別された複数の関心ポイントをランク付けすることが、前記クライアントデバイスに関連付けられたユーザが前に訪問した地理的ロケーション、前記ユーザが前に訪問したロケーションのカテゴリー、前記ユーザが異なるロケーションのカテゴリーを前に訪問した頻度、異なるロケーションのカテゴリーへの前の訪問に関連する時刻情報、前記ユーザが訪問した前のロケーションに対する前記関心ポイントの近接性、またはいずれかのサポートされる検索インターフェース上で前記ユーザが実行した検索クエリのうちの1つまたは複数に基づいて、前記識別された複数の関心ポイントをランク付けすることを含む、請求項1に記載のシステム。
【請求項７】
特定の地理的ロケーションを視覚的に示す対話式地図をユーザインターフェース内に提示するようにとの要求をクライアントデバイスから受信するステップと、
1つまたは複数のサーバによって、前記要求に基づいて、前記特定の地理的ロケーションを含む地図空間を選択するステップと、
前記選択された地図空間によって視覚的に示された地理的領域内に位置する地理的ロケーションを有する複数の関心ポイントを識別するステップと、
前記1つまたは複数のサーバによって、前記クライアントデバイスのディスプレイ特性に基づいて前記地図空間内の前記識別された関心ポイントのうちの少なくともいくつかの地理的ロケーションにおける1つまたは複数の視覚成分を前記クライアントデバイスにおいて動的に提示するオーバレイを生成するステップであって、
前記関心ポイントを表す前記視覚成分の各々との対話の可能性に基づいて、前記識別された複数の関心ポイントをランク付けするステップと、
前記識別された関心ポイントに関して提示される視覚成分の数が前記クライアントデバイスの前記ディスプレイ特性に対応する関心ポイント密度閾値を超えるのを防ぐオーバレイを生成するステップであって、前記関心ポイント密度閾値が、前記クライアントデバイスの前記ディスプレイ特性に基づいて選択される、生成するステップと、
前記ランク付けに基づいて、前記クライアントデバイスにおける前記対話式地図とのユーザ対話に応答して、前記提示される視覚成分の前記数によってどの関心ポイントを表す視覚成分が提示されるかを動的に変更するオーバレイを生成するステップと
を含む、生成するステップと、
前記オーバレイに関するオーバレイ情報および前記地図空間の一部分を前記クライアントデバイスにおいてキャッシュするステップと、
前記地図空間および前記オーバレイで前記クライアントデバイスの前記ユーザインターフェースを更新するステップと
を含む、方法。
【請求項８】
前記地図空間が、前記地図空間とのユーザ対話に先立って、前記地図空間の少なくとも一部分を前記クライアントデバイスのビューポートの外部に生じさせる地図エリアを有する、請求項7に記載の方法。
【請求項９】
前記オーバレイを生成するステップが、前記キャッシュされたオーバレイ情報を使用する前記クライアントデバイスにおいて、前記地図空間が前記ビューポート内に提示されるズームレベルを変更するビュー変更制御とのユーザ対話に基づいて前記提示された視覚成分によって識別された関心ポイントを更新するオーバレイを生成するステップを含み、
前記更新が、前記1つまたは複数のサーバに対する追加のネットワーク呼出しを開始することを前記クライアントデバイスに要求せずに実行される、請求項8に記載の方法。
【請求項１０】
前記提示された視覚成分によって識別された前記関心ポイントを更新するステップが、
前記ビュー変更制御とのユーザ対話に応答して前記地図空間が提示されているズームレベルを識別するステップと、
前記キャッシュされたオーバレイ情報内で、前記識別されたズームレベルに対する対応する関心ポイント密度閾値を識別するステップと、
前記キャッシュされたオーバレイ情報内で、前記識別されたズームレベルで前記ビューポート内に視覚的に示された地理的ロケーションを有する関心ポイントのセットを識別するステップと、
対応する視覚成分を使用して視覚的に識別されるべき1つまたは複数の関心ポイントを関心ポイントの前記識別されたセットから選択するステップであって、選択される前記関心ポイントの総数が、前記識別されたズームレベルに対する前記対応する関心ポイント密度閾値以下である、選択するステップと
を含む、請求項9に記載の方法。
【請求項１１】
前記1つまたは複数の関心ポイントを選択するステップが、最高位にランク付けされた関心ポイントの総数を前記ランク付けから選択するステップを含む、請求項10に記載の方法。
【請求項１２】
前記1つまたは複数の関心ポイントを選択するステップが、前記クライアントデバイスのデバイスタイプまたは前記クライアントデバイスのスクリーンサイズに基づいて、前記1つまたは複数の関心ポイントを選択するステップを含む、請求項10に記載の方法。
【請求項１３】
前記1つまたは複数の関心ポイントを選択するステップが、前記選択に先立って提示のために事前選択されている関心ポイントの数に基づいて、前記1つまたは複数の関心ポイントを選択するステップを含む、請求項10に記載の方法。
【請求項１４】
前記識別された複数の関心ポイントをランク付けするステップが、前記クライアントデバイスに関連付けられたユーザが前に訪問した地理的ロケーション、前記ユーザが前に訪問したロケーションのカテゴリー、前記ユーザが異なるロケーションのカテゴリーを前に訪問した頻度、異なるロケーションのカテゴリーへの前の訪問に関連する時刻情報、前記ユーザが訪問した前のロケーションに対する前記関心ポイントの近接性、またはいずれかのサポートされる検索インターフェース上で前記ユーザが実行した検索クエリのうちの1つまたは複数に基づいて、前記識別された複数の関心ポイントをランク付けするステップを含む、請求項7に記載の方法。
【請求項１５】
コンピュータプログラムで符号化された非一時的コンピュータ記憶媒体であって、前記プログラムが、データ処理装置によって実行されると、前記データ処理装置に、
特定の地理的ロケーションを視覚的に示す対話式地図をユーザインターフェース内に提示するようにとの要求をクライアントデバイスから受信することと、
前記要求に基づいて、前記特定の地理的ロケーションを含む地図空間を選択することと、
前記選択された地図空間によって視覚的に示された地理的領域内に位置する地理的ロケーションを有する複数の関心ポイントを識別することと、
前記クライアントデバイスのディスプレイ特性に基づいて前記地図空間内の前記識別された関心ポイントのうちの少なくともいくつかの地理的ロケーションにおける1つまたは複数の視覚成分を前記クライアントデバイスにおいて動的に提示するオーバレイを生成することであって、
前記関心ポイントを表す前記視覚成分の各々との対話の可能性に基づいて、前記識別された複数の関心ポイントをランク付けすることと、
前記識別された関心ポイントに関して提示される視覚成分の数が前記クライアントデバイスの前記ディスプレイ特性に対応する関心ポイント密度閾値を超えるのを防ぐオーバレイを生成することであって、前記関心ポイント密度閾値が、前記クライアントデバイスの前記ディスプレイ特性に基づいて選択される、生成することと、
前記ランク付けに基づいて、前記クライアントデバイスにおける前記対話式地図とのユーザ対話に応答して、前記提示される視覚成分の前記数によってどの関心ポイントを表す視覚成分が提示されるかを動的に変更するオーバレイを生成することと
を含む、生成することと、
前記オーバレイに関するオーバレイ情報および前記地図空間の一部分を前記クライアントデバイスにおいてキャッシュすることと、
前記地図空間および前記オーバレイで前記クライアントデバイスの前記ユーザインターフェースを更新することと
を含む動作を実行させる、非一時的コンピュータ記憶媒体。
【請求項１６】
前記データ処理装置によって選択される前記地図空間が、前記地図空間とのユーザ対話に先立って、前記地図空間の少なくとも一部分を前記クライアントデバイスのビューポートの外部に生じさせる地図エリアを有する、請求項15に記載の記憶媒体。
【請求項１７】
前記オーバレイを生成することが、前記キャッシュされたオーバレイ情報を使用する前記クライアントデバイスにおいて、前記地図空間が前記ビューポート内に提示されるズームレベルを変更するビュー変更制御とのユーザ対話に基づいて前記提示された視覚成分によって識別された関心ポイントを更新するオーバレイを生成することを含み、
前記更新が、1つまたは複数のサーバに対する追加のネットワーク呼出しを開始することを前記クライアントデバイスに要求せずに実行される、請求項16に記載の記憶媒体。
【請求項１８】
前記提示された視覚成分によって識別された前記関心ポイントを更新することが、
前記ビュー変更制御とのユーザ対話に応答して前記地図空間が提示されているズームレベルを識別することと、
前記キャッシュされたオーバレイ情報内で、前記識別されたズームレベルに対する対応する関心ポイント密度閾値を識別することと、
前記キャッシュされたオーバレイ情報内で、前記識別されたズームレベルで前記ビューポート内に視覚的に示された地理的ロケーションを有する関心ポイントのセットを識別することと、
対応する視覚成分を使用して視覚的に識別されるべき1つまたは複数の関心ポイントを関心ポイントの前記識別されたセットから選択することであって、選択される前記関心ポイントの総数が、前記識別されたズームレベルに対する前記対応する関心ポイント密度閾値以下である、選択することと
を含む、請求項17に記載の記憶媒体。
【請求項１９】
前記1つまたは複数の関心ポイントを選択することが、最高位にランク付けされた関心ポイントの総数を前記ランク付けから選択することを含む、請求項18に記載の記憶媒体。
【請求項２０】
前記識別された複数の関心ポイントをランク付けすることが、前記クライアントデバイスに関連付けられたユーザが前に訪問した地理的ロケーション、前記ユーザが前に訪問したロケーションのカテゴリー、前記ユーザが異なるロケーションのカテゴリーを前に訪問した頻度、異なるロケーションのカテゴリーへの前の訪問に関連する時刻情報、前記ユーザが訪問した前のロケーションに対する前記関心ポイントの近接性、またはいずれかのサポートされる検索インターフェース上で前記ユーザが実行した検索クエリのうちの1つまたは複数に基づいて、前記識別された複数の関心ポイントをランク付けすることを含む、請求項15に記載の記憶媒体。
【請求項２１】
特定の地理的ロケーションを視覚的に示す対話式地図をユーザインターフェース内に提示するようにとの要求をクライアントデバイスから受信するステップと、
1つまたは複数のサーバによって、前記要求に基づいて、前記特定の地理的ロケーションを含む地図空間を選択するステップと、
前記選択された地図空間によって視覚的に示された地理的領域内に位置する地理的ロケーションを有する複数の関心ポイントを識別するステップと、
前記1つまたは複数のサーバによって、前記クライアントデバイスのディスプレイ特性に基づいて前記地図空間内の前記識別された関心ポイントのうちの少なくともいくつかの地理的ロケーションにおける1つまたは複数の視覚成分を前記クライアントデバイスにおいて提示するオーバレイを生成するステップであって、
前記関心ポイントを表す前記視覚成分の各々との対話の可能性に基づいて、前記識別された複数の関心ポイントをランク付けするステップと、
それぞれの視覚成分を表示する前記関心ポイントの数を選択するステップであって、
前記数が、視覚成分が提示される関心ポイントの前記数が関心ポイント密度閾値を超えるのを防ぐように選ばれ、
前記関心ポイント密度閾値が、前記クライアントデバイスの前記ディスプレイ特性に対応し、
前記関心ポイント密度閾値が、前記クライアントデバイスの前記ディスプレイ特性に基づいて選択される、選択するステップと、
前記ランク付けに基づいて、前記クライアントデバイスにおける前記対話式地図とのユーザ対話に応答して、前記視覚成分が提示される関心ポイントの前記数によってどの関心ポイントが提示されるかを動的に変更するオーバレイを生成するステップと
を含む、生成するステップと、
前記オーバレイに関するオーバレイ情報および前記地図空間の一部分を前記クライアントデバイスにおいてキャッシュするステップと、
前記地図空間および前記オーバレイで前記クライアントデバイスの前記ユーザインターフェースを更新するステップと
を含む、方法。
【請求項２２】
前記地図空間が、前記地図空間とのユーザ対話に先立って、前記地図空間の少なくとも一部分を前記クライアントデバイスのビューポートの外部に生じさせる地図エリアを有する、請求項21に記載の方法。
【請求項２３】
前記オーバレイを生成するステップが、前記キャッシュされたオーバレイ情報を使用する前記クライアントデバイスにおいて、前記地図空間が前記ビューポート内に提示されるズームレベルを変更するビュー変更制御とのユーザ対話に基づいて前記提示された視覚成分によって識別された関心ポイントを更新するオーバレイを生成するステップを含み、
前記更新が、前記1つまたは複数のサーバに対する追加のネットワーク呼出しを開始することを前記クライアントデバイスに要求せずに実行される、請求項22に記載の方法。
【請求項２４】
前記提示された視覚成分によって識別された前記関心ポイントを更新するステップが、
前記ビュー変更制御とのユーザ対話に応答して前記地図空間が提示されているズームレベルを識別するステップと、
前記キャッシュされたオーバレイ情報内で、前記識別されたズームレベルに対する対応する関心ポイント密度閾値を識別するステップと、
前記キャッシュされたオーバレイ情報内で、前記識別されたズームレベルで前記ビューポート内に視覚的に示された地理的ロケーションを有する関心ポイントのセットを識別するステップと、
対応する視覚成分を使用して視覚的に識別されるべき1つまたは複数の関心ポイントを関心ポイントの前記識別されたセットから選択するステップであって、選択される前記関心ポイントの総数が、前記識別されたズームレベルに対する前記対応する関心ポイント密度閾値以下である、選択するステップと
を含む、請求項23に記載の方法。
【請求項２５】
前記1つまたは複数の関心ポイントを選択するステップが、最高位にランク付けされた関心ポイントの総数を前記ランク付けから選択するステップを含む、請求項24に記載の方法。
【請求項２６】
前記1つまたは複数の関心ポイントを選択するステップが、前記クライアントデバイスのデバイスタイプまたは前記クライアントデバイスのスクリーンサイズに基づいて、前記1つまたは複数の関心ポイントを選択するステップを含む、請求項24に記載の方法。
【請求項２７】
前記1つまたは複数の関心ポイントを選択するステップが、前記選択に先立って提示のために事前選択されている関心ポイントの数に基づいて、前記1つまたは複数の関心ポイントを選択するステップを含む、請求項24に記載の方法。
【請求項２８】
前記識別された複数の関心ポイントをランク付けするステップが、前記クライアントデバイスに関連付けられたユーザが前に訪問した地理的ロケーション、前記ユーザが前に訪問したロケーションのカテゴリー、前記ユーザが異なるロケーションのカテゴリーを前に訪問した頻度、異なるロケーションのカテゴリーへの前の訪問に関連する時刻情報、または前記ユーザが訪問した前のロケーションに対する前記関心ポイントの近接性のうちの1つまたは複数に基づいて、前記識別された複数の関心ポイントをランク付けするステップを含む、請求項21から27のいずれか一項に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
本書は、電子地図インターフェースに関する。通信ネットワークは、世界中のユーザへの情報分散を可能にした。ユーザに提供される1つのタイプの情報は、電子地図の形態で提供される。ユーザは、様々な地理的領域に関する情報を取得するためにクライアントデバイスにおいて提示される電子地図と対話することができる。所与の地理的領域(または、所与の地理的領域内の関心ポイント)に関して利用可能な情報量は、電子地図の提示を混雑させる(clutter)ことなしに電子地図上に提示され得る情報量を超える。
【発明の概要】
【課題を解決するための手段】
【０００２】
概して、本明細書で説明する主題の1つの革新的な態様は、特定の地理的ロケーションを視覚的に示す対話式地図をユーザインターフェース内に提示するようにとの要求をクライアントデバイスから受信する動作と、1つまたは複数のサーバによって、その要求に基づいて、特定の地理的ロケーションを含む地図空間を選択する動作とを含む方法の形で具現化され得る。1つまたは複数のサーバは、次いで、選択された地図空間によって視覚的に示された地理的領域内に位置する地理的ロケーションを有する複数の関心ポイントを識別し、クライアントデバイスのディスプレイ特性に基づいて地図空間内の識別された関心ポイントのうちの少なくともいくつかの地理的ロケーションにおける1つまたは複数の視覚成分(visual component)をクライアントデバイスにおいて動的に提示するオーバレイを生成する。関心ポイントの選択は、関心ポイントを表す視覚成分の各々との対話の可能性に基づいて、識別された複数の関心ポイントをランク付けするステップと、識別された関心ポイントに関して提示される視覚成分の数がデータ構造内でクライアントデバイスのディスプレイ特性にマッピングされる関心ポイント密度閾値を超えるのを防ぐオーバレイを生成するステップであって、異なる関心ポイント密度閾値が、データ構造内でディスプレイ特性の異なる組合せにマッピングされる、生成するステップと、ランク付けに基づいて、クライアントデバイスにおける対話式地図とのユーザ対話に応答して提示される視覚成分によってどの関心ポイントが識別されるかを動的に変更するオーバレイを生成するステップとを含む。クライアントデバイスは、オーバレイに関するオーバレイ情報および地図空間の一部分をキャッシュし、地図空間およびオーバレイでクライアントデバイスのユーザインターフェースを更新する。本態様の他の実施形態は、これらの方法の動作を実行するように構成された、対応するシステム、デバイス、装置、およびコンピュータプログラムを含む。コンピュータプログラム(たとえば、命令)は、コンピュータ記憶デバイス上で符号化され得る。これらのおよび他の実施形態は、各々、以下の特徴のうちの1つまたは複数をオプションで含み得る。
【０００３】
地図空間は、地図空間とのユーザ対話に先立って、地図空間の少なくとも一部分をクライアントデバイスのビューポート(viewport)の外部に生じさせる地図エリアを有し得る。
【０００４】
オーバレイを生成するステップは、キャッシュされたオーバレイ情報を使用するクライアントデバイスにおいて、地図空間がそのビューポート内に提示されるズームレベルを変更するビュー変更制御とのユーザ対話に基づいて提示された視覚成分によって識別された関心ポイントを更新するオーバレイを生成するステップを含み得る。この更新は、1つまたは複数のサーバに対する追加のネットワーク呼出しを開始することをクライアントデバイスに要求せずに実行され得る。
【０００５】
提示された視覚成分によって識別された関心ポイントを更新するステップは、ビュー変更制御とのユーザ対話に応答して地図空間が提示されているズームレベルを識別するステップと、キャッシュされたオーバレイ情報内で、識別されたズームレベルに対する対応する関心ポイント密度閾値を識別するステップと、キャッシュされたオーバレイ情報内で、識別されたズームレベルでビューポート内に視覚的に示された地理的ロケーションを有する関心ポイントのセットを識別するステップと、対応する視覚成分を使用して視覚的に識別されるべき1つまたは複数の関心ポイントを関心ポイントの識別されたセットから選択するステップであって、選択される関心ポイントの総数が、識別されたズームレベルに対する対応する関心ポイント密度閾値以下である、選択するステップとを含み得る。
【０００６】
1つまたは複数の関心ポイントを選択するステップは、最高位にランク付けされた関心ポイントの総数をランク付けから選択するステップを含み得る。
【０００７】
1つまたは複数の関心ポイントを選択するステップは、クライアントデバイスのデバイスタイプまたはクライアントデバイスのスクリーンサイズに基づいて、1つまたは複数の関心ポイントを選択するステップを含み得る。
【０００８】
1つまたは複数の関心ポイントを選択するステップは、選択に先立って提示のために事前選択されている関心ポイントの数に基づいて、1つまたは複数の関心ポイントを選択するステップを含み得る。
【０００９】
識別された複数の関心ポイントをランク付けするステップは、ユーザが前に訪問した地理的ロケーション、ユーザが前に訪問したロケーションのカテゴリー、ユーザが異なるロケーションのカテゴリーに前に訪問した頻度、異なるロケーションのカテゴリーへの前の訪問に関連する時刻情報、ユーザが訪問した前のロケーションに対する関心ポイントの近接性、またはいずれかのサポートされる検索インターフェース上でユーザが実行した検索クエリのうちの1つまたは複数に基づいて、識別された複数の関心ポイントをランク付けするステップを含み得る。
【００１０】
別の態様では、方法は、特定の地理的ロケーションを視覚的に示す対話式地図をユーザインターフェース内に提示するようにとの要求をクライアントデバイスから受信するステップと、1つまたは複数のサーバによって、要求に基づいて、特定の地理的ロケーションを含む地図空間を選択するステップと、選択された地図空間によって視覚的に示された地理的領域内に位置する地理的ロケーションを有する複数の関心ポイントを識別するステップと、1つまたは複数のサーバによって、クライアントデバイスのディスプレイ特性に基づいて、地図空間内の識別された関心ポイントのうちの少なくともいくつかの地理的ロケーションにおける1つまたは複数の視覚成分をクライアントデバイスにおいて、提示するオーバレイを生成するステップであって、関心ポイントを表す視覚成分の各々との対話の可能性に基づいて、識別された複数の関心ポイントをランク付けするステップと、それぞれの視覚成分を表示する関心ポイントの数を選択するステップであって、前記数が、視覚成分が提示される関心ポイントの数が関心ポイント密度閾値を超えるのを防ぐように選ばれ、関心ポイント密度閾値がデータ構造内でクライアントデバイスのディスプレイ特性にマッピングされ、異なる関心ポイント密度閾値が、データ構造内でディスプレイ特性の異なる組合せにマッピングされる、選択するステップと、ランク付けに基づいて、クライアントデバイスにおける対話式地図とのユーザ対話に応答して提示された視覚成分によって異なる関心ポイントが識別されるようにオーバレイを動的に変更するステップとを含む、生成するステップと、オーバレイに関するオーバレイ情報および地図空間の一部分をクライアントデバイスにおいてキャッシュするステップと、地図空間およびオーバレイでクライアントデバイスのユーザインターフェースを更新するステップとを含み得る。
【００１１】
本態様の他の実施形態は、これらの方法の動作を実行するように構成された、対応するシステム、デバイス、装置、およびコンピュータプログラムを含む。このコンピュータプログラム(たとえば、命令)は、コンピュータ記憶デバイス上で符号化され得る。これらのおよび他の実施形態は、各々、以下の特徴のうちの1つまたは複数をオプションで含み得る。
【００１２】
地図空間は、地図空間とのユーザ対話に先立って、地図空間の少なくとも一部分をクライアントデバイスのビューポートの外部に生じさせる地図エリアを有する。
【００１３】
オーバレイを生成するステップは、キャッシュされたオーバレイ情報を使用するクライアントデバイスにおいて、地図空間がビューポート内に提示されるズームレベルを変更するビュー変更制御とのユーザ対話に基づいて提示された視覚成分によって識別された関心ポイントを更新するオーバレイを生成するステップを含み得、更新は、1つまたは複数のサーバに対する追加のネットワーク呼出しを開始することをクライアントデバイスに要求せずに実行される。
【００１４】
提示された視覚成分によって識別された関心ポイントを更新するステップは、ビュー変更制御とのユーザ対話に応答して地図空間が提示されているズームレベルを識別するステップと、キャッシュされたオーバレイ情報内で、識別されたズームレベルに対する対応する関心ポイント密度閾値を識別するステップと、キャッシュされたオーバレイ情報内で、識別されたズームレベルでビューポート内に視覚的に示された地理的ロケーションを有する関心ポイントのセットを識別するステップと、対応する視覚成分を使用して視覚的に識別されるべき1つまたは複数の関心ポイントを関心ポイントの識別されたセットから選択するステップであって、選択される関心ポイントの総数が、識別されたズームレベルに対する対応する関心ポイント密度閾値以下である、選択するステップとを含み得る。
【００１５】
1つまたは複数の関心ポイントを選択するステップは、最高位にランク付けされた関心ポイントの総数をランク付けから選択するステップを含み得る、
【００１６】
1つまたは複数の関心ポイントを選択するステップは、クライアントデバイスのデバイスタイプまたはクライアントデバイスのスクリーンサイズに基づいて、1つまたは複数の関心ポイントを選択するステップを含み得る。
【００１７】
1つまたは複数の関心ポイントを選択するステップは、選択に先立って提示のために事前選択されている関心ポイントの数に基づいて、1つまたは複数の関心ポイントを選択するステップを含み得る。
【００１８】
識別された複数の関心ポイントをランク付けするステップは、ユーザが前に訪問した地理的ロケーション、ユーザが前に訪問したロケーションのカテゴリー、ユーザが異なるロケーションのカテゴリーに前に訪問した頻度、異なるロケーションのカテゴリーへの前の訪問に関連する時刻情報、またはユーザが訪問した前のロケーションに対する関心ポイントの近接性のうちの1つまたは複数に基づいて、識別された複数の関心ポイントをランク付けするステップを含み得る。
【００１９】
本明細書で説明する主題の特定の実施形態は、以下の利点のうちの1つまたは複数を実現するために実装され得る。本書で論じる技法は、地図を提示する電子地図インターフェースの超過密を防ぎ、これは、ユーザ経験、およびユーザが地図からの情報と対話し、その情報を取得する能力を改善する。たとえば、本書で論じる技法は、地図上で視覚的に識別される関心ポイントの数を制限し、それにより、関心ポイントの視覚的指示によって遮断される地図の量を低減する。地図の所与のビュー内で視覚的に識別される関心ポイントは、地図を閲覧している特定のユーザに関連する可能性が最も高いと見なされる関心ポイントであり得、何らかの情報(たとえば、クエリまたは関心のある話題)を入力することをユーザに要求せずに選択され得る。したがって、視覚的に識別される関心ポイントは、電子地図インターフェースとのユーザ対話に先立って選択され得、それにより、地図の最初の提示に関するユーザの経験を改善する(たとえば、電子地図インターフェースとのユーザ対話を必要とせずに関連する関心ポイントを含める)。ユーザが(たとえば、本明細書で論じる技法を利用しない地図インターフェースと比べて)電子地図インターフェースと対話するときに電子地図インターフェース内で提示される地図のビューの更新に関連する遅延は、地図の一部分(たとえば、地図空間)の最初の要求に応答して、クライアントデバイスにおいて追加の地図および/またはオーバレイ情報を事前にキャッシュする知的なキャッシング方式を利用することによって、低減または制限され得る。たとえば、(たとえば、地図の要求される部分および関心ポイントの対応する視覚的指示を地図空間の要求された部分内に提示する必要を越えて)追加の地図および/またはオーバレイ情報を事前にキャッシュすることによって、ユーザは、電子地図インターフェース内にどの程度地図が提示されるか、または地図のどの部分が提示されるかを対話形式で(および、途切れることなく)変更することができるが、これは、遠隔サーバに対して追加の呼出しを行う必要がないためである。遠隔サーバに対する各呼出しを確立および終了するためには一定の時間量がかかるので、サーバに対する各後続の呼出しが電子地図インターフェース内に提示される地図のビューの変更に関連するレイテンシを増大させることになるため、遠隔サーバに対する呼出しの数の低減はレイテンシも低減する。このレイテンシは、ワイヤレスネットワークを介して各ネットワーク呼出しを確立するために要求される時間量により、セルラーネットワークなど、ワイヤレスネットワークを介して動作しているモバイルデバイスの場合よりも大きい。遠隔サーバに対する追加の呼出しは追加のバッテリー消費をやはり引き起こすので、モバイルデバイスが遠隔サーバに対して行う追加の呼出し数を制限することは、モバイルデバイスのバッテリー寿命を拡張することになる。
【００２０】
本発明の1つまたは複数の実施形態の詳細が、添付の図面および下の説明に記載される。本発明の他の特徴、目的、および利点は、説明および図面から、また特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００２１】
【図１】地図空間がネットワーク102を介して分散される例示的な環境100のブロック図である。
【図２】2つの異なる例示的なクライアントデバイス上の様々な地図ビューを示す図である。
【図３】電子地図インターフェースに対してオーバレイを生成/分散するための例示的なプロセスのフローチャートである。
【図４】例示的なコンピュータシステムのブロック図である。
【発明を実施するための形態】
【００２２】
様々な図面における同様の参照符号および指定は同様の要素を指示する。
【００２３】
本書は、クライアントデバイスのビューポート内に電子地図の(地図ビューと呼ばれる)ビューと、地図ビュー内に含まれる地理的ロケーションに位置する関心ポイント(POI)を視覚的に識別する視覚成分のオーバレイとを提示する電子地図インターフェースを生成および提示するための方法、システム、およびデバイスについて説明する。最初の地図ビューは、電子地図の要求がクライアントデバイスから受信されることに応答して、クライアントデバイスにおいて提示され得る。この要求は、特定の地理的ロケーションを含む地図空間(たとえば、電子地図の部分)を選択するために使用され得る、特定の地理的ロケーションを識別する情報を含み得る。代替で、または加えて、地図空間は、デフォルトの地理的情報(たとえば、事前に指定された地理的ロケーション、または最初の地図ビューが提示されることになるユーザのユーザプロファイル内に含まれた地理的ロケーション)に基づいて選択され得る。下記で詳細に論じるように、最初の地図ビュー内に提示するために選択され、クライアントデバイスに提供される地図空間は、最初の地図ビュー内に提示されることになるよりも地図のより大きな部分を含み、地図空間の少なくともいくつかはクライアントデバイスにおいてキャッシュされ得る。これは、たとえば、追加の地図ビューを取得するために遠隔サーバに対する後続の呼出しを要求せずに、電子地図インターフェースとのユーザ対話(たとえば、ユーザのパン、ズーム、またはさもなければ、地図ビューを修正するための電子地図インターフェースとの対話)に応答して地図ビューに対する途切れのない動的な更新を可能にすることになる。むしろ、クライアントデバイスにおいてキャッシュされた地図空間は、電子地図インターフェースとのユーザ対話に応答して地図ビューを修正するために使用され得る。
【００２４】
いくつかの実装形態では、オーバレイは地図空間とともに(または、地図空間とは別個に)提供される(たとえば、ダウンロードされる、ストリーミングされる、またはさもなければ、送信される)。オーバレイは、1つまたは複数の視覚成分(たとえば、地図ピンまたは他のアイコン)を選択された地図空間上に動的に提示する(たとえば、選択された地図空間を介して提示される、またはその中に統合される)ファイル(または、ファイルの収集物)である。地図空間上の視覚成分の配置は、地図空間内の関心ポイント(たとえば、公園、記念碑、空港、コーヒー店、ジム、または他の関心ポイント)のロケーションを識別し得る。視覚成分は地図空間上の関心ポイントのロケーションを強調するために有益であるが、表示される視覚成分の数が増大するにつれて、これらの視覚成分の効果は低減し得る。
【００２５】
たとえば、表示される視覚成分の数が増大するにつれて、地図空間のより大きな部分は、これらの視覚成分によって遮断される場合があり、これは、(たとえば、遮断されている地図空間の重要な視覚的特徴により)地図空間の使用をより困難にし得る。加えて、表示される視覚成分の数が増大するにつれて、視覚成分は重複する可能性があるため、ユーザが提示される異なる視覚成分(または、その境界)を視覚的に識別することがより困難になる場合がある。地図空間内の視覚成分のこの「過密(crowding)」は、ユーザが(たとえば、ディスプレイ内の視覚成分の過密により)特定の視覚成分と対話することを困難にする場合があり、これは、意図されたのとは異なる視覚成分との意図されないユーザ対話を引き起こす可能性がある。視覚成分との意図されないユーザ対話は、それらのユーザが求めていた情報とは他の情報がユーザに提示される可能性があるため、ユーザのフラストレーション、ユーザ経験の低下、および(たとえば、ユーザが異なる視覚成分との対話を意図していた間に、対話した視覚成分とのユーザ対話に応答してデータを転送することによって)追加のネットワークトラフィックの転送につながる可能性があり、ユーザはユーザが最初に対話を意図していた視覚成分との対話を再度試みなければならないことになる。
【００２６】
いくつかの実装形態では、視覚成分のセットは、(たとえば、視覚成分の提示により)地図空間内の識別される関心ポイントがユーザに関連する関心ポイントである可能性を増大するようにランク付けおよび/または選択され得る。たとえば、下記で詳細に説明するように、所与の地図空間に対して選択された視覚成分のセットは、ユーザに関する履歴情報(たとえば、ユーザによる様々な関心ポイントとの履歴ユーザ対話、ユーザが提出した履歴検索クエリ、ユーザによる特定の地理的ロケーションへの履歴訪問、または他の履歴情報)を使用して識別され得る。履歴情報の使用は、要求に応答して提供される地図空間とのユーザ対話に先立って、ユーザに関連する関心ポイントを選択することを可能にし、電子地図インターフェースを通して検索クエリのユーザ提出とは無関係に(たとえば、それなしに、またはそれに先立って)関心ポイントが識別されることをやはり可能にし得る。
【００２７】
下記で詳細に説明するように、地図空間上の関心ポイントを表す視覚成分のセットは、(たとえば、すべての利用可能な視覚成分よりも少ない視覚成分をセット内に含めることによって)クライアントデバイスのディスプレイ特性に対応する関心ポイント密度閾値に基づいて制限され得る。この文脈で、「関心ポイント密度」は、視覚成分が表示される関心ポイントの数を指すと理解することができ、関心ポイント密度閾値は、その数に対する上限を定義する。関心ポイント密度閾値は、たとえば、異なる寸法のビュースクリーンまたはビューポートを有するデバイスに対して異なり得る。本書を通して使用される「ビューポート」という用語は、地図空間が提示されるディスプレイの一部分(たとえば、地図空間を提示するウェブページまたはアプリケーションインターフェースの一部分)を指す。関心ポイント密度閾値は、地図が表示されるズームレベルに応じて変化し得る。関心ポイント密度閾値の使用は、電子地図インターフェースが混雑するのを防ぐことができ、それにより、視覚成分との意図されない対話の可能性を低減することによって、地図空間とのユーザ経験を改善し、地図空間の重要な側面が遮断されることを防ぎ、ユーザが地図空間内に提示される異なる視覚成分および対応する関心ポイントを識別することを容易にする。いくつかの実装形態では、関心ポイント密度閾値は、オーバレイ内に含まれた利用可能な関心ポイントの総数からの地図ビュー内でユーザに提示される関心ポイントの数の低減を知らせることができる。
【００２８】
図1は、地図空間がネットワーク102を介して分散される例示的な環境100のブロック図である。環境は、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、インターネット、またはそれらの組合せなど、ネットワーク102を含む。ネットワーク102は、地図サーバ104、クライアントデバイス106、およびオーバレイサーバ108を接続する。例示的な環境100は、多くの異なる地図サーバ104と、クライアントデバイス106と、オーバレイサーバ108とを含み得る。
【００２９】
クライアントデバイス106は、ネットワーク102を介して  (地図インターフェースのパケット化された表現を含めて)データを要求および受信することが可能な電子デバイスである。例示的なクライアントデバイス106は、パーソナルコンピュータ、モバイル通信デバイス、およびネットワーク102を介してデータを送受信することができる他のデバイス(たとえば、タブレットデバイス、ホームオートメーションデバイス、または他のデバイス)を含む。クライアントデバイス106は、一般に、ネットワーク102を介したデータの送受信を円滑にするための、ウェブブラウザなどのユーザアプリケーションを含むが、クライアントデバイス106によって実行されるネイティブアプリケーション(たとえば、地図アプリケーションまたは検索アプリケーション)もネットワーク102を介してデータの送受信を円滑にし得る。
【００３０】
電子文書は、クライアントデバイス106においてコンテンツのセットを提示するデータである。電子文書の例には、ウェブページ、ワード処理文書、ポータブルドキュメントフォーマット(PDF)文書、画像、ビデオ、検索結果ページ、およびフィードソースがある。モバイル、タブレット、またはデスクトップコンピューティングデバイス上にインストールされたアプリケーションなど、ネイティブアプリケーション(たとえば、「アプリ」)も電子文書の例である。電子文書は、第2の電子文書内に入れ子にされてよく、たとえば、ウェブページ内に埋め込まれた画像または(たとえば、異なるソースからの)複数の異なる電子文書を組み合わせて、複数の異なる電子文書を含む集約的電信文書を作成することができる。地図空間は、電子地図の一部分からの地図情報を含む特定のタイプの電子文書である。たとえば、特定の地図空間は、アトランタ市に中心を置き、市の中心から3マイル(4.828km)広がる地理的エリアに対する地図情報を含み得る。地図空間は、任意の形状(たとえば、矩形、楕円形、円形、三角形、または凸凹)でよいことに留意されたい。地図空間は、地図サーバ104によってクライアントデバイス106に提供され得る。たとえば、地図サーバ104は、クライアントデバイス106から地図要求を受信し、その要求に応答して、地図空間をクライアントデバイスに提供することができる。いくつかの実装形態では、ユーザは、電子地図インターフェース110を通して地図空間にアクセスすることができ、電子地図インターフェース110は、ウェブブラウザまたはネイティブアプリケーションの少なくとも一部分であり得、地図空間の少なくとも一部分を含む。
【００３１】
地図要求は、たとえば、特定の地理的ロケーションを指定するデータおよび/または地図空間が提示されることになる環境のディスプレイ特性を含み得る。たとえば、地図要求は、ジョージア州、アトランタの地理的ロケーションを指定するパケット化データを含んでよく、地図空間が提示されることになるビューポート112のサイズ(および/または寸法)、および/または地図空間がクライアントデバイス106においてビューポート112内に最初に提示されることになる最初のズームレベルを指定するパケット化データをやはり含んでよい。地図ビュー114は、電子地図インターフェース110の一部分であるビューポート112内に提示される。地図ビュー、またはビューポート内に提示される地図空間の部分は、ビューポート112の寸法、および地図空間が提示されるズームレベルに部分的に左右され、地図空間全体の少なくとも一部分を表す。たとえば、地図要求の特定のインスタンス化に対するディスプレイ特性が、ビューポートがスクリーンエリア全体であるタブレットコンピュータによって作られている場合、結果として生じることになる地図ビューは、タブレットコンピュータのスクリーンエリア全体の中に提示される、地図空間の部分になる。本明細書でプロセスは別個のサーバにおいて実装されるとして説明されるが、単一のサーバが当該機能のすべてを実行してもよい。代替として、または加えて、単一のハードウェアデバイス内でまたは分散型コンピューティング環境において複数のデバイスにわたって複数のサーバが実装されてもよい。
【００３２】
地図サーバ104は、地図空間をクライアントデバイスに分散する(たとえば、送信する)コンピューティングデバイス(または、コンピューティングデバイスのグループ)である。地図サーバ104は、地図要求を分析して、要求の地理的ロケーションを識別し、ディスプレイ特性を識別する。たとえば、地図サーバは、地図要求内の地理的データを識別するために使用される識別子を含む地図要求の一部分を識別し、地理的データから地理的ロケーションを判定することができる。地理的データは、たとえば、緯度/経度座標、都市名、州名、国名、または地理的ロケーションのいくつかの他の指示であり得る。この地理的データは、次いで、たとえば、地理的データを地理的データのインデックスと比較し、地理的データにインデックス付けされた対応する地理的ロケーションを識別することによって、地理的ロケーションを識別するために使用され得る。
【００３３】
地図サーバ104は、地理的ロケーションおよびディスプレイ特性を使用して、要求に応答して提供されることになる地図データベース118から地図空間を選択する。たとえば、ジョージア州、アトランタの「Little Five Points」に対する地図要求に応答して、地図サーバは、地図データベースからの地図空間のエリア内のLittle Five Pointsエリアを含む地図空間にアクセスすることになる。上記のように、クライアントデバイスに提供される地図空間は、少なくともクライアントデバイスビューポート112内に提示される最初の地図ビュー114のサイズである。概して、地図ビューは地図空間よりも小さいことになるので、地図空間の一部分は任意の所与の時点でクライアントデバイスのビューポートの外部になる。加えて、クライアントデバイスに提供される地図空間のサイズは、ディスプレイおよびクライアントデバイスの処理能力に関する情報を反映することになる。たとえば、ユーザが低速ネットワーク上で旧式モデルのモバイルフォンを通して電子地図インターフェースにアクセスしている場合、地図空間のサイズはそれに応じて選択され得る(たとえば、地図空間はより小さくなる)。
【００３４】
地図サーバは、選択された地図空間の特性をPOI選択サーバ120および/またはオーバレイサーバ108に送信する(または、あるいはPOI選択サーバ120および/またはオーバレイサーバ108と共有する)ことができ、POI選択サーバ120および/またはオーバレイサーバ108は、それぞれ、それらの特性を使用して地図空間内に含まれた関心ポイントを識別し、提供された地図空間とともに含めるためのオーバレイを作成する。たとえば、関心ポイント(POI)選択サーバ120は、地理的識別子(たとえば、緯度/経度座標)を有する関心ポイントデータベース122から関心ポイントを識別することができ、ここで、各関心ポイント(POIN)は、地図空間の境界を示す地理的座標内に位置する関連する地理的識別子(GeoN)を有する。POI選択サーバは、次いで、利用可能な関心ポイントから、ユーザ履歴データ124に部分的に基づいて関心ポイントのランキングを作成することができる。ユーザ履歴データ124は、ユーザの履歴地図対話、前に訪問したロケーション、ユーザのソーシャルネットワークの推奨、履歴検索クエリ、およびユーザ選好を含み得る。たとえば、特定のユーザがジョージア州アトランタのLittle Five Pointsエリア内のハードウェア店を頻繁に訪れる場合、POI選択サーバ120は、地図空間内で提示される関心ポイントのリスト内で特定の店およびロケーションをより高くランク付けすることになる。関心ポイントのランク付けされたリストから、オーバレイサーバ108は、地図空間とともにクライアントデバイスに提供されるオーバレイを構築することができる。オーバレイは、クライアントデバイスのディスプレイ特性に対応する関心ポイント密度閾値に関する情報をさらに含む。上記のように、地図ビュー内で視覚的に識別される関心ポイントの数が増大するにつれて、地図ビューおよび/または関心ポイントを識別する視覚成分の利用は低減し得るので、地図空間とのオーバレイ内に含まれる関心ポイントのすべてが特定の地図ビュー内で同時に視覚的に識別されることは可能でない場合がある。しかしながら、地図ビューを混雑させずに任意の所与の地図ビュー内に提示され得る視覚成分の数は、ビューポートのサイズおよび地図ビューのズームレベルなど、様々な要因に左右されることになる。したがって、地
図ビューを混雑させずに提示され得る視覚成分の数は、クライアントデバイスにおいて地図ビューが変更するにつれて変更することになる。
【００３５】
オーバレイサーバは、特性をオーバレイに(たとえば、特定の関心ポイント閾値密度(TDN)をマッピングするインデックスにより、特定のクライアントデバイス特性に対する特定のズームレベル(ZLN)に)帰することができる。いくつかの実装形態では、地図ビュー内に提示されるPOIの数は、関心ポイント閾値密度に基づくクライアントデバイスにおける地図ビュー内の変更に応じる。たとえば、ユーザがズームインする(たとえば、所与のエリアのより詳細なビューを提示させる)場合、ユーザがズームアウトする(たとえば、所与のエリアのあまり詳細でないビューを提示させる)ときよりも、関心ポイントに対する追加の視覚成分をその所与のエリア内に提示することが可能であり得る。いくつかの実装形態では、クライアントデバイスにおける電子地図インターフェースは、ユーザがビューポート112内に提示される地図空間のその部分を動的に変更させる(たとえば、ズーム、パンなど)ことを可能にするビュー変更制御116を含む。
【００３６】
下記でより詳細に説明するように、地図空間内の関心ポイントを識別する視覚成分のセットは、地図空間の最初の地図ビュー内に最初に提示される(または、提示された視覚成分によって識別される)関心ポイントよりも多くの視覚成分を含む。たとえば、追加の視覚成分は、最初の地図ビュー内に含まれない地図空間の地理的ロケーションに位置する(たとえば、最初にビューポートの外部にある)関心ポイントに対する視覚成分、および/またはより高いズームレベルでのみ提示された視覚成分(たとえば、より詳細な地図ビュー)を含み得る。
【００３７】
図2は、2つの異なる例示的なクライアントデバイス上の様々な地図ビューを示す図である。クライアントデバイス204は、電子地図インターフェース206を提示するモバイルデバイス(たとえば、スマートフォン)である。電子地図インターフェース206は、モバイルデバイス204上にインストールされる地図アプリケーションの形態をとってよい。地図ビュー208は、地図ビュー208内の関心ポイントを識別するいくつかの視覚成分とともに地図アプリケーション内に提示される。地図ビュー208は、クライアントデバイス204において提示される最初の地図ビューであり得る。たとえば、上記で論じたように、地図に対するユーザによる最初の要求に応答して、地図サーバ104は、地図ビュー208によって視覚的に示される地図の部分を含む地図空間を識別し、地図空間をクライアントデバイス204に送信することができる。地図空間の受信時に、クライアントデバイス204は、地図空間(および、地図空間を提示するために要求される任意の追加のデータ)をローカルクライアントメモリ216内に記憶/キャッシュすることができる。加えて、クライアントデバイス204は、受信された地図空間を使用して、地図空間または任意の制御とのユーザ対話に先立って、地図ビュー208内に最初に提示される地図の部分をレンダリングおよび表示することができる。
【００３８】
上記で論じたように、いくつかの実装形態では、ローカルクライアントメモリ216内に記憶される地図空間の少なくとも一部分は、クライアントデバイス204のビューポート内に最初に提示された最初の地図ビュー208内に視覚的に示されず、それにより、地図サーバ104に対して別のネットワーク呼出しを開始することをクライアントデバイス204に要求せずに、地図ビューが変更されること(たとえば、パンされるかまたはズームされること)を可能にする。したがって、地図ビューに対する更新は、クライアントデバイス204が異なる地図空間を取得するために追加のネットワーク呼出しを行うことを要求された場合に通常なら生じることになるよりも速く生じることになる。
【００３９】
示すように、最初の地図ビュー208は、最初の地図ビュー208内のいくつかの関心ポイントの地理的ロケーションを視覚的に識別する電子成分(たとえば、地図ピン)を含む。関心ポイントは、オーバレイサーバ108によってクライアントデバイス204に送信されるオーバレイ内で視覚的に識別され得る。上記で論じたように、所与の地図ビュー内で電子成分(たとえば、地図ピン)によって視覚的に識別される関心ポイントは、要求に応答して、関心ポイント選択サーバ120によって選択された関心ポイントの完全なセットでない場合がある。たとえば、地図ビュー208は、電子成分(たとえば、地図ピン)を使用して4つの関心ポイントを視覚的に識別する地図ビュー214内に視覚的に提示されるズームエリア213内の関心ポイントを識別する何の電子成分も含まない。オーバレイは、更新された地図ビュー内に提示される関心ポイントがオーバレイサーバ108に対して別のネットワーク呼出しを開始することをクライアントデバイス204に要求せずに、動的に更新され得るように、ローカルクライアントメモリ216内に記憶されてもよい。
【００４０】
電子地図インターフェース206は、ユーザが電子地図インターフェース206内に提示される地図ビュー208を修正することを可能にするビュー変更制御210(たとえば、ズーム機能「+」および「-」)を含む。たとえば、ビュー変更制御210とのユーザ対話はプロセス212を開始する。
【００４１】
プロセス212は、ユーザがビュー変更制御210と対話したという、クライアントデバイス204による検出を含む。ユーザ対話の検出に応答して、クライアントデバイス204は、ビュー変更制御210とのユーザ対話に基づいて、地図ビューおよびPOIを更新する。いくつかの実装形態では、地図ビューに対する更新、および更新された地図ビューを用いて表示されるPOIに対する更新は、地図空間と、地図空間に対する前の要求に応答してクライアントデバイスに前に提供され、クライアントデータストア216においてキャッシュされたオーバレイ情報とを使用して実行される。
【００４２】
たとえば、ビュー変更制御との対話(たとえば、地図ビュー内のズームまたはパン)の検出に応答して、クライアントデバイス204は、その対話に基づいて電子地図インターフェース内に提示されるべき地理的エリアを識別することになる。クライアントデバイス204は、次いで、(たとえば、更新された地図ビュー内に含まれることになる地理座標の範囲を前にキャッシュされた地図空間内に含まれた地理座標の範囲と比較することによって)前にキャッシュされた地図空間内に含まれた(たとえば、地図空間によってグラフィカルに表された)地理的エリアを評価することができる。クライアントデバイス204が電子地図インターフェース内に提示されるべき地理的エリアが前にキャッシュされた地図空間内に含まれると判定するとき、クライアントデバイス204は、前にキャッシュされた地図空間の異なる部分を電子地図インターフェース内に提示するために地図ビューを更新する。
【００４３】
クライアントデバイス204は、(たとえば、「地図ピン」アイコンを使用して)更新された地図ビュー内で視覚的に識別されるべき更新された(たとえば、異なる)関心ポイントを選択し、それにより、更新されたPOIディスプレイをもたらす。更新された地図ビュー内で視覚的に識別されるべきPOIは、提示のために選択される、前にキャッシュされた地図空間の異なる部分に関する情報に基づいて選択され得る。いくつかの実装形態では、クライアントデバイス204は、たとえば、地図空間に対する前の要求に応答して、クライアントデバイス204において前にキャッシュされたオーバレイ情報とともに提供される情報を使用して、更新された地図ビュー内に含まれた地理的ロケーションに位置するPOIを識別する。たとえば、オーバレイ情報は、地理的ロケーション(たとえば、地理座標)にPOIをマッピングするインデックスおよび/または地図空間の「タイル」を含み得る。
【００４４】
地図空間のタイルは、セグメント化された地図空間の一部分であり、タイルは、地図空間を作る他のタイルからタイルを区別するために使用される一意の識別子を有し得る。したがって、オーバレイ情報は、特定のPOIに所与の地図タイルの一意の識別子をマッピングすること(または、さもなければインデックス付けすること)によって、特定のPOIが所与の地図タイル内にあることを特定することができる。したがって、クライアントデバイス204が(たとえば、タイルの一意の識別子にアクセスすることまたはそれを読み取ることによって)特定のタイルが更新された地図ビュー内に提示されていると判定するとき、クライアントデバイス204は、(たとえば、タイルの一意の識別子をPOIに関連付けられているタイル識別子と比較することによって)クライアントデバイス204において前にキャッシュされたオーバレイ情報内のタイルの一意の識別子にマッピングされたPOIに基づいて、特定のタイル内に含まれたPOIを識別することができる。
【００４５】
図3を参照してより詳細に論じるように、更新された地図ビュー内で(たとえば、マッピングピンアイコンなどの視覚成分を使用して)視覚的に識別されるPOIの数はオーバレイ情報とともにクライアントデバイス204に提供される事前判定されたPOI密度閾値パラメータに基づいて制限され得る。異なる事前判定されたPOI密度閾値パラメータは、様々なズームレベルで提示されるとき、地図空間の混雑を防ぐために異なるズームレベル(および/または、ビューポート境界を含めて他のデバイスディスプレイ特性)にマッピングされてよく、それにより、電子地図インターフェースのユーザ経験を向上させる。事前判定されたPOI密度閾値パラメータのズームレベルに対するこのマッピングは、オーバレイ情報がクライアントデバイス204に提供されるとき、ローカルクライアントメモリ216内に記憶され得、それにより、ユーザがビュー変更制御210と対話するとき、クライアントデバイス204がこの情報に対するネットワーク呼出しを開始する必要を防ぐ。クライアントデバイス204における事前判定されたPOI密度閾値パラメータのキャッシングは、地図ビューの更新に関連するレイテンシを低減するが、これは、クライアントデバイス204は、ビュー変更制御210との各ユーザ対話に応答して遠隔サーバに連絡しなくてよく、地図空間とのより流動的な対話を円滑にするためである。
【００４６】
事前定義されたPOI密度閾値パラメータは、クライアントデバイス204において識別され、事前にキャッシュされなければならないPOIの数を制限するために使用されてもよく、それにより、クライアントデバイス204において記憶される必要があるデータの量を低減する。加えて、図3を参照して下記で詳細に論じるように、ユーザに関連する履歴情報に基づいてPOIをランク付けすることによって、電子地図インターフェースにアクセスするユーザに対して個人化されたPOIのセットが生成され得る。いくつかの実装形態では、最高位にランク付けされたPOIのセットのみがクライアントデバイスに提供され、そのセット内に含まれるPOIの数は、地図空間に関連する最高位に事前判定された関心ポイント閾値密度に従って提示され得るPOIの最大数に制限され得る。
【００４７】
いくつかのシナリオでは、視覚成分が表示される最高位にランク付けされたPOIのセットは、ビューポートの小さな領域内に依然としてコロケートされ得ることが考えられる。1つのそのようなシナリオは、たとえば、ユーザが都市がディスプレイ内の非常に少数の画素を占有する非常に低いズームレベルで地図を閲覧するときであり得る。これは画像のその部分の混雑を高める可能性があるが、そのロケーションにズームするとすぐにこの問題は依然として解決されることになり、ズームレベルが高まるにつれて、関心ポイント同士の間の間隔は当然増大し、混雑を低減することになる。関心ポイント密度閾値は、画像がポピュレートされる関心ポイントの数に制限を置くことになり、それにより、かなりの数の追加の関心ポイントを追加することによって、関心ポイント同士の間の増大した間隔が損なわれないことを確実にする。
【００４８】
いくつかの実装形態では、クライアントデバイスは、ネットワーク202を通して、更新された地図空間およびオーバレイ情報をサーバ218から要求する。たとえば、ユーザがクライアントデバイスにおいて前にキャッシュされた地図空間の外部の地図ビューにズームアウトおよびパンする場合、クライアントデバイスは、図1に関して上記で論じたのと同様の方法で、サーバ218にアクセスして、新しい地図空間およびオーバレイを要求することになる。サーバ218は、複数の分散されたサーバデバイス(たとえば、別個のPOI選択サーバ120、オーバレイサーバ108、および地図サーバ104)、または図1の別個に識別されたサーバの複数の機能を実行する単一のサーバデバイス、または両方の組合せを表すことができる。
【００４９】
別の例示的なクライアントデバイス220は、クライアントデバイス204よりも大きな表示エリアを有するタブレットデバイスである。クライアントデバイス220は、地図ビュー224を提示する電子地図インターフェース222を(たとえば、ウェブブラウザ内に)含む。ビュー変更制御226を用いた(たとえば、ズーム機能を使用する)ユーザ対話は、プロセス212を開始し、新しい地図ビュー228を表示するために電子地図インターフェース内の地図ビューを更新する。新しい地図ビュー228は、前にキャッシュされた地図空間およびクライアントデータストア230において記憶されたオーバレイからクライアントデバイス更新によって提示され得る。地図ビュー228がキャッシュされた地図空間の外部にある場合、クライアントデバイスにおいて新しい地図空間およびオーバレイを受信するためにサーバ218に対する要求がネットワーク202を介して行われ得る。
【００５０】
異なるクライアントデバイスは、異なるディスプレイサイズを有し得、かつ/または異なるビューポートサイズをサポートし得、その結果として、それぞれのディスプレイ特性を有する各特定のクライアントデバイスに対して確立された密度閾値の差異により、同じ地図空間に対して様々な数のPOIおよびズーム特性を表示することができる。たとえば、図2の地図ビュー208および224、および更新された地図ビュー214および228は、それぞれ、同じ最初のズームレベルおよび最後のズームレベルを名目上示しているが、ビューポートサイズの差異により、異なる数のPOIを提示する。図3は、対話式地図に対してオーバレイを生成/分散する例示的なプロセス300のフローチャートである。プロセス300の動作は、図2のサーバ218など、1つまたは複数のデータ処理装置によって実行され得る。プロセス300の動作は、非一時的コンピュータ可読媒体上に記憶された命令として実装されてよく、命令の実行は、1つまたは複数のデータ処理装置(たとえば、サーバまたは他のコンピューティングデバイス)にプロセス300の動作を実行させる。
【００５１】
特定の地理的ロケーションを視覚的に示す対話式地図を提示するようにとの要求をクライアントデバイスから受信する(302)。いくつかの実装形態では、この要求は、その要求を提出したユーザの情報ニーズを指定する検索クエリとは無関係に(たとえば、検索クエリなしで)受信される。たとえば、この要求は、地図アプリケーションがクライアントデバイスにおいて起動されるときに開始されてよく、特定の地理的ロケーションは、(たとえば、ロケーションベースのサービスがクライアントデバイスにおいて可能にされるときにGPSデータによって指定されるように)クライアントデバイスの現在のロケーションまたはクライアントデバイスに対して事前に指定されたデフォルトロケーションに基づき得る。
【００５２】
対話式地図は、その要求に応答して、クライアントデバイスのユーザインターフェース内に提示されることになる。ユーザインターフェースのディスプレイ特性は、その要求内に含まれた情報に基づいて識別または判定され得る。いくつかの実装形態では、ディスプレイ特性はその要求内に埋め込まれてよい。たとえば、ディスプレイ特性は、その要求のURLに添付されてよいか、またはその要求とともに受信されたデータパケットの特定のロケーション内に含まれてよい。これらの状況で、ディスプレイ特性(たとえば、サイズ、アスペクト比、解像度、配向、または他の特性)は要求自体から直接識別され得る。
【００５３】
いくつかの実装形態では、要求は、デバイスタイプまたは特定のデバイス識別子および/もしくはアプリケーション識別子(たとえば、ModelXスマートフォン識別子、BrowserY識別子、および/またはMapApplicationZ識別子)を識別する情報を含む。これらの状況で、クライアントデバイスのディスプレイ特性のうちの少なくともいくつか(たとえば、スクリーンサイズおよび/または解像度)は、ディスプレイ特性(たとえば、スクリーンサイズおよび/またはディスプレイ解像度)に対するデバイスモデルおよび/またはアプリケーション識別子のマッピングを使用して識別され得る。たとえば、マッピングは、要求内に含まれる識別子に一致する識別子に対して検索されてよく、一致する識別子にマッピングされるディスプレイ特性は、その要求を提出したクライアントデバイスのディスプレイ特性として使用され得る。
【００５４】
要求に基づいて特定の地理的ロケーションを含む地図空間を選択する(304)。いくつかの実装形態では、地図空間の選択は、特定の地理的ロケーションを含む地図の一部分(たとえば、地図タイル)の識別を含む。たとえば、特定の地理的ロケーションの地理座標を使用して、(たとえば、特定の地理的ロケーションにインデックス付けされた地図タイルを識別することによって)特定の地理的ロケーションを視覚的に示す地図の部分を識別することができる。
【００５５】
いくつかの実装形態では、地図の選択された部分は、特定の地理的ロケーションの中心をクライアントデバイスのビューポート(または、ビューポートの何らかの他の指定されたロケーション)内に置く最初の地図ビュー内に提示されることになる。クライアントデバイスのディスプレイ特性、地図の選択された部分(たとえば、地図タイル)のサイズ、および/または地図の選択された部分が提示されることになるビューポートのサイズに応じて、地図の選択された部分は、ビューポート全体を満たさない場合がある。したがって、ビューポート全体が地図の視覚的描写で満たされるように、地図の追加の部分を選択することもできる。
【００５６】
地図の追加の部分は、たとえば、特定の地理的ロケーションを使用して選択された地図タイルに隣接する地図タイルであってよい。いくつかの実装形態では、要求に応答して選択された地図部分の集約セットの地図エリアは、最初の地図ビュー内に含まれた地理的エリアを超える地理的エリアを含むことになる。最初の地図ビューは、対話式地図とのユーザ対話に先立って、クライアントデバイスのビューポート内に提示される地図空間の最初のビューである。したがって、地図エリアは、対話式地図とのユーザ対話に先立って、クライアントデバイスのビューポート内に提示されない対話式地図の部分(たとえば、オフスクリーン)を含み得る。上記で論じたように、対話式地図との考えられる対話は、地図空間が提示されるズームレベル、および/または左、右、上、または下にパンして、ビューポート内に提示される地図空間の一部分を変更することを含み得る。各対話は、異なる地図情報を提示する、更新された地図ビューの提示を開始し得る。
【００５７】
選択された地図空間に対する複数の関心ポイントを識別する(306)。いくつかの実装形態では、識別された関心ポイントは、選択された地図空間によって視覚的に示された地理的領域内に位置した地理的ロケーションを有する。たとえば、特定の地理的ロケーションがジョージア州アトランタの都市であり、選択された地図空間がアトランタの中心地から15マイル(24.14km)広がる地図エリア(たとえば、半径15マイル、または北、南、東、および西の4つの基本方向の各々の15マイルの長方形)を含むと仮定する。この例では、選択された地図空間に対して識別される関心ポイントは、アトランタの中心地から15マイル範囲内にある任意の関心ポイントを含み得る。
【００５８】
複数の関心ポイントに対するオーバレイを生成する(308)。オーバレイは、地図空間内の識別された関心ポイントのうちの少なくともいくつかの地理的ロケーションにおける1つまたは複数の視覚成分(たとえば、地図ピンアイコンまたは他のアイコン)をクライアントデバイスにおいて動的に提示する。視覚成分の動的な提示は、クライアントデバイスに、ビュー変更制御とのユーザ対話に応答して(たとえば、それに基づいて)視覚成分によって識別された関心ポイントを更新させることができる。ビュー変更制御は、たとえば、地図空間がビューポート内に提示されるズームレベルを変更するズームレベル制御であり得る。ビュー変更制御は、ビューポート内の地図空間を再配置させる(たとえば、ビューポート内に提示される地図空間の一部分を変更する)パン制御であってもよい。下記でより詳細に論じるように、所与の地図ビュー内で視覚的に識別される特定の関心ポイントは、クライアントデバイスのディスプレイ特性、地図ビューのズームレベル、提示されている地図空間の特徴、ユーザ選好、および/またはユーザが地図を閲覧することに対応する履歴データに基づき得る。
【００５９】
オーバレイの生成は、関心ポイントを表す視覚成分の各々との対話の可能性に基づいて、識別された複数の関心ポイントをランク付けすることを含み得る。たとえば、ランク付けは、地図空間を閲覧するユーザに対する関心ポイントの各々の関連性を反映し得、より高位にランク付けされた関心ポイントは、より低くランク付けされた関心ポイントよりもユーザにより関連すると見なされる。いくつかの実装形態では、下記で論じるように、ユーザに対する各関心ポイントの関連性のレベルは、ユーザまたはそのユーザと同様のユーザのグループの履歴活動に基づいて判定されてよい。以下の議論は、(たとえば、クライアントデバイスにおいてまたはユーザアカウント内で)ロケーションベースのサービスが可能にされると仮定する。オーバレイ内に含まれる関心ポイントのランク付けは、(たとえば、要求の提出に先立つ、前の地図閲覧セッションの間の)電子地図インターフェース内の、または(たとえば、前の地図閲覧セッションの間に、または検索エンジンを通して)ユーザによって前に提出された検索クエリからのユーザ活動を考慮に入れることができる。たとえば、ユーザが特定のコーヒー店に定期的にまたはさらには頻繁に訪問すると仮定する。この例では、ユーザに対するコーヒー店(および、特定のコーヒー店)の関連性のレベルは、ユーザが特定のコーヒー店を訪問する頻度に比例して調整(たとえば、増大または低減)され得る。この例では、特定のコーヒー店へのユーザの訪問は、その同じコーヒー店への繰り返しの訪問により、一般的なコーヒー店よりもその特定のコーヒー店に対する関連性レベルにより貢献し得る。たとえば、関心ポイントとしての特定のコーヒー店の関連性に対する特定のコーヒー店の訪問の貢献度は、ロケーションのカテゴリーとしてのコーヒー店の関連性に対する同じ訪問の貢献度よりも大きく重み付けされ得る。
【００６０】
上記の例を続けると、特定のコーヒー店の地理的近接性内にある関心ポイントの関連性は、ユーザがその特定のコーヒー店(または、同じ地理的近接性内の他の関心ポイント)を訪問する頻度に基づいて調整されてもよい。たとえば、書店が特定のコーヒー店と同じショッピングセンター内に位置すると仮定する。この例では、ユーザに対する書店の関連性は、ユーザがショッピングセンターの指定された範囲内を移動する頻度に基づいて調整され得る。より具体的には、ユーザが訪問したロケーションに近い関心ポイントの関連性は、ユーザの履歴移動経路に対するその近接性、およびユーザがそれらの経路に沿ってまたは特定のロケーションに移動する頻度に基づいて増大し得る。
【００６１】
特定の関心ポイントの関連性に対するユーザの所与のロケーションへの訪問の貢献度は、ユーザが訪問した所与のロケーションのその関心ポイントに対する近接性に基づいて重み付けされてよい。たとえば、所与のロケーションに対するユーザ訪問が関心ポイントの関連性に貢献するためには、関心ポイントは、所与のロケーションの指定された距離(たとえば、マイルまたは移動時間)内であることが要求され得る。これらの状況で、指定された距離内にない関心ポイントは、所与のロケーションに対するユーザの移動に基づいてそれらの関連性を調整させないことになる。
【００６２】
加えて、または代替として、所与のロケーションに対するユーザ訪問が特定の関心ポイントの関連性に及ぼす影響は、所与のロケーションに対する特定の関心ポイントの距離に基づいて重み付けされ得る。たとえば、所与のロケーションに対する訪問に加えられる重みは、所与のロケーションに対する訪問の貢献度が、所与のロケーションからさらに離れた関心ポイントに対して低減することになるように、所与のロケーションに対する距離における低減機能であり得る。
【００６３】
別の例では、特定のユーザの検索クエリ履歴(たとえば、「Atlanta Children's Museum」に対する検索)が地図空間内で地理的に見出されたPOIの参照を含む場合、ユーザに対するそのPOIの関連性は、ユーザの検索クエリ履歴内で参照されなかった、他の識別された関心ポイントと比べて増大し得る。ユーザによる特定の検索の頻度または検索のカテゴリーが特定の関心ポイント(たとえば、特定のコーヒー店)および/または関心ポイントのカテゴリー(たとえば、一般的なコーヒー店)の関連性を調整するために使用されてもよい。たとえば、所与の関心ポイントカテゴリーに対するユーザによる検索頻度が増大するにつれて、その所与の関心ポイントカテゴリーの関連性は増大し得る。
【００６４】
所与の関心ポイントの関連性は、ユーザが指定した選好を使用して調整されてもよい。たとえば、特定のユーザが、Example Science Museumの地理的ロケーションを含む、ジョージア州アトランタの地図空間を要求すると仮定する。また、この特定のユーザが(たとえば、ユーザのプロファイル設定またはアカウント設定における選択を通して)「家族向けの活動」関心ポイントカテゴリー内の関心ポイントに対する選好を前に指定したと仮定する。この例では、ユーザが「家族向けの活動」に対する関心ポイントに関心があるというユーザの明確な指示に基づいて、Example Science Museumのランク付けは、他の非「家族向け活動」関心ポイントと比べて増大することになる。
【００６５】
特定のユーザの履歴または選好に基づいてPOIをランク付けすることに加えて、ユーザのソーシャルネットワーク接続の選好および推奨を使用して、識別されたPOIをランク付けすることができる。ユーザのソーシャルネットワークは、有力なユーザおよび/またはその地理的ロケーションがクライアントデバイスに提供された地図空間のエリア内にあるユーザのセットを含み得る。たとえば、ユーザのソーシャルネットワーク内でユーザにつながっている他のユーザ(たとえば、友人、人脈、連絡先、またはさもなければ、通信しているユーザ)が特定のヨーグルト店を(たとえば、オンラインレビューを通して、または訪問頻度によって)高く評価したと仮定する。この例では、ユーザが高く評価されたヨーグルト店の地理的ロケーションを含む地図空間を要求するとき、ユーザのソーシャルネットワーク人脈によるヨーグルト店の高い評価により、オーバレイ選択プロセスが地図空間とともに提供されるオーバレイ内に含まれる関心ポイントとしてその高く評価されたヨーグルト店を高くランク付けし選択する可能性がより高くなる。
【００６６】
他のPOIと比べてPOIをランク付けするための所与のPOIの関連性は、所与のPOIが属する各POIカテゴリーに基づいて調整され得る。たとえば、ジョージア州、アトランタのExample Science Museumを表すPOIは、「博物館」、「科学博物館」、およびさらに「家族向けの活動」として分類され得る。この例では、所与のユーザに対するPOIとしてのExample Science Museumの関連性は、所与のユーザに対する各POIカテゴリーの集約的関連性に基づき得る。集約的関連性は、追加的であってよく(たとえば、各POIカテゴリーの関連性は他のPOIカテゴリーの関連性に追加される)、または関連性は、機械学習技法およびトレーニングデータ(たとえば、履歴ユーザデータおよび関心ポイントとのユーザ対話を指定する対話データ)のセットを使用して生成されるモデルを使用して判定されてもよい。これらの状況で、利用可能な関心ポイントの各々に対する対話の可能性を提供するために、所与のユーザの履歴データおよび利用可能な関心ポイントに機械学習モデルが加えられてよい。この対話の可能性は、次いで、POIの関連性のレベルと見なされてよく、他のPOIと比べてそのPOIをランク付けするために使用されてよい。
【００６７】
上記で論じたように、識別された複数の関心ポイントは、ユーザが前に訪問した地理的ロケーションのうちの1つまたは複数、ユーザが前に訪問したロケーションのカテゴリー、ユーザが異なるロケーションのカテゴリーを前に訪問した頻度、および/またはユーザが前に訪問したロケーションに対する関心ポイントの近接性に基づいてランク付けされてよい。いくつかの実装形態では、時刻および/または曜日もランク付けのために同様に考慮され得る。たとえば、ユーザが平日には毎日同じ時間に特定のコーヒー店を訪問し、次いで、週末には2時間遅く特定のコーヒー店に訪問すると仮定する。この例では、異なるロケーションのカテゴリーの前の訪問に関連する時刻情報を使用して、平日の訪問時間に対する平日のコーヒー店関心ポイントの関連性を増大し、週末の2時間遅いコーヒー店関心ポイントの関連性を増大することができる。
【００６８】
オーバレイは、提示される視覚成分の数が地図ビューを混雑させることを防ぐ方法で生成され、それにより、ユーザが地図を効果的に利用し、関心ポイントの視覚成分が提示されている間に地図から情報を取得することを可能にする。いくつかの実装形態では、生成されるオーバレイは、提示される視覚成分の数が関心ポイント密度閾値を超えるのを防ぐ。関心ポイント密度閾値は、特定の地図ビュー内に提示されることが許可される(たとえば、関心ポイントの地理的ロケーションを識別する)視覚成分の最大数を指定する。上記で論じたように、所与の地図ビューに対する関心ポイント密度閾値は、クライアントデバイスのディスプレイ特性に基づいて選択され得る。たとえば、データ構造内に記憶された関心ポイント密度閾値に対するディスプレイ特性のマッピングは、ディスプレイ特性の様々な組合せに対する関心ポイント密度閾値を指定し得る。
【００６９】
いくつかの実装形態では、関心ポイント密度閾値は、事前に指定された規則のセットに基づいて判定され得る。たとえば、第1の規則は、モバイルデバイスに対する最高関心ポイント密度閾値(「最高密度閾値」)が5であると指定することができる。一方で、1つまたは複数の追加の規則を使用して、他のディスプレイ特性に基づいて最高密度閾値を拡張(たとえば低減)することができる。たとえば、ビューポートがフルスクリーンモードで閲覧されていない場合、第2の規則は、最高密度閾値が2(または、何らかの他の量)の視覚成分だけ低減されるべきであると指定することができる。同様に、第3の規則は、オーバレイの生成に先立って地図ビュー内に提示するために選択された他の視覚成分の数に基づいて最高密度閾値が低減されるべきであると指定することができる。たとえば、第3の規則は、オーバレイの生成に先立って提示のために選択された各POIに対して、最高密度閾値が1だけ低減されるべきであると指定することができる。
【００７０】
オーバレイは、識別された関心ポイントの最高位にランク付けされたセットに対する視覚成分を含むように生成され得る。いくつかの実装形態では、関心ポイントの最高位にランク付けされたセットは、上記で論じたように、ユーザに対して最高の関連性を有すると判定された関心ポイントであり得る。識別された関心ポイントの最高位にランク付けされたセットの中に含まれる関心ポイントの数は、選択された地図空間と、その地図空間に対する関心ポイント密度閾値とを考慮すると、潜在的に提示可能である任意の関心ポイントを含み得る。たとえば、地図空間の任意の地図ビューに対する最高密度閾値が5であると仮定する。この例では、5つの最高位にランク付けされた関心ポイントが、識別された関心ポイントの最高位にランク付けされたセット内に含まれることになる。
【００７１】
たとえば、オーバレイが地図空間の各潜在的な地図ビューに対する関心ポイントを含むことを確実にするために、関心ポイントの最高位にランク付けされたセット内に追加の関心ポイントが含まれてもよい。たとえば、地図空間の最初の地図ビューがクライアントデバイスにおいて提示された後で、ユーザが右にパンして、最初に提示されなかった地図空間の異なる部分を明らかにすると仮定する。さらに、このパンの結果、最初の地図ビュー内で視覚的に識別された関心ポイントの地理的ロケーションはもはやスクリーン上に提示されないと仮定する。この例では、識別された関心ポイントの最高位にランク付けされたセットは、パンによって遮断された関心ポイントを置換するために、新しく提示される地図ビュー内にある地理的ロケーションを有する関心ポイントを含む必要があることになる。
【００７２】
いくつかの実装形態では、関心ポイントの最高位にランク付けされたセットは、関心ポイントを識別する視覚成分とのユーザ対話の可能性と調整係数(adjustment factor)の組合せに基づいて選択される。いくつかの実装形態では、ユーザ対話の可能性と調整係数の組合せは、関心ポイントをランク付けするために使用されるランク付けスコアを提供する。たとえば、関係(1)を使用して各関心ポイントに対するランク付けスコアを生成することができる。
RSi=PIi*AFi (1)
式中、
RSiは、関心ポイントiのランク付けスコアであり、
PIiは、関心ポイントiを表す視覚成分とのユーザ対話の確率であり、
AFiは、関心ポイントiの調整係数である。
【００７３】
調整係数は、関心ポイントに関連する任意の数の値であってよい。たとえば、調整係数は、関心ポイントに関連する品質測定基準であってよい。代替として、調整係数は、関心ポイントに関連するエンティティ(たとえば、コーヒー店の所有者)によって指定される付け値(たとえば、地図上の関心ポイントとのユーザ対話に対して支払われる料金)であり得る。
【００７４】
いくつかの実装形態では、関心ポイントの最高位にランク付けされたセットは、関係(2)を使用して選択されることになる。
【００７５】
【数１】
0006744483.tif 000002
【００７６】
式中、
nは、関心ポイントの最高位にランク付けされたセット内に含まれる関心ポイントの数であり、
PIiは、関心ポイントiを表す視覚成分とのユーザ対話の確率であり、
AFi+1は、関心ポイントiに対して次に最高位にランク付けされた関心ポイントi+1に対する調整係数である。
【００７７】
オーバレイは、ランク付けに基づいて所与の地図ビュー内でどの関心ポイントが識別されるかを動的に変更するために生成され得る。いくつかの実装形態では、提示された関心ポイントに対する動的変更は、クライアントデバイスにおける対話式地図とのユーザ対話に応答して実行される。たとえば、地図ビュー内の変更は、地図空間内に提示される視覚成分によってどの関心ポイントが識別されるかを変化させ得る。より具体的には、最初の地図ビューに対する関心ポイント密度閾値が3であり、ユーザがズーム制御と対話して、(たとえば、図2において地図ビュー208および214によって示されるような)より高いズームレベルを有する、更新された地図ビューを生成すると仮定する。この例では、より高いズームレベルは、(たとえば、記憶されたズームレベルの密度閾値へのマッピングに基づく)4の関心ポイント密度閾値に対応し得る。したがって、オーバレイは、追加の関心ポイントの地理的ロケーションを識別するために追加の視覚成分を明らかにし(たとえば、提示し)得る。いくつかの実装形態では、追加の視覚成分によって識別される追加の関心ポイントは、先立つ地図ビュー内で最初に識別されなかった次に最高位にランク付けされた関心ポイントであり得る。いくつかの実装形態では、ズームレベルの変更が関心ポイントの前に提示されたのとは完全に(または、部分的に)異なる関心ポイントセットを明らかにし得るように、ランク付けは異なるズームレベルに対して別個に実行される。
【００７８】
オーバレイに関するオーバレイ情報をクライアントデバイスにおいてキャッシュする(310)。いくつかの実装形態では、オーバレイ情報は、関心ポイントの最高位にランク付けされたセット、関心ポイントの最高位にランク付けされたセットの地理的ロケーションを識別する地理的データ(たとえば、地理座標)と、関心ポイントの最高位にランク付けされたセット内の関心ポイントの各々を視覚的に識別するために使用される視覚成分とを含む。最初の地図ビュー内に最初に提示されない関心ポイントを含めて、オーバレイ情報をクライアントデバイスにおいてキャッシュすることは、ユーザが地図空間と対話するにつれて後続の地図ビュー内に提示される関心ポイントの動的かつ途切れのない更新を可能にする。たとえば、オーバレイ情報から新しい関心ポイントを局所的に取得することができるため、クライアントデバイスは異なる地図ビューに対する異なる関心ポイントを識別するためにネットワーク呼出しを開始することを要求されない。したがって、ユーザは、途切れることなく地図空間と対話し、遠隔サーバからの追加の情報を待たずに関連する情報を取得することができる。
【００７９】
各関心ポイントに関連する特定の地理的ロケーションを有することに加えて、関心ポイントは、加えて、たとえば、符号化されたユニバーサルリソースロケータ、関連するカテゴリー、営業ベースの情報(たとえば、営業時間)、または他のパラメータを含めて、他の属性を有し得る。たとえば、ジョージア州、アトランタのExample Science Museumを表す関心ポイントは、博物館ウェブサイトのURL、「博物館」および「IMAX」に関連するカテゴリー、ならびにその営業時間およびチケット価格を含み得る。Example Science Museumに対する各視覚成分内に含まれるコードは、視覚成分とのユーザ対話に応答して様々な情報が提示されることを可能にする。たとえば、ユーザによる視覚成分にホバリングまたは視覚成分の最初のユーザクリックは、地図ビュー内の関心ポイントに関する情報を明らかにし得る。加えて、または代替として、視覚成分上の第2のユーザクリックは、視覚成分によってリンクされるウェブページ(たとえば、関心ポイントに対するウェブページ)の要求を開始し得る。
【００８０】
いくつかの実装形態では、クライアントデバイスは、クライアントデバイスにおける地図ビューの提示の間に出現するように選択されている特定の関心ポイントに関するフィードバックを提供することができる。たとえば、クライアントデバイスは、関心ポイントがクライアントデバイス上のビューポート内にあった持続時間、特定のユーザがその持続時間の間に関心ポイントと対話したかどうか、または特定の関心ポイントが一定の時間期間内に地図ビュー内で複数回遮断されたように見えたかどうかに関するフィードバックを提供することができる。この情報を使用して、地図ビュー内の関心ポイントの痕跡を記録するかどうかを判定することができる。
【００８１】
いくつかの実装形態では、地図空間は  また、クライアントデバイスにおいてキャッシュされる。たとえば、地図ビュー同士の間の途切れのない遷移を円滑にするために、最初の地図ビューを生成するために使用される地図空間の部分および/または地図空間の追加の部分がクライアントデバイスにおいてキャッシュされる。(たとえば、最初の地図要求に応答して)クライアントデバイスにおいてキャッシュされた地図空間の部分は、地図空間とのユーザ対話に先立って、地図ビュー内に提示された地理的エリアを超えた地理的エリア(たとえば、オフスクリーンエリア)を含む地図空間の部分を含み得る。
【００８２】
地図空間およびオーバレイでユーザインターフェースを更新する(312)。いくつかの実装形態では、ユーザインターフェースは、最初の地図ビュー(たとえば、特定の地理的ロケーションを中心とする地図空間のビュー)および1つまたは複数の関心ポイントを識別する視覚成分を最初の地図ビュー内に提示するために最初に更新される。たとえば、地図ビュー224は、最初の地図ビューを提示するために更新されたユーザインターフェースを備えたクライアントデバイスの一例である。
【００８３】
最初の地図ビューが提示された後で、ユーザインターフェースは、キャッシュされた地図空間およびキャッシュされたオーバレイ情報を使用してさらに更新され得る。たとえば、ビュー変更制御とのユーザ対話を検出することができ、ユーザ対話に応答して地図空間が提示されることになるズームレベルを識別することができる。たとえば、ズームレベル制御との単一のユーザ対話は、1レベルだけズームのレベルを増大し得る。したがって、ズームレベル制御との単一のユーザ対話の検出は、現在のズームレベルよりも1レベル高いズームレベルを識別することができる。
【００８４】
識別されたズームレベルは、キャッシュされたオーバレイ情報内の対応する関心ポイント密度閾値を識別するために使用される。たとえば、上記で論じたように、オーバレイ情報は、対応する関心ポイント密度閾値へのズームレベルのマッピングを含み得る。このマッピングは、識別されたズームレベルを位置特定し、識別されたズームレベルに対する対応する関心ポイント密度閾値を読み取るために、キャッシュされたオーバレイ情報内でアクセスされ得る。
【００８５】
識別されたズームレベルでビューポート内に視覚的に示された地理的ロケーションを有する関心ポイントのセットは、キャッシュされたオーバレイ情報から識別される。たとえば、クライアントデバイスは、キャッシュされたオーバレイ情報にアクセスして、どの関心ポイントが提示されている地図ビューの地理座標の範囲内にある地理座標を有するかを識別することができる。これらの識別された関心ポイントの相対的なランク付けがクライアントデバイスに利用可能であるように、これらの関心ポイントのランク付けは、キャッシュされたオーバレイ情報から識別されてもよい。対応する視覚成分を使用して地図ビュー内で視覚的に識別されるとして、識別された関心ポイントのうちの1つまたは複数が次いで選択される。いくつかの実装形態では、選択される識別された関心ポイントの数は、識別されたズームレベルに対する対応する関心ポイント密度閾値以下である。たとえば、選択された関心ポイントは、識別された関心ポイントからの最高位のx個のランク付けされた関心ポイントであり得、xは、識別されたズームレベルに対する関心ポイント密度閾値である。
【００８６】
いくつかの実装形態では、1つまたは複数の関心ポイントは、クライアントデバイスのデバイスタイプまたはクライアントデバイスのスクリーンサイズに基づいて選択される。たとえば、上記で論じたように、デバイスタイプ(たとえば、タブレット、モバイル、デスクトップ)および/またはデバイスのモデル番号が要求内に含まれてよい。したがって、この情報は、クライアントデバイスのスクリーンサイズおよび/または解像度を探索するために使用され得る。この情報は、オーバレイ内に含めるためにどのくらい多くの関心ポイントが選択されることになるかを判定するために、単独で、または他のディスプレイ特性(たとえば、ディスプレイ内のビューポートのサイズおよび/またはロケーション)と組み合わせて使用され得る。
【００８７】
いくつかの実装形態では、1つまたは複数の関心ポイントは、関心ポイントの現在の選択に先立って提示のために事前選択されている関心ポイントの数に基づいて選択される。たとえば、ビュー変更制御とのユーザ対話に応答して関心ポイントを選択するのに先立って、地図空間内で識別されるとして特定の関心ポイント(たとえば、州立公園)が選択されたと仮定する。この例では、ユーザ対話に応じた関心ポイントの選択は、特定の関心ポイントの事前選択を明らかにするために修正され得る。より具体的には、特定の関心ポイントの事前選択に基づいて、選択される関心ポイントの数を低減することができる。
【００８８】
図4は、上記で説明した動作を実行するために使用され得る例示的なコンピュータシステム400のブロック図である。システム400は、プロセッサ410と、メモリ420と、記憶デバイス430と、入出力デバイス440とを含む。構成要素410、420、430、および440は各々、たとえば、システムバス450を使用して相互接続され得る。プロセッサ410は、システム400内の実行のための命令を処理することができる。一実装形態では、プロセッサ410は、シングルスレッドプロセッサである。別の実装形態では、プロセッサ410は、マルチスレッドプロセッサである。プロセッサ410は、メモリ420内または記憶デバイス430上に記憶された命令を処理することができる。
【００８９】
メモリ420は、システム400内に情報を記憶する。一実装形態では、メモリ420はコンピュータ可読媒体である。一実装形態では、メモリ420は揮発性メモリユニットである。別の実装形態では、メモリ420は不揮発性メモリユニットである。
【００９０】
記憶デバイス430は、システム400に大容量記憶装置を提供することができる。一実装形態では、記憶デバイス430はコンピュータ可読媒体である。様々な異なる実装形態では、記憶デバイス430は、たとえば、ハードディスクデバイス、光ディスクデバイス、複数のコンピューティングデバイスによってネットワークを介して共有される記憶デバイス(たとえば、クラウド記憶デバイス)、または何らかの他の大容量記憶デバイスを含み得る。
【００９１】
入出力デバイス440は、システム400に入出力動作を提供する。一実装形態では、入出力デバイス440は、ネットワークインターフェースデバイス、たとえば、Ethernetカード、シリアル通信デバイス、たとえば、RS-232ポート、および/またはワイヤレスインターフェースデバイス、たとえば、802.11カードのうちの1つまたは複数を含み得る。別の実装形態では、入出力デバイスは、他の入出力デバイス、たとえば、キーボード、プリンタ、およびディスプレイデバイス460から入力データを受信し、それらに出力データを送るように構成されたドライバデバイスを含み得る。しかしながら、モバイルコンピューティングデバイス、モバイル通信デバイス、セットトップボックステレビジョンクライアントデバイスなど、他の実装形態が使用されてもよい。
【００９２】
図4では例示的な処理システムについて説明されているが、本明細書で説明した主題および機能的動作の実装形態は、本明細書で開示した構造、およびそれらの構造的均等物、またはそれらのうちの1つまたは複数の組合せを含めて、他のタイプのデジタル電子回路内で、またはコンピュータソフトウェア、ファームウェア、またはハードウェア内で実装され得る。
【００９３】
電子文書は、ファイルに対応し得るが、そうでなくてもよい。文書は、他の文書を保持するファイルの一部分の中に、当該文書専用の単一のファイル内に、または複数の調整されたファイル内に記憶され得る。
【００９４】
本明細書で説明した主題および動作の実施形態は、デジタル電子回路内で、または本明細書で開示した構造物およびその構造的均等物を含めて、コンピュータソフトウェア、ファームウェア、もしくはハードウェア内で、あるいはそれらのうちの1つまたは複数の組合せ内で実装され得る。本明細書で説明する主題の実施形態は、データ処理装置による実行のために、またはデータ処理装置の動作を制御するために、コンピュータ記憶媒体上で符号化された、1つまたは複数のコンピュータプログラム、すなわち、コンピュータプログラム命令の1つまたは複数のモジュールとして実装され得る。代替として、または加えて、プログラム命令は、データ処理装置による実行のために適切な受信機装置に送信するための情報を符号化するために生成される、人工的に生成された伝搬信号、たとえば、機械生成された電子信号、光信号、または電磁信号の上で符号化され得る。コンピュータ記憶媒体は、コンピュータ可読記憶デバイス、コンピュータ可読記憶基盤、ランダムアクセスメモリアレイもしくはランダムアクセスメモリデバイス、シリアルアクセスメモリアレイもしくはシリアルアクセスメモリデバイス、またはそれらのうちの1つまたは複数の組合せであってよいか、またはその中に含まれてよい。その上、コンピュータ記憶媒体は伝搬信号ではないがコンピュータ記憶媒体は、人工的に生成された伝搬信号内で符号化されるコンピュータプログラム命令の発信源または宛先であり得る。コンピュータ記憶媒体はまた、1つまたは複数の別個の物理的構成要素または物理的媒体(たとえば、複数のCD、ディスク、または他の記憶デバイス)であってよいか、またはその中に含まれてよい。
【００９５】
本明細書で説明する動作は、1つまたは複数のコンピュータ可読記憶デバイス上に記憶された、または他の発信源から受信されたデータに関してデータ処理装置によって実行される動作として実装され得る。
【００９６】
「データ処理装置」という用語は、例として、プログラマブルプロセッサ、コンピュータ、システムオンチップ、もしくは前述のうちの複数、または前述の組合せを含めて、データを処理するためのすべての種類の装置、デバイス、および機械を包含する。装置は、専用論理回路、たとえば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)を含み得る。装置は、ハードウェアに加えて、当該コンピュータプログラムに対する実行環境を作成するコード、たとえば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、クロスプラットフォームランタイム環境、仮想機械、またはそれらのうちの1つまたは複数の組合せを構成するコードを含んでもよい。装置および実行環境は、ウェブサービス、分散型コンピューティングインフラストラクチャおよびグリッドコンピューティングインフラストラクチャなど、様々な異なるコンピューティングモデルインフラストラクチャを実現し得る。
【００９７】
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとしても知られる)は、コンパイル型言語またはインタプリタ型言語、宣言型言語または手続き型言語を含めて、任意の形態のプログラミング言語で書き込まれてよく、コンピュータプログラムは、スタンドアロンプログラムとしてまたはモジュール、構成要素、サブルーチン、オブジェクト、またはコンピューティング環境で使用するのに適した他の単位を含めて、任意の形態で展開されてよい。コンピュータプログラムは、ファイルシステム内のファイルに対応し得るが、そうでなくてもよい。プログラムは、他のプログラムまたはデータ(たとえば、マークアップ言語文書で記憶された1つまたは複数のスクリプト)を保持するファイルの一部分の中に、当該プログラム専用の単一のファイル内に、または複数の調整ファイル(たとえば、1つまたは複数のモジュール、サブプログラム、またはコードの部分を記憶するファイル)内に記憶され得る。コンピュータプログラムは、1つのコンピュータ上で、または1つのサイトに位置するか、または複数のサイトにわたって分散され、通信ネットワークによって相互接続される、複数のコンピュータ上で実行されるように展開され得る。
【００９８】
本明細書で説明したプロセスおよび論理の流れは、入力データを操作し、出力を生成することによって動作を実行するために、1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラマブルプロセッサによって実行され得る。プロセスおよび論理の流れは、専用論理回路、たとえば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実行されてもよく、装置は、専用論理回路として実装されてもよい。
【００９９】
コンピュータプログラムの実行に適したプロセッサは、例として、汎用と専用両方のマイクロプロセッサ、および任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。概して、プロセッサは、読取り専用メモリもしくはランダムアクセスメモリ、または両方から命令およびデータを受信することになる。コンピュータの最も重要な要素は、命令に従って動作を実行するためのプロセッサ、および命令およびデータを記憶するための1つまたは複数のメモリデバイスである。概して、コンピュータはまた、データを記憶するための1つまたは複数の大容量記憶デバイス、たとえば、磁気ディスク、光磁気ディスク、または光ディスクを含むことになるか、もしくはそれらからデータを受信するか、またはそこにデータを転送するか、またはその両方を行うように動作可能に結合されることになる。しかしながら、コンピュータはそのようなデバイスを有さなくてもよい。その上、コンピュータは、別のデバイス、たとえば、ほんのいくつかの例を挙げれば、モバイル電話、携帯情報端末(PDA)、モバイルオーディオプレイヤもしくはモバイルビデオプレイヤ、ゲームコンソール、全地球測位システム(GPS)受信機、またはポータブル記憶デバイス(たとえば、ユニバーサルシリアルバス(USB)フラッシュドライブ)内に埋め込まれてもよい。コンピュータプログラム命令およびデータを記憶するのに適したデバイスは、例として、半導体メモリデバイス、たとえば、EPROM、EEPROM、およびフラッシュメモリデバイス;磁気ディスク、たとえば、内部ハードディスクまたはリムーバブルディスク;光磁気ディスク;およびCD ROMおよびDVD-ROMディスクを含めて、すべての形態の不揮発性メモリ、媒体、およびメモリデバイスを含む。プロセッサおよびメモリは、専用論理回路によって補間されてよく、または専用論理回路内に組み込まれてもよい。
【０１００】
ユーザとの対話を実現するために、本明細書で説明した主題の実施形態は、ディスプレイデバイス、たとえば、情報をユーザに表示するためのCRT(陰極線管)モニタまたはLCD(液晶ディスプレイ)モニタと、それを用いてユーザがコンピュータに入力を提供することができるキーボードおよびポインティングデバイス、たとえば、マウスまたはトラックボールとを有するコンピュータ上で実装され得る。他の種類のデバイスを使用して、ユーザとの対話を実現することも同様に可能であり、たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば、視覚フィードバック、聴覚フィードバック、または触覚フィードバックであってよく、ユーザからの入力は、音響入力、音声入力、または触覚入力を含めて、任意の形態で受信されてよい。加えて、コンピュータは、ユーザが使用するデバイスに文書を送り、そのデバイスから文書を受信することによって、たとえば、ウェブブラウザから受信された要求に応答して、ウェブページをユーザのクライアントデバイス上のウェブブラウザに送ることによって、ユーザと対話することができる。
【０１０１】
本明細書で説明した主題の実施形態は、たとえば、データサーバなど、バックエンド構成要素を含むか、もしくはミドルウェア構成要素、たとえば、アプリケーションサーバを含むか、またはフロントエンド構成要素、たとえば、それを介してユーザが本明細書で説明した主題の実装形態と対話するグラフィカルユーザインターフェースまたはウェブブラウザを有するクライアントコンピュータを含むか、または1つまたは複数のそのようなバックエンド構成要素、ミドルウェア構成要素、またはフロントエンド構成要素の任意の組合せを含む、コンピューティングシステム内で実装され得る。システムの構成要素は、任意の形態または任意の媒体のデジタルデータ通信、たとえば、通信ネットワークによって相互接続され得る。通信ネットワークの例には、ローカルエリアネットワーク(「LAN」)および広域ネットワーク(「WAN」)、インターネットワーク(たとえば、インターネット)、ならびにピアツーピアネットワーク(たとえば、アドホックピアツーピアネットワーク)がある。
【０１０２】
コンピューティングシステムは、クライアントとサーバとを含み得る。クライアントおよびサーバは、概して、互いと離れており、一般に、通信ネットワークを通して対話する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行し、互いに対してクライアント・サーバ関係を有するコンピュータプログラムにより生じる。いくつかの実施形態では、サーバは(たとえば、クライアントデバイスと対話するユーザにデータを表示し、ユーザからユーザ入力を受信するために)データ(たとえば、HTMLページ)をクライアントデバイスに送る。クライアントデバイスにおいて生成されるデータ(たとえば、ユーザ対話の結果)は、サーバにおいてクライアントデバイスから受信され得る。
【０１０３】
本明細書は多くの特定の実装詳細を含むが、任意の発明の範囲または特許請求され得る範囲の限定と解釈されるべきではなく、むしろ、特定の発明の特定の実施形態に固有の特徴の記述と解釈されるべきである。別個の実施形態の文脈で本明細書において説明したいくつかの特徴は、単一の実施形態において組み合わせて実装されてもよい。反対に、単一の実施形態の文脈で説明した様々な特徴は、別個に複数の実施形態の形で、または何らかの適切なサブコンビネーションの形で実装されてもよい。その上、特徴は上記でいくつかの組合せで動作するとして説明されているか、またはさらにそういうものとして最初に特許請求されるが、特許請求された組合せからの1つまたは複数の特徴は、場合によっては、その組合せから削除されてよく、特許請求される組合せは、サブコンビネーションまたはサブコンビネーションの変形に関する場合もある。
【０１０４】
同様に、動作は図面において特定の順序で示されているが、これは、そのような動作が示される特定の順序でまたは連続的な順序で実行されることを要求するものと理解されるべきではなく、または所望の結果を達成するために、示したすべての動作が実行されるべきであると理解されるべきではない。いくつかの状況では、マルチタスキングおよび並列処理が有利であり得る。その上、上記で説明した実施形態における様々なシステム構成要素の分離は、すべての実施形態においてそのような分離が要求されると理解されるべきではなく、説明したプログラム構成要素およびシステムは、概して、単一のソフトウェア製品内に一緒に統合されてよいか、または複数のソフトウェア製品に包装されてよいことを理解されたい。
【０１０５】
これにより、主題の特定の実施形態について説明してきた。他の実施形態は以下の請求項の範囲内である。場合によっては、請求項で列挙される動作は、異なる順序で実行されてよく、依然として所望の結果を達成し得る。加えて、添付の図面に示したプロセスは、所望の結果を達成するために、示した特定の順序、または連続的な順序を必ずしも必要としない。いくつかの実装形態では、マルチタスキングおよび並列処理が有利であり得る。
【符号の説明】
【０１０６】
100  環境
102  ネットワーク
104  地図サーバ
106  クライアントデバイス
108  オーバレイサーバ
110  電子地図インターフェース
112  ビューポート、クライアントデバイスビューポート
114  地図ビュー
116  ビュー変更制御
118  地図データベース
120 POI選択サーバ、関心ポイント選択サーバ
122  関心ポイントデータベース
124  ユーザ履歴データ
202  ネットワーク
204  クライアントデバイス
206  電子地図インターフェース
208  地図ビュー
210  ビュー変更制御
212  プロセス
213  ズームエリア
214  地図ビュー
216  ローカルクライアントメモリ、クライアントデータストア
218  サーバ
220  クライアントデバイス
222  電子地図インターフェース
224  地図ビュー
226  ビュー変更制御
228  新しい地図ビュー、地図ビュー
300  プロセス
400  コンピュータシステム、システム
410  プロセッサ、構成要素
420  メモリ、構成要素
430  記憶デバイス、構成要素
440  入出力デバイス、構成要素
450  システムバス
460  入出力デバイス
【図１】
0006744483.tif 000003
【図２】
0006744483.tif 000004
【図３】
0006744483.tif 000005
【図４】
0006744483.tif 000006