JP7108053B2 - 馴染みのあるロケーションを中間目的地とするナビゲーション指示 - Google Patents

馴染みのあるロケーションを中間目的地とするナビゲーション指示 Download PDF

Info

Publication number
JP7108053B2
JP7108053B2 JP2020567967A JP2020567967A JP7108053B2 JP 7108053 B2 JP7108053 B2 JP 7108053B2 JP 2020567967 A JP2020567967 A JP 2020567967A JP 2020567967 A JP2020567967 A JP 2020567967A JP 7108053 B2 JP7108053 B2 JP 7108053B2
Authority
JP
Japan
Prior art keywords
user
location
destination location
route
navigation instructions
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2020567967A
Other languages
English (en)
Other versions
JP2021524585A (ja
Inventor
ハルーン・ベイグ
アンキット・グプタ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of JP2021524585A publication Critical patent/JP2021524585A/ja
Application granted granted Critical
Publication of JP7108053B2 publication Critical patent/JP7108053B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3407Route searching; Route guidance specially adapted for specific applications
    • G01C21/343Calculating itineraries, i.e. routes leading from a starting point to a series of categorical destinations using a global route restraint, round trips, touristic trips
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3626Details of the output of route guidance instructions
    • G01C21/3641Personalized guidance, e.g. limited guidance on previously travelled routes
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/36Input/output arrangements for on-board computers
    • G01C21/3626Details of the output of route guidance instructions
    • G01C21/3644Landmark guidance, e.g. using POIs or conspicuous other objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • G06Q10/047Optimisation of routes or paths, e.g. travelling salesman problem
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Navigation (AREA)
  • Traffic Control Systems (AREA)

Description

本開示は、地理的アプリケーションにおけるパーソナル化を表示することに関し、より詳細には、ユーザに馴染みのあるロケーションを識別するとともに、馴染みのあるロケーションを使用して地図表示上にナビゲーション指示、検索結果、または選択されたロケーションを提示することに関する。
本明細書で提供される背景説明は、本開示の文脈を一般的に提示するためである。この背景技術セクションに記載されている範囲までの現在指名されている発明者の研究、ならびに出願時にさもなければ従来技術としての資格を与えられない可能性がある説明の態様は、本開示に対する従来技術として、明示的にもまたは暗示的にも認められない。
今日、地理的領域のデジタル地図は、マッピングアプリケーション、ウェブブラウザなどを介して、コンピュータ、タブレット、および携帯電話などのコンピューティングデバイス上に表示される。多くのマッピングアプリケーションは、会社または他の組織などの関心地点(POI: point of interest)を地図上に表示する。各POIは、POIのタイプのアイコンまたは他のインジケータ(例えば、レストランのためのレストランシンボル、デパートのためのショッピングシンボルなど)を使用して表示され得る。さらに、マッピングアプリケーション、ウェブブラウザなどは、地理的検索クエリに応答して地理的検索結果(例えば、POI)を提供し、アイコンまたは他のインジケータを使用してデジタル地図内に地理的検索結果のうちの1つまたはいくつかを提示する。
加えて、コンピュータ、スマートフォンなど、または組込みデバイスにおいて実行されるソフトウェアアプリケーションは、段階的なナビゲーション指示を生成する。典型的には、ユーザは、出発点と目的地とを指定し、ソフトウェアアプリケーションは、すぐに、および/またはユーザが出発点および目的地から移動するにつれて方向を表示する。
これらのソフトウェアアプリケーションは、一般に、ルートに基づいてナビゲーション指示を生成するために、距離、通りの名前、建物番号の指標を利用する。例えば、これらのシステムは、「4分の1マイル進んで、次いで、右折してメイプルストリートに入る(proceed for one-fourth of a mile, then turn right onto Maple Street)」などの命令をドライバに提供することができる。しかしながら、運転者が距離を正確に決定することは、困難であり、運転者が道路標識を見ることは、必ずしも容易ではない。さらに、道路標識が不十分な地理的領域が存在する。
別の人が運転者に言う可能性があるものにより類似したガイダンスを運転者に提供するために、視覚的に目立つ建物または看板などの、ルートに沿ったPOI(本明細書では「ランドマーク」とも呼ばれる)を参照して、ナビゲーション指示を増強することが可能である。加えて、デジタル地図内でユーザを方向付けるため、または地理的検索クエリ(例えば、「チューリッヒのバー(Bars in Zurich)」)に応答して地理的検索結果を提供するために、ランドマークを提示することも可能である。しかしながら、一般大衆によく知られているランドマークの数は、限られており、ユーザを方向付けるまたはナビゲートするとき、ソフトウェアアプリケーションは、ランドマークを常に提示できるとは限らない可能性がある。
ナビゲーション指示内に含めるために、またはユーザを方向付けるときに利用可能なランドマークの数を拡大するために、パーソナル化地図データ生成システムは、システムが位置データを取得する許可をユーザが与えたときに、ユーザに関するロケーション履歴を取得する。ロケーション履歴は、POIまたはランドマークのロケーション、ユーザがランドマークを訪問した日時、ランドマークで過ごした時間、「自宅(Home)」、「職場(Work)」、「ジョンの家(John's House)」、「お気に入りのレストラン(Favorite Restaurant)」などのユーザによって提供されたランドマークのためのラベルなどの、ユーザによって以前に訪問されたPOIに関する情報を含み得る。
ユーザがマッピングアプリケーションによって提示されたロケーションまたはPOIを選択すると、パーソナル化地図データ生成システムは、選択されたロケーションに近いユーザのロケーション履歴内のランドマークを識別する。次いで、ユーザがランドマークを訪問した頻度および/または最新性に基づいて、ランドマークのうちの1つが選択される。次いで、マッピングアプリケーションは、選択されたロケーションに関する基準系(frame of reference)をユーザに提供するために、地図表示上に、選択されたロケーションとともに選択されたランドマークを提示する。
別のシナリオでは、ユーザは、ユーザの現在位置などの出発地から目的地のロケーションへのナビゲーション指示を要求する。結果として、パーソナル化地図データ生成システムは、ナビゲーション命令のセットを生成し、ここで、各命令は、ルートに沿った特定の中間点(waypoint)における誘導(例えば、「右折(Turn right)」)を含む。命令のうちの少なくともいくつかについて、特定の中間点の近くのランドマークは、ユーザがランドマークを訪問した頻度および/または最新性に基づいて、誘導に関する基準系として選択される(例えば、「Bobの家を通過した後に交差点で右折してください(Turn right at the intersection after passing Bob's House)」)。次いで、マッピングアプリケーションは、選択されたランドマークを参照するユーザへのナビゲーション命令のセットを提示する。
さらに別のシナリオでは、ユーザは、地理的検索クエリまたは部分的な地理的検索クエリをマッピングアプリケーションに提供する。したがって、パーソナル化地図データ生成システムは、地理的検索クエリに関連する検索結果のセットを生成し、検索結果のセットをランク付けし得る。さらに、パーソナル化地図データ生成システムは、ユーザのロケーション履歴内のPOIに対応する検索結果を識別し、ユーザが対応するPOIを訪問した頻度および/または最新性に基づいて検索結果のランキングを上昇させる。例えば、最新の時刻が前日だった、ユーザが数回訪問したPOIに関する検索結果は、ランキングにおいていくつかのスポットを上昇された場合があるが、一ヶ月以上前に1度ユーザによって訪問されたPOIに関する検索結果は、少数のスポットだけを上昇される場合があり、または別の実装形態もしくはシナリオでは、まったく上昇されない場合がある。パーソナル化地図データ生成システムはまた、ユーザがどれくらい頻繁にPOIを訪問するかの説明、ユーザがPOIを訪問した最新時間の説明などの、POIとユーザとの間の関係の説明を用いて検索結果に通釈を付け得る。次いで、マッピングアプリケーションは、注釈付きの検索結果をランク付けされた順序でユーザに提示する。
誘導のうちのいくつかに関する基準系として、馴染みのあるランドマークとともにターンバイターン方式(turn-by-turn)のナビゲーション指示を提供することに加えて、パーソナル化地図データ生成システムは、最終目的地へのナビゲーション指示に対する要求に応答して、馴染みのあるロケーションを中間目的地として識別し得る。中間目的地は、場合によっては、出発地から最終目的地へのルートに沿うのではなく、ルート上の最も近い地点からいくらかの距離Xにおいて配置される。しかしながら、中間目的地は、ユーザが非常に馴染みのあるランドマークおよび/またはユーザが過去に多くの回数移動したランドマークであり得る。このように、パーソナル化地図データ生成システムは、ユーザが、中間目的地、または実際の目的地および中間目的地へのルートが共有する中間点に近づくまで、ナビゲーション指示を送信するのを止めることによって、またはまばらなナビゲーション指示のみを提供することによって、ユーザに提供されるナビゲーション命令の量を大幅に低減し得る。この時点で、パーソナル化地図データ生成システムは、「引継ぎ」し、中間目的地または共通中間点から最終目的地へのナビゲーション命令のセットを提供し得る。したがって、パーソナル化地図データ生成システムは、場合によっては、馴染みのあるロケーションを参照し、したがって、ユーザに直感的に感じるガイダンスと、ルートの残りの部分に関する段階的なガイダンスとを組み合わせる。
本開示の技法の1つの例示的な実施形態は、地理的検索結果を位置特定するために、デジタル地図上にパーソナル化ランドマークを提供するための方法である。この方法は、ユーザのポータブルデバイス上に提示されたデジタル地図内の関心地点の選択を受信するステップと、ユーザに関するロケーション履歴を取得するステップと、選択された関心地点のしきい値距離内にある複数の候補ランドマークを識別するステップとを含む。この方法は、ロケーション履歴に従って、(i)ユーザが候補ランドマークを訪問した頻度、または(ii)ユーザが最後に候補ランドマークを訪問してからの時間量のうちの少なくとも1つに基づいて、複数の候補ランドマークのうちの1つを選択するステップと、選択されたランドマークを表すインジケータと、選択された関心地点を表すインジケータとを、デジタル地図内に提示させるステップとをさらに含む。
別の例示的な実施形態は、パーソナル化ランドマークを使用してナビゲーション指示を提供するための方法である。この方法は、出発地から目的地のロケーションへのポータブルデバイスのユーザのためのナビゲーション指示に対する要求を受信するステップと、目的地のロケーションへのナビゲーション命令のセットを生成するステップであって、セット内の各ナビゲーション命令が、特定のロケーションにおける誘導を含む、ステップとを含む。セット内の少なくとも1つのナビゲーション命令について、この方法は、ユーザに関するロケーション履歴を取得するステップと、誘導に関する、特定のロケーションのしきい値距離内にあるナビゲーションランドマークを選択するステップであって、ナビゲーションランドマークが、ロケーション履歴に従って、(i)ユーザがナビゲーションランドマークを訪問した頻度、または(ii)ユーザが最後にナビゲーションランドマークを訪問してからの時間量のうちの少なくとも1つに基づいて選択される、ステップと、選択されたナビゲーションランドマークを参照するナビゲーション命令を生成するステップとを含む。この方法は、ポータブルデバイスのユーザインターフェースを介してナビゲーション命令のセットを提供させるステップをさらに含む。
さらに別の例示的な実施形態は、ユーザにとっての馴染み深さに基づいて検索提案を提供するための方法である。この方法は、ポータブルデバイスのユーザから地理的検索クエリを受信するステップと、ユーザに関するロケーション履歴を取得するステップと、地理的検索クエリに応答して検索結果のセットを識別するステップであって、検索結果のセットが、ロケーション履歴に従って、ユーザによって以前に訪問された少なくとも1つの関心地点を含む、ステップとを含む。この方法は、ポータブルデバイスのユーザインターフェースを介して検索結果のセットを提供させるステップであって、ここで、検索結果のセットが、ロケーション履歴に従って関心地点とユーザとの間の関係の説明で注釈が付けられている、ステップをさらに含む。
別の例示的な実施形態は、中間目的地としてユーザに馴染みのあるロケーションを使用してナビゲーション指示を提供するための方法である。この方法は、出発地から最終目的地のロケーションへのユーザのためのナビゲーション指示に対する要求を受信するステップと、ユーザにとっての馴染み深さに基づいて選択された中間目的地のロケーションを識別するステップと、中間目的地のロケーションに向かって移動するようにユーザに指示する第1のナビゲーション命令を提供するステップとを含む。ユーザが中間目的地のロケーション、または中間目的地のロケーションに向かうルートに沿った特定の中間点に近づいていると決定したことに応答して、この方法は、ユーザを最終目的地のロケーションに誘導するナビゲーション命令のセットを提供するステップを含む。
さらに別の例示的な実施形態は、中間目的地としてユーザに馴染みのあるロケーションを使用してナビゲーション指示を提供するためのコンピューティングデバイスであり、ここで、このコンピューティングデバイスは、1つまたは複数のプロセッサと、1つまたは複数のプロセッサに結合され、命令を記憶する非一時的コンピュータ可読メモリとを含む。命令は、1つまたは複数のプロセッサによって実行されると、このコンピューティングデバイスに、出発地から最終目的地のロケーションへのユーザのためのナビゲーション指示に対する要求を受信させ、ユーザにとっての馴染み深さに基づいて選択された中間目的地のロケーションを識別させ、中間目的地のロケーションに向かって移動するようにユーザに指示する第1のナビゲーション命令を提供させる。ユーザが中間目的地のロケーション、または中間目的地のロケーションに向かうルートに沿った特定の中間点に近づいていると決定したことに応答して、命令は、このコンピューティングデバイスに、ユーザを最終目的地のロケーションに誘導するナビゲーション命令のセットを提供させる。
別の例示的な実施形態は、中間目的地としてユーザに馴染みのあるロケーションを使用してナビゲーション指示を提供するための命令を記憶する非一時的コンピュータ可読媒体である。この非一時的コンピュータ可読媒体は、コンピューティングデバイス内の1つまたは複数のプロセッサに結合され、命令を記憶する。命令は、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、出発地から最終目的地のロケーションへのユーザのためのナビゲーション指示に対する要求を受信させ、ユーザにとっての馴染み深さに基づいて選択された中間目的地のロケーションを識別させ、中間目的地のロケーションに向かって移動するようにユーザに指示する第1のナビゲーション命令を提供させる。ユーザが中間目的地のロケーション、または中間目的地のロケーションに向かうルートに沿った特定の中間点に近づいていると決定したことに応答して、命令は、1つまたは複数のプロセッサに、ユーザを最終目的地のロケーションに誘導するナビゲーション命令のセットを提供させる。
パーソナル化地図データを生成するための技法が実装され得る一例示的なシステムのブロック図である。 図1のパーソナル化地図データ生成システムが、デジタル地図上に提示するランドマークを決定するためにランドマークをスコアリングするために利用することができるユーザ位置データの一例示的なデータテーブルの図である。 図1のパーソナル化地図データ生成システムが、デジタル地図上に提示するランドマークを決定するために、対応するスコアに基づいてランドマークをランク付けするために利用され得る一例示的なデータテーブルの図である。 選択されたロケーションに関する基準系を提供するための、ユーザに馴染みのあるランドマークとともにユーザによって選択されたロケーションを含む一例示的な地図表示の図である。 検索提案とユーザとの間の関係の説明で注釈が付けられた検索提案を含む一例示的な検索結果表示の図である。 ルートに沿って提示された馴染みのあるランドマークとともに目的地へのルートを含む一例示的なナビゲーション表示の図である。 誘導に関する基準系として馴染みのあるランドマークとともに誘導を含む別の例示的なナビゲーション表示の図である。 ユーザの現在位置から最終目的地へのナビゲーション指示に対する要求に応答して提供される、中間目的地から最終目的地へのルートとともに中間目的地にナビゲートするための第1の命令を含むさらに別のナビゲーション表示の図である。 中間目的地から最終目的地への図6Aに提示されたルートに沿った誘導を含む詳細なナビゲーション表示の図である。 図6Aに提示された中間目的地へのルートおよび最終目的地へのルートに沿った共通中間点からの誘導を含む別の詳細なナビゲーション表示の図である。 パーソナル化地図データ生成システムにおいて動作する、またはそれと協働するコンピューティングデバイスにおいて実装され得る、地理的検索結果を位置特定するためにデジタル地図上にパーソナル化ランドマークを提供するための一例示的な方法のフロー図である。 パーソナル化地図データ生成システムにおいて動作する、またはそれと協働するコンピューティングデバイスにおいて実装され得る、パーソナル化ランドマークを使用してナビゲーション指示を提供するための一例示的な方法のフロー図である。 パーソナル化地図データ生成システムにおいて動作する、またはそれと協働するコンピューティングデバイスにおいて実装され得る、ユーザにとっての馴染み深さに基づいて検索提案を提供するための一例示的な方法のフロー図である。 パーソナル化地図データ生成システムにおいて動作する、またはそれと協働するコンピューティングデバイスにおいて実装され得る、中間目的地としてユーザに馴染みのあるロケーションを使用してナビゲーション指示を提供するための一例示的な方法のフロー図である。
概要
本開示は、ユーザにとっての馴染み深さまたは別の適切な基準に基づいて選択された1つまたは複数の中間位置を参照することによって、ナビゲーション指示をより効率的に生成するためのシステムについて説明する。
本明細書で説明した主題は、以下の利点のうちの1つまたは複数を実現するように特定の実施形態において実施され得る。ユーザは、ユーザがすでに馴染んでいる特定のロケーションへの方向を知っている可能性がある。したがって、本明細書で説明した方法およびシステムは、ユーザを最終目的地のロケーションに誘導する前に、ユーザに馴染みのある中間目的地のロケーションに向かって移動するようにユーザに指示する。ユーザに知られている可能性が高い中間目的地のロケーションを利用することによって、必要なナビゲーション命令の数は、低減され得、それによって、計算オーバヘッドと通信オーバヘッドとを低減し、したがって、システムの効率を改善する。さらに、ナビゲーション命令は、ユーザに対してパーソナル化され得、それによって、ユーザを最終目的地のロケーションに誘導するためにこれらの命令をより効率的にする。
中間目的地のロケーションは、最終目的地のロケーションに向かう直接ルートに沿って配置される必要はない。さらに、ナビゲーション指示は、中間目的地のロケーションまでずっと提供される必要はなく、ユーザのポータブルデバイスは、中間目的地のロケーションまでずっと移動する必要はない。代わりに、ユーザは、ユーザのポータブルデバイスが特定の中間点に到達したか、または中間目的地のロケーションに近づいたことに応答して、最終目的地のロケーションにルーティングされる前に、中間目的地のロケーションに向かって移動することを開始するように指示され得る。これは、馴染みのあるロケーションが最終目的地のロケーションへの最も直接的なルートに沿って配置される必要がないので、中間目的地のロケーションとして利用され得る馴染みのあるロケーションの数を増加させる。
加えて、本明細書で論じられている「中間目的地」という用語は、一般市民によく知られているロケーションを指す必要はなく、代わりに、ユーザのロケーション履歴の点から見て(例えば、ユーザが以前にそのロケーションを訪問したために)ユーザに知られていると見なされるロケーションを指し得る。
例示的なハードウェア構成要素およびソフトウェア構成要素
図1を参照すると、パーソナル化地図データ生成システムが実装され得る一例示的な通信システム100は、「マッピングアプリケーション22」とも呼ばれ得る地理的アプリケーション22を実行するように構成されたクライアントコンピューティングデバイス10を含む。実装形態に応じて、アプリケーション22は、対話型デジタル地図を表示すること、運転、徒歩、または他のナビゲーション指示を提供するためにルーティングデータを要求および受信すること、様々な地理的位置指定(geolocated)コンテンツを提供することなどを行うことができる。クライアントコンピューティングデバイス10は、様々なロケーションにナビゲートしている間、デジタル地図を表示するユーザによって操作され得る。
クライアントコンピューティングデバイス10に加えて、通信システム100は、ユーザのロケーション履歴に基づいてユーザに馴染みのあるランドマークを識別し、誘導に関する基準系としてまたは最終目的地に向かう途中の中間目的地として馴染みのあるランドマークを含むナビゲーション指示、近くの馴染みのあるランドマークを含む選択されたロケーションの地図表示、馴染みのあるランドマークを含む検索結果/提案などのパーソナル化地図データをクライアントコンピューティングデバイス10に提供するように構成されたサーバデバイス60を含む。サーバデバイス60は、一例示的な実施形態ではユーザに関するロケーションデータを記憶するデータベース80に通信可能に結合され得る。ロケーションデータについて、図2Aおよび図2Bを参照して以下でより詳細に説明する。
より一般的には、サーバデバイス60は、任意のタイプの適切な地理空間情報、または地理的コンテキストにリンクされ得る情報を記憶する1つまたはいくつかのデータベースと通信することができる。通信システム100は、例えば、運転、徒歩、自転車、または公共交通機関の方向を提供するナビゲーションデータサーバ34を含むこともできる。さらに、通信システム100は、地図表示を生成するためのサーバデバイス60に地図データを提供する地図データサーバ50を含むことができる。通信システム100内で動作するデバイスは、通信ネットワーク30を介して相互接続され得る。
様々な実装形態では、クライアントコンピューティングデバイス10は、スマートフォンまたはタブレットコンピュータであり得る。クライアントコンピューティングデバイス10は、メモリ20と、1つまたは複数のプロセッサ(CPU)16と、グラフィックス処理ユニット(GPU)12と、I/Oモジュール14と、ユーザインターフェース(UI)32と、全地球測位サービス(GPS)モジュールを含む1つまたはいくつかのセンサ19とを含み得る。メモリ20は、非一時的メモリであり得、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、フラッシュメモリ、他のタイプの永続メモリなどの、1つまたはいくつかの適切なメモリモジュールを含むことができる。I/Oモジュール14は、例えば、タッチスクリーンであり得る。様々な実装形態では、クライアントコンピューティングデバイス10は、図1に示されているよりも少ない構成要素、または逆に追加の構成要素を含むことができる。他の実施形態では、クライアントコンピューティングデバイス10は、任意の適切なポータブルまたは非ポータブルコンピューティングデバイスであり得る。例えば、クライアントコンピューティングデバイス10は、ラップトップコンピュータ、デスクトップコンピュータ、スマートウォッチまたはスマートグラスなどのウェアラブルデバイスなどであり得る。
メモリ20は、任意のタイプの適切なモバイルまたは汎用オペレーティングシステムであり得るオペレーティングシステム(OS)26を記憶する。OS26は、アプリケーションがセンサ読取り値を取得することを可能にするアプリケーションプログラミングインターフェース(API)を含むことができる。例えば、コンピューティングデバイス10上で実行されるように構成されたソフトウェアアプリケーションは、ちょうどその時にクライアントコンピューティングデバイス10の現在の位置を取得するためにOS26 APIを呼び出す命令を含むことができる。APIは、APIが推定値をどれくらい確信しているかの定量的な指標を(例えば、パーセント値として)返すこともできる。
メモリ20は、上記のように、対話型デジタル地図を生成し、および/または他の地理的機能を実行するように構成されたマッピングアプリケーション22も記憶する。マッピングアプリケーション22は、地図データサーバ50からラスタ(例えば、ビット地図)または非ラスタ(例えば、ベクターグラフィックス)フォーマットにおいて地図データを受信し、パーソナル化データディスプレイ24を介して地図データを提示することができる。場合によっては、地図データは、道路、通り、自然の構成物などを示す基本レイヤ、現在の交通状況を示す交通レイヤ、現在の天候状態を示す天候レイヤ、目的地に到達するためのパスを示すナビゲーションレイヤなどのレイヤに編成され得る。マッピングアプリケーション22は、運転、徒歩、または通行の方向を表示することもでき、一般に、パーソナル化データディスプレイ24を介して、地理、地理的位置、ナビゲーションなどに関連する機能を提供することもできる。
図1は、マッピングアプリケーション22をスタンドアロンアプリケーションとして示しているが、マッピングアプリケーション22の機能は、クライアントコンピューティングデバイス10上で実行されるウェブブラウザを介してアクセス可能なオンラインサービスの形態において、クライアントコンピューティングデバイス10上で実行される別のソフトウェアアプリケーションのためのプラグインまたは拡張機能として、などとしても提供され得ることに留意されたい。マッピングアプリケーション22は、一般に、異なるそれぞれのオペレーティングシステムのための異なるバージョンにおいて提供され得る。例えば、クライアントコンピューティングデバイス10のメーカは、Android(商標)プラットフォーム用のマッピングアプリケーション22を含むソフトウェア開発キット(SDK)、iOS(商標)プラットフォーム用の別のSDKなどを提供することができる。
いくつかの実装形態では、サーバデバイス60は、1つまたは複数のプロセッサ62と、メモリ64とを含む。メモリ64は、有形の非一時的メモリであり得、ランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、フラッシュメモリ、他のタイプの永続メモリなどを含む任意のタイプの適切なメモリモジュールを含み得る。メモリ64は、パーソナル化地図データ生成器68を構成するプロセッサ62上で実行可能な命令を記憶し、パーソナル化地図データ生成器68は、候補ランドマークを識別し、ユーザが候補ランドマークを訪問した頻度および/または最新性に基づいて候補ランドマークをランク付けおよびスコアリングし、地図表示内および/または地図表示上に提示されたナビゲーション指示内に含めるために最高ランキングの候補ランドマークの1つまたはいくつかを選択することができる。パーソナル化地図データ生成器はまた、ユーザが検索結果に対応するPOIを訪問した頻度および/または最新性に基づいて、検索結果のランキングを上昇させ得る。パーソナル化地図データ生成器は、次いで、クライアントコンピューティングデバイス10のパーソナル化データディスプレイ24によって表示するための馴染みのあるランドマークを含む、地図データ、ナビゲーションデータ、および/または検索結果を提供し得る。
パーソナル化地図データ生成器68およびパーソナル化データディスプレイ24は、パーソナル化地図データ生成システムの構成要素として動作することができる。代替的に、パーソナル化地図データ生成システムは、サーバ側構成要素のみを含み、パーソナル化地図データを表示するための命令をパーソナル化データディスプレイ24に単に提供することができる。言い換えれば、これらの実施形態におけるパーソナル化地図データ生成技法は、パーソナル化データディスプレイ24に対して透過的に実装され得る。別の代替案として、パーソナル化地図データ生成器68の全機能は、パーソナル化データディスプレイ24内に実装され得る。
簡単にするために、図1は、サーバの唯一のインスタンスとしてサーバデバイス60を示している。しかしながら、いくつかの実装形態によるサーバデバイス60は、1つまたは複数のサーバデバイスのグループを含み、各サーバデバイスが、1つまたは複数のプロセッサを備え、他のサーバデバイスとは独立して動作することができる。そのようなグループにおいて動作するサーバデバイスは、クライアントコンピューティングデバイス10からの要求を、(例えば、可用性に基づいて)個別に、要求を処理することに関連するある動作があるサーバデバイス上で実行され、一方、同じ要求を処理することに関連する別の動作が別のサーバデバイス上で実行される分散方式で、または任意の他の適切な技法に従って処理することができる。この説明の目的のために、「サーバデバイス」という用語は、個々のサーバデバイス、または2つ以上のサーバデバイスのグループを指す場合がある。
動作中、クライアントコンピューティングデバイス10において動作するパーソナル化データディスプレイ24は、データを受信し、サーバデバイス60に送信する。したがって、一例では、クライアントコンピューティングデバイス10は、ユーザがロケーションデータを共有するためにマッピングアプリケーション22に権限を与えるユーザ制御を選択するとき、ロケーションデータを(サーバデバイス60内に実装された)パーソナル化地図データ生成器68に送信し得る。ロケーションデータは、そのロケーションにおけるチェックインによるユーザによって訪問されたロケーションの名前もしくは住所、もしくはセンサ19からの測位データ、ユーザがロケーションを訪問した日時、ユーザがロケーションを訪問した時間量、および/またはスイスのチューリッヒにある123 Hauptstrasseの「Bobの家(Bob's House)」などの、ユーザによって提供されたロケーションに関するラベルを含み得る。いくつかの実施形態では、パーソナル化データディスプレイ24は、クライアントコンピューティングデバイス10がしきい値期間(例えば、1分)よりも長くあるロケーションにあるとき、ロケーションデータを提供する。このように、パーソナル化データディスプレイ24は、ユーザが目的地に向かう途中で通過するロケーションを識別しない。
別の例では、クライアントコンピューティングデバイス10は、ナビゲーション指示、選択されたロケーションに関する地図データ、検索結果/提案などを要求する通信をパーソナル化地図データ生成器68に送信し得る。したがって、パーソナル化地図データ生成器68は、要求されたナビゲーション指示、選択されたロケーションに関する地図データ、または検索結果/提案を取得するために、ナビゲーションデータサーバ34、地図データサーバ50、および/または任意の他の適切なサーバと通信し得る。したがって、パーソナル化地図データ生成器68は、例えば、図2Aに示すようにデータベース80内に記憶されたロケーションデータテーブル200から、クライアントコンピューティングデバイス10のユーザに関するロケーションデータを取得する。ロケーションデータ200は、クライアントコンピューティングデバイス10のユーザに関するユーザ識別子(ユーザID)202を含み得る。ロケーションデータ200はまた、しきい値時間量(例えば、1分)を超えた間ユーザによって訪問されたロケーションの名前または住所204を含み得る。さらに、ロケーションデータ200は、訪問の日付206および時刻208、ロケーションにおいて過ごした時間量210、および「実家(Parents' House)」、「職場(Work)」、「好きなレストラン(Favorite Restaurant)」などのロケーションについてユーザによって提供された名前を示すロケーションラベル212を含み得る。例えば、データテーブル200の第1のエントリは、ユーザが2018年7月11日午後8時に5分間、チューリッヒの789 Hauptstrasseにあるスターバックス(登録商標)204を訪問し、スターバックス(登録商標)のためのラベルを提供しなかったことを示す。
パーソナル化地図データ生成器68は、図2Bに示すデータテーブル250に示すように、頻度スコア258と、最新性スコア260と、全体スコア262とを含む1つまたは複数のスコアをロケーションデータテーブル200内の各ロケーション204に割り当てる。頻度スコア258は、ユーザがそのロケーションを訪問した合計回数、ユーザがしきい値期間(例えば、前月)内にそのロケーションを訪問した回数、ユーザがそのロケーションを訪問した平均レート(例えば、月に3回、年に2回など)、または任意の他の適切な方法に基づいて決定され得る。例えば、ロケーションデータテーブル200は、2018年6月12日から2回、チューリッヒの789 Hauptstrasseにあるスターバックス(登録商標)を訪問したことを示す。いくつかの実施形態では、ユーザは、ユーザが急いで離れたロケーションと比較してユーザがかなりの時間過ごしたロケーションにより馴染みがある可能性があるので、パーソナル化地図データ生成器68は、ロケーションにおいて過ごした時間量210を要因として頻度スコア258に含め得る。例えば、しきい値時間量(例えば、5分)未満間の訪問は、ユーザがそのロケーションを訪問した回数に含まれない場合がある。別の例では、頻度スコア258は、ユーザがそのロケーションを訪問した重み付き回数に基づいて決定され得、ここで、訪問は、ユーザがそのロケーションにより長く滞在するほど、より高い重みが割り当てられる。
最新性スコア260は、ユーザが最後にそのロケーションを訪問してからの時間量、または頻度しきい値を超えるレートでユーザがそのロケーションを訪問してからの時間量に基づいて決定され得る。例えば、ユーザが以前はそのロケーションを数ヶ月間週に1回訪問したが、現在はそのロケーションを一年に1回しか訪問しなかった場合、最新性スコア260は、ユーザがそのロケーションを週に1回最後に訪問してからの時間量に基づき得る。いくつかの実施形態では、パーソナル化地図データ生成器68は、ロケーションにおいて過ごした時間量210を要因として最新性スコア260に含め得る。例えば、しきい値時間量(例えば、5分)未満間の訪問は、ユーザがそのロケーションを訪問した最新の時間として含められない場合がある。
全体スコア262は、頻度スコア258および最新性スコア260の任意の適切な組合せに基づいて決定され得る。いくつかの実施形態では、パーソナル化地図データ生成器68は、全体スコア262を生成するために頻度スコア258および最新性スコア260を集約するか、全体スコア262を生成するために頻度スコア258および最新性スコア260を平均するか、または全体スコア262を生成するために頻度スコア258および最新性スコア260を乗算する。他の実施形態では、パーソナル化地図データ生成器68は、頻度スコア258および最新性スコア260の各々に重みを割り当て、全体スコア262を生成するために頻度スコア258および最新性スコア260の重付けされた組合せを計算する。例えば、パーソナル化地図データ生成器68は、0.6の重みを頻度スコア258に割り当て、0.4の重みを最新性スコア260に割り当て、スコアの加重平均を計算し得る。
ナビゲーション指示と、ナビゲーションデータサーバ34からのルートに沿った様々な中間点における誘導を含むナビゲーション命令の後続のセットとに対する要求を受信したことに応答して、パーソナル化地図データ生成器68は、各中間点のしきい値距離内にあるロケーションデータテーブル200内のロケーション204を候補ランドマークとして識別する。次いで、パーソナル化地図データ生成器68は、候補ランドマークに関する全体スコア262を取得し、全体スコア262に従って候補ランドマークをランク付けする。いくつかの実施形態では、候補ランドマークがしきい値ランキングよりも上にランク付けされるか、またはしきい値スコアよりも上のスコアを有する場合、パーソナル化地図データ生成器68は、対応する誘導に関するナビゲーション命令内に含めるための候補ランドマークを選択する。例えば、誘導がビルの家(Bill's House)のしきい値距離内にある中間点において右折することであり、ビルの家がしきい値スコアよりも上の全体スコアを有する場合、パーソナル化地図データ生成器68は、「ビルの家を過ぎた交差点で右折してください(Turn right at the intersection past Bill's House)」または「ビルの家の前の交差点で右折してください(Turn right at the intersection before Bill's House)」という命令を生成する。他の実施形態では、パーソナル化地図データ生成器68は、各中間点のしきい値距離内にある候補ランドマークを識別し、特定の中間点に対応する候補ランドマークをランク付けし、ナビゲーション命令内に含めるための特定の中間点に関する最高ランキングの候補ランドマークを選択する。
いくつかのシナリオでは、パーソナル化地図データ生成器68は、最高ランキングの候補ランドマークがしきい値スコアよりも上の最小スコアを有する場合に、ナビゲーション命令内に含めるために特定の中間点に関する最高ランキングの候補ランドマークのみを選択する。そうでない場合、パーソナル化地図データ生成器68は、「メイン通りに右折してください(Turn right onto Main St.)」などのデフォルトのナビゲーション命令を使用する。他のシナリオでは、パーソナル化地図データ生成器68は、ナビゲーション命令内に含めるために最大しきい値数(例えば、3つ)のランドマークを選択する。したがって、パーソナル化地図データ生成器68は、最大しきい値数を超えないように、異なる中間点に関する最高ランキング候補ランドマークを選択する。例えば、最大しきい値数が3であり、2番目および2番目にランク付けされた候補ランドマークが同じ中間点に関するものである場合、パーソナル化地図データ生成器68は、ナビゲーション命令内に含めるために、1番目および3番目にランク付けされた候補ランドマークならびに4番目にランク付けされた候補ランドマークを選択する。いずれにしても、パーソナル化地図データ生成器68は、パーソナル化データディスプレイ24を介して提示するために、選択されたランドマークを含むナビゲーション命令のセットをユーザのクライアントコンピューティングデバイス10に提供する。
地図データサーバ50からロケーションの選択と選択されたロケーションに関する後続の地図データとを受信したことに応答して、パーソナル化地図データ生成器68は、選択されたロケーションのしきい値距離内にあるロケーションデータテーブル200内のロケーション204を候補ランドマークとして識別する。次いで、パーソナル化地図データ生成器68は、候補ランドマークに関する全体スコア262を取得し、全体スコア262に従って候補ランドマークをランク付けする。パーソナル化地図データ生成器68は、最高ランキングの候補ランドマークを選択し、選択されたロケーションの指標と選択されたランドマークの指標とを含む地図データを、パーソナル化データディスプレイ24を介して提示するためにユーザのクライアントコンピューティングデバイス10に提供する。それに応じて、パーソナル化データディスプレイ24は、選択されたロケーションと選択されたランドマークとを含む地理的領域の地図表示を、選択されたロケーションと選択されたランドマークとを表すピンまたは他のアイコンなどの、選択されたロケーションの指標および選択されたランドマークの指標とともに提示する。いくつかの実施形態では、パーソナル化地図データ生成器68は、ユーザがランドマークを訪問した頻度の説明(例えば、「あなたは、頻繁にここに来ます(You come here often)」)、またはユーザがランドマークを訪問した最新性の説明(例えば、「あなたは、先週ここにいました(You were here last week)」)などの、選択されたランドマークとユーザとの間の関係の説明を生成する。パーソナル化地図データ生成器68は、次いで、選択されたランドマークとユーザとの間の関係の説明で地図表示に注釈を付けさせる。
地理的検索クエリと後続の検索結果とを、地理的検索クエリに応答した地図データサーバ50からの検索結果に関するスコア/ランキングとともに受信したことに応答して、パーソナル化地図データ生成器68は、検索結果内に含まれるロケーションデータテーブル200内のロケーション204を識別する。次いで、パーソナル化地図データ生成器68は、ユーザがそのロケーションを訪問した頻度の説明(例えば、「あなたは、頻繁にここに来ます(You come here often)」)、またはユーザがそのロケーションを訪問した最新性の説明(例えば、「あなたは、先週ここにいました(You were here last week)」)などの、ロケーションとユーザとの間の関係の説明で、ユーザのロケーション履歴内に含まれるロケーションに関する検索結果に注釈を付ける。加えて、いくつかの実施形態では、パーソナル化地図データ生成器68は、例えば、ユーザによって以前に訪問されているロケーションに関する検索結果に関するランキングを上昇させるおよび/またはスコアを増加させることによって、検索結果のスコアリング/ランキングを調整する。
より具体的には、パーソナル化地図データ生成器68は、地図データサーバ50によって生成された検索結果の各々に関する関連性スコアを取得し得る。関連性スコアに加えて、パーソナル化地図データ生成器68は、ユーザによって以前に訪問されたロケーションに関する図2Bに示すデータテーブル250から頻度スコア258、最新性スコア260、および/または全体スコア262を取得する。ユーザによって以前に訪問されていないロケーションについて、パーソナル化地図データ生成器68は、0のデフォルト全体スコアをそのロケーションまたは別のデフォルトスコアに割り当て得る。いずれにしても、各検索結果について、パーソナル化地図データ生成器68は、上昇された検索結果スコアを生成するために、関連性スコアと、頻度スコア258と、最新性スコア260とを組み合わせる。パーソナル化地図データ生成器68は、次いで、上昇された検索結果スコアに従って検索結果を再ランク付けし、パーソナル化データディスプレイ24を介して提示するために、再ランク付けされた検索結果を、それぞれの注釈とともに、ユーザのクライアントコンピューティングデバイス10に提供する。
別の実施形態では、出発地(例えば、ユーザの現在位置)から最終目的地へのナビゲーション指示と、ナビゲーションデータサーバ34からのルートに沿った様々な中間点における誘導を含むナビゲーション命令の後続のセットとに対する要求を受信したことに応答して、パーソナル化地図データ生成器68は、最終目的地のしきい値距離内にあるロケーションデータテーブル200内のロケーション204を候補中間目的地として識別する。パーソナル化地図データ生成器68はまた、各中間点のしきい値距離内にあるロケーションデータテーブル200内のロケーション204を候補中間目的地として識別し得る。さらに、パーソナル化地図データ生成器68は、出発地から最終目的地への第1のルートと交差する出発地から候補中間目的地への第2のルートを有する候補中間目的地としてロケーション204を識別し得る。より具体的には、候補中間目的地は、出発地から最終目的地への第1のルートに沿った中間点のうちの1つとともに、出発地から候補中間目的地への第2のルートに沿った共通中間点を有するロケーション204を含み得る。
いくつかの実施形態では、パーソナル化地図データ生成器68は、ユーザが候補中間目的地を訪問した頻度がしきい値頻度よりも大きいか、またはユーザが候補中間目的地のロケーションを最後に訪問してからの時間量がしきい値時間量未満である場合、候補中間目的地のロケーションを選択する。
他の実施形態では、パーソナル化地図データ生成器68は、候補中間目的地に関する全体スコア262を取得し、全体スコア262に従って候補中間目的地をランク付けする。さらに他の実施形態では、パーソナル化地図データ生成器68は、候補中間目的地に関する頻度スコア258と最新性スコア260とを取得する。パーソナル化地図データ生成器68はまた、候補中間目的地から最終目的地までの距離、候補中間目的地へのルートに沿った共通中間点から最終目的地までの距離、および/または出発地から最終目的地へのルートに沿った最も近い中間点から候補中間目的地までの距離に基づいて、距離スコアを各候補中間目的地に割り当てる。
いくつかのシナリオでは、距離スコアは、最終目的地までの距離が減少するにつれて距離スコアが増加するように、最終目的地までの距離に反比例し得る、また、いくつかのシナリオでは、候補中間目的地から最終目的地までの距離に基づく距離スコアが第1の層内に配置され得るように、距離スコアは、階層化され得る。候補中間目的地へのルートに沿った共通中間点から最終目的地までの距離に基づく距離スコアは、第2の層内に配置され得る。さらに、出発地から最終目的地へのルートに沿った最も近い中間点から候補中間目的地までの距離に基づく距離スコアは、第3の層内に配置され得る。第1の層の距離スコアは、各々、第2の層の距離スコアよりも高くなり得、第2の層の距離スコアは、各々、第3の層の距離スコアよりも高くなり得る、などである。
いずれにしても、パーソナル化地図データ生成器68は、中間目的地スコアを生成するために、頻度スコア258と、最新性スコア260と、距離スコアとを任意の適切な方法で組み合わせる。次いで、パーソナル化地図データ生成器68は、中間目的地スコアに従って候補中間目的地をランク付けする。
いくつかの実施形態では、パーソナル化地図データ生成器68は、中間目的地スコアを生成するために、頻度スコア258と、最新性スコア260と、距離スコアとを集約するか、中間目的地スコアを生成するために、頻度スコア258と、最新性スコア260と、距離スコアとを平均するか、中間目的地スコアを生成するために、頻度スコア258と、最新性スコア260と、距離スコアとを乗算する。他の実施形態では、パーソナル化地図データ生成器68は、頻度スコア258、最新性スコア260、および距離スコアの各々に重みを割り当て、中間目的地スコアを生成するために、頻度スコア258、最新性スコア260、および距離スコアの重み付き組合せを計算する。例えば、パーソナル化地図データ生成器68は、0.4の重みを頻度スコア258に割り当て得、0.4の重みを最新性スコア260に割り当て得、0.2の重みを距離スコアに割り当て得、スコアの加重平均を計算し得る。
いずれにしても、パーソナル化地図データ生成器68は、最高ランキングの候補中間目的地を選択し、出発地から選択された中間目的地へのターンバイターン方式のナビゲーション命令を提供しない。代わりに、パーソナル化地図データ生成器68は、パーソナル化データディスプレイ24を介して提示するために、ユーザが選択された中間目的地に移動するための第1のナビゲーション命令をユーザのクライアントコンピューティングデバイス10に提供する。パーソナル化地図データ生成器68はまた、選択された中間目的地から、または最終目的地へのルートに沿った中間点と共通の選択された中間目的地へのルートに沿った中間点から最終目的地へのナビゲーション指示を取得し得る。次いで、パーソナル化地図データ生成器68は、最終目的地へのナビゲーション指示をユーザのクライアントコンピューティングデバイス10に提供する。次に、パーソナル化データディスプレイ24は、センサ19を介して、クライアントコンピューティングデバイス10が選択された中間目的地または選択された中間目的地へのルートに沿った共通中間点に近づいていると決定したことに応答して、最終目的地へのナビゲーション指示を提示する。
基準系として馴染みのあるランドマークを有する例示的なロケーション表示
上で説明したように、ユーザは、クライアントコンピューティングデバイス10上で動作するマッピングアプリケーション22においてロケーションを選択し得る。例えば、ユーザは、パーソナル化データディスプレイ24によって地図表示上に提示されたロケーションをタッチ選択し得、マッピングアプリケーション22によって提示された検索提案もしくは検索結果をタッチ選択し得、マッピングアプリケーション22においてユーザ制御を介して特定のロケーションの住所もしくは名前を入力し得、または任意の他の適切な方法においてロケーションを選択し得る。パーソナル化データディスプレイ24は、次いで、選択されたロケーションを、そのロケーションを取り囲む地理的領域に関する地図データに対する要求とともにサーバデバイス60に提供し得る。それに応答して、サーバデバイス60は、地図データを生成し、地図表示内でユーザを方向付けるために、選択されたロケーションに関する基準系として提示されるべき選択されたロケーションのしきい値距離内にある馴染みのあるランドマークを選択する。次いで、サーバデバイス60は、地図データと、選択されたランドマークと、選択されたランドマークとユーザとの間の関係の説明などの、選択されたランドマークに関する情報とを、パーソナル化データディスプレイ24によって提示されるようにクライアントコンピューティングデバイス10に提供する。図3は、ユーザによって選択されたロケーション302のRiffraff Kino/Bar/Bistroを含む一例示的な地図表示300を示す。選択されたロケーション320は、ピンなどのインジケータとともに提示され、または任意の他の適切なアイコンとともに提示され得る。例示的な地図表示300において、ロケーション302は、ロケーションの名前のRiffraff Kino/Bar/Bistroを検索バーに入力することによって選択される。しかしながら、ロケーション302は、地図表示300上のロケーションをタッチ選択することによるなど、任意の他の適切な方法において選択され得る。
例示的な地図表示300は、ピンまたは他のアイコンなどのインジケータとともに、ユーザに馴染みのあるランドマーク304のThe International Beer Barも含む。さらに、地図表示300は、馴染みのあるランドマーク304とユーザとの間の関係を説明する注釈306の「You come here often(あなたは、頻繁にここに来ます)」を含む。いくつかの実施形態では、選択されたロケーション302と、馴染みのあるランドマーク304と、注釈とを取り囲む地理的領域に関する地図データは、サーバデバイス、より具体的にはパーソナル化地図データ生成器68からクライアントコンピューティングデバイス10に提供される。例えば、別の地図表示(図示せず)では、マッピングアプリケーション22は、ロケーションデータを共有するための要求、およびロケーションデータを共有するかどうかを選択するためのユーザ制御をユーザに促す。ユーザがロケーションデータを共有するようにユーザ制御を選択した場合、パーソナル化地図データ生成器68は、上で説明したように、クライアントコンピューティングデバイス10からロケーションデータを受信する。
選択されたロケーション302を取り囲む地理的領域に関する地図データに対する要求に応答して、パーソナル化地図データ生成器68は、選択されたロケーション302のしきい値距離(例えば、50m、100m、200m、0.5km、1kmなど)内にあるロケーションデータ内のロケーションを候補ランドマークとして識別する。次いで、パーソナル化地図データ生成器68は、候補ランドマークに関する全体スコア262を取得し、全体スコア262に従って候補ランドマークをランク付けする。パーソナル化地図データ生成器68は、最高ランキングの候補ランドマークを選択し、選択されたランドマークとユーザとの間の関係の説明を生成する。例えば、ユーザが選択されたランドマークを少なくともしきい値回数訪問した場合、パーソナル化地図データ生成器68は、「あなたは、頻繁にここに来ます(You come here often)」という説明を生成する。ユーザが選択されたランドマークをしきい値日数内に訪問した場合、パーソナル化地図データ生成器68は、「あなたは、X日前にここにいました(You were here X days ago)」または「あなたは、先週ここにいました(You were here last week)」という説明を生成する。パーソナル化データディスプレイ24は、次いで、地図データと、選択されたロケーション302と、馴染みのあるランドマーク304と、注釈306とを使用して地図表示300を提示する。このようにして、ユーザは、地図表示300を見て、近くの馴染みのあるランドマークに基づいて、少なくとも、選択されたロケーションを含む領域を理解し得る。いくつかの実施形態では、パーソナル化地図データ生成器68は、ロケーションの名前204ではなく、選択されたランドマークに関するロケーションラベル212(例えば、「自宅(Home)」、「職場(Work)」、「Bobの家(Bob's House)」)をパーソナル化データディスプレイ24に提供し、地図表示300には、ロケーションラベル212が提示される。
馴染みのあるロケーションに関する注釈付きの結果を有する例示的な検索結果表示
選択されたロケーションを有するパーソナル化地図データを提示することに加えて、パーソナル化地図データ生成システムは、図4に示すように、「Cafe Henrici」という馴染みのあるロケーションに対応する注釈付き結果402を有する検索結果表示400を提示する。注釈付き結果402のランキングも、馴染み深さに基づいて上昇され得る。図4に示すように、検索結果/提案は、部分的な地理的検索クエリであり得る、cafe(カフェ)という地理的検索クエリに応答して生成される。例えば、パーソナル化データディスプレイ24は、「cafe(カフェ)」というユーザ入力を受信し、ユーザ入力をサーバデバイス60に提供し得る。したがって、サーバデバイス60は、地理的検索クエリに関連する地理的検索結果を取得するために、地図データサーバ50または別の適切なサーバと通信する。いくつかの実施形態では、取得された地理的検索結果の各々は、ユーザの現在位置のしきい値距離内、またはユーザのクライアントコンピューティングデバイス10の地図表示上に提示された地理的領域のしきい値距離内にある。
いずれにしても、サーバデバイス60は、地理的検索結果の各々に関する関連性スコアとともに、ランク付けされた順序で地理的検索結果を取得し得る。検索結果表示400において、検索結果は、Cafe des Musees、Cafe Henrici、Cafe Grumpy、Cafe Bistrot、Cafe de Paris、Cafe De La Paix、およびCafe dolce amaroを含む。パーソナル化地図データ生成器68は、次いで、Cafe Henriciなどの検索結果内に含まれるユーザのロケーション履歴からロケーション204を識別する。次いで、パーソナル化地図データ生成器68は、「You were here last week(あなたは、先週ここにいました)」404などのロケーションとユーザとの間の関係の説明で、ユーザのロケーション履歴内に含まれるロケーションに関する検索結果に注釈を付ける。いくつかの実施形態では、パーソナル化地図データ生成器68は、例えば、ユーザによって以前に訪問されているロケーションに関する検索結果のランキングを上昇させることによって、検索結果のスコアリング/ランキングを調整する。例えば、Cafe Henriciは、検索結果表示400において2番目にランク付けされているが、関連性に基づく初期のランキングは、Cafe Henriciを4番目にランク付けしている場合がある。しかしながら、Cafe Henriciに関する全体的な馴染み深さスコア262と、関連性スコアとに基づいて、パーソナル化地図データ生成器68は、Cafe Henriciをランキングにおいて2番目に上昇させる。いくつかの実施形態では、ユーザのロケーション履歴内に含まれる検索結果について、パーソナル化地図データ生成器68は、ロケーション204の名前ではなく、検索結果内のユーザによって提供されたロケーションラベル212(例えば、「自宅(Home)」、「職場(Work)」、「Bobの家(Bob's House)」)を含み得る。再ランク付けされた検索結果は、次いで、それぞれの注釈とともに、ユーザのクライアントコンピューティングデバイス10に送信され、パーソナル化データディスプレイ24は、クライアントコンピューティングデバイス10のユーザインターフェース32上に検索結果表示400を提示する。
馴染みのあるランドマークを有する例示的なナビゲーション指示
さらに、パーソナル化地図データは、馴染みのあるランドマークでユーザを誘導するために、ナビゲーション指示において提供される。パーソナル化地図データを使用することはまた、一般大衆にはよく知られていないが、ユーザには特に知られているランドマークを含むようにランドマークのデータセットを拡張する。これは、ユーザが頻繁に訪問する家族もしくは親しい友人の家もしくは共同住宅、ユーザの現在の事務所のオフィスビル、もしくはユーザが以前に雇用されていたオフィスビル、または地元の企業、バー、レストランなどのユーザに馴染みのある他のPOIを含み得る。図5Aは、ユーザの現在地から目的地の「Home(自宅)」へのルート502を含む一例示的なナビゲーション表示500を示す。ナビゲーション表示500は、各々が特定の中間点における誘導を有するターンバイターン方式のナビゲーション命令のセットを提示し得る。誘導のうちの少なくともいくつかについて、ナビゲーション表示500は、ユーザが頻繁に食事をする「Haus Hiltl」504などの馴染みのあるランドマークをナビゲーション命令内に含む。
例えば、パーソナル化データディスプレイ24は、ナビゲーション表示500におけるユーザ入力に基づいて、出発地(例えば、ユーザの現在地)から目的地のロケーション(例えば、「Home(自宅)」)へのナビゲーション指示に対する要求を受信する。パーソナル化データディスプレイ24は、次いで、要求をサーバデバイス60に送信し、サーバデバイス60は、次に、要求をナビゲーションデータサーバ34に転送し得る。ナビゲーションデータサーバ34からナビゲーション命令のセットを受信したことに応答して、パーソナル化地図データ生成器68は、デフォルトのナビゲーション命令を、ユーザに馴染みのあるランドマークを含むナビゲーション命令に置き換える。
例えば、上記のように、パーソナル化地図データ生成器68は、ロケーションデータテーブル200内のロケーション204を、ナビゲーション命令のセット内の各中間点のしきい値距離内(例えば、誘導に関する交差点のしきい値距離内)にある候補ランドマークとして識別する。次いで、パーソナル化地図データ生成器68は、候補ランドマークに関する全体スコア262を取得し、全体スコア262に従って候補ランドマークをランク付けする。いくつかの実装形態では、候補ランドマークがしきい値ランキングよりも上にランク付けされているか、またはしきい値スコアよりも上のスコアを有する場合、パーソナル化地図データ生成器68は、対応する誘導のためのナビゲーション命令内に含める候補ランドマークを選択する。例えば、誘導がHaus Hiltlのしきい値距離内にある中間点において右折することであり、Haus Hiltlがしきい値スコアよりも上の全体スコアを有する場合、パーソナル化地図データ生成器68は、「Haus Hiltlを過ぎた交差点で右折してください(Turn right at the intersection past Haus Hiltl)」または「Haus Hiltlの前の交差点で右折してください(Turn right at the intersection before Haus Hiltl)」という命令を生成する。いくつかの実施形態では、ナビゲーション命令は、ロケーション204の名前ではなく、ユーザによって提供されたロケーションラベル212(例えば、例えば、「自宅(Home)」、「職場(Work)」、「Bobの家(Bob's House)」)を含み得る。パーソナル化ナビゲーション命令のセットは、次いで、ユーザのクライアントコンピューティングデバイス10に提供され、パーソナル化データディスプレイ24は、クライアントコンピューティングデバイス10のユーザインターフェース32上にナビゲーション表示500を提示する。
図5Bは、ユーザが対応する誘導に関する中間点に近づくときに提示されるナビゲーション命令552の詳細な表示550を示す。ユーザがKarl-Schmid Streetに近づくと、パーソナル化データディスプレイ24は、「Turn left after passing Akademischer Sportverband Zurich(Akademischer Sportverband Zurichを通過した後に左折してください)」のナビゲーション命令552を提示する。ユーザは、ユーザのロケーション履歴に基づいてこのスポーツアカデミーに非常に馴染みがあるので、ユーザは、ユーザがAkademischer Sportverband Zurichを通過したときと、次の交差点で左折するロケーションとを知っている可能性が高い。これは、目に見える道路標識がない場合があるか、またはユーザに馴染みがない場合がある「Turn left onto Karl-Schmid Street(Karl-Schmid Streetに左折してください)」とユーザに命令するよりも役立つ場合がある。
中間目的地として馴染みのあるランドマークを有する例示的なナビゲーション指示
ターンバイターン方式のナビゲーション命令内に馴染みのあるランドマークを含めることに加えて、パーソナル化地図データ生成器68はまた、出発地から最終目的地へのルートから離れたところに位置する最終目的地に向かう途中の中間目的地として、馴染みのあるランドマークを識別する。このようにして、ユーザは、単一の命令で最終目的地に行くまでの道の大部分をユーザに与え得る馴染みのあるランドマークに移動するように指示される。次いで、ユーザが中間目的地、または最終目的地へのルート上の中間点でもある中間目的地への途中の中間点に近づくと、パーソナル化地図データ生成器68は、ユーザのクライアントコンピューティングデバイス10上のパーソナル化データディスプレイ24によって提示される最終目的地へのナビゲーション命令のセットを提供する。これは、ユーザに提供されるナビゲーション命令の数を低減する場合があり、追加のガイダンスが必要になる前に、ユーザがユーザに馴染みのある中間目的地に移動することを可能にする場合がある。
一例示的なシナリオでは、Johnは、自分のクライアントコンピューティングデバイス10のマッピングアプリケーション22を介して自分の現在地からUniversity Hospital Zurich Foundationへのナビゲーション指示を要求する。図6Aの例示的なナビゲーション表示600内に示すように、Johnの現在地602は、University Hospital Zurich Foundation604の数キロメートル北である。パーソナル化データディスプレイ24は、次いで、Johnの現在地からUniversity Hospital Zurich Foundation604へのナビゲーション指示に対する要求をサーバデバイス60に送信する。したがって、パーソナル化地図データ生成器68は、要求をナビゲーションデータサーバ34に転送し得、Johnの現在地602からUniversity Hospital Zurich Foundation604へのナビゲーション命令のセットを受信し得、ここで、各ナビゲーション命令は、対応する中間点における誘導を含む。
次いで、パーソナル化地図データ生成器68は、University Hospital Zurich Foundation604のしきい値距離内にあるユーザのロケーション履歴内のロケーション、Johnの現在地602からUniversity Hospital Zurich Foundation604へのルート上の中間点のうちの1つのしきい値距離内にあるユーザのロケーション履歴内のロケーション、またはJohnの現在地602からUniversity Hospital Zurich Foundation604への第1のルートに沿った中間点のうちの1つとともに、Johnの現在地602から候補中間目的地への第2のルートに沿った共通中間点が存在するユーザのロケーション履歴内のロケーションを、候補中間目的地として識別する。いくつかの実施形態では、候補中間目的地は、図2Bに示すように、データテーブル250からのそれらの全体スコア262に基づいてランク付けされる。他の実施形態では、パーソナル化地図データ生成器68は、図2Bに示すように、データテーブル250から候補中間目的地に関する頻度スコア258と最新性スコア260とを取得し、距離スコアを各候補中間目的地に割り当てる。距離スコアは、候補中間目的地からUniversity Hospital Zurich Foundation604までの距離、候補中間目的地へのルートに沿った共通中間点からUniversity Hospital Zurich Foundation604までの距離、および/またはJohnの現在地602からUniversity Hospital Zurich Foundation604へのルートに沿った最も近い中間点から候補中間目的地までの距離に基づき得る。
いずれにしても、パーソナル化地図データ生成器68は、中間目的地スコアを生成するために、任意の適切な方法で、頻度スコア258と、最新性スコア260と、距離スコアとを組み合わせる。次いで、パーソナル化地図データ生成器68は、中間目的地スコアに従って候補中間目的地をランク付けし、最高ランキングの候補中間目的地を中間目的地として選択する。この例示的なシナリオでは、パーソナル化地図データ生成器68は、Haus Hiltl606を中間目的地として選択する。図6Aに示すように、Haus Hiltl606は、University Hospital Zurich Foundation604と同様に、Johnの現在地602の南にあり、Johnの現在地602よりもUniversity Hospital Zurich Foundation604に近い。しかしながら、Haus Hiltl606は、ナビゲーションデータサーバ34によって生成された、Johnの現在地602からUniversity Hospital Zurich Foundation604へのルート上にはない。
パーソナル化地図データ生成器68は、次いで、パーソナル化データディスプレイ24を介して提示するために、Haus Hiltl606に向かって移動するための単一の命令として第1のナビゲーション命令をユーザのクライアントコンピューティングデバイス10に提供する。いくつかの実施形態では、第1のナビゲーション命令は、ロケーション204の名前ではなく、中間目的地に関するユーザによって提供されたロケーションラベル212(例えば、「自宅(Home)」、「職場(Work)」、「Bobの家(Bob's House)」)を含み得る。パーソナル化地図データ生成器68はまた、Haus Hiltl606から、またはUniversity Hospital Zurich Foundation604へのルートに沿った中間点と共通のHaus Hiltl606へのルートに沿った中間点からUniversity Hospital Zurich Foundation604へのナビゲーション指示をユーザのクライアントコンピューティングデバイス10に提供する。したがって、パーソナル化データディスプレイ24は、ナビゲーション表示600内に第1のナビゲーション命令610を提示する。パーソナル化データディスプレイ24は、Haus Hiltl606からUniversity Hospital Zurich Foundation604へのルート612の強調表示された表現も提示する。Haus Hiltl606は、Johnにとって馴染みのあるロケーションであるので、Johnは、いかなる追加の命令もなしにHaus Hiltl606に移動することができ、JohnがHaus Hiltl606、またはHaus Hiltl606およびUniversity Hospital Zurich Foundation604へのルート上の共通中間点(例えば、ルート17の出口)に近づくと、パーソナル化データディスプレイ24は、University Hospital Zurich Foundation604へのターンバイターン方式のナビゲーション命令を提示し得る。
ナビゲーション表示600内に示すように、Johnの現在地602からHaus Hiltl606への第1のルートと、Johnの現在地602からUniversity Hospital Zurich Foundation604への第2のルートの両方が、ルート17の出口のうちの1つにおける共通中間点を有するように見える。University Hospital Zurich Foundation604への第2のルートにおいて、ナビゲーション命令のセットは、特定の出口または通りにおいてルート17を離れて左折するための誘導を含み得るが、Haus Hiltl606へ第1のルートにおいて、ナビゲーション命令のセットは、特定の出口もしくは通りにおいてルート17を離れて右折するか、または右折する前にさらなる出口もしくは通りに到達するまでまっすぐ進むための誘導を含み得る。
図6Bは、JohnがHaus Hiltl606に近づいたときに表示されるナビゲーション命令632を含む詳細なナビゲーション表示630を示す。例えば、Johnのクライアントコンピューティングデバイス10は、センサ19を介して、JohnがHaus Hiltl606に近づいていることを検出し得る。JohnがHaus Hiltl606に近づいていることを検出したことに応答して、パーソナル化データディスプレイ24は、University Hospital Zurich Foundation604へのターンバイターン方式のナビゲーション命令を提示し得る。詳細なナビゲーション表示630に示すように、ナビゲーション命令632は、JohnをUniversity Hospital Zurich Foundation604に誘導するための、Johnに提示されるナビゲーション命令のセットのうちの1つである。Johnがナビゲーション命令632内に含まれる誘導を完了すると、詳細なナビゲーション表示630は、強調表示されたルート634上に別のナビゲーション命令(図示せず)を提示する。
最終目的地へのターンバイターン方式のナビゲーション命令を提供する前に、ユーザが中間目的地に到達するのを待つ代わりに、パーソナル化地図データ生成器68は、それぞれ、中間目的地および最終目的地への第1および第2のルートに沿った共通中間点を識別し得る。いくつかの実施形態では、複数の共通中間点が存在する場合、パーソナル化地図データ生成器68は、第1および第2のルートに沿った最後の共通中間点を識別し得る。例えば、両方のルートがHighway1上を移動するようにユーザに要求し、中間目的地へのルートが出口40を右折するようにユーザに要求するのに対し、最終目的地へのルートが出口45に到達するまでまっすぐ進み、次いで右折することをユーザに要求する場合、パーソナル化地図データ生成器68は、出口40を最後の共通中間点として識別し得る。次いで、パーソナル化地図データ生成器68は、出口40から最終目的地へのターンバイターン方式のナビゲーション命令を提供し得、このナビゲーション命令は、ユーザが出口45までまっすぐに進むようにナビゲーション命令を見る前に右折しないように、ユーザのクライアントコンピューティングデバイスが出口40に到達する前にパーソナル化データディスプレイ24によって提示される。
図6Cは、ユーザがHaus Hiltl606への第1のルートとUniversity Hospital Zurich Foundation604への第2のルートとの間の共通中間点に到達したときに提示されるナビゲーション命令662を含む詳細なナビゲーション表示660を示す。詳細なナビゲーション表示660に示すように、Johnは、図6Aに示すようにナビゲーション表示600においてHaus Hiltl606に向かって移動するように提示されている第1のナビゲーション命令610に基づいて、ルート17上を南に移動している。Johnのクライアントコンピューティングデバイス10は、JohnがHaus Hiltl606への第1のルートとUniversity Hospital Zurich Foundation604への第2のルートとの間の最後の共通中間点に近づいていることを検出し得る。Johnが最後の共通中間点に近づいていることを検出したことに応答して、パーソナル化データディスプレイ24は、University Hospital Zurich Foundation604へのターンバイターン方式のナビゲーション命令を提示し得る。これは、Haus Hiltl606にナビゲートするために右折するのと反対に、ルート17を離れて左折するためのナビゲーション命令662を含む。
いくつかのシナリオでは、中間目的地は、ユーザに馴染みのあるロケーションであるが、出発地は、馴染みがない。したがって、ユーザは、詳細な命令なしに中間目的地にナビゲートされることはできない。いくつかの実施形態では、パーソナル化データディスプレイ24は、中間目的地を含むナビゲーション指示を受信するかどうかを選択するためのユーザ制御をユーザに提供し得る。例えば、ユーザがユーザの現在地から馴染みのある中間目的地にナビゲートされることを快適だと感じる場合、ユーザは、ユーザ制御を介して、中間目的地を含むナビゲーション指示を受信することを要求することができる。ユーザがユーザの現在地からナビゲートされることを快適だと感じない場合、ユーザは、中間目的地なしでユーザの現在地から最終目的地へのターンバイターン方式のナビゲーション命令を受信することを要求することができる。
他の実施形態では、パーソナル化地図データ生成器68は、中間目的地を含むナビゲーション指示を提供するかどうかを決定する。例えば、パーソナル化地図データ生成器68は、ユーザのロケーション履歴に基づいて、ユーザの現在地または他の出発地が馴染みのあるロケーションかどうかを決定し得る。より具体的には、出発地に関する全体スコア262がしきい値スコアよりも上である場合、または出発地が全体スコア262、頻度スコア258、もしくは最新性スコア260に基づいてしきい値ランキングよりも上にランク付けされている場合、パーソナル化地図データ生成器68は、中間目的地を識別し、中間目的地から最終目的地へのターンバイターン方式のナビゲーション命令を提供し得る。一方、出発地に関する全体スコア262がしきい値スコアよりも上ではない場合、または出発地が全体スコア262、頻度スコア258、もしくは最新性スコア260に基づいてしきい値ランキングよりも上にランク付けされていない場合、パーソナル化地図データ生成器68は、中間目的地なしで出発地から最終目的地へのターンバイターン方式のナビゲーション命令を提供し得る。
また、いくつかの実装形態では、パーソナル化地図データ生成器68は、最終目的地に向かう途中の複数の中間目的地を識別し得る。例えば、パーソナル化地図データ生成器68は、パーソナル化データディスプレイ24を介して提示するために、第1の中間目的地に向かって移動するための第1のナビゲーション命令をユーザのクライアントコンピューティングデバイス10に提供し得る。パーソナル化地図データ生成器68はまた、第1の中間目的地よりも最終目的地に近い第2の中間目的地に向かって移動するための第2のナビゲーション命令を提供し得る。さらに、パーソナル化地図データ生成器68は、第2の中間目的地から、または最終目的地へのルートに沿った中間点と共通の第2の中間目的地へのルートに沿った中間点から最終目的地へのナビゲーション命令をユーザのクライアントコンピューティングデバイス10に提供し得る。
したがって、パーソナル化データディスプレイ24は、ナビゲーション表示内に第1のナビゲーション命令を提示し得る。ユーザのクライアントコンピューティングデバイス10が第1の中間目的地、または第1の中間目的地および第2の中間目的地へのルート上の共通中間点に近づくと、パーソナル化データディスプレイ24は、ナビゲーション表示内に第2のナビゲーション命令を提示し得る。次いで、ユーザのクライアントコンピューティングデバイス10が第2の中間目的地、または第2の中間目的地および最終目的地へのルート上の共通中間点に近づくと、パーソナル化データディスプレイ24は、ナビゲーション表示内に最終目的地へのターンバイターン方式のナビゲーション命令を提示し得る。この例は、2つの中間目的地を含んでいるが、これは、説明を簡単にするためのみの単なる一例に過ぎない。パーソナル化地図データ生成器68は、最終目的地に向かう途中でユーザを誘導するための任意の数の中間目的地を識別し得る。
パーソナル化地図データを提示するための例示的な方法
図7は、地理的検索結果を位置特定するためにデジタル地図上にパーソナル化ランドマークを提供するための一例示的な方法700のフロー図を示す。方法は、コンピュータ可読メモリ上に記憶され、サーバデバイス60の1つまたは複数のプロセッサにおいて実行可能な命令のセットにおいて実装され得る。例えば、方法は、パーソナル化地図データ生成器68によって実施され得る。
ブロック702において、例えば、クライアントコンピューティングデバイス10において動作するパーソナル化データディスプレイ24から、ユーザについてロケーションデータが、取得される。より具体的には、クライアントコンピューティングデバイス10は、ユーザがロケーションデータを共有するためにマッピングアプリケーション22に許可を提供するユーザ制御を選択した場合、ロケーションデータをパーソナル化地図データ生成器68に送信し得る。ロケーションデータは、そのロケーションにおけるチェックインによるユーザによって訪問されたロケーションの名前もしくは住所、もしくはセンサ19からの測位データ、ユーザがロケーションを訪問した日時、ユーザがロケーションを訪問した時間量、および/またはスイスのチューリッヒにある123 Hauptstrasseの「Bobの家(Bob's House)」などの、ユーザによって提供されたロケーションに関するラベルを含み得る。いくつかの実施形態では、パーソナル化データディスプレイ24は、クライアントコンピューティングデバイス10がしきい値期間(例えば、1分)よりも長い間あるロケーションにあるとき、ロケーションデータを提供する。
次いで、ブロック704において、ロケーションが、クライアントコンピューティングデバイス10上で動作するマッピングアプリケーション22において選択され、選択されたロケーションを取り囲む地理的領域に関する地図データに対する要求とともに、サーバデバイス60において受信される。例えば、ユーザは、パーソナル化データディスプレイ24によって地図表示上に提示されたロケーションをタッチ選択し得、マッピングアプリケーション22によって提示された検索提案もしくは検索結果をタッチ選択し得、マッピングアプリケーション22においてユーザ制御を介して特定のロケーションの住所もしくは名前を入力し得、または任意の他の適切な方法においてロケーションを選択し得る。
要求に応答して、選択されたロケーション302のしきい値距離(例えば、50m、100m、200m、0.5km、1kmなど)内にあるユーザのロケーション履歴内のロケーションが、候補ランドマークとして識別される(ブロック706)。候補ランドマークの各々は、図2Bに示すような全体スコア262などの候補ランドマークに関する全体スコアを生成ために、頻度および最新性に従ってスコアリングされる。より具体的には、頻度スコアは、ユーザがそのロケーションを訪問した合計回数、ユーザがしきい値期間(例えば、前月)内にそのロケーションを訪問した回数、ユーザがそのロケーションを訪問した平均レート(例えば、月に3回、年に2回など)に基づいて、または任意の他の適切な方法で決定され得る。いくつかの実施形態では、ユーザは、ユーザが急いで離れたロケーションと比較してユーザがかなりの時間過ごしたロケーションにより馴染みがある可能性があるので、パーソナル化地図データ生成器68は、ロケーションにおいて過ごした時間量を要因として頻度スコアに含め得る。例えば、頻度スコアは、ユーザがそのロケーションを訪問した重み付き回数に基づいて決定され得、ここで、訪問は、ユーザがそのロケーションにより長く滞在するほど、より高い重みが割り当てられる。
最新性スコアは、ユーザが最後にそのロケーションを訪問してからの時間量、または頻度しきい値を超えるレートでユーザがそのロケーションを訪問してからの時間量に基づいて決定され得る。例えば、ユーザが以前はそのロケーションを数ヶ月間週に1回訪問したが、現在はそのロケーションを一年に1回しか訪問しない場合、最新性スコアは、ユーザがそのロケーションを週に1回最後に訪問してからの時間量に基づき得る。いくつかの実施形態では、パーソナル化地図データ生成器68は、ロケーションにおいて過ごした時間量を要因として最新性スコアに含め得る。
全体スコアは、次いで、頻度スコアおよび最新性スコアの任意の適切な組合せに基づいて決定され得る。ブロック710において、候補ランドマークは、それらのそれぞれのスコアに従ってランク付けされ、パーソナル化地図データ生成器68は、地図表示内に提示するために最高ランキングの候補ランドマークを選択する(ブロック712)。
次いで、パーソナル化地図データ生成器68は、パーソナル化データディスプレイ24を介して提示するために、選択されたロケーションの指標と選択されたランドマークの指標とを含む地図データをユーザのクライアントコンピューティングデバイス10に提供する(ブロック714)。それに応じて、パーソナル化データディスプレイ24は、選択されたロケーションと選択されたランドマークとを含む地理的領域の地図表示を、選択されたロケーションと選択されたランドマークとを表すピンまたは他のアイコンなどの、選択されたロケーションの指標および選択されたランドマークの指標とともに提示する。いくつかの実施形態では、パーソナル化地図データ生成器68は、ユーザがランドマークを訪問した頻度の説明(例えば、「あなたは、頻繁にここに来ます(You come here often)」)、またはユーザがランドマークを訪問した最新性の説明(例えば、「あなたは、先週ここにいました(You were here last week)」)などの、選択されたランドマークとユーザとの間の関係の説明を生成する。パーソナル化地図データ生成器68は、次いで、選択されたランドマークとユーザとの間の関係の説明で地図表示に注釈を付けさせる。
図8は、ユーザにとっての馴染み深さに基づいて検索提案を提供するための一例示的な方法800のフロー図を示す。方法は、コンピュータ可読メモリ上に記憶され、サーバデバイス60の1つまたは複数のプロセッサにおいて実行可能な命令のセットにおいて実装され得る。例えば、方法は、パーソナル化地図データ生成器68によって実施され得る。
ブロック802において、例えば、クライアントコンピューティングデバイス10において動作するパーソナル化データディスプレイ24から、ユーザについてロケーションデータが、取得される。より具体的には、クライアントコンピューティングデバイス10は、ユーザがロケーションデータを共有するためにマッピングアプリケーション22に許可を提供するユーザ制御を選択した場合、ロケーションデータをパーソナル化地図データ生成器68に送信し得る。ロケーションデータは、そのロケーションにおけるチェックインによるユーザによって訪問されたロケーションの名前もしくは住所、もしくはセンサ19からの測位データ、ユーザがロケーションを訪問した日時、ユーザがロケーションを訪問した時間量、および/またはスイスのチューリッヒにある123 Hauptstrasseの「Bobの家(Bob's House)」などの、ユーザによって提供されたロケーションに関するラベルを含み得る。いくつかの実施形態では、パーソナル化データディスプレイ24は、クライアントコンピューティングデバイス10がしきい値期間(例えば、1分)よりも長くあるロケーションにあるとき、ロケーションデータを提供する。
次いで、ブロック804において、部分的な地理的検索クエリであり得る地理的検索クエリが、受信される。例えば、パーソナル化データディスプレイ24は、「cafe(カフェ)」というユーザ入力を受信し、ユーザ入力をサーバデバイス60に提供し得る。したがって、サーバデバイス60は、地理的検索クエリに関連する地理的検索結果/提案を取得するために、地図データサーバ50または別の適切なサーバと通信する(ブロック806)。いくつかの実施形態では、取得された地理的検索結果/提案の各々は、ユーザの現在位置のしきい値距離内、またはユーザのクライアントコンピューティングデバイス10の地図表示上に提示された地理的領域のしきい値距離内にある。
いずれにしても、サーバデバイス60は、地理的検索結果/提案の各々に関する関連性スコアとともに、ランク付けされた順序で地理的検索結果/提案を取得し得る。いくつかの実施形態では、パーソナル化地図データ生成器68は、例えば、ユーザによって以前に訪問されているロケーションに関する検索結果/提案のランキングを上昇させることによって、検索結果/提案のスコアリング/ランキングを調整する(ブロック808)。より具体的には、関連性スコアに加えて、パーソナル化地図データ生成器68は、ユーザによって以前に訪問されたロケーションに関する頻度スコア258、最新性スコア260、および/または全体スコア262を(例えば、図2Bに示すデータテーブル250から)取得する。ユーザによって以前に訪問されていないロケーションについて、パーソナル化地図データ生成器68は、0のデフォルト全体スコアをそのロケーションまたは別のデフォルトスコアに割り当て得る。いずれにしても、各検索結果/提案について、パーソナル化地図データ生成器68は、上昇された検索結果スコアを生成するために、関連性スコアと全体スコア262とを組み合わせる。パーソナル化地図データ生成器68は、次いで、上昇された検索結果スコアに従って検索結果/提案を再ランク付けし、パーソナル化データディスプレイ24を介して提示するために、再ランク付けされた検索結果/提案をユーザのクライアントコンピューティングデバイス10に提供する(ブロック810)。
検索結果/提案を再ランク付けすることに加えて、パーソナル化地図データ生成器68は、ユーザのロケーション履歴内に含まれるロケーションに関する検索結果/提案に、ユーザがそのロケーションを訪問した頻度の説明(例えば、「あなたは、頻繁にここに来ます(You come here often)」)、またはユーザがそのロケーションを訪問した最新性の説明(例えば、「あなたは、先週ここにいました(You were here last week)」)などの、ロケーションとユーザとの間の関係の説明で注釈を付ける。注釈は、次いで、パーソナル化データディスプレイ24を介して対応する検索結果/提案とともに提示するために、ユーザのクライアントコンピューティングデバイス10に提供される(ブロック812)。
図9は、パーソナル化ランドマークを使用してナビゲーション指示を提供するための一例示的な方法900のフロー図を示す。方法は、コンピュータ可読メモリ上に記憶され、サーバデバイス60の1つまたは複数のプロセッサにおいて実行可能な命令のセットにおいて実装され得る。例えば、方法は、パーソナル化地図データ生成器68によって実施され得る。
ブロック902において、例えば、クライアントコンピューティングデバイス10において動作するパーソナル化データディスプレイ24から、ユーザについてロケーションデータが、取得される。より具体的には、クライアントコンピューティングデバイス10は、ユーザがロケーションデータを共有するためにマッピングアプリケーション22に許可を提供するユーザ制御を選択した場合、ロケーションデータをパーソナル化地図データ生成器68に送信し得る。ロケーションデータは、そのロケーションにおけるチェックインによるユーザによって訪問されたロケーションの名前もしくは住所、もしくはセンサ19からの測位データ、ユーザがロケーションを訪問した日時、ユーザがロケーションを訪問した時間量、および/またはスイスのチューリッヒにある123 Hauptstrasseの「Bobの家(Bob's House)」などの、ユーザによって提供されたロケーションに関するラベルを含み得る。いくつかの実施形態では、パーソナル化データディスプレイ24は、クライアントコンピューティングデバイス10がしきい値期間(例えば、1分)よりも長くあるロケーションにあるとき、ロケーションデータを提供する。
次いで、ブロック904において、出発地から目的地のロケーションへのナビゲーション指示に対する要求が、受信される。例えば、要求は、クライアントコンピューティングデバイス10において提供されたユーザ入力に応答して、クライアントコンピューティングデバイス10からサーバデバイスに送信され得る。ブロック906において、目的地のロケーションへのナビゲーション命令のセットが、生成され得、ここで、各ナビゲーション命令は、ルートに沿った特定の中間点における誘導を含む。いくつかの実施形態では、ナビゲーション命令のセットを生成するために、サーバデバイス60は、出発地から目的地のロケーションへのナビゲーション指示に対する要求をナビゲーションデータサーバ34に転送する。
ナビゲーションデータサーバ34からナビゲーション命令のセットを受信したことに応答して、パーソナル化地図データ生成器68は、デフォルトのナビゲーション命令を、ユーザに馴染みのあるランドマークを含むナビゲーション命令に置き換える。より具体的には、ロケーションは、ナビゲーション命令のセット内の各中間点のしきい値距離(例えば、50m、100m、200m、0.5km、1kmなど)内にある候補ランドマークとしてユーザのロケーション履歴内で識別される(ブロック908)。次いで、各誘導について、対応する候補ランドマークは、図2Bに示すような全体スコア262などの、候補ランドマークに関する全体スコアを生成するために、頻度および/または最新性に従ってスコアリングされる。より具体的には、頻度スコアは、ユーザがその候補ランドマークを訪問した合計回数、ユーザがしきい値期間(例えば、前月)内にその候補ランドマークを訪問した回数、ユーザがその候補ランドマークを訪問した平均レート(例えば、月に3回、年に2回など)に基づいて、または任意の他の適切な方法で決定され得る。いくつかの実施形態では、パーソナル化地図データ生成器68は、その候補ランドマークにおいて過ごした時間量を要因として頻度スコアに含め得る。例えば、頻度スコアは、ユーザがその候補ランドマークを訪問した重み付き回数に基づいて決定され得、ここで、訪問は、ユーザがその候補ランドマークにより長く滞在するほど、より高い重みが割り当てられる。
最新性スコアは、ユーザが最後にその候補ランドマークを訪問してからの時間量、または頻度しきい値を超えるレートでユーザがその候補ランドマークを訪問してからの時間量に基づいて決定され得る。例えば、ユーザが以前はその候補ランドマークを数ヶ月間週に1回訪問したが、現在はその候補ランドマークを一年に1回しか訪問しない場合、最新性スコアは、ユーザがその候補ランドマークを週に1回最後に訪問してからの時間量に基づき得る。いくつかの実施形態では、パーソナル化地図データ生成器68は、候補ランドマークにおいて過ごした時間量を要因として最新性スコアに含め得る。全体スコアは、次いで、頻度スコアと最新性スコアとの任意の適切な組合せに基づいて決定され得る(ブロック910)。このプロセスは、次いで、ナビゲーション命令のセットにおける各誘導に対して繰り返される(ブロック912)。
次いで、パーソナル化地図データ生成器68は、候補ランドマークに関する全体スコアを取得し、全体スコアに従って候補ランドマークをランク付けする(ブロック914)。いくつかの実施形態では、候補ランドマークがしきい値ランキングよりも上にランク付けされているか、またはしきい値スコアよりも上のスコアを有する場合、パーソナル化地図データ生成器68は、対応する誘導のためのナビゲーション命令内に含める候補ランドマークを選択する(ブロック916)。他の実施形態では、各中間点について、パーソナル化地図データ生成器68は、特定の中間点のしきい値距離内にある候補ランドマークを識別し、特定の中間点に対応する候補ランドマークをランク付けし、ナビゲーション命令に含めるために特定の中間点に関する最高ランキングの候補ランドマークを選択する。
いくつかのシナリオでは、パーソナル化地図データ生成器68は、最高ランキングの候補ランドマークがしきい値スコアよりも上の最小スコアを有する場合に、ナビゲーション命令内に含めるために特定の中間点に関する最高ランキングの候補ランドマークのみを選択する。そうでない場合、パーソナル化地図データ生成器68は、「メイン通りに右折してください(Turn right onto Main St.)」などのデフォルトのナビゲーション命令を使用する。他のシナリオでは、パーソナル化地図データ生成器68は、ナビゲーション命令内に含めるために最大しきい値数(例えば、3つ)のランドマークを選択する。したがって、パーソナル化地図データ生成器68は、最大しきい値数を超えないように、異なる中間点に関する最高ランキング候補ランドマークを選択する。
パーソナル化ナビゲーション命令のセットは、次いで、ユーザのクライアントコンピューティングデバイス10に提供され(ブロック918)、パーソナル化データディスプレイ24は、クライアントコンピューティングデバイス10のユーザインターフェース32上にナビゲーション表示500を提示する。
図10は、中間目的地としてユーザに馴染みのあるロケーションを使用してナビゲーション指示を提供するための一例示的な方法1000のフロー図を示す。方法は、コンピュータ可読メモリ上に記憶され、サーバデバイス60の1つまたは複数のプロセッサにおいて実行可能な命令のセットにおいて実装され得る。例えば、方法は、パーソナル化地図データ生成器68によって実施され得る。
ブロック1002において、例えば、クライアントコンピューティングデバイス10において動作するパーソナル化データディスプレイ24から、ユーザについてロケーションデータが、取得される。より具体的には、クライアントコンピューティングデバイス10は、ユーザがロケーションデータを共有するためにマッピングアプリケーション22に許可を提供するユーザ制御を選択した場合、ロケーションデータをパーソナル化地図データ生成器68に送信し得る。ロケーションデータは、そのロケーションにおけるチェックインによるユーザによって訪問されたロケーションの名前もしくは住所、もしくはセンサ19からの測位データ、ユーザがロケーションを訪問した日時、ユーザがロケーションを訪問した時間量、および/またはスイスのチューリッヒにある123 Hauptstrasseの「Bobの家(Bob's House)」などの、ユーザによって提供されたロケーションに関するラベルを含み得る。いくつかの実施形態では、パーソナル化データディスプレイ24は、クライアントコンピューティングデバイス10がしきい値期間(例えば、1分)よりも長くあるロケーションにあるとき、ロケーションデータを提供する。
次いで、ブロック1004において、出発地から最終目的地のロケーションへのナビゲーション指示に対する要求が、受信される。例えば、要求は、クライアントコンピューティングデバイス10において提供されたユーザ入力に応答して、クライアントコンピューティングデバイス10からサーバデバイス60に送信され得る。ブロック1006において、最終目的地のロケーションへのナビゲーション命令の第1のセットが、生成され得、ここで、各ナビゲーション命令は、ルートに沿った特定の中間点における誘導を含む。いくつかの実施形態では、ナビゲーション命令の第1のセットを生成するために、サーバデバイス60は、出発地から最終目的地のロケーションへのナビゲーション指示に対する要求をナビゲーションデータサーバ34に転送する。
パーソナル化地図データ生成器68は、次いで、最終目的地のロケーションのしきい値距離内にある、出発地から最終目的地のロケーションへの第1のルート上の中間点のうちの1つのしきい値距離内にある、または第1のルートに沿った中間点のうちの1つとともに、出発地から候補中間目的地への第2のルートに沿った共通中間点が存在する候補中間目的地のロケーションとして、ユーザのロケーション履歴内のロケーションを識別する(ブロック1008)。
次いで、候補中間目的地は、図2Bに示すような全体スコア262などの、候補ランドマークに関する全体スコアを生成するために、頻度および最新性に従ってスコアリングされる。より具体的には、頻度スコアは、ユーザがその候補ランドマークを訪問した合計回数、ユーザがしきい値期間(例えば、前月)内にその候補ランドマークを訪問した回数、ユーザがその候補ランドマークを訪問した平均レート(例えば、月に3回、年に2回など)に基づいて、または任意の他の適切な方法で決定され得る。いくつかの実施形態では、パーソナル化地図データ生成器68は、その候補ランドマークにおいて過ごした時間量を要因として頻度スコアに含め得る。例えば、頻度スコアは、ユーザがその候補ランドマークを訪問した重み付き回数に基づいて決定され得、ここで、訪問は、ユーザがその候補ランドマークにより長く滞在するほど、より高い重みが割り当てられる。
最新性スコアは、ユーザが最後にその候補ランドマークを訪問してからの時間量、または頻度しきい値を超えるレートでユーザがその候補ランドマークを訪問してからの時間量に基づいて決定され得る。例えば、ユーザが以前はその候補ランドマークを数ヶ月間週に1回訪問したが、現在はそのロケーションを一年に1回しか訪問しない場合、最新性スコアは、ユーザがその候補ランドマークを週に1回最後に訪問してからの時間量に基づき得る。いくつかの実施形態では、パーソナル化地図データ生成器68は、候補ランドマークにおいて過ごした時間量を要因として最新性スコアに含め得る。
候補中間目的地はまた、候補中間目的地から最終目的地までの距離、候補中間目的地へのルートに沿った共通中間点から最終目的地までの距離、および/または出発地から最終目的地へのルートに沿った最も近い中間点から候補中間目的地までの距離に基づく距離スコアに従ってスコアリングされ得る。パーソナル化地図データ生成器68は、中間目的地スコアを生成するために、頻度スコア258と、最新性スコア260と、距離スコアとを任意の適切な方法で組み合わせる(ブロック1010)。次いで、パーソナル化地図データ生成器68は、中間目的地スコアに従って候補中間目的地をランク付けし(ブロック1012)、最高ランキングの候補中間目的地を選択する(ブロック1014)。
したがって、パーソナル化地図データ生成器68は、パーソナル化データディスプレイ24を介して提示するために、ユーザが選択された中間目的地に移動するための第1のナビゲーション命令をユーザのクライアントコンピューティングデバイス10に提供する(ブロック1016)。第1のナビゲーション命令は、有利には、「Elm通りを南に向かってください(head south on Elm St.)」、「メイン通りに左折してください(turn left onto Main St.)」などの特定のステップを省略することができる。代わりに、中間目的地のミュージックボックス劇場(Music Box Theater)が現在地から離れる複数の誘導である場合であっても、第1のナビゲーション命令は、単に「ミュージックボックス劇場に向かって運転を開始してください(start driving toward the Music Box Theater)」であり得る。いくつかの実装形態では、第1のナビゲーション命令は、例えば、「ミュージックボックス劇場に向かって運転して、しかしSouthportでは曲がらず、まっすぐ進んでください(start driving toward the Music Box Theater but do not turn on Southport and continue straight)」と、中間目的地へのルートと最終目的地へのルートとの間の分岐についても言及する。パーソナル化地図データ生成器68はまた、選択された中間目的地から、または最終目的地へのルートに沿った中間点と共通の選択された中間目的地へのルートに沿った中間点から最終目的地へのナビゲーション指示を取得し得る。次いで、パーソナル化地図データ生成器68は、最終目的地へのナビゲーション指示をユーザのクライアントコンピューティングデバイス10に提供する(ブロック1018)。次に、パーソナル化データディスプレイ24は、センサ19を介して、クライアントコンピューティングデバイス10が選択された中間目的地または選択された中間目的地へのルートに沿った共通中間点に近づいていると決定したことに応答して、最終目的地へのナビゲーション指示を提示する。
追加の考慮事項
以下の追加の考慮事項は、前述の議論に適用される。本明細書全体を通して、複数のインスタンスが、単一のインスタンスとして説明した構成要素、動作、または構造を実装し得る。1つまたは複数の方法の個々の動作が、別個の動作として図示および説明されているが、個々の動作のうちの1つまたは複数は、同時に実行され得、動作が図示されている順序で実行される必要は、ない。例示的な構成において別個の構成要素として提示された構造および機能は、組み合わされた構造または構成要素として実装され得る。同様に、単一の構成要素として提示された構造および機能は、別個の構成要素として実装され得る。これらおよび他の変形、修正、追加、および改善は、本開示の主題の範囲内に入る。
加えて、特定の実施形態が、論理またはいくつかの構成要素、モジュール、もしくはメカニズムを含むものとして本明細書で説明されている。モジュールは、ソフトウェアモジュール(例えば、機械可読媒体上に記憶されたコード)またはハードウェアモジュールのいずれかを構成し得る。ハードウェアモジュールは、特定の動作を実行することができる有形のユニットであり、特定の方法で構成または配置され得る。例示的な実施形態では、1つもしくは複数のコンピュータシステム(例えば、スタンドアロン、クライアント、またはサーバコンピュータシステム)、またはコンピュータシステムの1つもしくは複数のハードウェアモジュール(例えば、プロセッサまたはプロセッサのグループ)は、本明細書で説明したように特定の動作を実行するように動作するハードウェアモジュールとしてソフトウェア(例えば、アプリケーションまたはアプリケーション部分)によって構成され得る。
様々な実施形態では、ハードウェアモジュールは、機械的または電子的に実装され得る。例えば、ハードウェアモジュールは、特定の動作を実行するように(例えば、フィールドプログラマブルゲートアレイ(FPGA)または特定用途向け集積回路(ASIC)などの専用プロセッサとして)恒久的に構成された専用回路またはロジックを備え得る。ハードウェアモジュールは、特定の動作を実行するようにソフトウェアによって一時的に構成された(例えば、汎用プロサッサまたは他のプログラム可能なプロセッサ内に包含されるような)プログラム可能なロジックまたは回路も備え得る。機械的に、専用の恒久的に構成された回路において、または一時的に構成された(例えば、ソフトウェアによって構成された)回路においてハードウェアモジュールを実装する決定は、コストおよび時間の考慮事項によって決定され得ることが理解されよう。
したがって、ハードウェアという用語は、特定の方法において動作するように、または本明細書で説明した特定の動作を実行するように物理的に構成されたか、恒久的に構成された(例えば、ハードウェアによって実現された)か、または一時的に構成された(例えば、プログラムされた)エンティティである、有形のエンティティを包含すると理解されるべきである。本明細書で使用される場合、「ハードウェア実装モジュール」は、ハードウェアモジュールを指す。ハードウェアモジュールが一時的に構成される(例えば、プログラムされる)実施形態を考慮すると、ハードウェアモジュールの各々は、ある時間において任意の1つのインスタンスにおいて構成またはインスタンス化される必要はない。例えば、ハードウェアモジュールがソフトウェアを使用して構成される汎用プロセッサを備える場合、汎用プロセッサは、異なる時間においてそれぞれの異なるハードウェアモジュールとして構成され得る。したがって、ソフトウェアは、例えば、ある時間のインスタンスにおいて特定のハードウェアモジュールを構成し、異なる時間のインスタンスにおいて異なるハードウェアモジュールを構成するようにプロセッサを構成し得る。
ハードウェアモジュールは、他のハードウェアに情報を提供し、他のハードウェアから情報を受信することができる。したがって、説明したハードウェアモジュールは、通信可能に結合されていると見なされ得る。複数のそのようなハードウェアモジュールが同時に存在する場合、通信は、ハードウェアモジュールを接続する(例えば、適切な回路およびバスを介する)信号送信を介して達成され得る。複数のハードウェアモジュールが異なる時間において構成またはインスタンス化される実施形態では、そのようなハードウェアモジュール間の通信は、例えば、複数のハードウェアモジュールがアクセスできるメモリ構造内の情報の記憶および取得を介して達成され得る。例えば、1つのハードウェアモジュールが、動作を実行し、その動作の出力を、通信可能に結合されているメモリデバイス内に記憶し得る。次いで、さらなるハードウェアモジュールが、後になって、記憶された出力を取得および処理するためにメモリデバイスにアクセスし得る。ハードウェアモジュールはまた、入力デバイスおよび出力デバイスとの通信を開始し得、リソースに対して動作することができる(例えば、情報の収集)。
方法700、800、900、および1000は、非一時的コンピュータ可読記憶媒体内に記憶され、コンピューティングデバイス(例えば、本明細書で説明したように、サーバデバイス、パーソナルコンピュータ、スマートフォン、タブレットコンピュータ、スマートウォッチ、モバイルコンピューティングデバイス、または他のクライアントコンピューティングデバイス)のプロセッサを使用して実行される有形のコンピュータ実行可能命令の形態における1つまたは複数の機能ブロック、モジュール、個々の関数、またはルーチンを含み得る。方法700、800、900、および1000は、任意のバックエンドサーバ(例えば、本明細書で説明されるように、地図データサーバ、ナビゲーションサーバ、または任意の他のタイプのサーバコンピューティングデバイス)の一部、例えば、例示的な環境のクライアントコンピューティングデバイスモジュール、またはそのような環境の外部にあるモジュールの一部として含まれ得る。図は、説明を容易にするために他の図面を参照して説明されている場合があるが、方法700、800、900、および1000は、他のオブジェクトおよびユーザインターフェースで利用され得る。さらに、上の説明は、特定のデバイス(サーバデバイス60など)によって実行される方法700、800、900、および1000のステップを説明しているが、これは、説明の目的のみのために行われている。方法700、800、900、および1000のブロックは、環境の1つまたは複数のデバイスまたは他の部分によって実行され得る。
本明細書で説明した例示的な方法の様々な動作は、関連する動作を実行するように(例えば、ソフトウェアによって)一時的に構成された、または恒久的に構成された1つまたは複数のプロセッサによって少なくとも部分的に実行され得る。一時的に構成されているかまたは恒久的に構成されているかにかかわらず、そのようなプロセッサは、1つまたは複数の動作または機能を実行するように動作するプロセッサ実装モジュールを構成し得る。本明細書で言及されているモジュールは、いくつかの例示的な実施形態では、プロセッサ実装モジュールを備え得る。
同様に、本明細書で説明した方法およびルーチンは、少なくとも部分的にプロセッサで実施され得る。例えば、方法の動作のうちの少なくとも一部は、1つまたは複数のプロセッサまたはプロセッサ実装ハードウェアモジュールによって実行され得る。特定の動作の実行は、単一のマシン内に存在するだけでなく、いくつかのマシンにわたって展開される、1つまたは複数のプロセッサに分散され得る。いくつかの例示的な実施形態では、1つまたは複数のプロセッサは、単一のロケーション内(例えば、住居環境内、オフィス環境内、またはサーバファームとして)に配置され得るが、他の実施形態では、プロセッサは、いくつかのロケーションにわたって分散され得る。
1つまたは複数のプロセッサは、「クラウドコンピューティング」環境内の、またはSaaSとしての関連する動作の実行をサポートするようにも動作し得る。例えば、上記で示したように、動作のうちの少なくとも一部は、(プロセッサを含むマシンの例として)コンピュータのグループによって実行され得、これらの動作は、ネットワーク(例えば、インターネット)と1つまたは複数の適切なインターフェース(例えば、API)とを介してアクセス可能である。
まだその上さらに、図は、説明の目的のみのための例示的な環境のいくつかの実施形態を示している。当業者は、本明細書で説明した原理から逸脱することなく、本明細書で例示した構造および方法の代替の実施形態が用いられ得ることを、以下の議論から容易に認識するであろう。
本開示を読むと、当業者は、本明細書に開示された原理を通してパーソナル化地図データを提供するためのさらに追加の代替的な構造的および機能的な設計を理解するであろう。したがって、特定の実施形態および用途について図示および説明してきたが、開示した実施形態は、本明細書で開示した正確な構造および構成要素に限定されないことが理解されるべきである。添付の特許請求の範囲において定義されている要旨および範囲から逸脱することなく、当業者に明らかとなる様々な修正、変更、および変形が、本明細書で開示された方法および装置の配置、動作、および詳細においてなされ得る。
10 クライアントコンピューティングデバイス
12 グラフィックス処理ユニット(GPU)
14 I/Oモジュール
16 プロセッサ(CPU)
19 センサ
20 メモリ
22 マッピングアプリケーション、地理的アプリケーション、アプリケーション
24 パーソナル化データディスプレイ
26 オペレーティングシステム(OS)、OS
30 通信ネットワーク
32 ユーザインターフェース(UI)、ユーザインターフェース
34 ナビゲーションデータサーバ
50 地図データサーバ
60 サーバデバイス
62 プロセッサ
64 メモリ
68 パーソナル化地図データ生成器
80 データベース
100 通信システム
200 ロケーションデータテーブル、ロケーションデータ、データテーブル
202 ユーザ識別子(ユーザID)
206 訪問の日付
208 訪問の時刻
210 ロケーションにおいて過ごした時間量
212 ロケーションラベル
250 データテーブル
258 頻度スコア
260 最新性スコア
262 全体スコア、全体的な馴染み深さスコア
300 地図表示
302 ロケーション
304 馴染みのあるランドマーク
306 注釈
400 検索結果表示
402 注釈付き結果
550 詳細な表示
600 ナビゲーション表示
630 詳細なナビゲーション表示
660 詳細なナビゲーション表示

Claims (15)

  1. ユーザが以前に訪問した、ユーザに馴染みのあるロケーションを中間目的地として使用してナビゲーション指示を提供するための方法であって、前記方法が、
    1つまたは複数のプロセッサにおいて、出発地から最終目的地のロケーションへのユーザのためのナビゲーション指示に対する要求を受信するステップと、
    前記1つまたは複数のプロセッサによって、前記出発地から前記最終目的地のロケーションへのナビゲーション命令のセットを含む第1のルートを生成するステップであって、前記セット内の各ナビゲーション命令が、特定の中間点における前記最終目的地のロケーションへの誘導を含む、ステップと、
    前記1つまたは複数のプロセッサによって、前記ユーザにとっての馴染み深さに基づいて選択された中間目的地のロケーションを識別するステップであって、前記中間目的地のロケーションが、前記出発地から前記最終目的地のロケーションへの前記第1のルートから離れたところに位置する、ステップと、
    前記1つまたは複数のプロセッサによって、前記中間目的地のロケーションに向かって移動するように前記ユーザに指示する第1のナビゲーション命令を提供するステップと、
    前記出発地から前記中間目的地のロケーションに向かう第2のルートに沿った特定の中間点に前記ユーザが近づいたと決定したことに応答して、前記1つまたは複数のプロセッサによって、前記ユーザを前記特定の中間点から前記最終目的地のロケーションに誘導するナビゲーション命令のセットを提供するステップと
    を含み、
    前記特定の中間点は、前記出発地から前記最終目的地のロケーションへの前記第1のルートと、前記出発地から前記中間目的地のロケーションへの前記第2のルートとの、共通の中間点である、
    方法。
  2. 前記ユーザを前記最終目的地のロケーションに誘導するナビゲーション命令のセットを提供するステップが、前記ユーザが前記中間目的地のロケーションに到達したと決定したことに応答して、前記1つまたは複数のプロセッサによって、前記ユーザを前記中間目的地のロケーションから前記最終目的地のロケーションに誘導するナビゲーション命令のセットを提供するステップを含む、請求項1に記載の方法。
  3. 前記中間目的地のロケーションを識別するステップが、
    前記1つまたは複数のプロセッサによって、前記第1のルート上の誘導に対応する前記特定の中間点のうちの1つのしきい値距離内にある中間目的地のロケーションを識別するステップを含む、請求項1または2に記載の方法。
  4. 前記特定の中間点が、前記出発地から前記最終目的地のロケーションへの前記第1のルートと交差する複数の中間点のうちの最後の中間点である、請求項1から3のいずれか一項に記載の方法。
  5. 前記ユーザにとっての馴染み深さに基づいて選択された中間目的地のロケーションを識別するステップが、
    前記1つまたは複数のプロセッサによって、前記ユーザにとっての馴染み深さに基づいて複数の候補中間目的地のロケーションを識別するステップと、
    前記1つまたは複数のプロセッサによって、前記ユーザにとっての馴染み深さのレベル、前記出発地から前記最終目的地のロケーションへの前記第1のルートに沿った最も近い中間点からの前記候補中間目的地のロケーションまでの距離、または前記候補中間目的地のロケーションから前記最終目的地のロケーションまでの距離のうちの少なくとも1つに従って、前記複数の候補中間目的地のロケーションの各々をランク付けするステップと、
    前記1つまたは複数のプロセッサによって、最高ランキングの候補中間目的地のロケーションを前記中間目的地のロケーションとして選択するステップと
    を含む、請求項1から4のいずれか一項に記載の方法。
  6. 前記中間目的地のロケーションに向かって移動するように前記ユーザに指示する第1のナビゲーション命令を提供するステップが、
    前記中間目的地のロケーションにナビゲートするための単一の命令を提供するステップを含む、請求項1から5のいずれか一項に記載の方法。
  7. 前記ユーザにとっての馴染み深さに基づいて選択された中間目的地のロケーションを識別するステップが、
    前記1つまたは複数のプロセッサによって、前記ユーザに関するロケーション履歴を取得するステップと、
    前記1つまたは複数のプロセッサによって、前記ロケーション履歴に基づいて、前記ユーザが前記中間目的地のロケーションを訪問した頻度、または前記ユーザが最後に前記中間目的地のロケーションを訪問してからの時間量を決定するステップと、
    前記1つまたは複数のプロセッサによって、前記ユーザが前記中間目的地のロケーションを訪問した前記頻度がしきい値頻度を超えるまたは前記ユーザが最後に前記中間目的地のロケーションを訪問してからの前記時間量がしきい値時間量未満であると決定したことに応答して、前記中間目的地のロケーションを識別するステップと
    を含む、請求項1から6のいずれか一項に記載の方法。
  8. 前記1つまたは複数のプロセッサによって、前記ユーザを前記最終目的地のロケーションに誘導するナビゲーション命令のセットを提供するステップが、
    前記1つまたは複数のプロセッサによって、前記ユーザにとっての馴染み深さに基づいて選択されたさらなる中間目的地のロケーションを識別するステップと、
    前記1つまたは複数のプロセッサによって、前記さらなる中間目的地のロケーションに向かって移動するように前記ユーザに指示する第1のナビゲーション命令を提供するステップと、
    ユーザのポータブルデバイスが前記さらなる中間目的地のロケーション、または前記さらなる中間目的地のロケーションに向かうルートに沿ったさらなる中間点に近づいていると決定したことに応答して、前記1つまたは複数のプロセッサによって、前記ユーザを前記最終目的地のロケーションに誘導するナビゲーション命令のセットを提供するステップと
    を含む、請求項1から7のいずれか一項に記載の方法。
  9. ユーザが以前に訪問した、ユーザに馴染みのあるロケーションを中間目的地として使用してナビゲーション指示を提供するためのコンピューティングデバイスであって、前記コンピューティングデバイスが、
    1つまたは複数のプロセッサと、
    前記1つまたは複数のプロセッサに結合され、命令を記憶する非一時的なコンピュータ可読メモリとを備え、前記命令が、前記1つまたは複数のプロセッサによって実行されると、前記コンピューティングデバイスに、
    出発地から最終目的地のロケーションへのユーザのためのナビゲーション指示に対する要求を受信することと、
    前記出発地から前記最終目的地のロケーションへのナビゲーション命令のセットを含む第1のルートを生成することであって、前記セット内の各ナビゲーション命令が、特定の中間点における前記最終目的地のロケーションへの誘導を含む、ことと、
    前記ユーザにとっての馴染み深さに基づいて選択された中間目的地のロケーションを識別することであって、前記中間目的地のロケーションが、前記出発地から前記最終目的地のロケーションへの前記第1のルートから離れたところに位置する、ことと、
    前記中間目的地のロケーションに向かって移動するように前記ユーザに指示する第1のナビゲーション命令を提供することと、
    前記出発地から前記中間目的地のロケーションに向かう第2のルートに沿った特定の中間点に前記ユーザが近づいと決定したことに応答して、前記ユーザを前記特定の中間点から前記最終目的地のロケーションに誘導するナビゲーション命令のセットを提供することと
    をさせ、
    前記特定の中間点は、前記出発地から前記最終目的地のロケーションへの前記第1のルートと、前記出発地から前記中間目的地のロケーションへの前記第2のルートとの、共通の中間点である、
    コンピューティングデバイス。
  10. 前記ユーザを前記最終目的地のロケーションに誘導するナビゲーション命令のセットを提供するために、前記命令が、前記コンピューティングデバイスに、前記ユーザが前記中間目的地のロケーションに到達したと決定したことに応答して、前記ユーザを前記中間目的地のロケーションから前記最終目的地のロケーションに誘導するナビゲーション命令のセットを提供することをさせる、請求項9に記載のコンピューティングデバイス。
  11. 前記中間目的地のロケーションが、前記第1のルート上の誘導に対応する前記特定の中間点のうちの1つのしきい値距離内にある、請求項9または10に記載のコンピューティングデバイス。
  12. 前記特定の中間点が、前記出発地から前記最終目的地のロケーションへの前記第1のルートと交差する複数の中間点のうちの最後の中間点である、請求項9から11のいずれか一項に記載のコンピューティングデバイス。
  13. 前記中間目的地のロケーションを識別するために、前記命令が、前記コンピューティングデバイスに、
    前記ユーザにとっての馴染み深さに基づいて複数の候補中間目的地のロケーションを識別することと、
    前記ユーザにとっての馴染み深さのレベル、前記出発地から前記最終目的地のロケーションへの前記第1のルートに沿った最も近い中間点からの前記候補中間目的地のロケーションまでの距離、または前記候補中間目的地のロケーションから前記最終目的地のロケーションまでの距離のうちの少なくとも1つに従って、前記複数の候補中間目的地のロケーションの各々をランク付けすることと、
    最高ランキングの候補中間目的地のロケーションを前記中間目的地のロケーションとして選択することと
    をさせる、請求項9から12のいずれか一項に記載のコンピューティングデバイス。
  14. ユーザが以前に訪問した、ユーザに馴染みのあるロケーションを中間目的地として使用してナビゲーション指示を提供するための命令を記憶する非一時的コンピュータ可読媒体であって、前記命令が、コンピューティングデバイス内の1つまたは複数のプロセッサによって実行されると、前記1つまたは複数のプロセッサに、
    出発地から最終目的地のロケーションへのユーザのためのナビゲーション指示に対する要求を受信することと、
    前記出発地から前記最終目的地のロケーションへのナビゲーション命令のセットを含む第1のルートを生成することであって、前記セット内の各ナビゲーション命令が、特定の中間点における前記最終目的地のロケーションへの誘導を含む、ことと、
    前記ユーザにとっての馴染み深さに基づいて選択された中間目的地のロケーションを識別することであって、前記中間目的地のロケーションが、前記出発地から前記最終目的地のロケーションへの前記第1のルートから離れたところに位置する、ことと、
    前記中間目的地のロケーションに向かって移動するように前記ユーザに指示する第1のナビゲーション命令を提供することと、
    前記出発地から前記中間目的地のロケーションに向かう第2のルートに沿った特定の中間点に前記ユーザが近づいと決定したことに応答して、前記ユーザを前記特定の中間点から前記最終目的地のロケーションに誘導するナビゲーション命令のセットを提供することと
    をさせ、
    前記特定の中間点は、前記出発地から前記最終目的地のロケーションへの前記第1のルートと、前記出発地から前記中間目的地のロケーションへの前記第2のルートとの、共通の中間点である、
    コンピュータ可読媒体。
  15. 前記ユーザを前記最終目的地のロケーションに誘導するナビゲーション命令のセットを提供するために、前記命令が、前記1つまたは複数のプロセッサに、前記ユーザが前記中間目的地のロケーションに到達したと決定したことに応答して、前記ユーザを前記中間目的地のロケーションから前記最終目的地のロケーションに誘導するナビゲーション命令のセットを提供することをさせる、請求項14に記載のコンピュータ可読媒体。
JP2020567967A 2018-09-06 2018-09-06 馴染みのあるロケーションを中間目的地とするナビゲーション指示 Active JP7108053B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2018/049661 WO2020050841A1 (en) 2018-09-06 2018-09-06 Navigation directions with a familiar location as an intermediate destination

Publications (2)

Publication Number Publication Date
JP2021524585A JP2021524585A (ja) 2021-09-13
JP7108053B2 true JP7108053B2 (ja) 2022-07-27

Family

ID=63714027

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020567967A Active JP7108053B2 (ja) 2018-09-06 2018-09-06 馴染みのあるロケーションを中間目的地とするナビゲーション指示

Country Status (6)

Country Link
US (2) US11835354B2 (ja)
EP (1) EP3797262A1 (ja)
JP (1) JP7108053B2 (ja)
KR (1) KR102542491B1 (ja)
CN (1) CN112368545A (ja)
WO (1) WO2020050841A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10820141B2 (en) * 2018-11-16 2020-10-27 Here Global B.V. Method and apparatus for presenting privacy-respectful and personalized location-based comments based on passenger context and vehicle proximity to the location
KR20220059629A (ko) * 2020-11-03 2022-05-10 현대자동차주식회사 차량 및 그의 제어방법
CN113029178A (zh) * 2021-03-25 2021-06-25 北京百度网讯科技有限公司 一种导航路径的确定方法、装置、设备以及存储介质
CN113240816B (zh) * 2021-03-29 2022-01-25 泰瑞数创科技(北京)有限公司 基于ar和语义模型的城市精确导航方法及其装置
US20220414168A1 (en) * 2021-06-24 2022-12-29 Kyndryl, Inc. Semantics based search result optimization
WO2024134898A1 (ja) * 2022-12-23 2024-06-27 日産自動車株式会社 配車制御装置、配車システム及び情報提供方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005181258A (ja) 2003-12-24 2005-07-07 Mazda Motor Corp 情報提供システム、情報提供装置、情報提供装置用コンピュータ・プログラム、及び情報提供方法
US20160076903A1 (en) 2014-09-12 2016-03-17 Microsoft Corporation User Geographic Area Familiarity Based Navigation Instructions

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7831387B2 (en) 2004-03-23 2010-11-09 Google Inc. Visually-oriented driving directions in digital mapping system
US7480567B2 (en) * 2004-09-24 2009-01-20 Nokia Corporation Displaying a map having a close known location
US8103445B2 (en) 2005-04-21 2012-01-24 Microsoft Corporation Dynamic map rendering as a function of a user parameter
US8155877B2 (en) 2007-11-29 2012-04-10 Microsoft Corporation Location-to-landmark
US20110098910A1 (en) 2009-10-22 2011-04-28 Nokia Corporation Method and apparatus for intelligent guidance using markers
US8498788B2 (en) 2010-10-26 2013-07-30 Deere & Company Method and system for determining a planned path of a vehicle
US9294240B2 (en) 2011-02-25 2016-03-22 Qualcomm Incorporated Multi-carrier operations with fast frequency hopping
US20130035853A1 (en) 2011-08-03 2013-02-07 Google Inc. Prominence-Based Generation and Rendering of Map Features
US8762051B2 (en) 2011-09-02 2014-06-24 GM Global Technology Operations LLC Method and system for providing navigational guidance using landmarks
US8306749B1 (en) 2011-11-22 2012-11-06 Google Inc. Systems and methods for route summarization
US8954279B2 (en) 2013-06-25 2015-02-10 Facebook, Inc. Human-like global positioning system (GPS) directions
US9417069B2 (en) * 2013-07-25 2016-08-16 Honda Motor Co., Ltd. Familiarity modeling
US9234763B1 (en) 2013-08-14 2016-01-12 Google Inc. Systems and methods for identifying and selecting personalized waypoints for presentation on a map
US20150112593A1 (en) * 2013-10-23 2015-04-23 Apple Inc. Humanized Navigation Instructions for Mapping Applications
US9574890B2 (en) 2014-03-04 2017-02-21 Qualcomm Incorporated Reduced power consumption and improved user experience when navigating along familiar routes
US10126141B2 (en) 2016-05-02 2018-11-13 Google Llc Systems and methods for using real-time imagery in navigation
US10024683B2 (en) 2016-06-06 2018-07-17 Uber Technologies, Inc. User-specific landmarks for navigation systems
US10168173B2 (en) 2016-10-26 2019-01-01 Google Llc Systems and methods for using visual landmarks in initial navigation
US20180143998A1 (en) 2016-11-21 2018-05-24 Google Inc. Electronic map interfaces

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005181258A (ja) 2003-12-24 2005-07-07 Mazda Motor Corp 情報提供システム、情報提供装置、情報提供装置用コンピュータ・プログラム、及び情報提供方法
US20160076903A1 (en) 2014-09-12 2016-03-17 Microsoft Corporation User Geographic Area Familiarity Based Navigation Instructions

Also Published As

Publication number Publication date
JP2021524585A (ja) 2021-09-13
US20240044665A1 (en) 2024-02-08
US11835354B2 (en) 2023-12-05
EP3797262A1 (en) 2021-03-31
CN112368545A (zh) 2021-02-12
US20210381844A1 (en) 2021-12-09
KR102542491B1 (ko) 2023-06-12
WO2020050841A1 (en) 2020-03-12
KR20210014657A (ko) 2021-02-09

Similar Documents

Publication Publication Date Title
JP7209746B2 (ja) マッピングアプリケーションにおいてパーソナル化ランドマークを表示すること
JP7108053B2 (ja) 馴染みのあるロケーションを中間目的地とするナビゲーション指示
KR101725886B1 (ko) 자동으로 결정된 스타팅 포인트들과 선택된 목적지들 사이의 네비게이션 경로들
JP6580703B2 (ja) モバイルデバイスの現在の地理的ロケーションに関連付けられたロケーションエンティティの曖昧性解消のためのシステムおよび方法
US11802778B2 (en) Providing street-level imagery related to a ride service in a navigation application
US9817907B1 (en) Using place of accommodation as a signal for ranking reviews and point of interest search results
KR102516674B1 (ko) 내비게이션 기동과 연계할 관심지점(poi)을 선택하기 위한 시스템 및 방법
US20150073708A1 (en) Navigation via recorded paths
JP6785871B2 (ja) ナビゲーション指示の提供
JP6573807B2 (ja) プログラム、情報処理装置、ナビゲーションシステム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210203

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210203

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20210203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211026

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211220

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20220620

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220714

R150 Certificate of patent or registration of utility model

Ref document number: 7108053

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150