本発明の実施形態は、既知のナビゲーションツールにおける上述の制限のうちの少なくともいくつかを解決することを意図する方法、装置及びコンピュータソフトウェアを提供する。
特に、本発明は、ユーザが入力したフリーテキスト探索文字列に基づいて場所のデータリポジトリを探索する方法、装置及びコンピュータソフトウェアを開示する。開示のこれらの態様を以下に要約する。
一態様によると、データ処理手段と、デジタル地図に関連するか又はデジタル地図内の場所を表すデータレコード及びデータレコードに含まれる単語と当該単語が存在するレコードとを関連付ける索引を表すデータを含むデータリポジトリとを備えるポータブル電子装置が提供される。ポータブル電子装置は、データ処理手段により実行される場合に、電子装置が、探索文字列を含む受信した探索クエリに関して、1つ以上の探索語を提供するために探索文字列を処理し、各探索語を含むデータレコードを識別するために索引に照会し、1つ以上の識別された各データレコードに対して、探索クエリに対する識別された各データレコードの適合性を示すランクを生成するようにする命令を備えるコンピュータ可読媒体を更に備える。
本態様によると、移動装置が相対的に低い処理能力を使用して膨大なデータリポジトリを探索する必要がある場合でも、応答性に優れ且つ迅速で融通性を有する探索が装置のユーザに提供される。更に、ユーザは、制限的な誘導型探索手順により制限されることなく更に投機的に広範囲のデータを探索できるため、ユーザが所望の場所の結果を見つける可能性が高くなる。
探索クエリは、電子装置のユーザ入力から導出されてもよく、命令は更に、装置がディスプレイ上に結果を表示するようにしてもよい。
命令は更に、探索文字列を処理する場合に、電子装置が、探索文字列を単語に分割することと、単語を標準化することと、特定の単語を識別し且つ処理することとのうちの1つ以上を実行するようにする。
単語を標準化することは、探索文字列の内容における不規則性を考慮することを意図する1つ以上の処理ステップを含み、オプションとして、全ての文字を小文字に変換することと、文字からアクセントを除去することと、同一文字の連続を一文字に置換することと、単一の文字を他の文字に置換することと、単語及び略語を標準的な略語に置換することとのうちの1つ以上を含む。索引は、データレコードに含まれる単語の標準化バージョンを含み、探索文字列は、索引の生成に使用されたとの同一の標準化ルールを使用して探索文字列に含まれる単語を標準化するように処理される。
単語を標準化することにより、探索手順は汎用性が高くなり、タイプ入力ミス及び思い違い等のユーザの誤り、並びに綴りの相違を許容できるようになる。また、標準化により、探索される索引のサイズが減少し、探索処理が更に加速される。
特定の単語を識別し且つ処理することは、国名及び国コードを標準的な国コードに変換することと、番地を除去することと、地点情報(POI)のカテゴリに対応する単語を識別してPOIのカテゴリコードに置換することとのうちの1つ以上を含む。探索文字列全体がPOIのカテゴリ名又は1つのPOIのカテゴリ名の接頭辞である場合、クエリはPOIのカテゴリ内のレコードに対するものであるのが好ましい。探索文字列全体が2つ以上の単語を含み且つPOIのカテゴリ名から始まる場合、POIのカテゴリ名が探索語として提供される第1のクエリと、POIのカテゴリ名がPOIのカテゴリコードに置換される第2のクエリとの2つのクエリが生成されるのが好ましい。
命令は更に、探索語を含むデータレコードを識別するために索引に照会する場合に、電子装置が、各探索語に対して、一致するレコードのセットを索引から探し、全ての単語と一致するレコードを提供するために、レコードのセットの共通部分を判定するようにする。
命令は更に、各データレコードに対するランクを生成する場合に、電子装置が、各レコードに対するスコアを計算し、各自のスコアに基づいてレコードをランク付けし、2つのレコードが同一スコアを有する場合、探索の中心を使用できる場合は探索の中心からの距離に基づいてランクの順序付けを調整し、探索の中心を使用できない場合は2つのレコードのランクの順序をランダムに付けるようにする。
各レコードに対するランク付けスコアを計算することは、開始スコアから開始して、データレコードに含まれる単語と正確に一致しない探索文字列に含まれる各単語に対して、スコアからペナルティを減算することと、探索文字列内に配列された探索語とデータレコードにおける単語の配列との間の不正確な語順及び単語の間隔を含む構造の差異に対して、スコアからペナルティを減算することと、探索語と一致する単語が存在する構成要素に含まれる一致しない各単語に対して、スコアからペナルティを減算することと、重要な一致であると示されるデータレコードに対して、スコアにボーナスを加算することとのうちの1つ以上を実行することを含む。
住所を表すレコードに対するランク付けスコアを計算することは、データレコードの道路名に含まれる索引内の単語と一致する探索語が存在しない場合、データレコードをランク付けしないことと、探索の中心が存在する場合、探索の中心に相対的に近いデータレコードに対してペナルティを抑制するか、探索の中心から相対的に遠いデータレコードに対してペナルティを増加するか、あるいはその双方を行うように、ペナルティのうちの1つ以上を調節することと、居住地区の中心と一致する単語が存在する場合、居住地区の中心の大きさ及び使用できる場合は探索の中心と居住地区の中心との間の距離に依存して、スコアにボーナスを加算することとのうちの1つ以上を含む。
地点情報(POI)を表すレコードに対するランク付けスコアを計算することは、POIの名称、POIのブランド名又はPOIのカテゴリを表すデータレコードの構成要素のうちの1つに含まれる索引内の単語と一致する探索語が存在しない場合、データレコードをランク付けしないことと、探索の中心が存在する場合、探索語と一致する単語が存在する構成要素に含まれる一致しない各単語に対して、スコアからペナルティを減算しないことと、探索の中心が存在しない場合、探索語と一致する単語が存在するPOIの名称又はPOIのブランド名を表すデータレコードの構成要素に含まれる一致しない各単語に対して、スコアからペナルティを減算することと、探索の中心が存在しない場合、POIの名称又はPOIのブランド名に含まれる索引内の単語と一致する探索語が存在しない場合にスコアからペナルティを減算することとのうちの1つ以上を含む。
一致したデータレコードをランク付けすることにより、探索に最も適合すると考えられるレコードがランク順でユーザに提示される。これは、最も適合する一致したデータレコードが最初に、すなわちリストの最上部でユーザに提示されることを保証するのに役立つ。また、これにより、以下に更に詳細に説明するように、地図ビューにおける探索結果の効果的な表示が容易になる。
データレコード(又は文書)は、住所又は地点情報(POI)を表す。データレコードは、道路名、地名、郵便番号、POI名、POIのブランド名、POIの住所、POIのカテゴリコードである構成要素のうちの1つ以上を表すデータを含む。構成要素を表すデータは、例えば道路名、地名、郵便番号、国コード、POI名、POIのブランド名、POIの住所、POIのカテゴリコードのうちの1つ以上である場所に関連する情報自体を含んでもよい。しかし、好適な実施形態において、構成要素を表すデータは、デジタル地図に格納された場所に関連する情報に対する参照又はポインタを含んでもよい。この後者の実施形態により、各データレコードのサイズを最小限に維持でき、移動装置において通常見られるメモリ制限がある場合に有利である。
各データレコード又は文書は、例えば各データレコードを一意に識別できるようにするレコード識別子を含んでもよい。それに加えて又はその代わりに、各データレコードは位置参照を含んでもよい。位置参照は、デジタル地図により表現される地理的範囲の一部分を識別するのが好ましく、それにより、特定の地理的領域内の場所の探索を実行する場合、特定の地理的領域内のデータレコードのみを探索すればよい。位置参照はモートンコードとして提供されてもよく、それにより、デジタル地図の2次元の地理的領域が1次元で表現される。
位置参照は、レコード識別子の部分を形成する。例えば実施形態において、各データレコードに対するレコード識別子は第1の部分及び第2の部分を含む。第1の部分は、例えば場所(データレコードにより表される)を含む地理的範囲を表すモートンコードである位置参照であり、第2の部分は、関連するデジタル地図に格納されたデータレコードに対する場所に関連する情報に対する参照又はポインタである。
異なる種類の場所を表すデータレコードは、リポジトリ内の別個のデータベースに格納されてもよく、別個のフリーテキスト索引において索引を付与されてもよい。例えば住所、POI、最近訪問した場所及び好みの場所は、別個のデータベースに格納され、別個のフリーテキスト索引を有してもよく、その場合、探索中に個別に照会される必要がある。
逆ルックアップテーブルとして動作するのが好ましい索引は、タプルを含んでもよく、構成要素に含まれる単語のセットの各単語に対するタプルは、前記単語の各々と当該単語が存在する全てのレコードのレコード識別子とを関連付ける。
探索文字列は、装置のユーザインタフェースによってユーザにより入力された単一フィールドのフリーテキスト文字列から導出されてもよい。
別の態様によると、データ処理手段と、デジタル地図に関連するか又はデジタル地図内の場所を表すデータレコード及びデータレコードに含まれる単語と当該単語が存在するレコードとを関連付ける索引を表すデータとを含むデータリポジトリとを備えるポータブル電子装置を動作する方法であって、探索文字列を含む受信した探索クエリに関して、1つ以上の探索語を提供するために探索文字列を処理することと、探索語を含むデータレコードを識別するために索引に照会することと、1つ以上の識別されたデータレコードの各々に対して、探索クエリに対する識別された各データレコードの適合性を示すランクを生成することとを備える方法が提供される。
上述の方法は、オプションとして、上述の態様に係るポータブル電子装置を動作するように適合されるか又は更なるステップを含んでもよい。
別の態様によると、ポータブル電子装置のデータ処理手段により実行される場合に、電子装置が上述の方法を実行するように構成されるようにする命令を備えるコンピュータソフトウェアが提供される。コンピュータソフトウェアは、コンピュータ可読媒体として実現されてもよく、オプションとして、非一時的なコンピュータ可読媒体として実現されてもよい。
本発明は、ユーザが入力したフリーテキスト探索文字列に基づいて選択可能な探索の提案を生成し且つ表示することにより、ユーザが場所のデータリポジトリを容易に探索できるようにする方法、装置及びコンピュータソフトウェアを更に開示する。開示のこれらの態様を以下に要約する。
一態様によると、本開示は、データ処理手段と、デジタル地図に関連するか又はデジタル地図内の場所を表すデータレコードを含むデータリポジトリと、表示手段と、ユーザがデータレコードを容易に探索できるようにする命令であり、データ処理手段により実行される場合に、ポータブル電子装置が、装置のユーザにより入力されるフリーテキスト探索文字列を監視し、入力される探索文字列に基づいて、一致するレコードをデータリポジトリに照会し、探索を調節するためにユーザにより選択可能な提案を生成し、一致するレコード及び提案のうちの少なくともいくつかをディスプレイ上に表示し、一致する提案の選択を示すユーザ入力の受信に応答して探索を適宜調節するようにする命令を備えるコンピュータ可読媒体とを備えるポータブル電子装置を提供する。
ユーザ探索のパラメータを調節するために選択可能であり且つフリーテキスト探索文字列に基づく提案を提供することにより、ある程度のフィードバックがユーザに提供され、探索処理が高速化し且つユーザに対して柔軟性が増す。
住所の提案は、探索文字列と一致した住所を表すデータレコードの道路名及び/又は居住地区名に基づいて生成される。居住地区名を含む住所の提案を選択することにより、探索の中心は居住地区に対応するように調節される。道路名を含む住所の提案を選択することにより、探索文字列は道路名に置換される。道路名及び居住地区名を含む住所の提案の選択後、ユーザはフリーテキスト探索文字列に番地を入力するように指示される。
地点情報(POI)の提案は、探索文字列と一致する地点情報を表すデータレコードの名称、カテゴリ及びカテゴリの同義語に基づいて生成される。POIの提案を選択することにより、照会により返されたデータレコードは、POIの提案の名称、カテゴリ又は同義のカテゴリと一致するPOIの名称、カテゴリ又は同義のカテゴリを有するデータレコードのみを含むようにフィルタリングされる。
探索文字列又は探索の中心を適応させるための各キー入力又は他のユーザ入力、並びに提案の各選択に応答して、一致するデータレコードがデータリポジトリに照会され、提案が生成され、その後、ディスプレイは一致するデータレコード及び生成された提案を表示するように更新される。このように、探索は、リアルタイムで効果的にユーザ入力に反応する。
データリポジトリは、データレコードに含まれる単語と当該単語が存在するレコードとを関連付ける索引を表すデータを更に含み、命令は更に、電子装置が入力された探索文字列を処理して1つ以上の探索語を提供するようにし、入力された探索文字列に基づいて、一致するレコードをデータリポジトリに照会することは、各探索語を含むデータレコードを識別するために索引を照会することを含む。
命令は更に、電子装置が、1つ以上の識別された各データレコードに対して、探索クエリに対する識別された各データレコードの適合性を示すランクを生成するようにする。一致するデータレコードは、前記ランクに従って順序付きリストで表示される。
命令は更に、探索文字列を処理する場合に、電子装置が、探索文字列を単語に分割することと、単語を標準化することと、特定の単語を識別し且つ処理することとのうちの1つ以上を実行するようにする。
単語を標準化することは、探索文字列の内容における不規則性を考慮することを意図する1つ以上の処理ステップを含み、オプションとして、全ての文字を小文字に変換することと、文字からアクセントを除去することと、同一文字の連続を一文字に置換することと、単一の文字を他の文字に置換することと、単語及び略語を標準的な略語に置換することとのうちの1つ以上を含む。索引は、データレコードに含まれる単語の標準化バージョンを含み、探索文字列は、索引の生成に使用されたとの同一の標準化ルールを使用して探索文字列に含まれる単語を標準化するように処理される。
特定の単語を識別し且つ処理することは、国名及び国コードを標準的な国コードに変換することと、番地を除去することと、地点情報(POI)のカテゴリに対応する単語を識別してPOIのカテゴリコードに置換することとのうちの1つ以上を含む。探索文字列全体がPOIのカテゴリ名又は1つのPOIのカテゴリ名の接頭辞である場合、クエリはPOIのカテゴリ内のレコードに対するものである。探索文字列全体が2つ以上の単語を含み且つPOIのカテゴリ名から始まる場合、POIのカテゴリ名が探索語として提供される第1のクエリと、POIのカテゴリ名がPOIのカテゴリコードに置換される第2のクエリとの2つのクエリが生成される。
命令は更に、探索語を含むデータレコードを識別するために索引に照会する場合に、電子装置が、各探索語に対して、一致するレコードのセットを索引から探し、全ての単語と一致するレコードを提供するために、レコードのセットの共通部分を判定するようにする。
命令は更に、各データレコードに対するランクを生成する場合に、電子装置が、各レコードに対するスコアを計算し、各自のスコアに基づいてレコードをランク付けし、2つのレコードが同一スコアを有する場合、探索の中心を使用できる場合は探索の中心からの距離に基づいてランクの順序付けを調整し、探索の中心を使用できない場合は2つのレコードのランクの順序をランダムに付けるようにする。
各レコードに対するランク付けスコアを計算することは、開始スコアから開始して、データレコードに含まれる単語と正確に一致しない探索文字列に含まれる各単語に対して、スコアからペナルティを減算することと、探索文字列内に配列された探索語とデータレコードにおける単語の配列との間の不正確な語順及び単語の間隔を含む構造の差異に対して、スコアからペナルティを減算することと、探索語と一致する単語が存在する構成要素に含まれる一致しない各単語に対して、スコアからペナルティを減算することと、重要な一致であると示されるデータレコードに対して、スコアにボーナスを加算することとのうちの1つ以上を実行することを含む。
住所を表すレコードに対するランク付けスコアを計算することは、データレコードの道路名に含まれる索引内の単語と一致する探索語が存在しない場合、データレコードをランク付けしないことと、探索の中心が存在する場合、探索の中心に相対的に近いデータレコードに対してペナルティを抑制するか、探索の中心から相対的に遠いデータレコードに対してペナルティを増加するか、あるいはその双方を行うように、ペナルティのうちの1つ以上を調節することと、居住地区の中心と一致する単語が存在する場合、居住地区の中心の大きさ及び使用できる場合は探索の中心と居住地区の中心との間の距離に依存して、スコアにボーナスを加算することとのうちの1つ以上を含む。
地点情報(POI)を表すレコードに対するランク付けスコアを計算することは、POIの名称、POIのブランド名又はPOIのカテゴリを表すデータレコードの構成要素のうちの1つに含まれる索引内の単語と一致する探索語が存在しない場合、データレコードをランク付けしないことと、探索の中心が存在する場合、探索語と一致する単語が存在する構成要素に含まれる一致しない各単語に対して、スコアからペナルティを減算しないことと、探索の中心が存在しない場合、探索語と一致する単語が存在するPOIの名称又はPOIのブランド名を表すデータレコードの構成要素に含まれる一致しない各単語に対して、スコアからペナルティを減算することと、探索の中心が存在しない場合、POIの名称又はPOIのブランド名に含まれる索引内の単語と一致する探索語が存在しない場合にスコアからペナルティを減算することとのうちの1つ以上を含む。
データレコード(又は文書)は、住所又は地点情報(POI)を表す。データレコードは、道路名、地名、郵便番号、POI名、POIのブランド名、POIの住所、POIのカテゴリコードである構成要素のうちの1つ以上を表すデータを含む。構成要素を表すデータは、例えば道路名、地名、郵便番号、国コード、POI名、POIのブランド名、POIの住所、POIのカテゴリコードのうちの1つ以上である場所に関連する情報自体を含んでもよい。しかし、好適な実施形態において、構成要素を表すデータは、デジタル地図に格納された場所に関連する情報に対する参照又はポインタを含んでもよい。この後者の実施形態により、各データレコードのサイズを最小限に維持でき、このことは移動装置において通常見られるメモリ制限がある場合に有利である。住所を表す一致したデータレコードは第1の欄に表示され、地点情報を表す一致したデータレコードは第1の欄の横の第2の欄に表示される。
ポータブル電子装置は、前記ディスプレイ上のタッチスクリーンオーバーレイを含むユーザ入力手段を更に備え、データレコードの照会により返されて表示されたレコード又は生成された提案を選択することは、表示されたレコード又は提案、あるいはそれらを表すGUI要素に関するタッチを含む。
別の態様によると、データ処理手段と、デジタル地図に関連するか又はデジタル地図内の場所を表すデータレコードを含むデータリポジトリと、表示手段とを備えるポータブル電子装置を動作する方法であって、装置のユーザにより入力されるフリーテキスト探索文字列を監視することと、入力される探索文字列に基づいて、一致するレコードをデータレポジトリに照会することと、探索を調節するためにユーザにより選択可能な提案を生成することと、一致するレコード及び提案のうちの少なくともいくつかをディスプレイ上に表示することと、一致する提案の選択を示すユーザ入力の受信に応答して探索を適宜調節することとを備える方法が提供される。
上述の方法は、オプションとして、上述の態様に係るポータブル電子装置を動作するように適合されるか又は更なるステップを含んでもよい。
別の態様によると、ポータブル電子装置のデータ処理手段により実行される場合に、電子装置が上述の方法を実行するように構成されるようにする命令を備えるコンピュータソフトウェアが提供される。コンピュータソフトウェアは、コンピュータ可読媒体として実現されてもよく、オプションとして、非一時的なコンピュータ可読媒体として実現されてもよい。
本発明は、ディスプレイ上に表示されたデジタル地図の表現上で異なる強調レベルのGUI要素を提供することにより、例えば目的地探索の結果のセット及び現在の交通事象のセット等を表す複数の場所をユーザが容易に確認できるようにする方法、装置及びコンピュータソフトウェアを更に開示する。開示のこれらの態様を以下に要約する。
一態様によると、データ処理手段と、デジタル地図を表すデータを含むデータリポジトリと、表示手段と、データ処理手段により実行される場合に、ポータブル電子装置が、デジタル地図に関連する複数の場所を表すデータに関して、各場所に対して、場所を示すために異なる強調レベルにより特徴付けられる複数の異なるグラフィカルユーザインタフェース(GUI)要素のうちの1つをディスプレイ上に表示されたデジタル地図の表現上に提供するようにする命令を備えるコンピュータ可読媒体とを備え、各場所に対して使用されるGUI要素の強調レベルは、デジタル地図が表示される詳細レベルと、ユーザクエリに対する当該場所の想定される適合性とに依存するポータブル電子装置が提供される。
このように、クエリに適合すると考えられる複数の場所の文脈的なビューは、ビューを見にくくすることなく多くの結果が可視になり、各場所に対する指示の強調が場所の適合性を示し且つデジタル地図の表示される詳細レベルに依存するような方法でユーザに提供される。
強調レベルが上がったGUI要素は、ディスプレイにおける視覚的強調の増加、不透明度の増加、場所に関連する情報の増加、ユーザとユーザインタフェースとの対話を可能にするユーザインタフェースの機能性の増加のうちの1つ以上を提供する。
所定の詳細レベルにおいて、相対的に低い強調レベルを有するGUI要素は、複数の場所のうちユーザクエリに対する適合性が低いと想定される場所を示すために使用され、相対的に高い強調レベルを有するGUI要素は、複数の場所のうちユーザクエリに対する適合性が高いと想定される場所を示すために使用される。
デジタル地図が表示される詳細レベルが上げられる場合、所定の場所を示すために使用されるGUI要素は使用可能な高い強調レベルに変更され、デジタル地図が表示される詳細レベルが下げられる場合、所定の場所を示すために使用されるGUI要素は使用可能な低い強調レベルに変更される。従って、地図が拡大される場合、更に多くの結果が高い強調レベルで示され、地図が縮小される場合、更に少ない結果が低い強調レベルで示される。
いずれの所定の詳細レベルの場合も、最低限の数の複数の場所が最も高い強調レベルを有するGUI要素で示されてもよい。
デジタル地図が相対的に高い詳細レベルで表示される場合、複数の場所のうちの相対的に多くの場所が相対的に高い強調レベルを有するGUI要素を使用して示される。デジタル地図が相対的に低い詳細レベルで表示される場合、複数の場所のうちの相対的に多くの場所が相対的に低い強調レベルを有するGUI要素を使用して示される。
場所は、ユーザクエリに対する適合性によりグループに分類され、各グループは、デジタル地図の詳細レベルと関連付けられる。場所のグループ分け及びグループへの関連する詳細レベルの割り当ては、場所の数、場所の分布、ユーザクエリに対する場所の想定される適合性、場所の可能なグループ分けを最小限のバウンディングボックスに含むために必要な詳細レベル、最高限度までの詳細レベルの範囲、適合性が最も高いグループにおける場所の設定数、グループの設定数、各グループにおける場所の設定数のうちの1つ以上に基づいて実行される。
デジタル地図の基本詳細レベルは、適合性が最も高い場所のグループの場所を含む最小限のバウンディングボックスに基づいて定義される。適合性が低い場所の各グループは、基本詳細レベルと比較して高い詳細レベルと関連付けられる。地図は、最初に基本詳細レベルで表示され、基本詳細レベルより高い詳細レベルと関連付けられたグループに属する場所は、適合性がひとつ低いグループに対するひとつ低い強調レベルを有するGUI要素を用いて示される。
デジタル地図が所定の詳細レベルで表示される場合、表示される詳細レベルより高い詳細レベルと関連付けられたグループに属する場所は、適合性がひとつ低いグループに対するひとつ低い強調レベルのGUI要素を用いて示される。表示される詳細レベルより低い詳細レベルと関連付けられたグループに属する場所は、最も高い強調レベルを有するGUI要素を用いて示される。
ユーザ入力に応答して、デジタル地図が開始詳細レベルから次に適合性の高いグループと関連付けられた終了詳細レベルに拡大される場合、各グループの場所を示すために使用されるGUI要素は次の使用可能な強調レベルに上げられる。ユーザ入力に応答して、デジタル地図が開始詳細レベルから次に適合性の低いグループと関連付けられた終了詳細レベルに縮小される場合、各グループの場所を示すために使用されるGUI要素は次の使用可能な強調レベルに下げられる。
場所は、住所及び地点情報のうちの1つ以上を含む目的地、事故、遅延、道路閉鎖、道路工事、規制、交通量及び閉鎖車線のうちの1つ以上を含む交通イベント、並びに/あるいは、冠水、雪、氷、霧、道路の悪条件のうちの1つ以上を含む天候イベントを表す。
ポータブル電子装置は探索エンジンを更に備え、データリポジトリは目的地に関する文書を表すレコードを更に含み、ユーザクエリは探索エンジンに対する目的地の探索クエリであり、デジタル地図に関連する複数の場所を表すデータは、前記探索エンジンが探索クエリに関連する文書に対して当該レコードを探索することにより生成される。探索結果は、探索クエリに対する適合性によりランク付けられ、ランク付けは、適合性が低いほど高い詳細レベルと関連付けられるグループに場所を分類する際に使用可能である。複数の場所は、デジタル地図のパン又はズーミングに応答して変化しない。探索エンジンにより返されてデジタル地図上に表示される場所の数は最大数に制限される。
ポータブル電子装置は、ユーザ又は装置が生成したクエリに関連する現在の交通イベントを表す場所を返すように動作可能な交通イベントエンジンを更に備えてもよく、その場合、ユーザクエリは交通イベントクエリである。交通イベントクエリは、探索の中心、装置の現在地又は経路の周辺の交通イベント、あるいはデジタル地図のユーザが指定した範囲内の交通イベントに対する。
別の態様によると、データ処理手段と、デジタル地図を表すデータを含むデータリポジトリと、表示手段とを備えるポータブル電子装置を動作する方法であって、デジタル地図に関連する複数の場所を表すデータに関して、各場所に対して、場所を示すために異なる強調レベルにより特徴付けられる複数の異なるグラフィカルユーザインタフェース(GUI)要素のうちの1つをディスプレイ上に表示されたデジタル地図の表現上に提供することを備え、各場所に対して使用されるGUI要素の強調レベルは、デジタル地図が表示される詳細レベルと、ユーザクエリに対する当該場所の想定される適合性とに依存する方法が提供される。
上述の方法は、オプションとして、上述の態様に係るポータブル電子装置を動作するように適合されるか又は更なるステップを含んでもよい。
別の態様によると、ポータブル電子装置のデータ処理手段により実行される場合に、電子装置が上述の方法を実行するように構成されるようにする命令を備えるコンピュータソフトウェアが提供される。コンピュータソフトウェアは、コンピュータ可読媒体として実現されてもよく、オプションとして、非一時的なコンピュータ可読媒体として実現されてもよい。
本開示の上記の態様及びオプションを個別に説明したが、それらを全ての可能な組み合わせ及び変更で提供することは、限定されることなく本開示の範囲に含まれることが理解されるべきである。この点において、本開示は、本開示の上述の態様を全ての可能な組み合わせで実現する方法、電子装置及びコンピュータソフトウェアを提供する。例えば、探索を容易にするために本明細書中で説明するように生成される探索の提案を使用して、本明細書中で説明するように実行されるフリーテキスト探索の結果を提供し、探索結果の場所を示すために異なる強調レベルのGUI要素を本明細書中で説明するように提供して、当該探索結果を地図ビューに表示するようにソフトウェアにより構成される電子装置が開示される。
図1〜図4に関する説明は、種々の実施形態において本発明の理解を容易にする背景情報を提供する。本発明の実施形態は、図6〜図13を参照して説明する。
特にPNDを参照して、本発明の好適な実施形態を以下に説明する。尚、本発明の教示はPNDに限定されず、経路計画/ナビゲーション機能性を提供するためにナビゲーションソフトウェアを実行するように構成されるあらゆる種類の処理装置に例外なく適用可能である。従って、本発明において、ナビゲーション装置は、PND、車両に内蔵されたナビゲーション装置、あるいは実際は経路計画/ナビゲーションソフトウェアを実行する演算リソース(ポータブルパーソナルコンピュータ(PC)、移動電話、スマートフォン又はポータブルデジタルアシスタント(PDA)等)として実現されるかに関わらず、あらゆる種類の経路計画/ナビゲーション装置を含む(それらに限定されない)ことを意図する。
また、ユーザが1つの地点から別の地点にナビゲートする方法に関する命令を求めているのではなく、所定の場所のビュー、あるいは現在地又は前方の場所に関する情報を単に提供されたい状況においても本発明の教示が有用であることは以下の説明から明らかとなるだろう。そのような状況において、ユーザにより選択された「目的地」の場所は、ユーザがナビゲーションを開始したい対応する出発地を有する必要がない。そのため、本明細書において「目的地」の場所又は実際は「目的地」ビューを参照することは、経路の生成が必須であること、「目的地」への移動が必ず行われること、あるいは実際は目的地の存在が対応する出発地の指定を必要とすることを意味すると解釈されるべきではない。
図1は、ナビゲーション装置により使用可能な全地球測位システム(GPS)の一例を示す。そのようなシステムは既知であり、種々の目的で使用される。一般に、GPSは、連続した位置、速度、時間及びいくつかの例においては無数のユーザに対する方向情報を判定できる衛星無線を使用したナビゲーションシステムである。以前はNAVSTARとして知られていたGPSは、極めて正確な軌道で地球を周回する複数の衛星を含む。これらの正確な軌道に基づいて、GPS衛星は自身の場所をあらゆる数の受信ユニットに中継できる。
特にGPSデータを受信できる装置がGPS衛星信号に対する無線周波数の走査を開始する場合にGPSシステムは実現される。GPS衛星から無線信号を受信すると、装置は、複数の異なる従来の方法のうちの1つを用いて、その衛星の正確な場所を判定する。殆どの例において、装置は、少なくとも3つの異なる衛星信号を取得するまで信号の走査を継続する(尚、位置は、通常は2つの信号のみでは判定されないが、他の三角測量技術を使用して2つの信号のみから判定することもできる)。幾何学的三角測量を実現すると、受信機は、3つの既知の位置を利用して衛星に対する自身の2次元位置を判定する。これは既知の方法で行われる。更に、第4の衛星信号を取得することにより、受信装置は、同一の幾何学計算により既知の方法で自身の3次元位置を計算できる。位置及び速度データは、無数のユーザにより連続的にリアルタイムで更新可能である。
図1に示すように、GPSシステム全体を図中符号100で示す。複数の衛星120は、地球124の周囲の軌道上にある。各衛星120の軌道は、他の衛星120の軌道と必ずしも同期せず、実際には非同期である可能性が高い。GPS受信機140は、種々の衛星120からスペクトル拡散GPS衛星信号160を受信するものとして示される。
各衛星120から継続的に送信されたスペクトル拡散信号160は、極めて正確な原子時計を用いて達成された非常に正確な周波数標準を利用する。各衛星120は、そのデータ信号送信160の一部として、その特定の衛星120を示すデータストリームを送信する。一般に、GPS受信装置140は、GPS受信装置140に対する少なくとも3つの衛星120からスペクトル拡散GPS衛星信号160を取得し、三角測量により自身の2次元位置を計算することが当業者には理解される。追加の信号を取得した結果、全部で4つの衛星120から信号160を取得することになり、それによりGPS受信装置140は自身の3次元位置を既知の方法で計算できる。
図2は、本発明の好適な一実施形態に係るナビゲーション装置200の電子構成要素をブロック構成要素の形式で例示的に示す図である。尚、ナビゲーション装置200のブロック図は、ナビゲーション装置の全ての構成要素を含むものではなく、構成要素の多くの例を表すにすぎない。
ナビゲーション装置200は、筐体(不図示)内に配置される。筐体は、入力装置220及び表示画面240に接続されたプロセッサ210を含む。入力装置220は、キーボード装置、音声入力装置、タッチパネル及び/又は情報を入力するために利用される他の何らかの既知の入力装置を含むことができ、表示画面240は、例えばLCDディスプレイ等のあらゆる種類の表示画面を含むことができる。特に好適な構成において、入力装置220及び表示画面240はタッチパッド又はタッチスクリーン入力を含む一体型入力表示装置に一体化され、それによりユーザは、複数の表示選択肢のうちの1つを選択するか又は複数の仮想ボタンのうちの1つを操作するために、表示画面240の一部分に触れるだけでよい。
ナビゲーション装置は、例えば可聴出力装置(例えば、スピーカ)である出力装置260を含んでもよい。出力装置260がナビゲーション装置200のユーザに対する可聴情報を生成できるため、同様に、入力装置240は入力音声コマンドを受信するマイク及びソフトウェアも含むことができると理解されるべきである。
ナビゲーション装置200において、プロセッサ210は、接続225を介して入力装置220に動作可能に接続され且つ入力装置220から入力情報を受信するように設定される。また、プロセッサ210は、情報を出力するために、出力接続245を介して表示画面240及び出力装置260の少なくとも一方に動作可能に接続される。更に、プロセッサ210は、接続235を介してメモリリソース230に動作可能に結合され、接続275を介して入出力(I/O)ポート270との間で情報を送受信するように更に構成される。この場合、I/Oポート270は、ナビゲーション装置200の外部のI/O装置280に接続可能である。メモリリソース230は、例えばランダムアクセスメモリ(RAM)等の揮発性メモリ及び例えばフラッシュメモリ等のデジタルメモリである不揮発性メモリを含む。外部I/O装置280は、例えばイヤホン等の外部リスニングデバイスを含んでもよいが、これに限定されない。更に、I/O装置280への接続は、例えばイヤホン又はヘッドホンへの接続のため及び/又は移動電話への接続のためにハンズフリー動作及び/又は音声起動動作を行うカーステレオユニット等の他の何らかの外部装置への有線接続又は無線接続であってもよい。この場合、移動電話接続は、ナビゲーション装置200とインターネット又は例えば他の何らかのネットワークとの間のデータ接続を確立するため、並びに/あるいはインターネット又は例えば他の何らかのネットワークを介するサーバへの接続を確立するために使用されてもよい。
図2は、接続255を介するプロセッサ210とアンテナ/受信機250との間の動作可能な接続を更に示す。この場合、アンテナ/受信機250は、例えばGPSアンテナ/受信機である。図中符号250で示されるアンテナ及び受信機は図示のために概略的に組み合わされるが、アンテナ及び受信機は別個に配置された構成要素であってもよく、アンテナは例えばGPSパッチアンテナ又はヘリカルアンテナであってもよいことが理解されるだろう。
更に、図2に示す電子構成要素は従来の方法で電源(不図示)により電力を供給されることが当業者には理解されるだろう。当業者により理解されるように、図2に示す構成要素の異なる構成は本発明の範囲に含まれると考えられる。例えば図2に示す構成要素は、有線接続及び/又は無線接続等を介して互いに通信していてもよい。従って、本発明のナビゲーション装置200の範囲は、ポータブル又はハンドヘルドナビゲーション装置200を含む。
更に、図2のポータブル又はハンドヘルドナビゲーション装置200は、例えば自転車、オートバイ、自動車又は船舶等の乗り物に既知の方法で接続されるか又は「ドッキング」される。その場合、そのようなナビゲーション装置200は、ポータブル又はハンドヘルドナビゲーションとして使用するためにドッキング場所から取外し可能である。
次に図3を参照すると、ナビゲーション装置200は、デジタル接続(例えば既知のBluetooth技術を介するデジタル接続等)を確立する移動装置(不図示)(移動電話、PDA及び/又は移動電話技術を用いる何らかの装置等)を介して、サーバ302との「モバイル」ネットワーク接続又は電気通信ネットワーク接続を確立してもよい。その後、そのネットワークサービスプロバイダを介して、移動装置は、サーバ302とのネットワーク接続(例えば、インターネットを介する)を確立できる。そのため、「モバイル」ネットワーク接続は、情報に対する「リアルタイム」又は少なくとも「最新」のゲートウェイを提供するために、ナビゲーション装置200(単体で及び/又は車両に搭載されて走行するため移動装置であってもよく、多くの場合は移動装置である)とサーバ302との間に確立される。
例えばインターネット(ワールドワイドウェブ等)を使用した移動装置(サービスプロバイダを介する)とサーバ302等の別の装置との間のネットワーク接続の確立は、既知の方法で行われる。これは、例えばTCP/IP階層プロトコルの使用を含む。移動装置は、CDMA、GSM、WAN等のあらゆる通信規格を利用できる。
そのため、例えば移動電話又はナビゲーション装置200内の移動電話技術を介するデータ接続を介して達成されるインターネット接続が利用されてもよい。この接続の場合、サーバ302とナビゲーション装置200との間のインターネット接続が確立される。これは、例えば移動電話又は他の移動装置及びGPRS(汎用パケット無線サービス)接続(GPRS接続は通信会社により提供される移動装置用高速データ接続であり、GPRSはインターネットへの接続方法である)を介して行われる。
更に、ナビゲーション装置200は、移動装置とのデータ接続を完了し、例えば既存のBluetooth技術を介して既知の方法でインターネット及びサーバ302とのデータ接続を最終的に完了する。この場合、データプロトコルは、例えばGSM規格に対するデータプロトコル規格であるGPRS等のあらゆる規格を利用できる。
ナビゲーション装置200は、ナビゲーション装置200自体の内部にそれ自体の移動電話技術を含んでもよい(例えばアンテナを含むか、あるいはオプションとしてナビゲーション装置200の内部アンテナを使用する)。ナビゲーション装置200内の移動電話技術は、上述のような内部構成要素を含むことができ且つ/あるいは、例えば必要な移動電話技術及び/又はアンテナを備える挿入可能なカード(例えば、加入者識別モジュール、すなわちSIMカード)を含むことができる。そのため、ナビゲーション装置200内の移動電話技術は、何らかの移動装置と同様の方法で、例えばインターネットを介してナビゲーション装置200とサーバ302との間にネットワーク接続を同様に確立できる。
GPRS電話設定の場合、多様な移動電話の機種、製造業者等と共に正しく動作するために、Bluetooth対応のナビゲーション装置が使用されてもよく、機種/製造業者専用設定は、例えばナビゲーション装置200に格納されてもよい。この情報のために格納されたデータは更新可能である。
図3において、ナビゲーション装置200は、多くの異なる構成のいずれかにより実現可能な汎用通信チャネル318を介してサーバ302と通信しているものとして示される。通信チャネル318を介する接続がサーバ302とナビゲーション装置200との間に確立される場合、サーバ302及びナビゲーション装置200は通信できる(尚、そのような接続は、移動装置を介するデータ接続、インターネットを介するパーソナルコンピュータを介する直接接続等である)。
サーバ302は、不図示の他の構成要素に加えて、メモリ306に動作可能に接続され且つ有線又は無線接続314を介して大容量データ記憶装置312に動作可能に更に接続されるプロセッサ304を含む。プロセッサ304は、通信チャネル318を介してナビゲーション装置200との間で情報を送信及び送出するために、送信機308及び受信機310に動作可能に更に接続される。送受信される信号は、データ信号、通信信号及び/又は他の伝搬信号を含む。送信機308及び受信機310は、ナビゲーションシステム200の通信設計において使用される通信条件及び通信技術に従って選択又は設計されてもよい。尚、送信機308及び受信機310の機能は信号送受信機に組み合わされてもよい。
サーバ302は、大容量記憶装置312に更に接続される(又は大容量記憶装置312を含む)。尚、大容量記憶装置312は、通信リンク314を介してサーバ302に結合されてもよい。大容量記憶装置312は、大量のナビゲーションデータ及び地図情報を含む。また、大容量記憶装置312はサーバ302とは別個の装置であってもよく、あるいはサーバ302に組み込まれてもよい。
ナビゲーション装置200は、通信チャネル318を介してサーバ302と通信するように構成され、図2に関して上述したように、プロセッサ、メモリ等を含み、通信チャネル318を介して信号及び/又はデータを送出する送信機320及び受信する受信機322を更に含む。尚、これらの装置はサーバ302以外の装置と通信するために更に使用可能である。更に、送信機320及び受信機322はナビゲーション装置200の通信設計において使用される通信条件及び通信技術に従って選択又は設計され、送信機320及び受信機322の機能は単一の送受信機に組み合わされてもよい。
サーバメモリ306に格納されたソフトウェアは、プロセッサ304に命令を提供し、サーバ302がナビゲーション装置200にサービスを提供できるようにする。サーバ302により提供される1つのサービスは、ナビゲーション装置200からの要求の処理及び大容量データ記憶装置312からナビゲーション装置200へのナビゲーションデータの送信を含む。サーバ302により提供される別のサービスは、所望のアプリケーションに対する種々のアルゴリズムを使用したナビゲーションデータの処理及びナビゲーション装置200へのこれらの計算の結果の送出を含む。
一般に、通信チャネル318は、ナビゲーション装置200とサーバ302とを接続する伝搬媒体又はパスを表す。サーバ302及びナビゲーション装置200の双方は、通信チャネルを介してデータを送信する送信機及び通信チャネルを介して送信されたデータを受信する受信機を含む。
通信チャネル318は特定の通信技術に限定されない。更に、通信チャネル318は単一の通信技術に限定されない。すなわち、チャネル318は、種々の技術を使用する複数の通信リンクを含んでもよい。例えば通信チャネル318は、電気通信、光通信及び/又は電磁通信等のためのパスを提供するように構成可能である。そのため、通信チャネル318は、電気回路、ワイヤ及び同軸ケーブル等の電気導体、光ファイバケーブル、変換器、無線周波数(RF)波、大気、空間等のうちの1つ又はそれらの組み合わせを含むが、それらに限定されない。更に、通信チャネル318は、例えばルータ、中継器、バッファ、送信機及び受信機等の中間装置を含むことができる。
1つの例示的な構成において、通信チャネル318は電話及びコンピュータネットワークを含む。更に、通信チャネル318は、無線周波数、マイクロ波周波数、赤外線通信等の無線通信に対応できてもよい。更に、通信チャネル318は衛星通信に対応できる。
通信チャネル318を介して送信される通信信号は、所定の通信技術に必要とされるか又は要求される信号を含むが、それらに限定されない。例えば信号は、時分割多元接続(TDMA)、周波数分割多元接続(FDMA)、符号分割多元接続(CDMA)、汎ヨーロッパデジタル移動体通信システム(GSM)等のセルラ通信技術において使用されるように構成されてもよい。デジタル信号及びアナログ信号の双方が通信チャネル318を介して送信可能である。これらの信号は、通信技術にとって望ましい変調信号、暗号化信号及び/又は圧縮信号であってもよい。
サーバ302は、無線チャネルを介してナビゲーション装置200によりアクセス可能なリモートサーバを含む。サーバ302は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、仮想プライベートネットワーク(VPN)等に配置されるネットワークサーバを含んでもよい。
サーバ302はデスクトップ又はラップトップコンピュータ等のパーソナルコンピュータを含んでもよく、通信チャネル318はパーソナルコンピュータとナビゲーション装置200との間に接続されたケーブルであってもよい。あるいは、パーソナルコンピュータがナビゲーション装置200とサーバ302との間に接続されて、サーバ302とナビゲーション装置200との間にインターネット接続を確立してもよい。あるいは、インターネットを介してサーバ302にナビゲーション装置200を接続するために、移動電話又は他のハンドヘルド装置がインターネットへの無線接続を確立してもよい。
ナビゲーション装置200は、情報ダウンロードを介してサーバ302から情報を受信してもよい。情報は、自動的に又はユーザがサーバ302にナビゲーション装置200を接続する際に定期的に更新されてもよく、並びに/あるいは例えば無線移動接続装置及びTCP/IP接続を介してサーバ302とナビゲーション装置200との間により継続して又は頻繁に接続が確立される際により動的に更新されてもよい。多くの動的計算のため、サーバ302内のプロセッサ304が大量の処理要求を処理するために使用されてもよい。しかし、ナビゲーション装置200のプロセッサ210も同様に、多くの場合はサーバ302への接続に関係なく、多くの処理及び計算を処理できる。
図2において上述したように、ナビゲーション装置200は、プロセッサ210、入力装置220及び表示画面240を含む。入力装置220及び表示画面240は、例えば情報の入力(直接入力、メニュー選択等を介する)及びタッチパネル画面を介する情報の表示の双方を可能にするために一体型入力表示装置に一体化される。当業者には既知であるように、そのような画面は例えば接触入力LCD画面である。更にナビゲーション装置200は、例えば音声入力/出力装置等の何らかの追加の入力装置220及び/又は何らかの追加の出力装置241も含むことができる。
図4は、ナビゲーション装置200を示す斜視図である。図4に示すように、ナビゲーション装置200は、一体型入力表示装置290(例えば、タッチパネル画面)及び図2の他の構成要素(内部GPS受信機250、マイクロプロセッサ210、電源、メモリシステム230等を含むが、それらに限定されない)を含むユニットであってもよい。ナビゲーション装置200はアーム292上に位置してもよく、アーム292自体は吸着カップ294を使用して車両のダッシュボード/窓等に固定されてもよい。このアーム292は、ナビゲーション装置200がドッキング可能なドッキングステーションの一例である。ナビゲーション装置200は、例えばアーム292にナビゲーション装置292を嵌合接続することにより、ドッキングステーションのアーム292にドッキングされるか又は接続される。ナビゲーション装置200とドッキングステーションとの間の接続を解除するには、例えばナビゲーション装置200上のボタンが押下される。ナビゲーション装置とドッキングステーションとを接続及び分離する他の同様に適切な構成は当業者には既知である。
ナビゲーション装置200はメモリリソース230にローカルに格納されたデジタル地図を有し、デジタル地図は複数の通行可能な区分を示すデータを含み、通行可能な区分は例えば道路ネットワークである通行可能なネットワークを表す。デジタル地図は、例えば1つ以上の区分から構成される通行可能な経路を生成できるナビゲーション可能な目的地として選択可能な複数の場所を含む。場所は、例えば緯度/経度座標として及び/又はデジタル地図の区分又はノードを参照して、何らかの適切な方法で格納される。
デジタル地図内の場所は住所を表し、従って、番地、道路名、居住地区名、国及び郵便番号を含む関連する場所情報の構成要素を含む。これらの構成要素を組み合わせて、特定の住所が定義される。デジタル地図内の場所は、事前に格納された製造業者が供給したか又はユーザが生成した地点情報(POI)を更に表し、それらは、「既知の」目的地(有名な場所、公営の場所(運動場又は水泳プール等)、あるいはレストラン、バー、店舗等の他の地点情報である。そのようなPOIの場所は、POI名(例えば、「大英博物館」)、POIのブランド名(例えば、「スターバックス」)、POIのカテゴリ名及び/又はカテゴリコード(例えば、「レストラン」及び「7315」)、並びにPOIの住所(番地、道路名、居住地区名、郵便番号及び国を含む)のうちの1つ以上を含む関連する構成要素を有する。
デジタル地図内の1つ以上であり好ましくは全てのナビゲーション可能な目的地に対する場所データレコード(又は文書)は、メモリリソース230にローカルに格納される(デジタル地図データに加えて)。各データレコードは関連するレコード識別子を有し、それにより、各レコードは一意に識別される。レコード識別子は、第1の部分及び第2の部分を含む。第1の部分は、モートンコードの形態であってもよい位置参照であり、場所を含むデジタル地図の地理的領域を識別する。第2の部分は、デジタル地図内に位置するナビゲーション可能な目的地に関連付けられた例えば道路名、国、POI名、POIのカテゴリ等である情報に対するポインタ又は参照である。しかし、場所データレコードのうちの1つ以上は、ナビゲーション可能な目的地に関連付けられた場所情報に対するポインタの代わりに、ナビゲーション可能な目的地に対する例えば道路名、国、POI名、POIのカテゴリ等の実際の場所情報を含んでもよいことが理解されるだろう。
データレコードは、お気に入りの目的地又は最近訪問した目的地に対して更に格納されてもよい。異なる種類の場所を表すデータレコードは、リポジトリ内の別個のデータベースに格納されてもよい。例えば住所、POI、最近訪問した場所及びお気に入りの場所は別個のデータベースに格納されてもよい。
メモリリソース230に格納された場所データレコードのうちの少なくともいくつかは、最初の使用前に、ナビゲーション装置200がユーザに販売された後の使用時点又はその周辺で装置にダウンロードされるか、あるいは装置200がユーザに販売される前に装置200にダウンロードすることで、ナビゲーション装置200の製造業者により最初に提供されてもよい。メモリリソース230に格納された場所データレコードのうちの少なくともいくつかは、最初の使用後に、例えばネットワークダウンロードによる定期更新によって製造業者により提供されてもよい。メモリリソース230に格納された場所データレコードのうちの少なくともいくつかは、ユーザが装置200に手動で指定又は入力するか、あるいはダウンロードすることによってユーザにより提供されてもよい。
フリーテキスト探索エンジン
本発明の態様の実施形態は、ナビゲーション装置200等の電子装置と、ユーザが入力したフリーテキスト探索文字列に基づいてメモリリソース230に格納された場所のデータリポジトリを探索することにより単一の入力文字列からのユーザの所望の目的地の判定を容易にするようにナビゲーション装置200を動作する方法及びコンピュータソフトウェアを提供する。実施形態は、既知の誘導型探索技術を実行するために必要な情報を求める複数のプロンプトをユーザに対して提示することを回避する点で有利である。実施形態に係るフリーテキスト探索は1つ以上の所定の索引の探索に基づき、探索される索引が変わる場合でも、1つ以上の索引自体は変更されない。従って、実施形態は、トライによる実現例がフリーテキスト探索に使用される場合に発生する探索空間の変更に必要な更なる処理という問題も回避する。
データレコードに含まれる単語と当該単語が存在するレコードとを関連付ける索引を表すデータが装置200のローカルメモリ230に格納される。索引は、装置においてローカルに生成されてもよく、サーバにおいてリモートに生成されて装置にダウンロードされてもよく、その双方であってもよい。別個のデータレコードデータベースがリポジトリに含まれる場合、別個の索引がデータベース毎に生成されてもよい。従って、地理的領域(例えば、特定の国又は州等に対して)及び/又は場所の種類(例えば、住所、POI等)に基づいて、別個の索引が生成されてもよい。
索引は、リポジトリ230に格納された全ての場所データレコードに含まれる全ての単語のリストである。各単語に対して、索引は当該単語を含むデータレコードのエントリを有する。レコードは、単語と当該単語を含む文書の文書IDとを関連付けるタプルとして索引に格納される。文書は、住所又はPOIのいずれかである。
上述のように、データレコードは住所又は地点情報(POI)を表し、道路名、地名、郵便番号、国コード、POI名、POIのブランド名、POIの住所、POIのカテゴリコードである構成要素のうちの1つ以上を表すデータを含む。
以下のテーブル1は、住所を表すデータレコードの簡略な例を示す。
これらの文書に含まれる単語(すなわち、文書の構成要素)に対する索引であり、フリーテキスト探索エンジンの基礎を形成する索引を以下のテーブル2に示す。
上述のように、好適な実施形態において、データレコードの文書ID(すなわち、レコードID)はモートンコードを含む。モートンコードは、それ自体がデジタル地図に関連する位置参照を提供するため、データレコードが関連する範囲/場所の位置を特定するために使用可能である。各データレコードの第2の部分は、地図内の関連データに対する参照を含む。このように、データレコードに対するファイルのサイズは最小化され、これは一般的なPNDにおける限られた記憶容量を考慮した場合に重要である。いわゆる「探索の中心」(すなわち、探索に対する適合性に対して結果をランク付けする際に使用される場所/経路であり、以下に更に説明する)周辺で探索を実行する場合、各文書IDに関連付けられた位置参照が使用される。
電子装置200は、データ処理手段により実行される場合に、図6を参照して説明するフリーテキスト探索方法600を電子装置に実行させる命令を備えるコンピュータプログラムをメモリ230に更に格納している。
ユーザにより例えば物理キーパッド、仮想キーパッド又は音声コマンドを使用して装置のユーザインタフェースに入力された探索クエリが受信される(601)。探索クエリは探索文字列を含む。探索文字列は、1つ以上の探索語を提供するように処理される(602)。各探索語を含むデータレコードを識別するために、索引に照会する(603)。1つ以上の識別された各データレコードに対して、探索クエリに対する識別された各データレコードの適合性を示すランクが生成される(604)。探索結果は、ディスプレイ上にランク順で表示される(605)。
このように、1つ以上の単語(空白文字、並びに/あるいは文字列の始端及び/又は終端により区切られたアルファベット文字の列を含む単語)を構成する1つ以上の文字を含むテキスト文字列(ユーザにより物理キーボード、仮想キーボード又は音声認識を介して、あるいは他の手段により装置200に入力される)が与えられた場合、一実施形態に係るフリーテキスト探索エンジンは、一致する住所、一致する地点情報(POI)、POIのカテゴリの提案である結果のうちの1つ以上を生成できる。
1つ以上の探索語を提供するための探索文字列の処理を図6に更に示す。コンピュータプログラムは更に、探索文字列を処理する場合に、電子装置が、探索文字列を単語に分割すること(602A)と、単語を標準化すること(602B)と、特定の単語を識別し且つ処理すること(602C)とのうちの1つ以上を実行するようにする。
602Aにおいて探索文字列を単語に分割するために、全ての非アルファベット文字は文字を分離する語であると考えられる。いくつかの例を以下に示す。
1.「Kalverstraat,Amsterdam」は、「Kalverstraat」及び「Amsterdam」に分割される。
2.「s−Gravenhage the Netherlands」は、「s」、「Gravenhage」、「the」及び「Netherlands」に分割される。
単一の単語を用いて索引に照会する。
602Bにおいて単語を標準化するために、探索文字列の内容における不規則性を考慮することを意図する1つ以上の処理ステップが実行される。標準化の目的は、綴りの誤りを許容すること及び例えば「street」に対する「st」である略語に対応することを含む。
索引において単語をルックアップするには、単語が索引に格納されているのと完全に同一に綴られている必要がある。軽微な誤綴りにより、ルックアップは失敗する。そのため、ユーザが「Kalverstraat」ではなく「Kalverstrat」と綴り且つ標準化が使用されなかった場合、単語「Kalverstrat」は索引に存在しないため、一致するものは見つけられない。
そのような軽微な誤綴りを許容するために、単語自体は索引に格納されない。その代わりに、単語の標準化された形態が格納される。ユーザ入力からの単語を用いて索引に照会するために、単語は最初に標準化される。標準化の背後にある意図は、異なる(誤った)綴りが同一の標準化された形態を有することで、それらの異なる(誤った)綴りに対して一致する文書が見つけられることである。
単語の標準化バージョンのみを格納することの更なる利点は、単語の入力テキストバージョンが格納された場合より索引のサイズが小さいことである。索引が小さいことにより、索引に対して必要とされるデータ格納が少なく、探索を実行するのに必要な処理も減少される点が有利である。格納されたデータレコードから索引を生成するために使用される標準化ルールは、フリーテキスト探索クエリを受信した時に装置において探索文字列を処理するために使用されたルールと同一であるのが好ましい。
標準化は、以下のうちの1つ以上を含む。
・全ての文字を小文字に変換する。例えば、「A」は「a」になる。
・文字からアクセントを除去する。例えば、「(ウムラウト付きの)u」は「u」になる。
・同一文字の連続を一文字に置換する。例えば、「nn」は「n」になる(尚、これは文字の場合のみで、数字の場合は適用しない)。
・単一の文字を他の文字に置換する(以下を参照)。
・先行のステップにより、同一文字の連続が生成される場合がある(この場合も、これらの連続は一文字に置換される)。
・単語及び略語を標準的な略語に置換する。例えば、「street」は「st」になる。
連続を一文字に置換する処理を以下に説明する。
これは、単語内の文字位置1から見つけられる全ての連続に対して実行される(最初の文字の位置は0である)。最初の文字から始まる連続は置換されない。これは、単語の先頭の文字を変更すると非論理的な一致が生じるためである。
連続が置換される開始位置は索引に格納される。
アクセントを除去する処理を以下に説明する。
アクセント付き文字が置換されるアクセント付きでない文字は、アクセント付き文字と同一の基本文字である。更に、正式にはアクセント付き文字でないがアクセント付き文字として処理されるいくつかの特別な例が存在する。
文字を置換する処理を以下に説明する。
一文字の誤綴りを許容するために、いくつかの文字は他の文字に置換される。これは、いくつかの文字が同様の発音を有するため、ユーザが誤った文字を入力しやすいためである(尚、本明細書中で開示する標準化技術は、言語に依存しない)。そのため、1つの言語において同様の発音を有する文字は、別の言語において同様の発音を有さない場合がある。標準化の場合、目的は複数の綴りを単一の形態にマッピングすることであるため、これは問題でない。ランク付けアルゴリズムは、誤綴りより正確な綴りを優先する。
置換ルールは、索引内のデータにより駆動される。置換ルールをテーブル3に示す。
「始点」の数字は、置換を開始する文字位置である。単語の1番目の文字の位置は0である。「始点」位置より前の文字は変更されない。これは、単語の先頭の文字を変更すると非論理的な一致が生じるためである。
標準化の例を以下に説明する。
1.標準化される単語は「Oosterdoks straat」である。
2.小文字への変更により「oosterdoks straat」が得られる。
3.除去するアクセントは存在しない。
4.連続を一文字に置換する(位置1から開始する)ことにより「oosterdokstrat」が得られる。
5.上記のルールを使用して単一の文字を置換することにより「oostartakstrat」が得られる。
略語を標準化する処理を以下に説明する。
いくつかの単語は略記される。単語はデジタル地図において略語で綴られる場合があり、あるいはユーザ入力において略記される場合がある。略語は完全語と同一の意味を有する必要がある。そのため、ユーザが略語を入力する場合、それはデジタル地図内の完全語と一致する必要があり、あるいはユーザが完全語を入力する場合、それは地図内の略語と一致する必要がある。略語の例を以下に示す。
複数の単語が単一の略語に略記される場合があり、例えば「aan de」は「ad」に略記される。
略語を完全語と一致させるために、索引において完全語は略語に置換される。ユーザ入力において、探索エンジンは、索引に照会する前に完全語を略語に置換する。
しかし、同一の綴りの単語が異なる言語において異なる略語を有する場合があるため、完全語を略語に置換する処理は上記より複雑である。例えば単語「avenue」は英語では「ave」と略記される。しかし、これは仏語では「av」と略記される。
この問題を解決するために、標準化は最も短い略語に対して行われる。
602Cにおいて特定の単語を識別し且つ処理するために、入力が解析され、国コード/国名、番地(住所の探索の場合のみ)、POIのカテゴリ名(POIの探索の場合のみ)のうちの1つ以上を含む特定の単語を探す。
その後、これらの特定の単語は、国名及び国コードを標準的な国コードに変換することと、番地を除去することと、地点情報(POI)のカテゴリに対応する単語を識別してPOIのカテゴリコードに置換することとのうちの1つ以上により処理される。
探索文字列全体がPOIのカテゴリ名又は1つのPOIのカテゴリ名の接頭辞である場合、探索クエリはPOIのカテゴリ内のレコードに対して生成される。探索文字列全体が2つ以上の単語を含み且つPOIのカテゴリ名から始まる場合、POIのカテゴリ名が探索語として提供される第1のクエリと、POIのカテゴリ名がPOIのカテゴリコードに置換される第2のクエリとの2つの探索クエリが生成される。
これらの特定の各単語は索引の一部でないため、特別な処理を必要とする。例えば、索引はPOIのカテゴリ名ではなく数字のPOIカテゴリコードを含む。番地は索引に存在しない。国の場合、3文字のISOコードが索引に存在するが、2文字のコード及び完全な国名も同様に機能する必要がある。
国コード/国名の検出処理を以下に説明する。
探索エンジンは、ユーザ入力の末尾でのみ国コード及び国名を認識する。ユーザ入力の末尾でのみ国コード及び国名を検出するという制限は、曖昧な表現の数を制限するために設けられる。国コード又は国名に見えるものが国コード又は国名でない場合がある。
1.道路名が国名と同一である場合がある。
2.単語が国コードと同一である場合がある。例えば「De Pol」はオランダの村の名称であるが、POLはポーランドに対する3文字の国コードでもある。「USA Today」はPOIの名称であるが、「USA」は国コードでもある。
ユーザ入力の末尾が国名/国コードである場合、探索エンジンは2つの照会を実行する。すなわち、ユーザ入力がそのままの状態で照会を実行し、ユーザ入力の国名/国コードをISOの3文字コードに置換して照会を実行する。例を以下に示す。
1.ユーザは、「vapiano,germany」を入力する。
2.探索エンジンは、「vapiano germany」及び「vapiano deu」の照会を実行する。
上記の例において、理解し易くするために、ユーザ入力の標準化を説明しなかった。探索エンジンは、探索前にユーザ入力を標準化するように更に構成される。
認識された名称/コードに対して実行される処理を以下に説明する。
探索エンジンは、3文字のISOコード(例えば、NLD、DEU、FRA)、2文字のコード(例えば、NL、DE、FR)及びあらゆるUI言語における完全な名称(例えば、「The Netherlands」、「Nederland」、「Pays−Bas)である名称及びコードを認識する。
国名は、UI言語に関係なく全ての国名で認識される。ユーザは、UI言語でない別の言語で国名を示す何らかのソース(例えば、名刺)から住所を写す場合がある。
番地に対して実行される処理を以下に説明する。
番地は、住所に対する索引に格納されない。道路は多くの番地を有する。個々の番地の全てを索引に格納することにより、索引のサイズ及び索引を探索するのに必要な処理能力は大幅に増大する。そのため、探索エンジンは、索引に照会する前に最初にユーザ入力から番地を除去する。その後、道路が見つかった場合、それらの道路に対する番地が決定される。
POIが探索可能な完全な住所を有する場合、この完全な住所内の番地は索引に格納されるのが好ましい。
曖昧な表現が存在する場合があり、番地に見えるものが番地でない場合がある。例えば道路名は、「42nd street」のように数字を含む場合がある。
番地を検出するために、探索エンジンは以下を実行する。
1.ユーザ入力に番地が存在しないと仮定し、ユーザ入力全体を用いて索引に照会する。
2.一致するものが見つからない場合、ユーザ入力が数字部分を有する単語を含むかを調べる。ユーザ入力がそのような単語を含む場合、当該単語を入力から除去し、索引に再度照会する。
3.一致するものが見つかった場合、ユーザ入力から番地を決定する。
ユーザ入力が数字を有する複数の単語を含む場合、それらの単語は全て潜在番地候補である。それらの単語の全てが順次試される。例えば、最初に第1の候補を除去し、次に第2の候補を除去する(第1の候補を除去せずに)。
番地を決定する処理を以下に説明する。
1.一致した道路上に番地が存在するかを調べる。番地が存在しない場合、近辺の(数字が近い)番地を提案する。
2.番地の座標(緯度/経度)を取得する。
POIのカテゴリ名に対する処理を以下に説明する。
探索エンジンは、ユーザ入力の先頭でのみPOIのカテゴリ名を認識する。この制限は、複雑性及び曖昧性を最低限にするために設けられる。POIのカテゴリ名(の一部)はPOIのカテゴリ名でない場合がある。
探索エンジンは、POIのカテゴリの主要な名称及びそれらに対する同義語を認識する。主要な名称及び同義語は地図に格納される。同義語と一致するものが見つかった場合、提案はPOIのカテゴリの主要な名称及び同義語の双方を含む。
「同義語」は、POIのカテゴリ名に関連付けられるあらゆる名称である。例えば「カフェ」は「レストラン」の同義語として地図に配置される。ユーザがこれらの関連付けられた名称のうちの1つを入力する場合、探索エンジンは、厳密にはユーザが要求したものでないが何も返さないよりましなので、関連付けられたPOIのカテゴリを探索するように提案する。
POIのカテゴリ名が見つかった場合、探索エンジンは、提案の生成、POIのウィンドウ照会の実行及びPOIのカテゴリコードを用いるFTS照会の実行を含む複数の動作を実行する。
この時点で、受信した探索文字列の処理が終了し、1つ以上の探索語のグループが生成され、各探索語を含むデータレコードを識別するために索引に照会する(603)。各探索語に対して、一致するレコードのセットを索引から探す。その後、全ての単語と一致するレコードを提供するために、レコードのセットの共通部分が判定される。
上記のテーブル1に示した簡略な例及びテーブル2に示した単語に対する索引(尚、簡潔にするために、本例の索引は標準化されていない)に戻ると、ユーザ入力「Kalverstraat,Amsterdam」と一致するものを見つけるために、入力は単語「Kalverstraat」及び「Amsterdam」に分割される。
1.「Kalverstraat」は文書1及び文書3と一致する。
2.「Amsterdam」は文書1及び文書2と一致する。
3.これらの一致するものの共通部分は文書1であり、すなわち、住所「Kalverstraat,Amsterdam,NLD」である。
従って、探索の照会は文書1を返す。これが正しい結果であることは明らかである。
上述のように、探索文字列がPOIのカテゴリ名を含む特別な例がある。
ユーザ入力全体がPOIのカテゴリ名である場合に実行される処理を以下に説明する。
ユーザ入力全体がPOIのカテゴリ名又は1つのPOIのカテゴリ名の接頭辞である場合、POIのカテゴリにおけるPOIの探索が実行される。これが当てはまるユーザ入力の例は、レストラン及び鉄道である(完全なカテゴリ名は「鉄道駅」であるが、「鉄道」で始まる他のカテゴリ名は存在しない)。
探索の中心(すなわち、探索に対する適合性に対して結果をランク付けする際に使用される場所/経路であり、以下に更に説明する)が定義される場合、探索の中心を中心とするPOIカテゴリのウィンドウ照会が実行される。
探索の中心が定義されない場合、数字のカテゴリコードを用いる照会が実行される(索引は、POIに対する数字のカテゴリコードを含む)。
POIのカテゴリの提案に対する処理を以下に説明する。
索引の照会に加えて、全ての一致するPOIのカテゴリ名/同義語に対してPOIのカテゴリの提案が作成される。
ユーザ入力がPOIのカテゴリ名で始まる場合に実行される処理を以下に説明する。
ユーザ入力がPOIのカテゴリ名で始まる場合、2つの照会が実行される。
1.ユーザ入力をそのまま用いて照会する。
2.POIのカテゴリ名を数字のカテゴリコードに置換して照会する。
住所の指示を用いてPOIのカテゴリの提案を実行する処理を以下に説明する。
索引の照会に加えて、POIのカテゴリの提案が作成される。カテゴリ名の後ろのユーザ入力テキストは、住所探索エンジンに対する入力として使用される。当該テキストにより1つ以上の一致する住所の結果を得られる場合、この住所の結果がPOIのカテゴリの提案に対する住所になる。以下に例を示す。
1.入力は「restaurant paris」である。
2.文字列「paris」は、住所探索エンジンに対する入力として使用される。
3.第1の結果は、都市の中心「Paris,FRA」である。
4.この結果が、「restaurant」の提案に対する住所リストにおける第1の住所になる。
カテゴリ名の後ろの文字列から一致する住所の結果を得られない場合、提案は作成されない。例えば入力「restaurant vapiano」からは、住所の指示を用いるPOIのカテゴリの提案が作成されない。
処理された探索文字列を用いて索引に照会し且つ一致するデータレコードのセットが識別された後、それらの結果は適合性に対してランク付けされる(604)。各データレコードに対するランクを生成する場合、装置200は以下を実行する。
−各レコードに対するスコアを計算する。
−各自のスコアに基づいてレコードをランク付けする。
−2つのレコードが同一スコアを有する場合、探索の中心を使用できる場合は探索の中心からの距離に基づいてランクの順序付けを調整し、探索の中心を使用できない場合は2つのレコードのランクの順序をランダムに付ける。
各レコードに対するランク付けスコアを計算するために、装置200は開始スコア(本実施形態では1000)から開始して、以下のうちの1つ以上を実行する。
−データレコードに含まれる単語と正確に一致しない探索文字列に含まれる各単語に対して、スコアからペナルティを減算する。
−探索文字列内に配列された探索語とデータレコードにおける単語の配列との間の不正確な語順及び単語の間隔を含む構造の差異に対して、スコアからペナルティを減算する。
−探索語と一致する単語が存在する構成要素に含まれる一致しない各単語に対して、スコアからペナルティを減算する。
−重要な一致であると示されるデータレコードに対して、スコアにボーナスを加算する。
−近くの結果に高いランクが付与されるように、装置の現在地からの距離に基づいてスコアにボーナス/ペナルティを加算する(行程の大部分は75km以内である)。
探索文字列の個々の単語は、索引を使用して一致するレコードを見つけるために、照会のために標準化されるが、一致したレコードをランク付けする場合、各データレコードの生の構成要素と比較されるのは、探索文字列の個々の標準化されていない生の単語であることに注意する必要がある。
単語のペナルティを判定する処理を以下に説明する。
ユーザ入力内の各単語に対して、一致する文書内の一致する単語が見つけられる。単語が同一である場合、これは完全な一致であり、単語はペナルティを付与されない。
単語が同一でない場合、ペナルティが付与される。全ての単語に対するペナルティが合計される。これが総単語ペナルティである。
構造のペナルティを判定する処理を以下に説明する。
総単語ペナルティが計算された後、構造の不一致に対してペナルティが追加される。上述のように、住所及びPOIは、例えば道路名、地名、郵便番号、国コード、POI名、POIのブランド名、POIの住所を含む複数の構成要素から構成される。
これらの構成要素のうちのいくつかは複数の名称を有する場合があり、例えば都市は複数の言語で名称を有する場合がある。構造解析は、入力の単語が一致する構成要素、それらが一致する名称及び順序に着目する。非論理的な一致にペナルティが付与される。非常に非論理的な一致は最大ペナルティを付与され、完全に除外される。
ユーザ入力における2番目以降の各単語に対して、先行の単語との比較が行われる。各ペナルティを以下に簡単に説明する。
−構成要素間で前後にジャンプする。
例えば1番目の入力単語が道路名内の単語と一致し、2番目の入力単語が当該道路に対する都市名内の単語と一致し且つ3番目の単語が再び道路名内の単語と一致する場合、一致が構成要素間で前後にジャンプする。そのような一致したものは完全に廃棄される。
−別の構成要素に切り替わる。
単語が地名内の単語と一致するが先行の単語が道路名内の単語と一致していた場合、これは新しい構成要素への切り替わりである。これは誤りではないが、単一の構成要素内でより多くの単語が連続して一致するものを優先するために、ペナルティを付与される。
−名称が構成要素内で切り替わる。
構成要素が複数の名称を有する場合、入力からの単語がこれらの複数の名称と一致する場合がある。複数の名称との一致は論理的でないと考えられるため、大きいペナルティを付与される。当該ルールの例外は地域名である。
−道路名及び地名における単語の順序の不一致。
道路名及び場所名における単語の順序は周知であるため、誤った順序での一致は完全に除外される。
−他の構成要素における単語の順序の不一致。
例えばPOIである他の構成要素における単語の順序は、十分に定義されていない場合がある。これは、不一致に対するペナルティを付与される。
−一致の間隙。
2つの後続の単語が同一の構成要素と一致するが、それらの間に当該構成要素と一致しない単語が存在する。
各単語に対する構造のペナルティは、総単語ペナルティに加算される。
一致しない単語のペナルティに対する処理を以下に説明する。
構成要素において1つの単語が一致する場合、当該構成要素に対する全ての単語が与えられない場合にペナルティが付与される。当該ペナルティは、構成要素と一致するものの全てに対して付与されるわけではない。
住所及びPOIに特有のボーナスが適用されてもよい。
単語を一致させる複数の方法に対する処理を以下に説明する。
全てのペナルティ計算は、ユーザ入力からの単語と文書からの単語との比較を含む。ユーザ入力及び文書の双方は、1つの単語を複数回含む場合がある。従って、ユーザ入力からの単語と文書からの単語とをマッチングさせる種々の方法が存在する。ランク付けアルゴリズムは全ての可能なマッチングを試し、最高スコアを生じたマッチングがその一致するものに対するスコアになる。
一致するレコードが住所を表す場合、住所を表すレコードに対するランク付けスコアの計算は以下のステップを含む。
−データレコードの道路名に含まれる索引内の単語と一致する探索語が存在しない場合、データレコードをランク付けしない。
−ユーザ入力が番地を含む場合、番地は道路名の前又は後ろである必要があり、それ以外の場合、一致するデータレコードはランク付けされない。
−探索の中心が存在する場合、探索の中心に相対的に近いデータレコードに対してペナルティを抑制するか、探索の中心から相対的に遠いデータレコードに対してペナルティを増加するか、あるいはその双方を行うように、ペナルティのうちの1つ以上を調節する。これは、近くに存在する一致するものに高い優先度を付与するためである。例えばユーザが「centraal station」を探索し且つ「centraal station Amsterdam」(central station Amsterdam)と呼ばれる道路の周辺にいる場合、「central station」と呼ばれる道路が存在する英国内で正確に一致するものをユーザが探索している可能性は非常に低い。従って、近くに存在する探索結果を最初に示すのが適切である。
−居住地区の中心と一致する単語が存在する場合、居住地区の中心の大きさ及び使用できる場合は探索の中心と居住地区の中心との間の距離に依存して、スコアにボーナスを加算する。
一致するレコードが地点情報(POI)を表す場合、住所を表すレコードに対するランク付けスコアの計算は以下のステップを含む。
−POIの名称、POIのブランド名又はPOIのカテゴリを表すデータレコードの構成要素のうちの1つに含まれる索引内の単語と一致する探索語が存在しない場合、データレコードをランク付けしない。
−探索の中心が存在する場合、探索語と一致する単語が存在する構成要素に含まれる一致しない各単語に対して、スコアからペナルティを減算しない。このように、距離はランク付けにおいて重要な役割を有する。
−探索の中心が存在しない場合、探索語と一致する単語が存在するPOI名又はPOIのブランド名を表すデータレコードの構成要素に含まれる一致しない各単語に対して、スコアからペナルティを減算する。これらのペナルティは合計されず、双方からの最小量が不一致単語の総ペナルティとして考えられる。
−探索の中心が存在しない場合、POIの名称又はPOIのブランド名に含まれる索引内の単語と一致する探索語が存在しない場合にスコアからペナルティを減算する。これは、名称又はブランド名と適切に一致する他の一致するものを高くランク付けすることを保証するためである。
ナビゲーション装置200がユーザ入力から目的地情報を判定するために実行するように構成される処理を上述した。フリーテキスト探索は、誘導型探索に必要な複数のプロンプトを回避する。更に、索引を使用することにより、トライに基づくフリーテキスト探索に必要な更なる計算が不要になる。
複数の索引が提供され、各データベースが例えば住所及びPOIである複数の種類のナビゲーション可能な目的地に関連する情報を含む場合、各索引を個別に照会する必要があることは理解されるだろう。いくつかの実施形態において、双方の索引(及び関連するデータレコード)は並行に探索される。しかし、移動装置において通常見られる処理の制限により、索引を順次探索する必要があることが多い。いくつかの実施形態において、「住所」索引がデフォルトで最初に探索され、その後「POI」索引が探索される。これは、住所の結果がPOIの結果の前に装置上に最初に表示されることを意味する。しかし、ユーザが住所ではなくPOIを探索している可能性が高いとヒューリスティクスが示す場合、特定の状況において上記の順序は逆であってもよい。
探索を更に高速化するために、簡単に上述したように、複数の索引は、関連するデジタル地図により表される地理的範囲全体の中の特定の地理的領域に対して作成される。例えばデジタル地図が欧州を表す場合、索引は欧州内の各国に対して作成される。同様に、デジタル地図が米国を表す場合、索引は米国内の各州に対して作成される。これにより、例えば索引が探索対象である特定の文字の組み合わせを含まない場合、当該索引は探索から除外されるため、探索は高速化される。例えばユーザが探索入力文字列に「oo」を入力する場合、一部のデータベースのみが当該組み合わせで始まるエントリを含むことが判明する。これらのデータベースはフラグを付与され、3番目の文字が入力された場合、一部のデータベースのみを探索すればよい。各索引に関連付けられ且つデータベースに含まれる又は含まれない特定の文字の組み合わせを識別する更なるファイルが格納されてもよい。その場合、特定の索引を後続の探索に含めるか又は除外するために、当該サイドファイルが最初に探索される。
探索の提案を含むフリーテキスト探索ユーザインタフェース
本発明の態様の実施形態は、ユーザが入力したフリーテキスト探索文字列に基づいて選択可能な探索の提案を生成し且つ表示することにより、ユーザが場所のデータリポジトリを容易に探索できるようにするナビゲーション装置200等の電子装置、並びにナビゲーション装置200を動作する方法及びコンピュータソフトウェアを提供する。実行される探索は、上記で概略を説明した例示的な実施形態等の本発明の他の態様のフリーテキスト探索エンジンを使用してもよい。
探索クエリの生成中にユーザ入力に応答して選択可能な探索の提案を提供することにより、高速且つ正確な探索が実行されるため、ユーザは一行の探索ユーザインタフェースを使用して位置、場所又は住所を容易に見つけることができる。ユーザ入力の入力時に提案及び探索結果が示されるため、ユーザ経験が向上される。
図7を参照すると、装置200のメモリ230は、ユーザがデータレコードを容易に探索できるようにする命令を備えるコンピュータプログラムを含み、以下のステップが実行される。フリーテキスト探索文字列は、装置のユーザによる入力時に監視される(701)。その後、入力された探索文字列に基づいて、一致するレコードがデータリポジトリに照会され(702)、探索を調節するためにユーザが選択可能な提案が生成される(703)。ステップ702において実行されるデータリポジトリの照会は、図6に関して上述したフリーテキスト探索エンジンを使用してもよい。一致するレコード及び提案のうちの少なくともいくつかがディスプレイ240上に表示される(704)。一致する提案の選択を示すユーザ入力の受信(705)に応答して、探索は前記提案に従って調節され、探索クエリ(702)が再度実行される。一致するレコードの選択を示すユーザ入力の受信(706)に応答して処理は終了するか、あるいは、フリーテキスト探索文字列に関するユーザ入力の受信(707)に応答して処理は開始点に戻る。
装置200のユーザ動作が上記の探索機能性を実現できるようにするために、メモリ230はユーザにユーザインタフェースを提供する命令を備える。一実施形態に係る探索動作中に表示されるユーザインタフェース800の一例の概要を図8に示す。
図8を参照すると、ユーザインタフェースは、探索に対するユーザ入力を受信するための第1のビュー810と、前記第1のビューに対応し且つ探索結果が完全なリストビューで表示される第2のビュー820と、探索結果がデジタル地図に関して表示される第3のビュー830とを含む(地図ビュー830の更に詳細な説明を本明細書において後述する)。
ユーザ入力ビュー810は、以下のうちの1つ以上を含む。
−ユーザが入力したフリーテキスト探索文字列を受信するための入力ボックス811。選択された場合、カレット又はテキスト入力カーソルを表示する。
−入力ボックス801が選択されるか又は有効である場合に現れる仮想キーボード812(簡潔にするため、個々のキーは不図示)。仮想キーボード812を使用するテキスト入力はカレットの左側に表示される。装置200は、ユーザが入力ボックスに文字を入力して探索文字列を生成するために仮想キーボード812と対話するために使用できるタッチセンシティブスクリーンオーバーレイを含む。
−現在の探索クエリと一致する住所を表すランク付けされたデータレコード及び現在の探索クエリに基づく住所に関する探索の提案を示す選択可能なGUI要素を表示するための第1の欄813。
−現在の探索クエリと一致するPOIを表すランク付けされたデータレコード及び現在の探索クエリに基づくPOIに関する探索の提案を示す選択可能なGUI要素を表示するための第2の欄814。
−探索結果及び探索の提案の全てがスクロール可能なリストとして示されるリストビュー820にビューが切り換えられるように、仮想キーボード812を開閉させる選択可能なボタン815。
−ユーザ入力ボックス811の右側に存在し、現在の探索の中心の指示を示す選択可能なGUI要素816。
−別の装置により実行された探索により見つけられた結果を取得するために無線接続を介してクエリを送出するための選択可能なGUI要素817。当該オプションは、ナビゲーション装置200が無線動作に適切に対応し且つ無線接続が使用可能である場合のみ使用できる。無線接続を介して受信した結果は、新規のリストビューとして示され(すなわち、それらは装置内で取得した結果と組み合わされない)、受信された時に示される。「戻る」ボタンをタップすることにより、静的な結果(装置内で取得した)が再度示される。
第1の欄813及び第2の欄814は、一致したデータレコード及び探索の提案を閲覧できるように、例えばユーザがディスプレイ上でスワイプ又はドラッグジェスチャを実行することにより共に又は別個にスクロール可能である。
リストビュー820は、入力ビュー810からのGUI要素のうちの多くを含み、リストビュー820と地図ビュー830とを切り換えるための選択可能なGUI要素818を更に含む。地図ビューに切り換えることにより、第1の欄813及び第2の欄814に表示された住所及びPOIの探索結果の場所がディスプレイ上に表示されたデジタル地図上に示される。以下に更に詳細に説明するように、探索結果の場所を示すために、異なる強調レベルを有する複数のGUI要素のうちの1つが使用される。GUI要素のうちの1つ以上は、結果に関する更なる情報をユーザに提供するために選択可能である。
ユーザインタフェース800が最初に入力ビュー810又はリストビュー820のいずれかで表示される場合、探索文字列が入力ボックス811に入力されないように、デフォルトの住所及びPOI(最近訪問した住所の目的地、距離で順序付けられたお気に入り及び最近訪問したPOI等)に対応するデータレコードを示すGUI要素が欄813及び814に示される。4文字以上が入力ボックス811に入力されるまで、メモリ230に格納された装置内蔵の場所のデータレコードの監視される「リアルタイム」探索は開始されなくてもよい。1文字又は2文字のみが入力されている場合、上述の探索と同様に、探索はデフォルトの住所及びPOIのみに関する場合がある。
住所又はPOIに対応するデータレコードを示す欄813又は814に示されたGUI要素を選択する(例えば、タッチ画面上でのユーザ入力タッチにより)ことにより、ビューは、列挙された探索結果の場所がデジタル地図上に示される地図ビュー830に切り換えられる。表示は、選択されたデータレコードを中心とし、地図は、ランク付けられた探索結果に関連する詳細レベルに対応する詳細レベルで表示される。
上述のように、ユーザをナビゲーション可能な結果に誘導するのを補助するために、ナビゲーション装置200は、ユーザがテキストを入力中に選択可能な結果及び提案の組み合わせを欄813及び814で提供する。ユーザが入力する探索文字列が監視され且つ探索結果及び提案が継続的なサイクリング処理で生成されるため、結果及び提案は、全ての文字が入力ボックス811に入力された後に更新され且つ再提示される。従って、探索文字列又は探索の中心を適応させるための各キー入力又は他のユーザ入力、並びに提案の各選択に応答して、一致するデータレコードがデータリポジトリに照会され、提案が生成され、その後、ディスプレイは一致するデータレコード及び生成された提案を表示するように更新される。結果及び生成される提案を以下に示す。
1.住所と一致するもの(装置上の地図の索引及び最近訪問した目的地における部分的に一致するもの及び完全に一致するものである)。
2.集約された道路と一致するもの(非常に一般的な道路名に対する入力支援であり、部分的に入力されたテキストを例えばHigh Street、Station Road、Main Street、Church Street等の完全な道路名に置換する)。
3.POIと一致するもの(装置上の地図のPOIの索引、お気に入り及び何らかのカスタムPOIセットにおける部分的に一致するもの及び完全に一致するものである)。
4.POIのカテゴリと一致するもの(探索を狭めることができる実際の提案である)。
5.POIのカテゴリの同義語と一致するもの(ユーザが自身のメンタルモデルに適合するカテゴリの単語を使用できるようにする)。
提案と結果との重要な相違点は、場所の索引と一致するものからの結果のみがナビゲーション可能であることである。
住所の提案は、リアルタイム入力探索から返された住所と一致したものから導出される。住所の提案は、道路名及び/又は都市名の組み合わせである。
同一の道路名と一致するものが4つ以上ある場合、同一の道路名のセットの上に道路名が示される。当該提案をタップすると、部分的に一致するものが完全な道路名(入力支援)及びスペースに置換される。(入力される次の文字により、同一の道路名と一致するもののリストが当該文字と一致する都市に縮小される)。
探索文字列が都市の中心の名称と一致する場合、都市の中心が提案として示される。当該提案をタップすると、探索の中心が[選択された都市の中心]に変更される。
住所と一致したものをタップすると、探索の中心は一致した住所からの都市の中心に変更され、探索文字列は一致した住所からの道路名に置換され、道路名の後ろにスペース及びカレットが示される。(これはロケールに依存し、例えば米国の住所と一致したものの場合、道路名の前にスペースが示され、入力ボックスの先頭の位置にカレットが示される。例えば「Oosterdokskade | (in) Amsterdam」又は「| Madison avenue (in) New York」)。
テキストが提案により置換される場合、索引内で使用される大文字及び特別な文字が使用される。
住所が現在の国でない場合、十分なスペースがある場合は住所の前に国フラグを示す。現在の国は、受信したGPSデータから判定される。
従って、住所の提案は、探索文字列と一致した住所を表すデータレコードの道路名及び/又は居住地区名に基づいて生成される。居住地区名を含む住所の提案を選択することにより、GUI要素816で示される探索の中心は当該居住地区に対応するように調節され、それにより、探索結果は当該探索の中心に従ってランク付けされる。道路名を含む住所の提案を選択することにより、探索文字列は道路名に置換される。道路名及び居住地区名を含む住所の提案を選択した後、ユーザはフリーテキスト探索文字列に番地を入力するよう指示される。
POIの結果からのPOIの提案の生成を以下に更に説明する。
POIの結果は、POIの索引と一致するもの及びPOIのカテゴリと一致するものから構成される。POIと一致するものは、名称と一致するもの、カテゴリと一致するもの及び住所と一致するものにより探すことができる。探索結果がPOIの索引と一致するもの又はPOIのカテゴリと一致するものを返す場合、POIのカテゴリの提案が欄814に表示される。
ユーザのメンタルモデルがPOIのカテゴリに使用される命名ルールと一致しない場合があるため、POIの主要なカテゴリ名の同義語のリストが追加される。システムが同義語と一致するものを有する場合、結果として得られるPOIの提案は、親のPOIカテゴリ名を示すと共に、探索文字列において認識されたPOIの同義語を角括弧内で示す。これにより、カテゴリ名が非常に異なる場合に提案にコンテキストが与えられる(例えば、gas stationとpetrol stationは非常に似ているが、restaurantの同義語であるcafe(eはウムラウト付き)は明らかでない)。POIの同義語の提案は、POIの(親)カテゴリの提案と同様に機能する。
従って、POIの提案は、探索文字列と一致する地点情報を表すデータレコードの名称、カテゴリ及びカテゴリの同義語に基づいて生成される。POIの提案を選択することにより、照会により返されたデータレコードは、POIの提案の名称、カテゴリ又は同義のカテゴリと一致するPOIの名称、カテゴリ又は同義のPOIカテゴリを有するデータレコードのみを含むようにフィルタリングされる。例えばデータレコードの特定の構成要素に対する特定の値に対する「フィルタ」の適用は、探索が当該構成要素に対する当該特定の値を有する結果のみと一致し、それらの結果のみをランク付けするために返すという効果を有する。
従って、生成された提案は探索処理を容易にするために使用できる。提案は、探索クエリの範囲を狭め、ユーザの誤りを許容し、ランク付けを調節するのを補助する。このように、ユーザはより広範に、投機的に及び的を絞って場所のデータレコードを探索でき、装置200の使用の柔軟性が向上する。
テーブル5は、結果/提案が選択された場合に実行される動作を示す。
一実施形態に係る結果及び提案の表示を以下に説明する。
探索文字列に基づく組み合わされた探索結果及び生成された提案は、ユーザインタフェースのユーザ入力ビュー810及びリストビュー820において2つの欄で提示されるのが好ましい。
1.住所欄813は、住所(道路+地図からの都市+最近訪問した目的地)、都市と一致するもの、並びに集約された道路名の提案を含む。
2.POI欄814は、POI名、POIの住所、第3者のPOIファイル(例えば、.ov2ファイル又は.csvファイル)、お気に入り(名称+住所)、POIのカテゴリの提案を含む。
2行の情報を伝える最少で4つのGUI要素が使用可能な垂直空間に適合するように作成されるのが好ましい。いくつかのGUI要素は、入力ビュー810の下部に示すキーボードにより隠される場合がある。結果は、欄毎にランク付けスコアの順序でランク付けされる。
「リストビュー/キーボードを隠す」切り換えボタン815を用いてキーボードを閉じると、結果リスト全体が表示される。これは、ナビゲーション可能な結果(住所及びPOIを組み合わせて)と他の提案の種類とを混合して50個の項目に制限される。
次に図9を参照して、POIのカテゴリの提案が探索において生成され且つ使用される例示的な装置の動作の特定の例を説明する。
図9において、ユーザインタフェースのユーザ入力ビューが表示され、ユーザはユーザ入力ボックス911aに探索文字列「restaurant amsterdam」を入力している。探索結果及び提案がユーザ入力ボックス911aの下の住所欄913a及びPOI欄914aに示される。探索文字列に基づいて生成されたPOIのカテゴリの提案「restaurant」915をユーザが選択すると、POIのカテゴリがフィルタとして探索クエリに追加され、フィルタは探索入力ボックス911bの左側にGUI要素916として示される。POIのカテゴリの提案を選択した結果、POIに対応しないもの及びPOIのカテゴリの構成要素又はエントリを含まない住所レコードは除外され、欄913bは空欄になる。それに対して、欄914bは、フィルタリングされたカテゴリ内でPOIレコードと一致するものを示す。
次に図10を参照して、都市の提案が探索において生成され且つ使用される例示的な装置の動作の特定の例を説明する。
図10において、ユーザインタフェースのユーザ入力ビューが表示され、ユーザはユーザ入力ボックス1011aに探索文字列「Lond」を入力している。ランク付けされた探索結果及び提案がユーザ入力ボックス1011aの下の住所欄1013a及びPOI欄1014aに示される。これは部分的に単語が一致するものを含み、「London」に対する都市の提案1015が探索文字列に基づいて生成され、欄1013aに示される。ユーザが都市の提案1015を選択すると、(少なくとも一致する単語の)ユーザ入力が入力ボックス1011bからクリアされ、探索の中心は1016aに示す「周辺」から1016bに示す「London」に変更される。都市の提案を選択した結果、欄1013bに示す住所レコード及び欄1014bに示すPOIレコードは探索の中心であるLondonに基づいてランク付けされる。図10においてユーザ入力ボックス1011bは空欄であるため、今回はLondonを探索の中心としてランク付けされたデフォルトのレコードが欄1013b及び1014bに再度示される。更なるテキスト入力を入力ボックス1011bに入力すると、当該入力と一致する住所レコード及びPOIレコード、並びに当該入力に基づく提案がLondonを探索の中心としてランク付けされて欄1013b及び1014bに表示される。
次に図11を参照して、都市の提案が探索において生成され且つ使用される例示的な装置の動作の特定の例を説明する。
図11において、ユーザインタフェースのユーザ入力ビューが表示され、ユーザはユーザ入力ボックス1111aに探索文字列「oosterd」を入力している。ランク付けされた探索結果及び提案がユーザ入力ボックス1111aの下の住所欄1113a及びPOI欄1114aに示される。これは、探索文字列に基づく単語が部分的に一致するもの及び提案を含む。探索文字列がAmsterdamのOosterdoksstraat上の複数の住所レコードと部分的に一致するため、「Oosterdoksstraat in Amsterdam」に対する部分的な住所の提案1115が探索文字列に基づいて生成され、欄1113aに示される。ユーザが部分的な住所の提案1115を選択すると、探索文字列の一部を形成するために入力ボックス1111bのカレットの左側に完全な道路名「Oosterdoksstraat」が挿入され、探索の中心は1116aに示す「周辺」から1116bに示す「in Amsterdam」に変更される。特定の道路にレベルを下げた部分的な住所の提案を選択した結果、探索結果及び提案がそれ以上表示されないように欄1113a及び1114aが除去されるのが好ましい(これは、探索が十分に特定されるためである)。その代わりに、キーボードはユーザが番地を挿入できる数字レイアウトに変更され、「ここに行く」(すなわち、番地を用いて/用いずに道路への経路を作成する)、「交差点を追加する」(例えば、番地がわからない場合に有用である)及び「地図上で閲覧する」を含む多くの住所に特有の提案1119が示される。それに対して、住所の提案が複数の道路と一致する場合、探索結果及び提案が欄1113及び1114に示され続けてもよい。
地図ビュー
本発明の態様の実施形態は、ディスプレイ上に表示されたデジタル地図の表現上で異なる強調レベルのGUI要素を提供することにより、ユーザが複数の場所を容易に確認できるようにするナビゲーション装置200等の電子装置と、ナビゲーション装置200を動作する方法及びコンピュータソフトウェアとを提供する。複数の場所は、例えば上述した提案を使用するフリーテキスト探索等の目的地探索の結果のセットを表す。複数の場所は、現在の交通イベント及び天候イベント等のセットを更に表してもよい。
複数の場所を示すために異なる強調レベルのGUI要素をディスプレイ上に表示されたデジタル地図の表現上に提供することにより、ユーザはデジタル地図上で当該場所を容易に確認できる。
例示的な一実施形態において、装置200は、デジタル地図を表すデータと、電子装置が、デジタル地図に関連する複数の場所(探索結果等)を表すデータに関して、各場所に対して、場所を示すために異なる強調レベルにより特徴付けられる複数の異なるグラフィカルユーザインタフェース(GUI)要素のうちの1つをディスプレイ上に表示された地図ビュー830等のデジタル地図の表現上に提供するようにするコンピュータプログラムとをメモリ230に格納する。各場所に対して使用されるGUI要素の強調レベルは、デジタル地図が表示される詳細レベルと、ユーザクエリに対する当該場所の想定される適合性とに依存する。
デジタル地図の表示される詳細レベルとユーザクエリに対する場所の想定される適合性とに基づいて、示される場所に対するGUI要素を選択することにより、ユーザが地図ビューにおいて情報を把握し且つ自身のクエリに対する異なる場所の想定される適合性を理解する能力が大幅に向上される。これは、潜在的に非常に多くの場所を有する地図ビューと直感的に対話するユーザの能力を助長する。特に、強調レベルを下げて使用することにより、多くの探索結果をわかりやすく且つ密集しないように地図ビュー上に示すことができる。本実施形態に従って生成された地図ビューの一例を図12に示す。図中、フリーテキスト探索のナビゲーション可能な結果が地図ビューに示される。
図12から、強調レベルが上がったGUI要素は、ディスプレイにおける視覚的強調の増加、不透明度の増加、場所に関連する情報の増加、ユーザとユーザインタフェースとの対話を可能にするユーザインタフェースの機能性の増加のうちの1つ以上を提供することがわかる。例えば図12に示すように、強調が最低から最高までのGUI要素の範囲の例は、半透明ドット、低透明ドット、不透明ドット、マーカ、太いマーカである。強調レベルを上げることにより、対話のレベルが上昇される。例えば、GUI要素により示される探索結果に関する更なる情報を表示するためにユーザが選択できるのは3つの最も強調されるGUI要素のみであり、選択可能な機能をユーザに提供するために選択できるのは2つの最も強調されるGUI要素のみである。
場所は、ユーザクエリに対する適合性によりグループに分類され、各グループは、デジタル地図の詳細レベルと関連付けられる。場所のグループ分け及びグループへの関連する詳細レベルの割り当ては、場所の数、場所の分布、ユーザクエリに対する場所の想定される適合性、場所の可能なグループ分けを最小限のバウンディングボックスに含むために必要な詳細レベル、最高限度までの詳細レベルの範囲、適合性が最も高いグループにおける場所の設定数、グループの設定数、各グループにおける場所の設定数のうちの1つ以上に基づいて実行される。
本例において、フリーテキスト探索により返された50個のナビゲーション可能な場所は、ランク付け又はスコアの範囲に均等に分配された5つの等しいグループに分類される。この場合、各グループはサイズが等しくなるように、すなわち10個の場所を含むように選択される。しかし、別の有利なグループ分けのサイズ及び分配が採用されてもよい。
適合性が最も高いグループから最も低いグループまでの各グループは、徐々に高くなる詳細レベルと関連付けられる。デジタル地図の基本詳細レベル(切り換えボタン818を選択した際に地図ビュー830が最初に表示されるレベル)は、適合性が最も高い場所のグループの場所を含む最小限のバウンディングボックスに基づいて定義される。従って、本例において、第1のグループの10個の結果を表示するバウンディングボックスが地図ビュー830において最初に表示され、当該地図ビューに対するデジタル地図の拡大レベルに対して示される対応する詳細レベルは、適合性が最も高いグループに関連付けられる基本詳細レベルとして設定される。通常、拡大レベルが高くなると、より高い詳細レベルのデジタル地図が示される。
例えば、適合性が最も高い結果のグループが単一の道路に存在する10個の結果から構成される場合、地図は最初に、当該道路上の10個の結果を含むように最高の詳細レベルに拡大されて示され、道路に存在する適合性が最も高い結果の各々は10個のマーカで示され、道路上のあらゆる他の結果はドットで示される。同様に、10個の結果から構成される適合性の最も高いグループが欧州全体に散在する場合、地図は最初に、それらの結果を含むように最低の詳細レベルに縮小されて示され、最初の10個の結果はマーカとして示され、残りの結果はドットとして示される。
その場合、適合性が低い場所の各グループは、基本詳細レベルと比較して高い詳細レベルと関連付けられる。地図は、最初に基本詳細レベルで表示され、基本詳細レベルより高い詳細レベルと関連付けられたグループに属する場所は、適合性がひとつ低いグループに対するひとつ低い強調レベルを有するGUI要素を用いて示される。
本例において、地図が基本詳細レベルで表示される場合、各々が10個の探索結果を含む5つのグループの場所を示すために、5つの異なるGUI要素が以下のように使用される。
−50〜41にランク付けられた結果のグループ−半透明ドット
−40〜31にランク付けされた結果のグループ−低透明ドット
−30〜21にランク付けされた結果のグループ−不透明ドット
−20〜11にランク付けされた結果のグループ−マーカ
−10〜1にランク付けされた結果のグループ−太いマーカ
このように、基本詳細レベル等の所定の詳細レベルにおいて、相対的に低い強調レベルを有するGUI要素は、複数の場所のうちユーザクエリに対する適合性が低いと想定される場所を示すために使用され、相対的に高い強調レベルを有するGUI要素は、複数の場所のうちユーザクエリに対する適合性が高いと想定される場所を示すために使用される。
また、デジタル地図が所定の詳細レベルで表示される場合、表示される詳細レベルより高い詳細レベルと関連付けられたグループに属する場所は、適合性がひとつ低いグループに対するひとつ低い強調レベルのGUI要素を用いて示される。
デジタル地図が表示される詳細レベルが上げられる場合、所定の場所を示すために使用されるGUI要素は使用可能な高い強調レベルに変更され、デジタル地図が表示される詳細レベルが下げられる場合、所定の場所を示すために使用されるGUI要素は使用可能な低い強調レベルに変更される。
例えばユーザ入力に応答して、デジタル地図が開始詳細レベルから次に適合性の高いグループと関連付けられた終了詳細レベルに拡大される場合、各グループの場所を示すために使用されるGUI要素は次の使用可能な強調レベルに上げられる。上記の例において、デジタル地図が20〜11にランク付けされた結果のグループと関連付けられた詳細レベルで示されるように地図を初期ビュー(基本詳細レベル)から拡大することにより、場所のグループは以下のようにGUI要素を使用して地図上に示される。
−50〜41にランク付けられた結果のグループ−低透明ドット
−40〜31にランク付けされた結果のグループ−不透明ドット
−30〜21にランク付けされた結果のグループ−マーカ
−20〜11にランク付けされた結果のグループ−太いマーカ
−10〜1にランク付けされた結果のグループ−太いマーカ
尚、表示される詳細レベルより低い詳細レベルと関連付けられたグループに属する場所は、最も高い強調レベルを有するGUI要素を用いて示される。上記の例において、20〜11にランク付けされた結果のグループ及び10〜1にランク付けされた結果のグループは太いマーカを使用して示される。
その結果、地図が拡大され且つより高い詳細レベルが示される場合、より多くの探索結果が強調して示される。しかし、これは、可視の探索結果を減少することにより緩和される。当然、タッチ画面上でドラッグ又はスワイプすることにより地図がパンされる場合、不可視だった探索結果が可視になる。地図ビューのパン及びズーミングは探索クエリ又は表示される結果に影響を及ぼさず、それらは変化しない。
同様に、ユーザ入力に応答して、デジタル地図が開始詳細レベルから次に適合性の低いグループと関連付けられた終了詳細レベルに縮小される場合、各グループの場所を示すために使用されるGUI要素は次の使用可能な強調レベルに下げられる。上記の例において、結果20〜11のグループと関連付けられた詳細レベルから基本詳細レベルに地図を再度縮小することにより、場所のグループは、最初の地図ビューで使用されたGUI要素を使用して地図上に再び示される。
いずれの所定の詳細レベルの場合も、最低限の数の複数の場所が最も高い強調レベルを有するGUI要素で示されてもよい。例えば地図が基本詳細レベルから低い詳細レベルに縮小される場合、適合性が最も高い結果のグループは、依然として太いマーカを使用して示される。
更なる説明のために、図13は、フリーテキスト探索の100個の結果1301のランク付きリストをユーザクエリに対する適合性に従って20個ずつのグループに分類し且つ当該グループとデジタル地図の詳細レベルとを関連付ける例を示す。ランクが最も高いグループ1303aは、デジタル地図の基本詳細レベル14〜17と関連付けられる。ランクが2番目に高いグループ1303bは、デジタル地図の詳細レベル10〜13と関連付けられる。ランクが3番目に高いグループ1303bは、デジタル地図の詳細レベル7〜9と関連付けられる。簡潔にするため、ランクが4番目及び5番目に高いグループは本説明から省略する。
地図のビュー1305aは、基本詳細レベルのうちの1つ(すなわち、14、15、16又は17)の地図を示す。この場合、ランクが最も高いグループ1303a内の結果の場所はインタラクティブなマーカで示され、ランクが2番目に高いグループ1303b内の結果の場所は黒色の不透明マーカで示され、ランクが3番目に高いグループ1303c内の結果の場所は半透明の灰色のマーカで示される。
地図のビュー1305bは、ランクが2番目に高いグループ1303bに関連付けられた詳細レベル(すなわち、10、11、12又は13)に拡大された地図を示す。明らかなように、ランクが最も高いグループ1303a及びランクが2番目に高いグループ1303b内の結果の場所がインタラクティブなマーカで示され、ランクが3番目に高いグループ1303b内の結果の場所が黒色の不透明マーカで示される。
地図のビュー1305cは、ランクが3番目に高いグループ1303cと関連付けられた詳細レベル(すなわち、7、8又は9)に拡大された地図を示す。明らかなように、ランクが最も高いグループ1303a、ランクが2番目に高いグループ1303b及びランクが3番目に高いグループ1303cがインタラクティブなマーカで示される。
当然、場所のグループ分けは必ずしも必要でなく、場所を示すのに使用するGUI要素の判定は、地図の詳細レベル及びユーザクエリに対する場所の適合性に基づいて他の何らかの適切な方法で行われてもよい。
場所は、住所及び地点情報のうちの1つ以上を含む目的地、事故、遅延、道路閉鎖、道路工事、規制、交通量及び閉鎖車線のうちの1つ以上を含む交通イベント、並びに/あるいは、冠水、雪、氷、霧、道路の悪条件のうちの1つ以上を含む天候イベントを示してもよい。
上述のように、装置200はフリーテキスト探索エンジンを備え、複数の場所は、フリーテキスト探索クエリの処理に応答して返された住所及び地点情報のうちの1つ以上を含むナビゲーション可能な目的地である。
装置200は、ユーザ又は装置が生成したクエリに関連する現在の交通イベントを表す場所を返すように動作可能な交通イベントエンジンを更に備えてもよい。交通イベントクエリは、探索の中心、装置の現在地又は経路の周辺の交通イベント、あるいはデジタル地図のユーザが指定した範囲内の交通イベントに対する。
例えばユーザクエリが例えばユーザの経路に影響を及ぼす交通事象を示す地図ビューを表示することである場合、装置200が交通エンジンから入手できる交通情報は非常に密であり且つ豊富であるためディスプレイが見にくくなるため、上述の地図ビューは非常に有用である。デジタル地図が表示される詳細レベル及びユーザクエリに対する交通事象の関連性(例えば、ユーザの経路に対する影響)に基づいて交通事象を表すために選択されたGUI要素を使用することにより、地図ビュー上での当該データの視覚化は整理され、容易に把握でき且つ直感的に理解し且つ対話できる。
次に図14を参照する。図14は、出発地1403から目的地1405へのユーザの経路の地図ビュー1401及び多くの交通事象を示し、交通事象の場所は、ユーザの経路に対する各事象の関連性及び地図ビューの詳細レベルに依存して選択された異なる強調レベルを有するGUI要素を使用して示される。
地図を見る場合、ユーザは自身の経路にとって重要な交通事象を即座に理解する必要がある。従って、経路1407(又は更に代替経路1409)に影響を及ぼす交通事象は、それらの場所を示すために強調レベルの高いGUI要素を使用して強調される。当該事象は経路の上にレンダリングされ、事象の遅延時間を示す。
経路に関連するがユーザに影響を及ぼさない(例えば、反対方向である)他の交通事象は、強調レベルの低いGUI要素1411を使用して経路の下にレンダリングされる。所定の詳細レベルにおいて地図上で単線としてのみ(すなわち、方向情報を有さない)可視である道路上に存在するがユーザの経路に影響を及ぼさない交通事象は、影響が及ぶ道路の側部の道路の下に示されるGUI要素1413を同様に使用して示される。
閲覧される詳細レベルにおいて可視でない道路上の交通事象は、アイコンを用いずに、不透明ドット等の強調レベルが低いGUI要素1415を使用して示される。
地図が高い詳細レベルに拡大される場合、全ての交通事象は強調レベルが高いGUI要素に変化する。道路が異なる方向に対する別個の車線又は適切な幅の道路として可視になるため、事象は、影響が及ぶ方向に対して道路上でGUI要素を使用して更に強調して表示される。更に、道路が可視になると、不透明ドットは道路の下又は道路上に示されるGUI要素に変化する。適切な高さの詳細レベルに拡大された場合、事象に関連する遅延が示される。
その反対に、低い詳細レベルに縮小された場合、例えば道路が所定の強調レベルで不可視になるため、全ての交通事象は強調レベルの低いGUI要素に順次変化し、最終的に全ての交通イベントが不透明なドットで示される。
使用されるGUI要素は、事象のカテゴリを示すために色分けされてもよい。
変更及び変形
添付の特許請求の範囲により定義される本発明の実施形態から逸脱することなく、本明細書中で説明したナビゲーション装置200の実現例の多くの変更及び変形を行うことができる。例えば、前述の詳細な説明中で説明した実施形態はGPSを参照するが、時計は、GPSの代わりに(又は実際はGPSに追加して)あらゆる種類の位置検出技術を利用してもよい。例えば装置は、欧州のGalileoシステム等の他のグローバルナビゲーション衛星システムを利用してもよい。同様に、装置は衛星を使用するシステムに限定されず、地上ビーコン、あるいは時計が自身の地理的場所を判定できるようにする他の種類のシステムを使用しても容易に機能できる。
以上、本発明の種々の態様及び実施形態を説明したが、本発明の範囲は本明細書に記載される特定の構成に限定されるのではなく、添付の特許請求の範囲の範囲に含まれる全ての構成、並びにそれらに対する変更及び変形を含むことが理解されるだろう。更に、本明細書における図面及びその説明は、説明した方法ステップを実行する固定された順序を規定すると理解されるべきでない。方法ステップは、実行可能なあらゆる順序で実行されてもよい。
最後に、添付の特許請求の範囲は本明細書中で説明した特徴の特定の組み合わせを記載するが、本発明の範囲は、以下に特許請求される特定の組み合わせに限定されるのではなく、特定の組み合わせが添付の特許請求の範囲に特に記載されているか否かに関わらず、本明細書中で開示された特徴又は実施形態のあらゆる組み合わせを含む。