(57)【要約】【課題】１つまたは複数の目的地までの潜在的な道程を推定する。【解決手段】本システムおよび方法は、運転者履歴データを学習パラメータセットに変換し、前記学習パラメータセットと現在の道程データを解析して、潜在的な道程を示す推定道程データを生成し、現状データセットを取得し、前記推定道程データおよび前記現状データセットを解析して、前記推定道程データに関連するメトリックを決定し、前記推定道程データに関連する品質スコアを、前記メトリックに基づいて決定し、状況概要と、推定概要を決定し、前記状況概要と、前記推定概要を、前記推定道程データに関連づけ、前記推定道程データ、前記状況概要、および、前記推定概要を表示装置上に表示するための表示データを出力し、前記現在の道程データを、運転者履歴データに追加して格納する。【選択図】図１
2013127461.tif 000002
【特許請求の範囲】
【請求項１】
運転者履歴データを学習パラメータセットに変換するステップと、
前記学習パラメータセットと現在の道程データを解析して、１つまたは複数の潜在的な道程を示す推定道程データを生成するステップと、
現状データセットを取得するステップと、
前記推定道程データおよび前記現状データセットを解析して、前記推定道程データに関連する１つまたは複数のメトリックを決定するステップと、
前記推定道程データに関連する１つまたは複数の品質スコアを、前記１つまたは複数のメトリックに少なくとも部分的に基づいて決定するステップと、
１つまたは複数の状況概要と、１つまたは複数の推定概要を決定するステップと、
前記１つまたは複数の状況概要と、前記１つまたは複数の推定概要を、前記推定道程データに関連づけるステップと、
前記推定道程データ、前記１つまたは複数の状況概要、および、前記１つまたは複数の推定概要を表示装置上に表示するための表示データを出力するステップと、
前記現在の道程データを、運転者履歴データに追加して格納するステップと、
を含む方法。
【請求項２】
前記運転者履歴データは、１つまたは複数の過去目的地および１つまたは複数の推定目的地を含み、
前記推定道程データは、前記１つまたは複数の推定目的地に対応して生成される、
請求項１に記載の方法。
【請求項３】
前記１つまたは複数のメトリックのうちの１つは、１つまたは複数の潜在的な道程と関連づけられた推定異常状態と関係する、
請求項１に記載の方法。
【請求項４】
前記推定異常状態に関連するナビゲーションについての推薦を出力するステップを、さらに含む、
請求項３に記載の方法。
【請求項５】
前記学習パラメータセットは、学習テーブル内に配置される、
請求項１に記載の方法。
【請求項６】
前記推定道程データは、３つの潜在的な道程を示す、
請求項１に記載の方法。
【請求項７】
異なる潜在的道程に異なる品質スコアが関連づけられる、
請求項１に記載の方法。
【請求項８】
前記表示装置は、ナビゲーションシステムの構成要素である、
請求項１に記載の方法。
【請求項９】
運転者履歴レポジトリから、運転者履歴データセットを取得するステップと、
現在の道程の終了を検出するステップと、
前記現在の道程を示すデータを収集するステップと、
前記収集したデータを前記運転者履歴レポジトリに格納するステップと、
をさらに含む請求項１に記載の方法。
【請求項１０】
コンピュータに、
運転者履歴データを学習パラメータセットに変換するステップと、
前記学習パラメータセットと現在の道程データを解析して、１つまたは複数の潜在的な道程を示す推定道程データを生成するステップと、
現状データセットを取得するステップと、
前記推定道程データおよび前記現状データセットを解析して、前記推定道程データに関連する１つまたは複数のメトリックを決定するステップと、
前記推定道程データに関連する１つまたは複数の品質スコアを、前記１つまたは複数のメトリックに少なくとも部分的に基づいて決定するステップと、
１つまたは複数の状況概要と、１つまたは複数の推定概要を決定するステップと、
前記１つまたは複数の状況概要と、前記１つまたは複数の推定概要を、前記推定道程データに関連づけるステップと、
前記推定道程データ、前記１つまたは複数の状況概要、および、前記１つまたは複数の推定概要を表示装置上に表示するための表示データを出力するステップと、
前記現在の道程データを、運転者履歴データに追加して格納するステップと、
を実行させるためのコンピュータプログラム。
【請求項１１】
前記運転者履歴データは、１つまたは複数の過去目的地および１つまたは複数の推定目的地を含み、
前記推定道程データは、前記１つまたは複数の推定目的地に対応して生成される、
請求項１０に記載のコンピュータプログラム。
【請求項１２】
前記１つまたは複数のメトリックのうちの１つは、１つまたは複数の潜在的な道程と関連づけられた推定異常状態と関係する、
請求項１０に記載のコンピュータプログラム。
【請求項１３】
前記推定異常状態に関連するナビゲーションについての推薦を出力するステップを、さらにコンピュータに実行させる、
請求項１２に記載のコンピュータプログラム。
【請求項１４】
前記学習パラメータセットは、学習テーブル内に配置される、
請求項１０に記載のコンピュータプログラム。
【請求項１５】
前記推定道程データは、３つの潜在的な道程を示す、
請求項１０に記載のコンピュータプログラム。
【請求項１６】
異なる潜在的道程に異なる品質スコアが関連づけられる、
請求項１０に記載のコンピュータプログラム。
【請求項１７】
前記表示装置は、ナビゲーションシステムの構成要素である、
請求項１０に記載のコンピュータプログラム。
【請求項１８】
運転者履歴レポジトリから、運転者履歴データセットを取得するステップと、
現在の道程の終了を検出するステップと、
前記現在の道程を示すデータを収集するステップと、
前記収集したデータを前記運転者履歴レポジトリに格納するステップと、
をさらにコンピュータに実行させる請求項１０に記載のコンピュータプログラム。
【請求項１９】
運転者履歴データセットを学習パラメータセットに変換する変換モジュールと、
前記変換モジュールと通信可能に結合され、前記学習パラメータセットと現在の道程データを解析して、１つまたは複数の潜在的な道程を示す推定道程データを生成するととも
に、前記現在の道程データを運転者履歴データに追加して格納する頻度モジュールと、
前記頻度モジュールと通信可能に結合され、現状データセットを取得し、前記推定道程データおよび前記現状データセットを解析して、前記推定道程データに関連する１つまたは複数のメトリックを決定するメトリックモジュールと、
前記メトリックモジュールと通信可能に結合され、前記推定道程データに関連する１つまたは複数の品質スコアを、前記１つまたは複数のメトリックに少なくとも部分的に基づいて決定する品質モジュールと、
前記品質モジュールおよび前記頻度モジュールと通信可能に結合され、１つまたは複数の状況概要と、１つまたは複数の推定概要を決定し、前記１つまたは複数の状況概要と、前記１つまたは複数の推定概要を、前記推定道程データに関連づける概要モジュールと、
前記頻度モジュール、前記品質モジュールおよび前記概要モジュールと通信可能に結合され、前記推定道程データ、前記１つまたは複数の状況概要、および、前記１つまたは複数の推定概要を表示装置上に表示するための表示データを出力する出力モジュールと、
を備えるシステム。
【請求項２０】
前記運転者履歴データは、１つまたは複数の過去目的地および１つまたは複数の推定目的地を含み、
前記推定道程データは、前記１つまたは複数の推定目的地に対応して生成される、
請求項１９に記載のシステム。
【請求項２１】
前記１つまたは複数のメトリックのうちの１つは、１つまたは複数の潜在的な道程と関連づけられた推定異常状態と関係する、
請求項１９に記載のシステム。
【請求項２２】
前記出力モジュールは、前記推定異常状態に関連するナビゲーションについての推薦を出力する、
請求項２１に記載のシステム。
【請求項２３】
前記学習パラメータセットは、学習テーブル内に配置される、
請求項１９に記載のシステム。
【請求項２４】
前記推定道程データは、３つの潜在的な道程を示す、
請求項１９に記載のシステム。
【請求項２５】
異なる潜在的道程に異なる品質スコアが関連づけられる、
請求項１９に記載のシステム。
【請求項２６】
前記表示装置は、ナビゲーションシステムの構成要素である、
請求項１９に記載のシステム。
【請求項２７】
前記変換モジュールと通信可能に結合され、運転者履歴レポジトリから、運転者履歴データセットを取得する運転履歴モジュールと、
前記運転履歴モジュールと通信可能に結合され、現在の道程の終了を検出し、前記現在の道程を示すデータを収集し、前記収集したデータを前記運転者履歴レポジトリに格納する履歴モジュールと、
をさらに備える請求項１９に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書は、ナビゲーションシステムに関する。とりわけ本明細書は、１つまたは複数の目的地までの１つまたは複数の潜在的な道程を推定するためのシステムおよび方法に関する。
【背景技術】
【０００２】
全地球測位システム（ＧＰＳ）などのナビゲーションシステムは、道路で車両を運転するユーザにとって役に立つ。ユーザは目的地までのルート、局地的な交通状態、レストランの場所、推定到着時間、道路の制限速度、推定される道程の所要時間など、あらゆる種類の情報をナビゲーションシステムから得ることができる。しかし、既存のナビゲーションシステムは不十分であることが分かっており、数多くの問題を有する。
【０００３】
第１に、既存のナビゲーションシステムは、目的地までのルート、道程に関する運転指示、推定到着時間などの任意の運転情報をユーザに与える前に、道程を得るためにユーザが目的地を入力することを必要とする。既存のナビゲーションシステムは、ユーザがとる道程の目的地を予測できず、そのためユーザが目的地を入力しない場合は運転情報を提供することができない。
【０００４】
第２に、既存のナビゲーションシステムは、システム内に記憶されたもはや使われていないデータを削除するためのメカニズムを提供することができない。例えば、既存のナビゲーションシステムは、過去の道程のもはや使われていない目的地（例えばユーザが数年間訪れていない目的地）およびもはや使われていない目的地に関連するデータを自動的に削除することができず、このことは、とりわけシステム内で非常に限られた記憶空間しか利用できない場合にシステムが記憶空間を使い果たしてしまう可能性がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−２１４９３９号公報
【特許文献２】特開２０１１−１８５８５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は上記のような問題点を考慮してなされたものであり、その目的は、１つまたは複数の目的地までの潜在的な道程を推定可能にすることにある。
【課題を解決するための手段】
【０００７】
本明細書は、１つまたは複数の目的地までの１つまたは複数の潜在的な道程を推定するためのシステムおよび方法を提供することにより、従来技術の不完全性および制限を少なくとも部分的に克服する。本システムは、変換モジュール、頻度モジュール、メトリックモジュール、品質モジュール、概要モジュール、および出力モジュールを含む。変換モジュールは、運転者履歴データセットを学習パラメータセットに変換する。頻度モジュールは、前記学習パラメータセットと現在の道程データを解析して、１つまたは複数の潜在的な道程を示す推定道程データを生成する。頻度モジュールは、前記現在の道程データを運転者履歴データに追加して格納する。メトリックモジュールは、現状データセットを取得し、前記推定道程データおよび前記現状データセットを解析して、前記推定道程データに関連する１つまたは複数のメトリックを決定する。品質モジュールは、前記推定道程データに関連する１つまたは複数の品質スコアを、前記１つまたは複数のメトリックに少なく
とも部分的に基づいて決定する。概要モジュールは、１つまたは複数の状況概要と、１つまたは複数の推定概要を決定する。概要モジュールは、前記１つまたは複数の状況概要と、前記１つまたは複数の推定概要を、前記推定道程データに関連づける。出力モジュールは、前記推定道程データ、前記１つまたは複数の状況概要、および、前記１つまたは複数の推定概要を表示装置上に表示するための表示データを出力する。
【発明の効果】
【０００８】
本発明によれば、１つまたは複数の目的地までの潜在的な道程を推定することができる。
【図面の簡単な説明】
【０００９】
【図１】一実施形態による、１つまたは複数の目的地までの１つまたは複数の潜在的な道程を推定するためのシステムを例示する高レベルブロック図を示す。
【図２】一実施形態による学習システムを例示するブロック図を示す。
【図３】一実施形態による記憶装置を例示するブロック図を示す。
【図４】一実施形態による推定システムを例示するブロック図を示す。
【図５】別の実施形態による学習システムを例示するブロック図を示す。
【図６】一実施形態による忘却モジュールを例示するブロック図を示す。
【図７Ａ】一実施形態による、データを忘却するための方法を例示する流れ図を示す。
【図７Ｂ】一実施形態による、削除するデータを決定するための方法を例示する流れ図を示す。
【図８Ａ】一実施形態による、１つまたは複数の目的地までの１つまたは複数の潜在的な道程を決定するための方法を例示する流れ図を示す。
【図８Ｂ】一実施形態による、１つまたは複数の目的地までの１つまたは複数の潜在的な道程を決定するための方法を例示する流れ図を示す。
【図９】一実施形態による、現在の道程に関するデータのログを取るための方法を例示する流れ図を示す。
【図１０Ａ】一実施形態による、運転者履歴データを変換するための方法を例示する流れ図を示す。
【図１０Ｂ】一実施形態による、運転者履歴データを変換するための方法を例示する流れ図を示す。
【図１１】一実施形態による、運転優先傾向を学習するための方法を例示する流れ図を示す。
【図１２Ａ】一実施形態による、クラスタ内の位置を管理するための方法を例示する流れ図を示す。
【図１２Ｂ】一実施形態による、クラスタ内の位置を管理するための方法を例示する流れ図を示す。
【図１３Ａ】一実施形態による、異常状態を管理するための方法を例示する流れ図を示す。
【図１３Ｂ】一実施形態による、異常状態を管理するための方法を例示する流れ図を示す。
【図１３Ｃ】一実施形態による、異常状態を管理するための方法を例示する流れ図を示す。
【図１４Ａ】様々な実施形態によるメトリック推定ネットワークを例示するグラフィカル表現を示す。
【図１４Ｂ】様々な実施形態によるメトリック推定ネットワークを例示するグラフィカル表現を示す。
【図１５Ａ】一実施形態による、道程の時刻を変換するためのテーブルを例示するグラフィカル表現を示す。
【図１５Ｂ】一実施形態による、道程の所要時間を変換するためのテーブルを例示するグラフィカル表現を示す。
【図１５Ｃ】一実施形態による、道程の方向を変換するためのグラフを例示するグラフィカル表現を示す。
【図１６Ａ】一実施形態による、１つまたは複数のメトリックテーブルを列挙するテーブルのグラフィカル表現を示す。
【図１６Ｂ】様々な実施形態によるメトリックテーブルを例示するグラフィカル表現を示す。
【図１６Ｃ】様々な実施形態によるメトリックテーブルを例示するグラフィカル表現を示す。
【図１６Ｄ】様々な実施形態によるメトリックテーブルを例示するグラフィカル表現を示す。
【発明を実施するための形態】
【００１０】
添付図面の諸図面内に本明細書を限定としてではなく例として示し、それらの図面では同様の参照番号を使用して同様の要素を示す。
【００１１】
１つまたは複数の目的地までの１つまたは複数の道程を推定するためのシステムおよび方法について以下に記載する。以下の説明では、本発明を十分に理解できるように、多くの詳細について説明する。しかしながら、各実施形態はこれらの具体的な詳細無しでも良いことは当業者にとって明らかであろう。また、説明が不明瞭になることを避けるために、構造や装置をブロック図の形式で表すこともある。たとえば、一実施形態は、ユーザインタフェースおよび特定のハードウェアとともに説明される。しかし、ここでの説明は、データおよびコマンドを受信する任意のタイプの計算装置および任意の周辺機器について適用できる。
【００１２】
本明細書における「一実施形態」または「ある実施形態」等という用語は、その実施形態と関連づけて説明される特定の特徴・構造・性質が少なくとも本発明の一つの実施形態に含まれることを意味する。「一実施形態における」等という用語は本明細書内で複数用いられるが、これらは必ずしも同一の実施形態を示すものとは限らない。
【００１３】
また、本明細書においては、記載の簡略化のために各要素の数については、特に必要な場合以外は明示しない。すなわち、本明細書における「要素Ａを含む」等という表現は、少なくとも一つ以上の要素Ａを含むことを意味し、要素Ａを一つだけ含む場合と、二つ以上の複数個を含む場合の両方を意味する。また、同様に記載の簡略化のために、「Ａに基づいてＢを行う」という記載は「少なくとも部分的にＡに基づいて処理Ｂを行う」ことを意味する。この表現は、処理Ｂを行う際にＡに基づいていれば、Ａ以外の要素を考慮に入れていても良いし、Ａのみに基づいていても構わない。
【００１４】
以下の詳細な説明の一部は、非一時的（non-transitory）なコンピュータ可読記憶媒体に記憶されたデータビットに対する動作のアルゴリズムおよび記号的表現として提供される。これらのアルゴリズム的な説明および表現は、データ処理技術分野の当業者によって、他の当業者に対して自らの成果の本質を最も効果的に説明するために用いられるものである。なお、本明細書において（また一般に）アルゴリズムとは、所望の結果を得るための論理的な手順を意味する。処理のステップは、物理量を物理的に操作するものである。必ずしも必須ではないが、通常は、これらの量は記憶・伝送・結合・比較およびその他の処理が可能な電気的または磁気的信号の形式を取る。通例にしたがって、これらの信号をビット・値・要素・エレメント・シンボル・キャラクタ・項・数値などとして称することが簡便である。
【００１５】
なお、これらの用語および類似する用語はいずれも、適切な物理量と関連付いているものであり、これら物理量に対する簡易的なラベルに過ぎないということに留意する必要がある。以下の説明から明らかなように、特に断らない限りは、本明細書において「処理」「計算」「コンピュータ計算（処理）」「判断」「表示」等の用語を用いた説明は、コンピュータシステムや類似の電子的計算装置の動作および処理であって、コンピュータシステムのレジスタやメモリ内の物理的（電子的）量を、他のメモリやレジスタまたは同様の情報ストレージや通信装置、表示装置内の物理量として表される他のデータへ操作および変形する動作および処理を意味する。
【００１６】
本発明は、本明細書で説明される動作を実行する装置にも関する。この装置は要求される目的のために特別に製造されるものであっても良いし、汎用コンピュータを用いて構成しコンピュータ内に格納されるプログラムによって選択的に実行されたり再構成されたりするものであっても良い。このようなコンピュータプログラムは、コンピュータのシステムバスに接続可能な、例えばフロッピー（登録商標）ディスク・光ディスク・ＣＤ−ＲＯＭ・ＭＯディスク・磁気ディスクなど任意のタイプのディスク、読み込み専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、ＥＰＲＯＭ、ＥＥＰＲＯＭ、磁気カード、フラッシュメモリ、光学式カード、電子的命令を格納するために適した任意のタイプの媒体などの、非一時的なコンピュータ可読記憶媒体に記憶される。
【００１７】
発明の具体的な実施形態は、完全にハードウェアによって実現されるものでも良いし、完全にソフトウェアによって実現されるものでも良いし、ハードウェアとソフトウェアの両方によって実現されるものでも良い。好ましい実施形態は、ソフトウェアによって実現される。ここでソフトウェアとは、ファームウェア、常駐ソフトウェア、マイクロコードやその他のソフトウェアを含むものである。
【００１８】
さらに、ある実施形態は、コンピュータが利用あるいは読み込み可能な記憶媒体からアクセス可能なコンピュータプログラムプロダクトの形態を取る。この記憶媒体は、コンピュータや任意の命令実行システムによってあるいはそれらと共に利用されるプログラムコードを提供する。コンピュータが利用あるいは読み込み可能な記憶媒体とは、命令実行システムや装置によってあるいはそれらと共に利用されるプログラムを、保持、格納、通信、伝搬および転送可能な任意の装置を指す。
【００１９】
プログラムコードを格納・実行するために適したデータ処理システムは、システムバスを介して記憶素子に直接または間接的に接続された少なくとも１つのプロセッサを有する。記憶素子は、プログラムコードの実際の実行に際して使われるローカルメモリや、大容量記憶装置や、実行中に大容量記憶装置からデータを取得する回数を減らすためにいくつかのプログラムコードを一時的に記憶するキャッシュメモリなどを含む。
【００２０】
入力／出力（Ｉ／Ｏ）装置は、例えばキーボード、ディスプレイ、ポインティング装置などであるが、これらはＩ／Ｏコントローラを介して直接あるいは間接的にシステムに接続される。
【００２１】
システムにはネットワークアダプタも接続されており、これにより、私的ネットワークや公共ネットワークを介して他のデータ処理システムやリモートにあるプリンタや記憶装置に接続される。モデム、ケーブルモデム、イーサネット（登録商標）は、現在利用可能なネットワークアダプタのほんの一例である。
【００２２】
最後に、本明細書において提示されるアルゴリズムおよび表示は特定のコンピュータや他の装置と本来的に関連するものではない。本明細書における説明にしたがったプログラムを有する種々の汎用システムを用いることができるし、また要求された処理ステップを
実行するための特定用途の装置を製作することが適した場合もある。これら種々のシステムに要求される構成は、以下の説明において明らかにされる。さらに、本発明は、特定のプログラミング言語と関連づけられるものではない。本明細書で説明される本発明の内容を実装するために種々のプログラミング言語を利用できることは明らかであろう。
【００２３】
システム概要
図１は、一実施形態による、１つまたは複数の目的地までの１つまたは複数の潜在的な道程を推定するためのシステム１００のブロック図を示す。図示のシステム１００は、ナビゲーションシステム１０２、ソーシャルネットワークサーバ１２０、検索サーバ１２４、クライアント装置１３０、およびモバイル機器１３４を含む。システム１００のこれらのエンティティは、互いに通信可能に結合される。図示の実施形態では、これらのエンティティはネットワーク１０５を介して通信可能に結合される。
【００２４】
図１には、１つのナビゲーションシステム１０２、１つのソーシャルネットワークサーバ１２０、１つの検索サーバ１２４、１つのクライアント装置１３０、および１つのモバイル機器１３４を示すが、本説明は任意の数のナビゲーションシステム１０２、ソーシャルネットワークサーバ１２０、検索サーバ１２４、クライアント装置１３０、およびモバイル機器１３４を有する任意のシステムアーキテクチャにも当てはまる。さらに、ナビゲーションシステム１０２、ソーシャルネットワークサーバ１２０、検索サーバ１２４、クライアント装置１３０、およびモバイル機器１３４には１つのネットワーク１０５しか結合されていないが、実際は任意の数のネットワーク１０５をこれらのエンティティに接続することができる。
【００２５】
図示の実施形態では、ソーシャルネットワークサーバ１２０が信号線１０３を介してネットワーク１０５に通信可能に結合される。検索サーバ１２４は、信号線１０７を介してネットワーク１０５に通信可能に結合される。クライアント１３０は、信号線１１９および１２１の１つまたは複数を介してネットワーク１０５に通信可能に結合される。モバイル機器１３４は、信号線１１５および１１７の１つまたは複数を介してネットワーク１０５に通信可能に結合される。ナビゲーションシステム１０２は、信号線１０９、１１１、および１１３の１つまたは複数を介してネットワーク１０５に通信可能に結合される。一実施形態では、ナビゲーションシステム１０２内に含まれるネットワークインターフェイス１０８が、信号線１０９および１１１の１つまたは複数を介してネットワーク１０５に通信可能に結合される。ナビゲーションシステム１０２内に含まれる全地球測位システム（ＧＰＳ）１１０が、信号線１１３を介してネットワーク１０５に通信可能に結合される。一実施形態では、信号線１０３、１０７、１１１、１１７、および１２１のそれぞれは、有線接続（例えばケーブルによる接続）および無線接続（例えば無線ローカルエリアネットワーク（ＬＡＮ）接続）のうちの一方を表す。信号線１０９、１１３、１１５、および１１９のそれぞれは、無線接続（例えば無線ＬＡＮ接続、衛星接続等）を表す。
【００２６】
ネットワーク１０５は、有線または無線の従来型のネットワークであり、星状構成、トークンリング構成、または当業者に知られている他の構成など、任意の数の構成を有することができる。一実施形態ではネットワーク１０５には、ローカルエリアネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）（例えばインターネット）、および／または複数の装置がそれを介して通信する他の任意の相互接続データ経路のうちの１つもしくは複数が含まれる。別の実施形態では、ネットワーク１０５はピアツーピアネットワークである。ネットワーク１０５は、様々な異なる通信プロトコルでデータを送るための電気通信網に結合され、またはそのような電気通信網の一部を含む。例えば、ネットワーク１０５は３Ｇネットワークまたは４Ｇネットワークである。さらに別の実施形態では、ネットワーク１０５にはＢｌｕｅｔｏｏｔｈ（登録商標）通信ネットワーク、またはショートメッセージングサービス（ＳＭＳ）、マルチメディアメッセージングサービス（ＭＭＳ）、ハイ
パーテキスト転送プロトコル（ＨＴＴＰ）、直接データ接続、無線アプリケーションプロトコル（ＷＡＰ）、電子メールなどによるデータを送受信するためのセルラ通信ネットワークが含まれる。さらに別の実施形態では、ネットワーク１０５内のリンクの全てまたは一部が、セキュアソケットレイヤ（ＳＳＬ）、セキュアＨＴＴＰ、および／または仮想私設ネットワーク（ＶＰＮ）などの従来の暗号化技術を使用して暗号化される。
【００２７】
ナビゲーションシステム１０２は、ナビゲーション情報を提供するためのシステムである。例えばナビゲーションシステム１０２は、車両に埋め込まれる車載ナビゲーションシステムである。ナビゲーションシステム１０２は、プロセッサ１０４、メモリ１０６、ネットワークインターフェイス１０８、ＧＰＳ１１０、学習システム１１２、推定システム１１４、忘却モジュール１１６、記憶装置１１８、およびディスプレイ１６０を含む。図では１つのプロセッサ１０４、１つのメモリ１０６、１つのネットワークインターフェイス１０８、１つのＧＰＳ１１０、１つの学習システム１１２、１つの推定システム１１４、１つの忘却モジュール１１６、１つの記憶装置１１８、および１つのディスプレイ１６０しか示していないが、任意の数のこれらのコンポーネントをナビゲーションシステム１０２内で利用できることを当業者なら理解されよう。当業者は、ナビゲーションシステム１０２が、入力装置、音声システム、およびナビゲーションシステムによくある他のコンポーネントなど、図１には示さない他の任意のコンポーネントを含み得ることも理解されよう。
【００２８】
プロセッサ１０４は、算術論理装置（ＡＬＵ）、マイクロプロセッサ、汎用コントローラ、または計算を実行し記憶装置１１８上に記憶されたデータを取得する等のための他のプロセッサアレイなどである。プロセッサ１０４はデータ信号を処理し、複雑命令セットコンピュータ（ＣＩＳＣ）アーキテクチャ、縮小命令セットコンピュータ（ＲＩＳＣ）アーキテクチャ、または複数の命令セットの組合せを実装するアーキテクチャが含まれる様々なコンピューティングアーキテクチャを含むことができる。図１には単一のプロセッサしか図示しないが、複数のプロセッサを含めることもできる。処理能力は、画像の表示ならびに画像の取得および伝送を支援することに限定されてもよい。処理能力は、様々な種類の特徴抽出およびサンプリングを含む、より複雑なタスクを実行するのに十分であり得る。他のプロセッサ、オペレーティングシステム、センサ、ディスプレイ、および物理的構成が可能であることは当業者には明らかである。
【００２９】
メモリ１０６は、プロセッサ１０４によって実行され得る命令および／またはデータを記憶する。それらの命令および／またはデータは、本明細書に記載する技法のいずれかおよび／または全てを実行するためのコードを含むことができる。メモリ１０６は、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）装置、スタティックランダムアクセスメモリ（ＳＲＡＭ）装置、フラッシュメモリ、または当技術分野で知られている他の何らかのメモリ装置とすることができる。一実施形態では、メモリ１０６には、ハードディスクドライブ、フロッピディスクドライブ、ＣＤ−ＲＯＭ装置、ＤＶＤ−ＲＯＭ装置、ＤＶＤ−ＲＡＭ装置、ＤＶＤ−ＲＷ装置、フラッシュメモリデバイス、より永久的な基盤上に情報を記憶するための当技術分野で知られている他の何らかの大容量記憶装置などの、不揮発性メモリまたは同様の永久記憶装置および媒体も含まれる。
【００３０】
ネットワークインターフェイス１０８は、ナビゲーションシステム１０２をネットワークに接続するためのインターフェイスである。例えばネットワークインターフェイス１０８は、ナビゲーションシステム１０２をネットワーク１０５に接続するネットワークアダプタである。ネットワークインターフェイス１０８は、信号線１１１および１０９の１つまたは複数を介してネットワーク１０５に通信可能に結合される。一実施形態では、ネットワークインターフェイス１０８が、ネットワーク１０５を介してソーシャルネットワークサーバ１２０、検索サーバ１２４、クライアント１３０、およびモバイル機器１３４の
１つまたは複数からデータを受け取る。ネットワークインターフェイス１０８は、その受け取ったデータをナビゲーションシステム１０２の１つまたは複数のコンポーネント（例えば学習システム１１２、推定システム１１４等）に送る。別の実施形態では、ネットワークインターフェイス１０８がナビゲーションシステム１０２の１つまたは複数のコンポーネントからデータを受け取り、そのデータを、ネットワーク１０５を介してソーシャルネットワークサーバ１２０、検索サーバ１２４、クライアント１３０、およびモバイル機器１３４の１つまたは複数に送る。
【００３１】
一実施形態では、ネットワークインターフェイス１０８が、ネットワーク１０５または別の通信チャネルへの直接物理接続用のポートを含む。例えばネットワークインターフェイス１０８には、ユニバーサルシリアルバス（ＵＳＢ）、カテゴリ５ケーブル（ＣＡＴ−５）、またはネットワーク１０５との有線通信用の同様のポートが含まれる。別の実施形態では、ネットワークインターフェイス１０８は、ＩＥＥＥ  ８０２．１１、ＩＥＥＥ  ８０２．１６、Ｂｌｕｅｔｏｏｔｈ（登録商標）、近距離無線通信（ＮＦＣ）、他の適切な無線通信方法など、１つまたは複数の無線通信方法を使用してネットワーク１０５または別の通信チャネルとデータをやり取りするための無線トランシーバを含む。一実施形態では、ネットワークインターフェイス１０８は、短距離通信用の無線周波（ＲＦ）を発生させるＮＦＣチップを含む。
【００３２】
ＧＰＳ１１０は、位置データおよびタイムスタンプデータを提供するためのシステムである。例えばＧＰＳ１１０は、リアルタイムで車両の位置を突き止め、現在時刻を示すタイムスタンプデータを提供する従来のＧＰＳである。一実施形態ではＧＰＳ１１０が、位置データおよびタイムスタンプデータを学習システム１１２、推定システム１１４、および忘却モジュール１１６の１つまたは複数に送る。当業者は、ＧＰＳ１１０が運転情報（例えば目的地までの運転指示、推定到着時間等）およびガソリンスタンド、レストラン、ホテル等に関する情報などの他の情報をユーザに与えることができることを理解されよう。
【００３３】
学習システム１１２は、運転者履歴データを処理するためのコードおよびルーチンである。一実施形態では、学習システム１１２は、プロセッサ１０４のオンチップ記憶装置（図示せず）内に記憶されるコードおよびルーチンを含む。別の実施形態では、学習システム１１２は、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）や特定用途向け集積回路（ＡＳＩＣ）などのハードウェアを使用して実装される。さらに別の実施形態では、学習システム１１２はハードウェアとソフトウェアとの組合せを使用して実装される。学習システム１１２については、図２、図５、および図８Ａ〜１３Ｃを参照しつつ以下でより詳しく説明する。
【００３４】
運転者履歴データとは、ユーザが過去に走行した道程を示すデータである。例えば運転者履歴データは、出発点、出発データ（例えば出発時間、出発の曜日、出発の週、および出発の日付等）、方向データ、所要時間データ、終着点、到着データ（例えば到着時間、到着の曜日、到着の週、および到着の日付等）、終着点の関心地点（ＰＯＩ）データなど、過去の道程に関連するデータを含む。一実施形態では、運転者履歴データは過去の（実際の）目的地と潜在的な道程の推定目的地を示す。過去の道程における目的地を、過去の目的地と呼ぶ。潜在的な道程における目的地を、推定目的地と呼ぶ。潜在的な道程とは、ユーザがとる可能性が高い道程である。図２を参照して以下に説明するように、推定目的地は１つまたは複数の過去の目的地から生成される。運転者履歴データについては、図３を参照しつつ以下でより詳しく説明する。
【００３５】
推定システム１１４は、道程の目的地を推定するためのコードおよびルーチンである。一実施形態では、推定システム１１４は、プロセッサ１０４のオンチップ記憶装置（図示
せず）内に記憶されるコードおよびルーチンを含む。別の実施形態では、推定システム１１４は、ＦＰＧＡやＡＳＩＣなどのハードウェアを使用して実装される。さらに別の実施形態では、推定システム１１４はハードウェアとソフトウェアとの組合せを使用して実装される。推定システム１１４については、図４および図８Ａ〜１３Ｃを参照しつつ以下でより詳しく説明する。
【００３６】
忘却モジュール１１６は、ナビゲーションシステム１０２のメモリからデータを削除するためのコードおよびルーチンである。一実施形態では、忘却モジュール１１６は、プロセッサ１０４のオンチップ記憶装置（図示せず）内に記憶されるコードおよびルーチンを含む。別の実施形態では、忘却モジュール１１６は、ＦＰＧＡやＡＳＩＣなどのハードウェアを使用して実装される。さらに別の実施形態では、忘却モジュール１１６はハードウェアとソフトウェアとの組合せを使用して実装される。忘却モジュール１１６については、図６および図７Ａ〜７Ｂを参照しつつ以下でより詳しく説明する。
【００３７】
記憶装置１１８は、データを記憶する非一時的なメモリである。例えば記憶装置１１８は、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）装置、スタティックランダムアクセスメモリ（ＳＲＡＭ）装置、フラッシュメモリ、または当技術分野で知られている他の何らかのメモリ装置である。一実施形態では、記憶装置１１８には、ハードディスクドライブ、フロッピディスクドライブ、コンパクトディスク読取専用メモリ（ＣＤ−ＲＯＭ）装置、デジタル多用途ディスク読取専用メモリ（ＤＶＤ−ＲＯＭ）装置、デジタル多用途ディスクランダムアクセスメモリ（ＤＶＤ−ＲＡＭ）装置、デジタル多用途ディスク書替え可能（ＤＶＤ−ＲＷ）装置、フラッシュメモリデバイス、当技術分野で知られている他の何らかの不揮発性記憶装置などの、不揮発性メモリまたは同様の永久記憶装置および媒体も含まれる。記憶装置１１８については、図３を参照しつつ以下でより詳しく説明する。
【００３８】
ディスプレイ１６０は、ユーザにデータを表示するための任意の装置である。例えばディスプレイ１６０は、タッチスクリーンディスプレイ装置、液晶ディスプレイ（ＬＣＤ）、および当業者に知られている他の任意の従来のディスプレイ装置のうちの１つである。
【００３９】
ソーシャルネットワークサーバ１２０は、プロセッサ（図示せず）と、ユーザにソーシャルネットワークを提供するためのデータを記憶するコンピュータ可読記憶媒体（図示せず）とを有する、任意のコンピューティングデバイスである。１つのソーシャルネットワークサーバ１２０しか図示しないが、複数のサーバが存在してもよいことを当業者なら理解されよう。ソーシャルネットワークは、ユーザが共通の特徴によって結び付けられる任意の種類の社会構造、例えばＯｒｋｕｔ（登録商標）である。共通の特徴には、友人関係、家族、職業、関心事などが含まれる。明示的に定義される関係および他のユーザとの社会的つながりによって暗に示される関係を含め、共通の特徴は、システム１００内に含まれる１つまたは複数のソーシャルネットワーキングシステムによって提供され、それらの関係はソーシャルグラフ内に定められる。ソーシャルグラフは、ソーシャルネットワーク内の全ユーザについての、およびそれらのユーザが互いにどのように関係するのかについてのマッピングである。
【００４０】
図示の実施形態では、ソーシャルネットワークサーバ１２０がソーシャルネットワークアプリケーション１２２を含む。ソーシャルネットワークアプリケーション１２２はソーシャルネットワークサーバ１２０のメモリ（図示せず）上に記憶されるコードおよびルーチンを含み、それらのコードおよびルーチンは、ソーシャルネットワークサーバ１２０のプロセッサ（図示せず）によって実行されるとき、クライアント装置１３０および／またはモバイル機器１３４がネットワーク１０５を介してアクセス可能なソーシャルネットワークをソーシャルネットワークサーバ１２０に提供させる。一実施形態では、ユーザがソ
ーシャルネットワーク上でコメントを公開する。例えば、ソーシャルネットワークアプリケーション１２２のユーザが状況更新を行い、他のユーザがその状況更新に対してコメントをする。別の実施形態では、車両内にいるユーザが、ナビゲーションシステム１０２に追加されるソーシャル機能によってソーシャルネットワークと対話する。例えば、ユーザはナビゲーションシステム１０２のディスプレイ１６０によって提示されるグラフィカルユーザインターフェイス（ＧＵＩ）上に示される「共有」ボタンなどのソーシャルグラフィックをクリックして、道程に関する情報（例えば道程に関連する出発点、終着点、出発点から終着点までのルート等）をソーシャルネットワーク内で共有する。
【００４１】
検索サーバ１２４は、プロセッサ（図示せず）と、ユーザに検索サービスを提供するためのデータを記憶するコンピュータ可読記憶媒体（図示せず）とを有する、任意のコンピューティングデバイスである。図示の実施形態では、検索サーバ１２４が検索モジュール１２６を含む。検索モジュール１２６は、ユーザに１つまたは複数の検索結果を提供するためのコードおよびルーチンである。一実施形態では、検索モジュール１２６はネットワーク１０５を介してユーザからクエリを受け取り、そのクエリに一致する結果を得るために複数のデータソース（例えば検索サーバ１２４内に含まれるデータソース、ソーシャルネットワークサーバ１２０のデータソース等）を検索し、結果をユーザに送る。例えば検索モジュール１２６は、ナビゲーションシステム１０２を操作するユーザから現地のレストランに関するレビューを検索するための入力を受け取る。検索モジュール１２６は、一致する結果を得るために複数のデータソースを検索し、ネットワーク１０５を介してナビゲーションシステム１０２に結果を送り、ディスプレイ１６０にその結果をユーザに向けて提示させる。
【００４２】
クライアント１３０は、メモリ（図示せず）およびプロセッサ（図示せず）を含む任意のコンピューティングデバイスである。例えばクライアント１３０は、パーソナルコンピュータ（「ＰＣ」）、携帯電話（例えばスマートフォン、フィーチャーフォン等）、タブレットコンピュータ（タブレットＰＣ）、ラップトップ等である。他の種類のクライアント１３０もあり得ることを当業者なら理解されよう。一実施形態では、システム１００は様々な種類のクライアント１３０の組合せを含む。
【００４３】
クライアント１３０は、ブラウザ１３２を含む。一実施形態では、ブラウザ１３２はクライアント１３０のメモリ内に記憶され、クライアント１３０のプロセッサによって実行されるコードおよびルーチンである。例えばブラウザ１３２は、Ｇｏｏｇｌｅ  Ｃｈｒｏｍｅ、Ｍｏｚｉｌｌａ  Ｆｉｒｅｆｏｘなどのブラウザアプリケーションである。一実施形態では、ブラウザ１３２がクライアント１３０のディスプレイ装置（図示せず）上でユーザにＧＵＩを提示し、ユーザがＧＵＩによって情報を入力できるようにする。
【００４４】
モバイル機器１３４は、メモリ（図示せず）およびプロセッサ（図示せず）を含む任意のモバイルコンピューティングデバイスである。例えばモバイル機器１３４は、携帯電話（例えばスマートフォン、フィーチャーフォン等）、タブレットコンピュータ（またはタブレットＰＣ）、ラップトップ等である。他の種類のモバイル機器１３４もあり得ることを当業者なら理解されよう。一実施形態では、システム１００は様々な種類のモバイル機器１３４の組合せを含む。
【００４５】
モバイル機器１３４は、シンアプリケーション１３６を含む。一実施形態では、シンアプリケーション１３６はモバイル機器１３４のメモリ内に記憶され、モバイル機器１３４のプロセッサによって実行されるコードおよびルーチンである。例えばシンアプリケーション１３６は、ユーザがナビゲーションシステム１０２と対話するためのＧＵＩを提供するアプリケーションである。
【００４６】
システム１００は、例えばユーザが車両のエンジンをかけたときに、複数の推定目的地（または潜在的な道程）をユーザに提供することができるのでとりわけ有利である。システム１００は、道程の目的地をユーザが入力することを必要とせず、ＧＰＳ１１０が自らの位置を突き止めている限り、システム１００内に記憶された運転者履歴データに少なくとも部分的に基づいて、潜在的な道程に関する情報をユーザに実時間で自動的に提供する。さらにシステム１００は、ユーザが新たな道程をとる場合には運転者履歴データを更新するので、その結果道程の推定精度が常に改善される。システム１００はさらに、もはや使われていない目的地に関連する不要なデータを削除して記憶空間を節約し、図６を参照して以下に説明するように、道程の推定に不要なデータの影響を最小限にする。
【００４７】
学習システム
次に図２および図５を参照して、学習システム１１２をより詳細に示す。図２は、一実施形態による学習システム１１２を示すブロック図である。学習システム１１２は、バス２２０を介してナビゲーションシステム１０２の他のエンティティと通信する。プロセッサ１０４は、信号線２３８を介してバス２２０に通信可能に結合される。推定システム１１４は、信号線２４２を介してバス２２０に通信可能に結合される。記憶装置１１８は、信号線２４４を介してバス２２０に通信可能に結合される。ＧＰＳ１１０は、信号線２４０を介してバス２２０に通信可能に結合される。一実施形態では、ＧＰＳ１１０がタイムスタンプジェネレータ２１７を含む。タイムスタンプジェネレータ２１７は、一実施形態では信号線２４６を介してバス２２０に直接結合されることを示すために破線を使って図示する。
【００４８】
タイムスタンプジェネレータ２１７は、プロセッサ１０４によって実行される、時間を示すタイムスタンプデータを生成するコードおよびルーチンである。例えばタイムスタンプジェネレータ２１７は、車両を運転するユーザが新たな道程に出るときの、出発時間、曜日、および日付を示す第１のタイムスタンプを生成し、ユーザが目的地に到着するときの、到着時間、曜日、および日付を示す第２のタイムスタンプを生成する。タイムスタンプジェネレータ２１７は、時間を示すタイムスタンプデータを学習システム１１２、推定システム１１４、および忘却モジュール１１６のうちの１つまたは複数に送る。
【００４９】
学習システム１１２は、第１の通信モジュール２０１、運転履歴モジュール２０３、変換モジュール２０５、およびＧＵＩモジュール２１５を含む。場合により、学習システム１１２は、頻度モジュール２０６、メトリックモジュール２０７、品質モジュール２０９、概要モジュール２１０、出力モジュール２１１、および履歴モジュール２１３のうちの１つまたは複数をさらに含んでもよい。学習システム１１２の各コンポーネントは、バス２２０を介して互いに通信可能に結合される。頻度モジュール２０６、メトリックモジュール２０７、品質モジュール２０９、概要モジュール２１０、出力モジュール２１１、および履歴モジュール２１３が破線によって示されているのは、一実施形態ではこれらのコンポーネントが推定システム１１４内に含まれることを示すためである。
【００５０】
第１の通信モジュール２０１は、プロセッサ１０４によって実行される、学習システム１１２のコンポーネントとシステム１００の他のコンポーネントとの間の通信を処理するコードおよびルーチンである。例えば第１の通信モジュール２０１は、システム１００の他のコンポーネント（例えば推定システム１１４、ＧＰＳ１１０等）からデータを受け取り、そのデータを学習システム１１２のコンポーネント（例えば運転履歴モジュール２０３、変換モジュール２０５等）に送る。第１の通信モジュール２０１は、信号線２２２を介してバス２２０に通信可能に結合される。一実施形態では、第１の通信モジュール２０１は、学習システム１１２のコンポーネント間の通信も処理する。例えば第１の通信モジュール２０１は、メトリックモジュール２０７から１つまたは複数のメトリックを受け取り、その１つまたは複数のメトリック（metric）を品質モジュール２０９に送る。なお、
メトリックとは、ここでは道程の状態を数量化するための解析的な測定あるいは評価を意味するが、その詳細については以下でより詳しく説明する。
【００５１】
一実施形態では、第１の通信モジュール２０１が記憶装置１１８からデータ（例えば運転者履歴データ、学習パラメータセット等）を取得し、その取得したデータを学習システム１１２のコンポーネント（例えば運転履歴モジュール２０３、頻度モジュール２０６等）に送る。別の実施形態では、第１の通信モジュール２０１が学習システム１１２のコンポーネント（例えば変換モジュール２０５）からデータ（例えば学習パラメータセット）を受け取り、そのデータを記憶装置１１８内に記憶する。当業者は、第１の通信モジュール２０１が本明細書に記載の他の機能を提供してもよいことを理解されよう。
【００５２】
運転履歴モジュール２０３は、プロセッサ１０４によって実行される、運転者履歴データを記憶装置１１８から取得するコードおよびルーチンである。例えば運転履歴モジュール２０３は、運転者履歴データを運転者履歴リポジトリ３１６から取得し、その運転者履歴データを変換モジュール２０５に送る。運転者履歴リポジトリ３１６については、図３を参照しつつ以下でより詳しく説明する。運転履歴モジュール２０３は、信号線２２４を介してバス２２０に通信可能に結合される。
【００５３】
変換モジュール２０５は、プロセッサ１０４によって実行される、運転者履歴データを学習パラメータセット（学習パラメータの集合）に変換するコードおよびルーチンである。例えば変換モジュール２０５は、運転者履歴データを運転履歴モジュール２０３から受け取り、その運転者履歴データを以下に説明するように学習パラメータセットに変換する。変換モジュール２０５は、信号線２２６を介してバス２２０に通信可能に結合される。
【００５４】
上記に記載したように、運転者履歴データは、出発点、出発データ（例えば出発時間、出発の曜日、出発の週、および出発の日付等）、方向データ、所要時間データ、終着点、到着データ（例えば到着時間、到着の曜日、到着の週、および到着の日付等）、終着点のＰＯＩデータなど、１つまたは複数の過去の道程に関連するデータを含む。一実施形態では、出発時間は時刻とも呼ばれる。出発の曜日は、曜日とも呼ばれる。出発の週は、年の週と呼ばれる。出発の日付は、年の日付と呼ばれる。
【００５５】
一実施形態では、変換モジュール２０５が、ある道程（例えば過去の道程、現在の道程、または潜在的な道程等）の出発時間（例えば４：００：００ｐｍ）を複数の不均一区分の１つへと変換する。例えば変換モジュール２０５は、ある道程の出発時間を深夜、朝、昼、午後、および夜のうちの１つの時間帯に変換する。出発時間を変換するための表の一例を図１５Ａに示す。
【００５６】
図１５Ａに示す例では、道程の出発時間が午前零時と４：５９：５９ａｍとの間にある場合、変換モジュール２０５は出発時間を「深夜」という時間帯に変換する。あるいは、出発時間が５：００：００ａｍと１０：５９：５９ａｍとの間にある場合、変換モジュール２０５は出発時間を「朝」という時間帯に変換する。出発時間が１１：００：００ａｍと１：５９：５９ｐｍとの間にある場合、変換モジュール２０５は出発時間を「昼」という時間帯に変換する。出発時間が２：００：００ｐｍと７：５９：５９ｐｍとの間にある場合、変換モジュール２０５は出発時間を「午後」という時間帯に変換する。出発時間が８：００：００ｐｍと１１：５９：５９ｐｍとの間にある場合、変換モジュール２０５は出発時間を「夜」という時間帯に変換する。同様に、変換モジュール２０５は、ある道程の到着時間を複数の不均一区分（時間帯）の１つへと変換する。例えば変換モジュール２０５は、到着時間を深夜、朝、昼、午後、および夜のうちの１つの時間帯に変換する。
【００５７】
変換モジュール２０５は、ある道程の出発の曜日（例えば木曜日）を複数の不均一区分
の１つへと変換する。例えば変換モジュール２０５は、道程の出発の曜日を平日および週末のうちの一方に変換する。例えば出発の曜日が月曜日から金曜日の場合、変換モジュール２０５は出発の曜日を「平日」に変換する。出発の曜日が土曜日または日曜日の場合、変換モジュール２０５は出発の曜日を「週末」に変換する。同様に、変換モジュール２０５は、ある道程の到着の曜日を複数の不均一区分の１つへと変換する。例えば変換モジュール２０５は、到着の曜日を平日および週末のうちの一方に変換する。
【００５８】
変換モジュール２０５は、ある道程の道程所要時間（例えば１０分）を複数の不均一区分の１つに変換する。例えば変換モジュール２０５は、道程の所要時間を短い、中位、および長いのうちの１つに変換する。道程の所要時間を変換するための表の一例を図１５Ｂに示す。一実施形態では、道程の所要時間を整数に切り上げる。例えば道程の所要時間が１４分５０秒の場合、変換モジュール２０５は道程の所要時間を１５分として切り上げる。
【００５９】
図１５Ｂに示す例では、道程の所要時間が０分から１４分の間にある場合、変換モジュール２０５は道程の所要時間を「短い」に変換する。道程の所要時間が１５分から２９分の間にある場合、変換モジュール２０５は道程の所要時間を「中位」に変換する。道程の所要時間が３０分以上の場合、変換モジュール２０５は道程の所要時間を「長い」に変換する。
【００６０】
変換モジュール２０５は、道程の方向を東、南東、南、南西、西、北西、北、および北東のうちの１つに変換する。図１５Ｃに、一実施形態による、方向を変換するための一例のグラフィカル表現を示す。図１５Ｃについては以下でより詳しく説明する。
【００６１】
変換モジュール２０５は、これら複数の変換済みデータを学習パラメータセットとして記憶装置１１８内に記憶する。学習パラメータは、道程に関連する任意のパラメータである。例えば学習パラメータは、道程についての、出発点、出発時間、出発の日付、出発の曜日、年の週、方向、道程の所要時間、終着地点、道程の目的地のＰＯＩ、到着時間、到着の日付、到着の曜日等のうちのいずれかである。一実施形態では、学習パラメータは、前回の道程の出発点（図１４Ａに「以前の起点−１」として示す）および前々回の道程の出発点（図１４Ａに「以前の起点−２」として示す）のうちのいずれかである。学習パラメータセットは、１つまたは複数の道程についての出発点、出発時間、出発の日付、曜日、年の週、方向、道程の所要時間、終着地点（または道程の目的地の位置）、道程の目的地のＰＯＩ、到着時間、到着の日付等の任意の組合せである。一実施形態では、学習パラメータセットは、前回の道程の出発点および前々回の道程の出発点をさらに含む。
【００６２】
一実施形態では、学習パラメータセットには、変換されていない運転者履歴データが含まれる。別の実施形態では、学習パラメータセットには、上記に記載したように変換モジュール２０５によって生成される変換済みの運転者履歴データが含まれる。さらに別の実施形態では、学習パラメータセットには、運転者履歴データに含まれる変換されていないデータ（例えば出発の日付、到着の日付等）および上記に記載したように変換モジュール２０５によって生成される変換済みデータ（例えば平日や週末のような変換された曜日、時間帯のような変換された時刻等）が含まれる。当業者は、学習パラメータセットが本明細書に記載の機能を提供するための他の任意のデータを含み得ることを理解されよう。
【００６３】
頻度モジュール２０６は、プロセッサ１０４によって実行される、学習パラメータセットを分析するコードおよびルーチンである。例えば頻度モジュール２０６は、学習パラメータセットを変換モジュール２０５から受け取り、その学習パラメータセットに少なくとも部分的に基づき、各目的地についての発生頻度（occurring frequency）を求める。学
習パラメータに関する発生頻度とは、その学習パラメータが発生する頻度である。例えば
目的地に関する発生頻度は、ユーザがその目的地を訪れた頻度である（例えばユーザがガソリンスタンドを１０回訪れている）。頻度モジュール２０６は、信号線２２７を介してバス２２０に通信可能に結合される。
【００６４】
一実施形態では、頻度モジュール２０６が１つまたは複数の学習テーブルを生成し、その１つまたは複数の学習テーブル内に学習パラメータセットを配置する。例えば頻度モジュール２０６は、目的地データなどの学習パラメータセットを学習テーブル内に記憶する。目的地データとは、１つまたは複数の目的地を記述するデータであり、目的地ごとのエントリ（例えば各目的地までの道程の曜日および時刻を示すタイムスタンプデータや、各目的地への方向を示す方向データ等）を記述するデータである。学習テーブルとは、学習パラメータセットを記憶するためのテーブルである。学習テーブル内に記憶されるデータについては、図３を参照しつつ以下でより詳しく説明する。
【００６５】
別の実施形態では、頻度モジュール２０６が学習パラメータセットを分析し、分析結果を記憶するための１つまたは複数のメトリックテーブルを生成する。例えば頻度モジュール２０６は、ユーザが訪れたことのある目的地ごとの発生頻度をカウントし、その目的地ごとの発生頻度をメトリックテーブル内に記憶する。図１６Ｂおよび図１６Ｃに、発生頻度を記憶するためのメトリックテーブルの例を示す。メトリックテーブルについては、以下でより詳しく説明する。
【００６６】
さらに別の実施形態では、頻度モジュール２０６が、全ての目的地の発生頻度に少なくとも部分的に基づいて目的地ごとの発生確率を求め、その発生確率を記憶するためのメトリックテーブルを生成する。目的地に関する発生確率は、目的地が訪れられる確率である。図１６Ｄに、発生確率を記憶するためのメトリックテーブルの一例を示す。
【００６７】
さらに別の実施形態では、頻度モジュール２０６が、変換モジュール２０５から受け取る新たな学習パラメータセットに基づいて１つまたは複数のメトリックテーブルおよび／または学習テーブルを更新する。
【００６８】
メトリックテーブルとは、１つまたは複数の学習パラメータに関する１つまたは複数の発生頻度および／または発生確率を記憶するためのテーブルである。例えば、メトリックテーブルは、ユーザが第１の目的地（例えばガソリンスタンド）を５回訪れ、第２の目的地（例えばジム）を２０回訪れていることを示すデータを含む。メトリックテーブルは、頻度テーブルおよび確率テーブルのうちの一方である。一実施形態では、メトリックテーブルには、１つまたは複数の他の学習パラメータを条件とした場合の１つまたは複数の目的地に関する１つまたは複数の発生頻度が列挙される。例えばメトリックテーブルは、時間帯が「夜」である場合に、ユーザが第１の目的地（例えばジム）を２０回訪れ、第２の目的地（例えばレストラン）を５回訪れていることを示すデータを含む。発生頻度を示すメトリックテーブルを頻度テーブルと呼ぶ。別の実施形態では、メトリックテーブルは、他の学習パラメータについて条件を与えた場合の、目的地に関する発生確率を示すデータを含む。図１６Ａに、発生確率を示すメトリックテーブルの例を列挙する。発生確率を記憶するメトリックテーブルも同様に確率テーブルと呼ぶ。図１６Ｄに確率テーブルの一例を示す。
【００６９】
一実施形態では、頻度モジュール２０６が、発生頻度が最も高い２つの目的地をメトリックテーブル（例えば図１６Ａに示す目的地テーブル「ｄｅｓｔＴａｂｌｅ」）から選択する。頻度モジュール２０６は、その２つの目的地を「自宅」および「職場」としてそれぞれラベル付けする。例えば頻度モジュール２０６は、発生頻度が最も高い目的地を「自宅」として指定し、発生頻度が２番目に高い目的地を「職場」として指定する。一実施形態では、頻度モジュール２０６が目的地「職場」、「自宅」または他の任意の目的地ごと
に発生頻度を再計算する。別の実施形態では、頻度モジュール２０６が目的地「職場」、「自宅」または他の任意の目的地ごとに１つまたは複数の発生確率（例えば条件付き確率、結合条件付き確率、結合確率等）を求める。
【００７０】
一実施形態では、頻度モジュール２０６が学習パラメータセットを分析して、潜在的な道程の候補セットを求める。例えば頻度モジュール２０６は、１つまたは複数のメトリックテーブルに少なくとも部分的に基づいて、１つまたは複数の頻度の高い出発地点（例えば発生頻度が最も高い起点の出発地点）および頻度の高い終着地点（例えば発生頻度が最も高い目的地の終着地点）を抽出し、頻度の高い出発地点から頻度の高い終着地点までの道程として候補セットを求める。この候補セットは、目的地までの潜在的な道程に関する、頻度の高い出発地点および頻度の高い終着地点を示すデータを含む。一実施形態では、候補セットは３つの潜在的な道程を含む。
【００７１】
別の実施形態では、頻度モジュール２０６が起点ＩＤモジュール４０３から現在の道程データを受け取る。起点ＩＤモジュール４０３については、図４を参照して以下に説明する。現在の道程データは、出発点の起点識別情報（ＩＤ）、出発点の起点位置（例えば経度および緯度）、および道程の出発タイムスタンプ（例えば出発の時間、曜日、日付）を含む。当業者は、現在の道程データが道程に関連する他のデータを含んでもよいことを理解されよう。一実施形態では、頻度モジュールが、現在の道程データを追加の運転者履歴データとして運転者履歴リポジトリ３１６内に記憶する。
【００７２】
頻度モジュール２０６は、学習パラメータセットおよび現在の道程データを分析して、１つまたは複数の潜在的な道程を示す推定道程データを生成する。例えば頻度モジュール２０６は、現在の道程データ（起点ＩＤや起点位置など）に対応する頻度の高い終着地点（例えばその起点位置を条件とした場合の発生頻度が最も高い終着地点）を、１つまたは複数のメトリックテーブルから抽出する。頻度モジュール２０６は、頻度の高い終着地点を推定目的地として設定する。頻度モジュール２０６は、現在の道程データおよび推定目的地に少なくとも部分的に基づき、１つまたは複数の潜在的な道程を示す推定道程データを求める。例えば頻度モジュール２０６は、推定道程データを、現在の道程データ内に含まれる起点位置から推定目的地までの１つまたは複数の潜在的な道程を示すデータとして求める。
【００７３】
推定道程データは、推定目的地に対応して作成される。一実施形態では、推定道程データは潜在的な道程の候補セットを示す。例えば推定道程データは、現在の道程データ内に含まれる起点位置から３つの推定目的地までの３つの潜在的な道程を示す。
【００７４】
メトリックモジュール２０７は、プロセッサ１０４によって実行される、潜在的な道程についてのメトリックを決定するコードおよびルーチンである。メトリックモジュール２０７は、信号線２２８を介してバス２２０に通信可能に結合される。メトリック（metric）とは、潜在的な道程を数量的に特徴付けるためのデータである。例えば潜在的な道程についてのメトリックは、ユーザがその潜在的な道程をとりそうな確率である。一実施形態では、潜在的な道程についてのメトリックは、時刻、曜日、起点ＩＤなどの１つまたは複数の可変要素を所与として、ユーザがその潜在的な道程をとる条件付き確率である。潜在的な道程についてのメトリックについては、以下でより詳しく説明する。
【００７５】
一実施形態ではメトリックモジュール２０７が、所要時間モジュール４０７からの潜在的な道程に関する道程所要時間データ、方向モジュール４０５からの道程に関する方向を示す方向データ、およびＰＯＩタイプモジュール４０９からの、潜在的な各道程の目的地ごとのＰＯＩタイプ（例えば自宅、職場、ガソリンスタンド、レストラン、ホテル等）などのうちの１つまたは複数を受け取る。所要時間モジュール４０７、方向モジュール４０
５、およびＰＯＩタイプモジュール４０９については図４を参照して以下に説明する。
【００７６】
メトリックモジュール２０７は、道程所要時間データ、方向データ、ＰＯＩタイプデータ、時刻、年の週、曜日、起点（例えば出発点）などの、１つまたは複数の潜在的な道程に関連する１つまたは複数の可変要素に少なくとも部分的に基づいて、潜在的な道程ごとにメトリックを決定する。一実施形態では、メトリックモジュール２０７は、１つまたは複数の過去の道程における起点など、１つまたは複数の過去の道程に関連する１つまたは複数の可変要素にさらに基づいてメトリックを決定する。例えばメトリックモジュール２０７は、前回の道程における起点にさらに基づいてメトリックを決定する。
【００７７】
一実施形態では、メトリックモジュール２０７は、潜在的な道程のメトリックを決定するためにメトリック推定ネットワークを適用する。メトリック推定ネットワークとは、メトリックを推定するためのネットワークである。例えば、メトリック推定ネットワークはベイジアンネットワークである。一実施形態では、メトリック推定ネットワークが上述の可変要素間の関連性を示す。図１４Ａおよび図１４Ｂにメトリック推定ネットワークの例を示す。一実施形態では、メトリック推定ネットワークによって含められる関連性が、メトリックテーブル内に記憶される発生確率（例えば条件付き確率、結合条件付き確率等）および／または発生頻度によって示される。一実施形態では上述の可変要素の１つまたは複数を所与として、メトリックモジュール２０７が、潜在的な各道程のメトリックを潜在的な道程内に含まれる目的地に関する結合条件付き確率として決定する。
【００７８】
例えば、図１４Ｂに示すメトリック推定ネットワークを今度は参照して、潜在的な道程内に含まれる所与の目的地、方向、時刻、および曜日について、メトリックモジュール２０７は、（１）第１のメトリックテーブル（例えば図１６Ａに示す「destTable」）から
目的地の確率（「p(D)」として示す）を取得し、（２）第２のメトリックテーブル（例えば図１６Ａに示す「dirTable」）から、目的地を所与とした方向の条件付き確率（「p(dir|D)」として示す）を取得し、（３）第３のメトリックテーブル（例えば図１６Ａに示す「todTable」）から、目的地を所与とした時刻の条件付き確率（「p(tod|D)」として示す）を取得し、（４）第４のメトリックテーブル（例えば図１６Ａに示す「dowTable」）から、目的地を所与とした曜日の条件付き確率（「p(dow|D)」として示す）を取得する。
【００７９】
メトリックモジュール２０７は、目的地までの潜在的な道程に関するメトリックを、方向、時刻、および曜日を所与とした目的地の結合条件付き確率（「p(D|dir,tod,dow)」として示す）として計算する。例えばメトリックモジュール２０７は、以下に示す結合条件付き確率「p(D|dir,tod,dow)」としてメトリックを計算する。
p(D|dir,tod,dow)∝p(D)×p(dir|D)×p(tod|D)×p(dow|D)
【００８０】
上記の数式は、潜在的な道程のメトリックを決定するための最低限の実現方法である。この最低限の実現方法は複雑なメトリック推定ネットワークを用いる実現方法よりも精度は低いが、計算に最小数の可変要素しか用いないので空間効率および時間効率が良い。
【００８１】
他の実施形態では、メトリックモジュール２０７が、図１４Ａに示すネットワークなどの複雑なメトリック推定ネットワークを使用してメトリックを決定する。例えばメトリックモジュール２０７は、図１４Ａに示す全ての可変要素を含む確率、条件付き確率、および結合条件付き確率に基づいて目的地までの潜在的な道程のメトリックを計算する。全ての可変要素を含む確率、条件付き確率、および結合条件付き確率が、図１６Ａに列挙するメトリックテーブルからそれぞれ取得される。
【００８２】
一実施形態では、メトリックモジュール２０７が現状データセットを受け取る。この現状データセットは、上記に記載した現在の道程データ、車両の現在位置（例えば現在位置
の経度および緯度）、現在の道程についての現在の予測ルート、車両が位置する現在の道路、および現在時刻のうちの１つまたは複数を含む。一実施形態では、メトリックモジュール２０７が、現在の道程データを起点ＩＤモジュール４０３から受け取り、現在位置、現在の予測ルート、現在の道路、および現在時刻をＧＰＳ１１０から受け取る。
【００８３】
メトリックモジュール２０７は、推定道程データを頻度モジュール２０６から受け取る。メトリックモジュール２０７は推定道程データおよび現状データセットを分析して、推定道程データに関連する１つまたは複数のメトリックを求める。例えばメトリックモジュール２０７は、上記に記載したようなメトリック推定ネットワークを使用して、推定道程データが示す１つまたは複数の潜在的な道程に関連する１つまたは複数のメトリックを求める。
【００８４】
一実施形態では、メトリックモジュール２０７が、１つまたは複数の潜在的な道程に関する１つまたは複数のメトリックを品質モジュール２０９に送る。別の実施形態では、メトリックモジュール２０７が１つまたは複数のメトリックを記憶装置１１８内に記憶する。
【００８５】
一実施形態では、メトリックモジュール２０７は、１つまたは複数のメトリックのいずれかが異常状態に関係しているかどうかを判定する。異常状態の例には、目的地の確率が１を超えること、目的地の確率がゼロを下回ること、全てのメトリックがゼロ値を有すること、および全てのメトリックが未定値を有すること等が含まれるがこれだけに限定されない。
【００８６】
異常状態が検出されると、メトリックモジュール２０７はその異常状態に関係するナビゲーション上の勧告を決定する。例えばメトリックモジュール２０７は、異常状態を検出する場合、ナビゲーションシステム１０２を再始動させることに決める。ナビゲーション上の勧告の例には、異常状態を無視すること、異常状態に関連する潜在的な道程を候補セットから削除すること、目的地を入力するようにユーザに要求すること、およびナビゲーションシステム１０２をリセットすること等が含まれるがこれだけに限定されない。
【００８７】
メトリックモジュール２０７は、ナビゲーション上の勧告を出力モジュール２１１に送り、出力モジュール２１１にそのナビゲーション上の勧告をユーザに向けて提示させる。一実施形態では、ユーザがメトリックモジュール２０７に入力を行い、メトリックモジュール２０７にその入力に基づいた動作を実行させる。例えば、ユーザが異常状態を無視するように入力を行う場合、メトリックモジュール２０７は異常状態を無視する。
【００８８】
品質モジュール２０９は、プロセッサ１０４によって実行される、１つまたは複数の潜在的な道程に関する１つまたは複数の品質スコアを決定するコードおよびルーチンである。品質スコアとは、潜在的な道程を評価するためのデータである。潜在的な道程の品質スコアがより高いことは、ユーザがその潜在的な道程をとる可能性がより高いことを示す。一実施形態では、様々な品質スコアが様々な潜在的な道程に関連付けられる。品質モジュール２０９は、信号線２３０を介してバス２２０に通信可能に結合される。
【００８９】
一実施形態では、品質モジュール２０９が１つまたは複数の潜在的な道程に関連するメトリックをメトリックモジュール２０７から受け取る。品質モジュール２０９は、その１つまたは複数のメトリックに少なくとも部分的に基づいて、１つまたは複数の潜在的な道程に関する１つまたは複数の品質スコアを決定する。例えば、第１の潜在的な道程に関連する第１のメトリックが、第２の潜在的な道程に関連する第２のメトリックよりも大きい場合、品質モジュール２０９は第１の潜在的な道程の第１の品質スコアを第２の潜在的な道程の第２の品質スコアよりも大きいものとして生成する。
【００９０】
一実施形態では品質モジュール２０９が、１つまたは複数の潜在的な道程を１つまたは複数の関連する品質スコアに少なくとも部分的に基づいて順序付ける。例えば品質モジュール２０９は、より高い品質スコアを有する潜在的な道程が、より低い品質スコアを有する潜在的な道程の前に来るように１つまたは複数の潜在的な道程を順序付ける。
【００９１】
品質モジュール２０９は、１つまたは複数の潜在的な道程および関連する品質スコアを出力モジュール２１１に送り、出力モジュール２１１にその１つまたは複数の潜在的な道程および品質スコアをユーザに向けて提示させる。例えば品質モジュール２０９は、最も高い品質スコアを有する３つの潜在的な道程を出力モジュール２１１に送り、出力モジュール２１１にその３つの潜在的な道程および関連する品質スコアをディスプレイ１６０によって提示させる。
【００９２】
概要（summary）モジュール２１０は、プロセッサ１０４によって実行される、道程の
状態概要（status summary）および推定概要（estimated summary）のうちの１つまたは
複数を決定するコードおよびルーチンである。概要モジュール２１０は、信号線２３１を介してバス２２０に通信可能に結合される。一実施形態では、概要モジュール２１０がＧＰＳ１１０からデータ（例えば位置データ、タイムスタンプデータ、現在の道程に関する道程データ等）を受け取り、道程の状態概要を決定する。
【００９３】
状態概要とは、道程の現況を要約するデータである。例えば、状態概要には、車両の現在位置および経過した道程時間のうちの１つまたは複数が含まれる。一実施形態では、経過した道程時間をディスプレイ１６０上に表示する。一実施形態では、状態概要には、起点ＩＤモジュール４０３および／またはＧＰＳ１１０から受け取られる現状データ（例えば現在の道程データ、現在位置、現在の予測ルート、現在時刻等）がさらに含まれる。
【００９４】
一実施形態では、概要モジュール２１０が学習システム１１２および／または推定システム１１４のコンポーネントからデータを受け取る。例えば概要モジュール２１０は、１つまたは複数の潜在的な道程に関して、頻度モジュール２０６から推定道程データを受け取り、メトリックモジュール２０７から１つまたは複数のメトリックを受け取り、品質モジュール２０９から１つまたは複数の品質スコアを受け取り、所要時間モジュール４０７から１つまたは複数の道程所要時間を受け取る。当業者は、概要モジュール２１０がシステム１００の他のエンティティ（例えば検索サーバ１２４）から他のデータ（例えば検索結果）を受け取ってもよいことを理解されよう。
【００９５】
概要モジュール２１０は、現在の道程データ、現状データ、ならびに学習システム１１２および／または推定システム１１４のコンポーネントから受け取るデータ（例えばメトリック、品質スコア等）のうちの１つまたは複数に少なくとも部分的に基づいて、潜在的な道程ごとに推定概要を求める。推定概要とは、潜在的な道程の推定状態を要約するデータである。例えば、潜在的な道程に関する推定概要には、潜在的な道程の推定目的地、目的地までの推定ルート、推定到着時間、潜在的な道程に関連するメトリック、および潜在的な道程に関連する品質スコア等が含まれる。当業者は、推定概要が潜在的な道程に関連する他の任意のデータを含み得ることを理解されよう。
【００９６】
一実施形態では、概要モジュール２１０が、１つまたは複数の状態概要および１つまたは複数の推定概要を推定道程データに関連付ける。例えば概要モジュール２１０は、潜在的な各道程の状態概要および推定概要を、潜在的な道程を示す推定道程データに関連付ける。概要モジュール２１０は、推定道程データ、状態概要、および推定概要の１つまたは複数を出力モジュール２１１に送る。
【００９７】
出力モジュール２１１は、プロセッサ１０４によって実行される、ディスプレイ１６０、学習システム１１２、および推定システム１１４のうちの１つまたは複数にデータを出力するコードおよびルーチンである。出力モジュール２１１は、信号線２３２を介してバスに通信可能に結合される。一実施形態では、出力モジュール２１１がナビゲーション上の勧告をメトリックモジュール２０７から受け取り、そのナビゲーション上の勧告をディスプレイ１６０上でユーザに向けて示す表示データを出力する。別の実施形態では、出力モジュール２１１が１つまたは複数の潜在的な道程および関連する品質スコアを品質モジュール２０９から受け取り、その潜在的な道程および品質スコアを、学習システム１１２およびディスプレイ１６０の１つまたは複数に出力する。
【００９８】
一実施形態では、出力モジュール２１１が推定道程データ、１つまたは複数の状態概要、および１つまたは複数の推定概要を概要モジュール２１０から受け取り、それらの推定道程データ、１つまたは複数の状態概要、および１つまたは複数の推定概要をディスプレイ１６０上に示すための表示データを出力する。別の実施形態では、出力モジュール２１１がＧＵＩを提供するためのグラフィカルデータをＧＵＩモジュール２１５から受け取り、そのＧＵＩをディスプレイ１６０上に示すグラフィカルデータを出力する。当業者は、出力モジュール２１１が本明細書に記載の他の任意の機能を実行してもよいことを理解されよう。
【００９９】
履歴モジュール２１３は、プロセッサ１０４によって実行される、現在の道程を示すデータのログを取るコードおよびルーチンである。例えば履歴モジュール２１３は、現在の道程の終りをモニタする。履歴モジュール２１３が現在の道程の終りを検出すると、履歴モジュール２１３は現在の道程を示すデータ（例えば到着の時間／曜日／日付、出発の時間／曜日／日付、出発点、終着点、道程所要時間等）を集め、そのデータを運転者履歴リポジトリ３１６内に記憶する。履歴モジュール２１３は、信号線２３４を介してバス２２０に通信可能に結合される。
【０１００】
ＧＵＩモジュール２１５は、プロセッサ１０４によって実行される、ユーザにＧＵＩを提供するためのグラフィカルデータを生成するコードおよびルーチンである。ＧＵＩモジュール２１５は、信号線２３６を介してバス２２０に通信可能に結合される。一実施形態では、ＧＵＩモジュール２１５は、ユーザがシステム１００と対話できるようにするＧＵＩを示すためのグラフィカルデータを生成する。例えばＧＵＩモジュール２１５は、ソーシャルネットワークアプリケーション１２２によって提供されるソーシャルネットワーク上でユーザが道程を共有できるようにする「共有」ボタンを含むＧＵＩを示すためのグラフィカルデータを生成する。別の実施形態では、ＧＵＩモジュール２１５が、１つまたは複数の潜在的な道程に関連する１つまたは複数の品質スコアを品質モジュール２０９から受け取り、品質スコアおよび潜在的な道程をユーザに提示するＧＵＩを提供するためのグラフィカルデータを生成する。当業者は、ＧＵＩモジュール２１５が本明細書に記載の機能を提供するための他の任意のグラフィカルデータを生成し得ることを理解されよう。
【０１０１】
一実施形態では、ＧＵＩモジュール２１５はグラフィカルデータをディスプレイ１６０に送り、ディスプレイ１６０にＧＵＩをユーザに向けて提示させる。別の実施形態では、ＧＵＩモジュール２１５はグラフィカルデータを出力モジュール２１１に送り、出力モジュール２１１にデータをディスプレイ１６０上に提示させる。
【０１０２】
次に図５を参照して、別の実施形態による学習システム１１２のブロック図を示す。図示の実施形態では、学習システム１１２は、第１の通信モジュール２０１、運転履歴モジュール２０３、変換モジュール２０５、頻度モジュール２０６、メトリックモジュール２０７、品質モジュール２０９、概要モジュール２１０、出力モジュール２１１、履歴モジュール２１３、ＧＵＩモジュール２１５、起点ＩＤモジュール４０３、方向モジュール４
０５、所要時間モジュール４０７、およびＰＯＩタイプモジュール４０９を含む。起点ＩＤモジュール４０３は、クラスタモジュール４０４を含む。第１の通信モジュール２０１、運転履歴モジュール２０３、変換モジュール２０５、頻度モジュール２０６、メトリックモジュール２０７、品質モジュール２０９、概要モジュール２１０、出力モジュール２１１、履歴モジュール２１３、およびＧＵＩモジュール２１５については上記に記載している。ここでは説明を繰り返さない。起点ＩＤモジュール４０３、クラスタモジュール４０４、方向モジュール４０５、所要時間モジュール４０７、およびＰＯＩタイプモジュール４０９については、図４を参照して以下に説明する。
【０１０３】
記憶装置
次に図３を参照して、記憶装置１１８をより詳細に示す。図３は、一実施形態による記憶装置１１８を示すブロック図である。記憶装置１１８は、学習テーブルデータ３０１、運転者履歴リポジトリ３１６、学習パラメータ３１９、メトリック推定ネットワーク３２１、勧告データ３２３、クラスタデータ３２５、およびメトリックテーブルデータ３２７を含む。当業者は、記憶装置１１８が本明細書に記載の機能を提供するための他の任意のデータを記憶し得ることを理解されよう。
【０１０４】
学習テーブルデータ３０１は、１つまたは複数の学習テーブルを構築するためのデータである。一実施形態では、学習テーブルデータ３０１は、１つまたは複数の学習テーブル内に配置される１つまたは複数の学習パラメータを示すデータである。図示の実施形態では、学習テーブルデータ３０１は、出発点３０３、出発データ３０５、方向データ３０７、所要時間データ３０９、終着点３１１、到着データ３１３、およびＰＯＩデータ３１５を含む。場合により、学習テーブルデータ３０１は運転者履歴データ３１７を含んでもよい。当業者は、学習テーブルデータ３０１が本明細書に記載の機能を提供するための他の任意のデータを含み得ることを理解されよう。
【０１０５】
出発点３０３は、１つまたは複数の道程に関する１つまたは複数の出発点を示す位置データを含む。例えば出発点３０３は、１つまたは複数の道程の、１つまたは複数の出発点の経度および緯度を示すデータを含む。一実施形態では、出発点３０３は、１つまたは複数の出発地点に関する１つまたは複数の起点ＩＤを示すデータを含む。
【０１０６】
出発データ３０５は、道程における出発を示すデータである。例えば出発データ３０５は、出発時間（例えば２：００：００ｐｍ）、出発の曜日（例えば月曜日）、出発の日付（例えば２０１１年１１月２１日）、および年の週のうちの１つまたは複数を示すタイムスタンプデータを含む。一実施形態では、出発データ３０５は、出発時間（例えば深夜、朝、昼、午後、または夜）および出発の曜日（例えば平日または週末）のうちの１つまたは複数を示す変換済みデータを含む。
【０１０７】
方向データ３０７は、道程の方向を示すデータである。例えば方向データ３０７は、道程の方向が南、南東、東、北東、北、北西、西、および南西のうちの１つであることを示すデータを含む。
【０１０８】
所要時間データ３０９は、道程の所要時間を示すデータである。例えば所要時間データ３０９は、ユーザが過去の道程に１０分かけたことを示すデータを含む。一実施形態では、所要時間データ３０９は、道程の所要時間を示す変換済みデータ（例えば短い、中位、および長い等）を含む。
【０１０９】
終着点３１１は、１つまたは複数の道程に関する１つまたは複数の終着点を示す位置データを含む。例えば終着点３１１は、１つまたは複数の道程の、１つまたは複数の終着点の経度および緯度を示すデータを含む。一実施形態では、終着点３１１は、１つまたは複
数の終着点に関する１つまたは複数の目的地ＩＤを示すデータを含む。
【０１１０】
到着データ３１３は、道程における目的地に到着することを示すデータである。例えば到着データ３１３は、到着時間（例えば３：００：００ｐｍ）、到着の曜日（例えば月曜日）、到着の日付（例えば２０１１年１１月２１日）、および到着時の年の週のうちの１つまたは複数を示すタイムスタンプデータを含む。一実施形態では、到着データ３１３は、到着時間（例えば深夜、朝、昼、午後、または夜）および到着の曜日（例えば平日または週末）のうちの１つまたは複数を示す変換済みデータを含む。
【０１１１】
ＰＯＩデータ３１５は、目的地の関心地点を示すデータである。例えばＰＯＩデータ３１５は、目的地が「自宅」、「職場」および「その他」のうちの１つであることを示す。一実施形態では、「その他」の目的地には、「ガソリンスタンド」、「コーヒーショップ」、「レストラン」など、「自宅」および「職場」の目的地を除く他の全ての目的地のうちの１つが含まれる。
【０１１２】
運転者履歴データ３１７とは、ユーザ（例えば運転者）の運転履歴を示すデータである。例えば運転者履歴データ３１７には、運転者がとった１つまたは複数の過去の道程を示すデータが含まれる。一実施形態では、運転者履歴データ３１７には、出発点、出発データ（例えば出発時間および曜日等）、方向データ、所要時間データ、終着点、到着データ（例えば到着時間および曜日等）、終着点のＰＯＩデータ等のうちの１つまたは複数など、１つまたは複数の過去の道程を示す変換されていないデータ（例えば変換モジュール２０５によって変換が行われる前のデータ）が含まれる。運転者履歴データ３１７は、一実施形態では学習テーブルデータ３０１内に記憶される一方で、別の実施形態では運転者履歴リポジトリ３１６内に記憶されることを示すために破線を使って図示する。
【０１１３】
運転者履歴リポジトリ３１６は、データを記憶するためのコンテナである。例えば運転者履歴リポジトリ３１６は、運転者履歴データ３１７を記憶するためのコンテナである。
【０１１４】
学習パラメータ３１９は、１つまたは複数の道程からの学習パラメータセットを示すデータを含む。一実施形態では学習パラメータ３１９は、変換モジュール２０５からの変換済みの運転者履歴データを含む。別の実施形態では、学習パラメータ３１９は変換されていない運転者履歴データを含む。当業者は、学習パラメータ３１９が、学習パラメータに関連する他の任意のデータを含み得ることを理解されよう。
【０１１５】
メトリック推定ネットワーク３２１は、１つまたは複数のメトリック推定ネットワークを構築するためのデータを含む。例えばメトリック推定ネットワーク３２１は、メトリック推定ネットワーク内に含まれる１つまたは複数の可変要素を示すデータ、およびそれらの可変要素間の１つまたは複数の関連性を示すデータを含む。
【０１１６】
勧告データ３２３とは、１つまたは複数のナビゲーション上の勧告を示すデータである。例えば勧告データ３２３は、１つまたは複数のナビゲーション上の勧告およびその１つまたは複数のナビゲーション上の勧告に関連する異常状態を示すデータを含む。
【０１１７】
クラスタデータ３２５とは、１つまたは複数のクラスタを示すデータである。一実施形態では、クラスタデータ３２５は既存のクラスタのリストを示すデータを含む。クラスタは、クラスタ中心のクラスタリング範囲内の位置群（例えば出発地点または終着地点）を示すデータを含む。クラスタは、クラスタＩＤ、クラスタリング範囲、およびクラスタ中心によって示される。クラスタ、クラスタリング範囲、およびクラスタ中心については図４を参照して以下に説明する。
【０１１８】
メトリックテーブルデータ３２７とは、１つまたは複数のメトリックテーブルを構築するためのデータである。例えばメトリックテーブルデータ３２７は、１つまたは複数のメトリックテーブル内に記憶されるデータを含む。一実施形態では、メトリックテーブルデータ３２７は頻度データ３２９および確率データ３３１を含む。
【０１１９】
頻度データ３２９とは、１つまたは複数の学習パラメータに関する１つまたは複数の発生頻度を示すデータである。例えば頻度データ３２９は、１つまたは複数の目的地に関する１つまたは複数の発生頻度を示すデータを含む。一実施形態では頻度データ３２９は、１つまたは複数の他の学習パラメータを条件に、１つまたは複数の目的地に関する１つまたは複数の発生頻度を示すデータを含む。例えば頻度データ３２９は、所与の時刻における１つまたは複数の目的地に関する１つまたは複数の発生頻度を示すデータを含む。
【０１２０】
確率データ３３１とは、１つまたは複数の学習パラメータに関する１つまたは複数の発生確率を示すデータである。例えば確率データ３３１は、１つまたは複数の目的地に関する１つまたは複数の発生確率を示すデータを含む。一実施形態では確率データ３３１は、１つまたは複数の他の学習パラメータを条件に、１つまたは複数の目的地に関する１つまたは複数の発生確率を示すデータを含む。例えば確率データ３３１は、所与の時刻における１つまたは複数の目的地に関する１つまたは複数の発生確率を示すデータを含む。
【０１２１】
推定システム
図４は、一実施形態による推定システム１１４を示すブロック図である。推定システム１１４は、第２の通信モジュール４０１、起点ＩＤモジュール４０３、方向モジュール４０５、所要時間モジュール４０７、およびＰＯＩタイプモジュール４０９を含む。場合により、推定システム１１４は、頻度モジュール２０６、メトリックモジュール２０７、品質モジュール２０９、概要モジュール２１０、出力モジュール２１１、および履歴モジュール２１３を含んでもよい。推定システム１１４は、バス２２０を介してプロセッサ１０４および／または記憶装置１１８と通信する。
【０１２２】
第２の通信モジュール４０１は、推定システム１１４のコンポーネントとシステム１００の他のコンポーネントとの間の通信を処理するためのコードおよびルーチンである。例えば第２の通信モジュール４０１は、システム１００の他のコンポーネント（例えば学習システム１１２、ＧＰＳ１１０等）からデータを受け取り、そのデータを推定システム１１４のコンポーネント（例えば起点ＩＤモジュール４０３等）に送る。第２の通信モジュール４０１は、信号線４２２を介してバス２２０に通信可能に結合される。一実施形態では、第２の通信モジュール４０１は、推定システム１１４のコンポーネント間の通信も処理する。例えば第２の通信モジュール４０１は、メトリックモジュール２０７から１つまたは複数のメトリックを受け取り、その１つまたは複数のメトリックを品質モジュール２０９に送る。
【０１２３】
一実施形態では、第２の通信モジュール４０１がＧＰＳ１１０からデータ（例えば位置データ、タイムスタンプデータ等）を受け取り、そのデータを推定システム１１４のコンポーネント（例えば起点ＩＤモジュール４０３、方向モジュール４０５等）に送る。当業者は、第２の通信モジュール４０１が本明細書に記載の他の機能を提供してもよいことを理解されよう。
【０１２４】
起点ＩＤモジュール４０３は、プロセッサ１０４によって実行される、道程に関する現在の道程データを求めるコードおよびルーチンである。起点ＩＤモジュール４０３は、信号線４２４を介してバス２２０に通信可能に結合される。一実施形態では、起点ＩＤモジュール４０３が、道程の出発点を示す位置データ、ならびに出発時間、出発の曜日、および出発の日付の１つまたは複数を含む出発タイムスタンプを示すタイムスタンプデータを
ＧＰＳ１１０から受け取る。起点ＩＤモジュール４０３は、道程に関する起点ＩＤ、出発地点、および出発タイムスタンプの１つまたは複数を含む現在の道程データを求める。出発点の起点ＩＤについては以下でより詳しく説明する。起点ＩＤモジュール４０３は、現在の道程データを頻度モジュール２０６および概要モジュール２１０の１つまたは複数に送る。一実施形態では、起点ＩＤモジュール４０３が現在の道程データを記憶装置１１８内に記憶する。
【０１２５】
起点ＩＤモジュール４０３は、クラスタモジュール４０４を含む。クラスタモジュール４０４は、プロセッサ１０４によって実行される、出発地点などの場所（位置）がどのクラスタに属するかを決定するコードおよびルーチンである。一実施形態ではクラスタモジュール４０４が、以下に記載するように出発地点（例えば道程の出発点）が属するクラスタを決定する。クラスタモジュール４０４は、クラスタのクラスタリング範囲を決定する。クラスタリング範囲とは、クラスタ中心からの所定の距離（例えば２００メートル）であり、その範囲内では全ての位置がクラスタ中心に関連するクラスタに割り当てられる。クラスタ中心とは、クラスタの中心である。
【０１２６】
クラスタモジュール４０４は、既存のクラスタのリストを示すクラスタデータを記憶装置１１８から取得する。クラスタモジュール４０４は、リストが空かどうかを判定する。リストが空の場合、クラスタモジュール４０４は新たなクラスタを生成し、その新たなクラスタをリストに追加する。クラスタモジュール４０４は、新たなクラスタ用のクラスタＩＤを作成し、新たなクラスタに出発地点を割り当てる。例えばクラスタモジュール４０４は、出発地点の起点ＩＤとしてクラスタＩＤを割り当てる。
【０１２７】
あるいはリストが空でない場合、クラスタモジュール４０４は出発地点をリスト内に含まれる各クラスタと比較し、その出発地点がいずれかのクラスタのクラスタリング範囲内にあるかどうかを判定する。出発地点がどのクラスタのクラスタリング範囲内にもない場合、クラスタモジュール４０４は新たなクラスタを生成し、クラスタＩＤをその新たなクラスタに割り当てる。クラスタモジュール４０４は、出発地点を新たなクラスタに追加し、出発地点の起点ＩＤとしてクラスタＩＤを割り当てる。出発地点が既存のクラスタのクラスタリング範囲内にある場合、クラスタモジュール４０４は出発地点を既存のクラスタに追加し、出発地点の起点ＩＤとして既存のクラスタのクラスタＩＤを割り当てる。
【０１２８】
一実施形態ではクラスタモジュール４０４が、出発地点をクラスタに追加した後、クラスタのクラスタ中心を更新する。例えばクラスタモジュール４０４は、クラスタ内に含まれる全ての位置に少なくとも部分的に基づいてクラスタのクラスタ中心を再計算する。クラスタモジュール４０４はクラスタのリストを更新し、更新したリストを記憶装置１１８内に記憶する。一実施形態では、クラスタモジュール４０４がクラスタ内の道程の到着地点（例えば終着点）を取り決め、クラスタ内の出発地点を取り決めるための上述の操作と同様の操作を実行することにより、到着地点の目的地ＩＤとしてクラスタＩＤを割り当てる。
【０１２９】
方向モジュール４０５は、プロセッサ１０４によって実行される、道程の方向を求めるコードおよびルーチンである。方向モジュール４０５は、信号線４２６を介してバス２２０に通信可能に結合される。例えば方向モジュール４０５は、ＧＰＳ１１０のタイムスタンプジェネレータ２１７から現在時刻を受け取り、起点ＩＤモジュール４０３から現在の道程データを受け取る。方向モジュール４０５は、現在時刻および現在の道程データの１つまたは複数に少なくとも部分的に基づいて道程の方向を推定する。一実施形態では、方向モジュール４０５が運転者履歴データを記憶装置１１８から取得し、その運転者履歴データにさらに基づいて道程の方向を推定する。別の実施形態では、方向モジュール４０５が、１つまたは複数の方向に関連する１つまたは複数のメトリックテーブルにさらに基づ
いて道程の方向を推定する。
【０１３０】
一実施形態では、方向モジュール４０５が方向を示す方向データをメトリックモジュール２０７に送る。別の実施形態では、方向モジュール４０５が方向データを変換モジュール２０５に送る。変換モジュール２０５は、上記に記載したように方向データを変換し、変換済みの方向データをメトリックモジュール２０７に送る。
【０１３１】
所要時間モジュール４０７は、プロセッサ１０４によって実行される、道程の所要時間を推定するコードおよびルーチンである。所要時間モジュール４０７は、信号線４２８を介してバス２２０に通信可能に結合される。一実施形態では所要時間モジュール４０７が、タイムスタンプジェネレータ２１７から現在時刻を示すタイムスタンプデータを受け取り、起点ＩＤモジュール４０３から現在の道程データを受け取る。所要時間モジュール４０７は、現在時刻および現在の道程データの１つまたは複数に少なくとも部分的に基づいて道程の所要時間を推定する。一実施形態では、所要時間モジュール４０７が運転者履歴データを記憶装置１１８から取得し、その運転者履歴データにさらに基づいて道程の所要時間を推定する。別の実施形態では、所要時間モジュール４０７が、１つまたは複数の所要時間に関連する１つまたは複数のメトリックテーブルにさらに基づいて道程の所要時間を推定する。
【０１３２】
一実施形態では、所要時間モジュール４０７が道程の所要時間を示す道程所要時間データをメトリックモジュール２０７に送る。別の実施形態では、所要時間モジュール４０７が道程所要時間データを変換モジュール２０５に送る。変換モジュール２０５は、道程所要時間データを不均一区分へと変換し、変換済みの道程所要時間データをメトリックモジュール２０７に送る。
【０１３３】
ＰＯＩタイプモジュール４０９は、プロセッサ１０４によって実行される、道程の目的地のＰＯＩのタイプを求めるコードおよびルーチンである。ＰＯＩタイプモジュール４０９は、信号線４３０を介してバス２２０に通信可能に結合される。一実施形態では、ＰＯＩタイプモジュール４０９が、タイムスタンプジェネレータ２１７から現在時刻を示すタイムスタンプデータを受け取り、起点ＩＤモジュール４０３から現在の道程データを受け取る。ＰＯＩタイプモジュール４０９は、現在時刻および現在の道程データの１つまたは複数に少なくとも部分的に基づいて道程のＰＯＩタイプを推定する。一実施形態では、ＰＯＩタイプモジュール４０９が運転者履歴データを記憶装置１１８から取得し、その運転者履歴データにさらに基づいて道程のＰＯＩタイプを推定する。別の実施形態では、ＰＯＩタイプモジュール４０９が、目的地のＰＯＩタイプに関連する１つまたは複数のメトリックテーブルにさらに基づいて道程のＰＯＩタイプを推定する。一実施形態では、ＰＯＩタイプモジュール４０９が目的地の推定ＰＯＩタイプを示すデータをメトリックモジュール２０７に送る。
【０１３４】
忘却モジュール
図６は、一実施形態による忘却モジュール１１６を示すブロック図である。忘却モジュール１１６は、第３の通信モジュール６０１、モニタモジュール６０３、決定モジュール６０５、および削除モジュール６０７を含む。忘却モジュール１１６のこれらのコンポーネントは、バス２２０を介して互いに通信可能に結合される。忘却モジュール１１６は、バス２２０を介してプロセッサ１０４、記憶装置１１８、およびナビゲーションシステム１０２の他のコンポーネントに通信可能に結合される。
【０１３５】
第３の通信モジュール６０１は、忘却モジュール１１６のコンポーネントとシステム１００の他のコンポーネントとの間の通信を処理するためのコードおよびルーチンである。例えば第３の通信モジュール６０１は、システム１００の他のコンポーネント（例えば学
習システム１１２、ＧＰＳ１１０等）からデータを受け取り、そのデータを忘却モジュール１１６のコンポーネント（例えばモニタモジュール６０３、決定モジュール６０５等）に送る。第３の通信モジュール６０１は、信号線６２２を介してバス２２０に通信可能に結合される。一実施形態では、第３の通信モジュール６０１は、忘却モジュール１１６のコンポーネント間の通信も処理する。例えば第３の通信モジュール６０１は、モニタモジュール６０３から１つまたは複数のトリガイベントを受け取り、その１つまたは複数のトリガイベントを決定モジュール６０５に送る。
【０１３６】
一実施形態では、第３の通信モジュール６０１が記憶装置１１８からデータ（例えば学習パラメータ、運転者履歴データ等）を取得し、そのデータを忘却モジュール１１６のコンポーネント（例えば削除モジュール６０７）に送る。当業者は、第３の通信モジュール６０１が本明細書に記載の他の機能を提供してもよいことを理解されよう。
【０１３７】
モニタモジュール６０３は、プロセッサ１０４によって実行される、トリガイベントを検出するコードおよびルーチンである。一実施形態ではモニタモジュール６０３が、何らかのトリガイベントがないかどうか、ナビゲーションシステム１０２をモニタする。モニタモジュール６０３は、トリガイベントが発生する場合にトリガイベントを検出する。モニタモジュール６０３は、トリガイベントを示すイベントデータを決定モジュール６０５に送る。モニタモジュール６０３は、信号線６２４を介してバス２２０に通信可能に結合される。
【０１３８】
トリガイベントとは、メモリ内のデータ削除を引き起こすイベントである。例えばトリガイベントは、工場出荷時リセット入力、記憶された１つまたは複数の目的地を削除するユーザ要求、最後のトリガイベントから所定の期間が経過すること、所定の閾値を上回る多数の目的地がメモリ内に記憶されること、および最後のトリガイベント以降に所定数の道程が発生することのうちの１つである。
【０１３９】
決定モジュール６０５は、プロセッサ１０４によって実行される、メモリから削除するデータを決定するコードおよびルーチンである。例えば決定モジュール６０５は、以下に記載するように、メモリ（例えば記憶装置１１８）から削除するための学習パラメータセットを、トリガイベントを検出することおよびそのトリガイベントの分類に少なくとも部分的に基づいて決定する。決定モジュール６０５は、信号線６２６を介してバス２２０に通信可能に結合される。
【０１４０】
一実施形態では、メモリから削除するデータは、１つまたは複数の目的地に関連するデータである。例えば削除するデータは、１つまたは複数の学習テーブル内に記憶される１つまたは複数の目的地を示す目的地データ、および学習テーブル内の１つまたは複数の目的地に関する記述エントリが含まれる、１つまたは複数の目的地に関連する学習パラメータセットである。記述エントリには、例えば目的地までの道程に関する曜日、時刻、および日付を示すタイムスタンプデータ、道程の所要時間を示す道程所要時間データ、ならびに目的地への方向を示す方向データ等が含まれる。別の実施形態では、削除するデータには、１つまたは複数の目的地までの１つまたは複数の道程に関連する学習パラメータセットおよび運転者履歴データ、ならびに１つまたは複数の目的地に関連する１つまたは複数のメトリックテーブル内に記憶されるデータが含まれる。さらに別の実施形態では、トリガイベントが工場出荷時リセット入力の場合、削除するデータは全ての目的地に関連する全てのデータである。
【０１４１】
一実施形態では、決定モジュール６０５がトリガイベントを示すイベントデータをモニタモジュール６０３から受け取り、そのトリガイベントの分類を決定する。例えば決定モジュール６０５は、トリガイベントが工場出荷時リセット入力か、それとも他のトリガイ
ベントかを判定する。トリガイベントが工場出荷時リセット入力の場合、決定モジュール６０５はリセット信号を生成し、そのリセット信号を削除モジュール６０７に送る。一実施形態では、トリガイベントの分類は、工場出荷時リセット入力および１つまたは複数の目的地を削除するユーザ要求などの上記に記載した他の任意のトリガイベントのうちの１つである。
【０１４２】
トリガイベントが工場出荷時リセット入力ではない場合、決定モジュール６０５はナビゲーションシステム１０２に関連するメモリを問い合わせて、ナビゲーションシステム１０２内のメモリの空き容量が閾値を下回るかどうかを判定する。例えば決定モジュール６０５は、記憶装置１１８内の記憶空間の空きが閾値を下回るかどうかを判定する。一実施形態では、その閾値はナビゲーションシステム１０２の管理者が設定する。メモリの空き容量が閾値を下回らない場合、決定モジュール６０５はメモリからデータを一切削除しないことに決め、キャンセル信号を削除モジュール６０７に送る。メモリの空き容量が閾値を下回る場合、決定モジュール６０５は以下に記載するように１つまたは複数の目的地を選択し、それにより、その１つまたは複数の被選択目的地に関連するデータが削除モジュール６０７によって削除される。一実施形態では決定モジュール６０５は、メモリの空き容量が閾値を下回るかどうかに関係なく１つまたは複数の目的地に関連するデータを削除することに決める。決定モジュール６０５は、データを削除するために、被選択目的地の１つまたは複数の識別情報を削除モジュール６０７に送る。
【０１４３】
一実施形態では決定モジュール６０５は、ユーザが訪れた全ての目的地を各目的地への最後の訪問に関するタイムスタンプに応じて順序付ける。例えば決定モジュール６０５は、より古いタイムスタンプを有する第１の目的地が、より最近のタイムスタンプを有する第２の目的地の前に来るように第１のキューの中の全ての目的地を順序付ける。次に決定モジュール６０５は、目的地ごとの発生頻度に応じて全ての目的地を順序付ける。例えば決定モジュール６０５は、より低い発生頻度を有する第１の目的地が、より高い発生頻度を有する第２の目的地の前に来るように第２のキューの中の全ての目的地を順序付ける。
【０１４４】
決定モジュール６０５は、目的地の順序付けに少なくとも部分的に基づいて削除候補の目的地を決定する。例えば決定モジュール６０５は、タイムスタンプが古いものからいくつかの第１の目的地（例えば最後の訪問のタイムスタンプが最も古いものから２０個の目的地）を第１のキューから選択し、発生頻度が低いものからいくつかの第２の目的地（例えば最も訪れていないものから２０個の目的地）を第２のキューから選択する。決定モジュール６０５は、第１の目的地および第２の目的地の両方に含まれる１つまたは複数の目的地として目的地の削除候補を決定する。
【０１４５】
一実施形態では、決定モジュール６０５が削除候補の目的地から１つまたは複数の目的地を無作為に選択し、その１つまたは複数の被選択目的地に関連するデータを削除することに決める。決定モジュール６０５は、データを削除するために、被選択目的地の１つまたは複数の識別情報を削除モジュール６０７に送る。
【０１４６】
削除モジュール６０７は、プロセッサ１０４によって実行される、メモリからデータを削除するコードおよびルーチンである。削除モジュール６０７は、信号線６２８を介してバス２２０に通信可能に結合される。一実施形態では、削除モジュール６０７がリセット信号を決定モジュール６０５から受け取り、ナビゲーションシステム１０２をリセットする。例えば削除モジュール６０７は、リセット信号を受け取ることに応答して全ての学習パラメータ、学習テーブルデータ、メトリックテーブルデータ、および運転者履歴データ等を記憶装置１１８から削除する。別の実施形態では、削除モジュール６０７がキャンセル信号を決定モジュール６０５から受け取り、キャンセル信号に応答してデータを一切削除しない。
【０１４７】
一実施形態では、削除モジュール６０７が１つまたは複数の被選択目的地の１つまたは複数の識別情報を受け取り、その１つまたは複数の被選択目的地に関連するデータ（例えば１つまたは複数の被選択目的地に関連する学習パラメータ、運転者履歴データ、学習テーブルデータ、メトリックテーブルデータ等）を削除する。
【０１４８】
もはや使われていない１つまたは複数の目的地に関連するデータを削除することは、例えばもはや使われていないデータを削除し、他の用途のために記憶空間を節約するので有益である。もはや使われていないデータを削除することは、ナビゲーションシステム１０２の記憶空間が限られている場合にとりわけ有利である。さらに、もはや使われていないデータを削除することは、メトリックおよび品質スコアの推定に対する古くかつほとんど訪れていない目的地に関連するデータの影響を減らし、その結果潜在的な道程に関する推定の精度を改善する。
【０１４９】
方法
次に図７Ａ〜図１３Ｃを参照して、本明細書の方法の様々な実施形態を説明する。図７Ａは、一実施形態による、データを忘却するための方法７００を示す流れ図である。モニタモジュール６０３が、何らかのトリガイベントがないかどうか、ナビゲーションシステム１０２をモニタする（７０２）。一実施形態では、モニタモジュール６０３がトリガイベントを検出し（７０４）、そのトリガイベントを示すイベントデータを決定モジュール６０５に送る。決定モジュール６０５は、トリガイベントが工場出荷時リセット入力かどうかを判定する（７０６）。トリガイベントが工場出荷時リセット入力の場合、決定モジュール６０５がリセット信号を削除モジュール６０７に送り、方法７００はステップ７０８に進む。さもなければ、方法７００はステップ７１０に進む。ステップ７０８で、リセット信号を受け取ることに応答して削除モジュール６０７がナビゲーションシステム１０２をリセットし、方法７００は終了する。
【０１５０】
次にステップ７１０では、決定モジュール６０５は、ナビゲーションシステム１０２内のメモリの空き容量（例えば記憶装置１１８内の記憶空間の空き）が閾値を下回るかどうかを判定する。メモリの空き容量が閾値を下回らない場合、方法７００は終了する。さもなければ、決定モジュール６０５がメモリから削除するデータを決定する（７１２）。一実施形態では、決定モジュール６０５は、メモリから削除するデータを決定するために図７Ｂに関して以下に記載するステップと同様のステップを実行する。ステップ７１４で、削除モジュール６０７が、決定されたデータをメモリから削除する。
【０１５１】
図７Ｂは、一実施形態による、削除するデータを決定するための方法７１２を示す流れ図である。第３の通信モジュール６０１が、ユーザが訪れた全ての目的地を示す目的地データ、各目的地への最後の訪問に関するタイムスタンプを示すタイムスタンプデータ、およびメトリックテーブル内に記憶される各目的地の発生頻度を記憶装置１１８から取得する（７１６）。第３の通信モジュール６０１が、取得したデータを決定モジュール６０５に送る。
【０１５２】
決定モジュール６０５が、目的地への最後の訪問に関するタイムスタンプに少なくとも部分的に基づいて目的地を順序付ける（７１８）。例えば決定モジュール６０５は、より古いタイムスタンプを有する第１の目的地が、より最近のタイムスタンプを有する第２の目的地の前に来るように第１のキューの中の目的地を順序付ける。次に決定モジュール６０５が、目的地の発生頻度に少なくとも部分的に基づいて目的地を順序付ける。例えば決定モジュール６０５は、より低い発生頻度を有する第１の目的地が、より高い発生頻度を有する第２の目的地の前に来るように第２のキューの中の目的地を順序付ける。
【０１５３】
決定モジュール６０５が、順序付けに少なくとも部分的に基づいて削除候補の目的地を決定する（７２０）。例えば決定モジュール６０５は、最も古いタイムスタンプを有するいくつかの第１の目的地を第１のキューから選択し、最も低い発生頻度を有するいくつかの第２の目的地を第２のキューから選択する。決定モジュール６０５は、選択された第１の目的地および第２の目的地の両方に含まれる１つまたは複数の目的地として削除候補の目的地を決定する。
【０１５４】
決定モジュール６０５が、削除候補の目的地から１つまたは複数の目的地を選択する（７２２）。一実施形態では、決定モジュール６０５が削除候補の目的地から１つまたは複数の目的地を無作為に選択する。決定モジュール６０５が、その１つまたは複数の被選択目的地に関連するデータを削除することに決める（７２４）。一実施形態では決定モジュール６０５は、被選択目的地の１つまたは複数の識別情報を削除モジュール６０７に送り、削除モジュール６０７に被選択目的地に関連するデータ（例えば被選択目的地に関連する学習パラメータセット、学習テーブルデータ、メトリックテーブルデータ、運転者履歴データ等）を削除させる。
【０１５５】
図８Ａおよび図８Ｂは、一実施形態による、１つまたは複数の潜在的な道程を決定するための方法８００を示す流れ図である。図８Ａを参照して、第１の通信モジュール２０１が、１つまたは複数の過去の道程を示す運転者履歴データを含む学習パラメータセットを記憶装置１１８から取得する（８０２）。一実施形態では第１の通信モジュール２０１が、変換済みの運転者履歴データを含む学習パラメータセットを記憶装置１１８から取得する。第１の通信モジュール２０１が、学習パラメータセットを頻度モジュール２０６に送る。
【０１５６】
頻度モジュール２０６が、その学習パラメータセットを分析して、１つまたは複数の目的地までの１つまたは複数の潜在的な道程についての頻度の高い出発地点および頻度の高い終着地点を示すデータを含む候補セットを求める（８０４）。タイムスタンプジェネレータ２１７が現在時刻を計り（８０６）、その現在時刻を所要時間モジュール４０７および方向モジュール４０５の１つまたは複数に送る。
【０１５７】
所要時間モジュール４０７が、候補セット内に含まれる１つまたは複数の潜在的な道程に関する道程所要時間データを現在時刻に少なくとも部分的に基づいて推定する（８０８）。所要時間モジュール４０７が、道程所要時間データを変換モジュール２０５に送る。変換モジュール２０５が、道程所要時間データを不均一区分へと区分化する（８１０）。変換モジュール２０５が、変換済みの道程所要時間データをメトリックモジュール２０７に送る。
【０１５８】
方向モジュール４０５が、１つまたは複数の目的地までの１つまたは複数の潜在的な道程に関する、１つまたは複数の方向を示す方向データを現在時刻に少なくとも部分的に基づいて推定する（８１２）。方向モジュール４０５が、方向データをメトリックモジュール２０７に送る。一実施形態では、方向モジュール４０５が方向データを変換モジュール２０５に送る。変換モジュール２０５は方向データを変換し、変換済みの方向データをメトリックモジュール２０７に送る。
【０１５９】
メトリックモジュール２０７が、現在時刻、道程所要時間データ、および方向データのうちの１つまたは複数に少なくとも部分的に基づいて、１つまたは複数の潜在的な道程に関する１つまたは複数のメトリックを決定する（８１４）。一実施形態では、メトリックモジュール２０７は、メトリック推定ネットワークに少なくとも部分的に基づいて１つまたは複数のメトリックを決定する。メトリックモジュール２０７が、１つまたは複数のメトリックを品質モジュール２０９に送る。品質モジュール２０９が、その１つまたは複数
のメトリックに少なくとも部分的に基づいて１つまたは複数の潜在的な道程に関する１つまたは複数の品質スコアを決定する（８１６）。
【０１６０】
次に図８Ｂを参照して、品質モジュール２０９が、候補セット内に含まれる１つまたは複数の潜在的な道程を１つまたは複数の関連する品質スコアに少なくとも部分的に基づいて順序付ける（８１８）。品質モジュール２０９は１つまたは複数の品質スコアを出力モジュール２１１に送り、出力モジュール２１１に候補セットおよび１つまたは複数の品質スコアを学習システム１１２、推定システム１１４、およびディスプレイ１６０の１つまたは複数に向けて出力させる（８２０）。所要時間モジュール４０７が、本明細書に記載の１つまたは複数のシステムモジュールによってアクセス可能なメモリ（例えば記憶装置１１８）内に道程所要時間データを記憶する（８２２）。
【０１６１】
図９は、一実施形態による、現在の道程に関するデータのログを取るための方法９００を示す流れ図である。履歴モジュール２１３が、現在の道程の終りを求めてナビゲーションシステム１０２をモニタする（９０２）。例えば履歴モジュール２１３は、位置データおよび／または速度データをＧＰＳ１１０から受け取り、その位置データおよび／または速度データに少なくとも部分的に基づいて、ユーザが現在の道程の目的地に到着したかどうかをモニタする。ユーザが目的地に到着すると、履歴モジュール２１３が現在の道程の終りを検出する（９０４）。履歴モジュール２１３が、現在の道程を示すデータ（例えば道程所要時間データ、方向データ、ルートデータ、出発地点、終着地点、出発時間、出発の曜日、出発の日付、到着時間、到着の曜日、到着の日付等）を集める（９０６）。履歴モジュール２１３が、集めたデータを運転者履歴データの一部として運転者履歴リポジトリ３１６内に記憶する（９０８）。
【０１６２】
図１０Ａおよび図１０Ｂは、一実施形態による、運転者履歴データを変換するための方法１０００を示す流れ図である。ここで図１０Ａを参照して、運転履歴モジュール２０３が、運転者履歴データを第１の通信モジュール２０１を介して記憶装置１１８から取得する（１００２）。運転者履歴データには、１つまたは複数の過去の道程に関連する出発時間（例えば出発の時間）、出発日（例えば出発の曜日）、道程所要時間データ、方向データ、到着時間（例えば到着の時間）、到着日（例えば到着の曜日）、出発点、および終着点等のうちの１つまたは複数が含まれる。運転履歴モジュール２０３が、運転者履歴データを変換モジュール２０５に送る。
【０１６３】
変換モジュール２０５が、１つまたは複数の過去の道程の出発時間を不均一区分に変換する（１００４）。例えば変換モジュール２０５は、ある道程の出発時間を深夜、朝、昼、午後、および夜のうちの１つに変換する。変換モジュール２０５が、出発の曜日を不均一区分に変換する（１００６）。例えば変換モジュール２０５は、ある道程の出発の曜日を平日および週末のうちの一方に変換する。変換モジュール２０５は、道程所要時間データも不均一区分へと変換する（１００８）。例えば変換モジュール２０５は、道程所要時間データを短い、中位、および長いのうちの１つへと変換する。
【０１６４】
一実施形態では、運転履歴モジュール２０３が出発地点および終着地点を方向モジュール４０５に送る。方向モジュール４０５が、この出発地点および終着地点に少なくとも部分的に基づいて道程の方向を求め（１０１０）、方向を示す方向データを変換モジュール２０５に送る。変換モジュール２０５が、その方向を複数の均一区分の１つに変換する（１０１２）。例えば変換モジュール２０５は、方向を東、南東、南、南西、西、北西、北、および北東のうちの１つに変換する。
【０１６５】
次に図１０Ｂを参照して、変換モジュール２０５が到着時間を不均一区分に変換する（１０１４）。例えば変換モジュール２０５は、ある道程の到着時間を深夜、朝、昼、午後
、および夜のうちの１つに変換する。変換モジュール２０５が、到着の曜日を不均一区分に変換する（１０１６）。例えば変換モジュール２０５は、ある道程の到着の曜日を平日および週末のうちの一方に変換する。変換モジュール２０５が、変換済みの運転者履歴データを記憶装置１１８内に記憶する（１０１８）。一実施形態では変換モジュール２０５が、変換済みの運転者履歴データを学習パラメータセットとして記憶装置１１８内に記憶する。
【０１６６】
図１１は、一実施形態による、ユーザの運転優先傾向を学習するための方法１１００を示す流れ図である。第１の通信モジュール２０１が学習パラメータセットを記憶装置１１８から取得し（１１０２）、その学習パラメータセットを頻度モジュール２０６に送る。頻度モジュール２０６が、各目的地の発生頻度を記録するためのメトリックテーブル（例えば図１６Ａに「destTable」として示す目的地テーブル）を作成する（１１０４）。頻
度モジュール２０６が、発生頻度が最も高い２つの目的地を「自宅」および「職場」としてラベル付けする（１１０６）。例えば頻度モジュール２０６は、発生頻度が最も高い目的地を「自宅」として指定し、発生頻度が２番目に高い目的地を「職場」として指定する。ガソリンスタンド、コーヒーショップなどの残りの目的地は「その他」と称す。頻度モジュール２０６が、目的地「自宅」、「職場」、および「その他」の発生頻度を再計算する（１１０８）。
【０１６７】
図１２Ａおよび図１２Ｂは、一実施形態による、判定対象の位置が属するクラスタを管理するための方法１２００を示す流れ図である。一実施形態では、判定対象位置は道程の出発点の位置（例えば出発地点）および終着点の位置（例えば終着地点）のうちの１つである。ここで図１２Ａを参照して、第２の通信モジュール４０１が位置を示す位置データをＧＰＳ１１０から受け取る（１２０２）。第２の通信モジュール４０１が、対象位置データをクラスタモジュール４０４に送る。クラスタモジュール４０４は、クラスタのクラスタリング範囲（例えば２００メートル）を決定する（１２０４）。
【０１６８】
第２の通信モジュール４０１が、既存のクラスタのリストを示すクラスタデータを記憶装置１１８から取得し（１２０６）、そのクラスタデータをクラスタモジュール４０４に送る。クラスタモジュール４０４は、リストが空かどうかを判定する（１２０８）。リストが空の場合、方法１２００はステップ１２１０に進む。さもなければ、方法１２００はステップ１２１２に進む。ステップ１２１０では、クラスタモジュール４０４が新たなクラスタを生成する。クラスタモジュール４０４が、新たなクラスタ用のクラスタＩＤを生成し（１２１１）、方法１２００はステップ１２１６に進む。
【０１６９】
ステップ１２１２では、クラスタモジュール４０４が判定対象位置をリスト内に含まれる各クラスタと比較し、対象位置が既存のいずれかのクラスタのクラスタリング範囲内にあるかどうかを判定する（１２１４）。対象位置が既存のクラスタのクラスタリング範囲内にある場合、方法１２００はステップ１２１６に進む。さもなければ、方法１２００はステップ１２１０に進む。ステップ１２１６では、クラスタモジュール４０４が対象位置をクラスタに追加する。例えばクラスタモジュール４０４は、対象位置が既存のクラスタのクラスタリング範囲内にある場合、対象位置を既存のクラスタに追加する。あるいはクラスタモジュール４０４は、対象位置を新たに作成したクラスタに追加する。
【０１７０】
次に図１２Ｂを参照して、クラスタモジュール４０４が、判定対象位置の位置ＩＤとしてクラスタのクラスタＩＤを割り当てる（１２１８）。例えばクラスタモジュール４０４は、対象位置が出発点の位置である場合、対象位置の起点ＩＤとしてクラスタＩＤを割り当てる。対象位置が終着点の位置である場合、クラスタモジュール４０４は、対象位置の目的地ＩＤとしてクラスタＩＤを割り当てる。場合により、クラスタモジュール４０４が、対象位置をクラスタに追加した後、クラスタのクラスタ中心を更新してもよい（１２２
０）。例えばクラスタモジュール４０４は、クラスタ内に含まれる全ての位置に基づいてクラスタのクラスタ中心を再計算する。
【０１７１】
図１３Ａ〜図１３Ｃは、一実施形態による、異常状態を管理するための方法１３００を示す流れ図である。ここで図１３Ａを参照して、運転履歴モジュール２０３が、運転者履歴データを第１の通信モジュール２０１を介して記憶装置１１８から取得する（１３０２）。運転履歴モジュール２０３が、運転者履歴データを変換モジュール２０５に送る。変換モジュール２０５が、運転者履歴データを学習パラメータセットに変換する（１３０４）。変換モジュール２０５が、その学習パラメータセットを頻度モジュール２０６に送る。
【０１７２】
起点ＩＤモジュール４０３が、現在の道程データを求め（１３０６）、その現在の道程データを頻度モジュール２０６および概要モジュール２１０の１つまたは複数に送る。頻度モジュール２０６が学習パラメータセットおよび現在の道程データを分析して、現在の道程データ内に含まれる起点位置（例えば出発点の位置）から１つまたは複数の推定目的地までの１つまたは複数の潜在的な道程を示す推定道程データを生成する（１３０８）。頻度モジュール２０６が、推定道程データをメトリックモジュール２０７に送る。
【０１７３】
第１の通信モジュール２０１が、現状データセットをＧＰＳ１１０から取得し（１３１０）、その現状データセットをメトリックモジュール２０７および概要モジュール２１０の１つまたは複数に送る。メトリックモジュール２０７が、推定道程データおよび現状データセットを分析して、推定道程データによって示される１つまたは複数の潜在的な道程に関する１つまたは複数のメトリックを決定する（１３１２）。
【０１７４】
次に図１３Ｂを参照して、メトリックモジュール２０７が、少なくとも１つのメトリックが異常状態に関係しているかどうかを判定する（１３１４）。少なくとも１つのメトリックが異常状態に関係している場合、方法１３００はステップ１３１６に進む。さもなければ、方法１３００はステップ１３２２に進む。ステップ１３１６で、メトリックモジュール２０７がその異常状態に関するナビゲーション上の勧告を決定する。メトリックモジュール２０７がそのナビゲーション上の勧告を出力モジュール２１１に送り、出力モジュール２１１にそのナビゲーション上の勧告をディスプレイ１６０上でユーザに向けて出力させる（１３１８）。場合により、メトリックモジュール２０７が、第１の通信モジュール２０１を介してユーザから入力を受け取ってもよい（１３２０）。
【０１７５】
品質モジュール２０９が、１つまたは複数のメトリックに少なくとも部分的に基づいて推定道程データに関連する１つまたは複数の品質スコアを決定する（１３２２）。概要モジュール２１０が、１つまたは複数の状態概要を決定する（１３２４）。概要モジュール２１０は、１つまたは複数の推定概要も決定する（１３２６）。
【０１７６】
次に図１３Ｃを参照して、概要モジュール２１０が、１つまたは複数の状態概要および１つまたは複数の推定概要を推定道程データに関連させる（１３２８）。概要モジュール２１０が、１つまたは複数の状態概要および１つまたは複数の推定概要を出力モジュール２１１に送り、１つまたは複数の状態概要、１つまたは複数の推定概要、および推定道程データをディスプレイ１６０上に提示するための表示データを出力モジュール２１１に出力させる（１３３０）。起点ＩＤモジュール４０３が、現在の道程データを記憶装置１１８内に記憶する（１３３２）。
【０１７７】
グラフィカル表現
次に図１４Ａ〜図１６Ｄを参照して、本明細書のグラフィカル表現の様々な実施形態を説明する。図１４Ａは、一実施形態によるメトリック推定ネットワークを示すグラフィカ
ル表現１４００である。図示の実施形態では、目的地までの潜在的な道程の推定は、曜日、前回の道程における起点（例えば以前の起点−１）、目的地のＰＯＩタイプ、前々回の道程における起点（例えば以前の起点−２）、年の週、道程所要時間、時刻、現在の起点、および方向のうちの１つまたは複数に少なくとも部分的に基づく。
【０１７８】
図１４Ｂは、別の実施形態によるメトリック推定ネットワークを示すグラフィカル表現１４５０である。図示の実施形態では、目的地までの潜在的な道程の推定は、曜日、時刻、および方向のうちの１つまたは複数に少なくとも部分的に基づく。
【０１７９】
図１５Ａは、一実施形態による、時刻（例えば出発時間）を変換するためのテーブルを示すグラフィカル表現１５００である。図１５Ｂは、一実施形態による、道程所要時間を変換するためのテーブルを示すグラフィカル表現１５３０である。図１５Ａおよび図１５Ｂについては図２に関して上記に記載した。ここでは説明を繰り返さない。
【０１８０】
図１５Ｃは、一実施形態による、道程の方向を変換するためのグラフを示すグラフィカル表現１５５０である。図示の実施形態では、方向１５５２が「東」の区分にあるので、変換モジュール２０５は方向１５５２を「東」の方向として変換する。
【０１８１】
図１６Ａは、一実施形態による、１つまたは複数のメトリックテーブルを列挙するテーブル１６００のグラフィカル表現である。テーブル１６００は、テーブル名を列挙する１列目、テーブルの種類を列挙する２列目、およびメトリックテーブルに関連する学習パラメータを列挙する３列目を含む。例えば、テーブル１６００の１行目にある、テーブル名が「ｄｅｓｔＴａｂｌｅ」である目的地テーブルは、目的地ＩＤによって識別される目的地に関する確率を記憶する確率テーブルである。当業者は、テーブル１６００が本明細書に記載の機能を提供するための他のメトリックテーブルを含んでもよいことを理解されよう。
【０１８２】
図１６Ｂは、一実施形態によるメトリックテーブル１６１０を示すグラフィカル表現である。図示の実施形態では、メトリックテーブル１６１０は目的地テーブルの一例である。メトリックテーブル１６１０は、１つまたは複数の目的地（例えば自宅、職場、ジム、ガソリンスタンド）、およびその１つまたは複数の目的地に関する１つまたは複数の発生頻度を含む。例えば「職場」が目的地となる頻度は３０回であり、「自宅」が目的地となる頻度は４０回である。
【０１８３】
図１６Ｃは、別の実施形態によるメトリックテーブル１６２０を示すグラフィカル表現である。図示の実施形態では、メトリックテーブル１６２０は図１６Ａに示す「ｔｏｄＴａｂｌｅ」の一例である。メトリックテーブル１６２０は、所与の時間帯における目的地ごとの発生頻度を列挙する。例えば時間帯が朝であることを所与として、「職場」が目的地となる頻度は２８回であり、「ジム」が目的地となる頻度は３回であり、「自宅」および「ガソリンスタンド」が目的地となる頻度はゼロである。
【０１８４】
図１６Ｄは、さらに別の実施形態によるメトリックテーブル１６３０を示すグラフィカル表現である。図示の実施形態では、メトリックテーブル１６３０は図１６Ａに示す目的地テーブル「ｄｅｓｔＴａｂｌｅ」の一例である。メトリックテーブル１６３０は、１つまたは複数の目的地（例えば自宅、職場、ジム、ガソリンスタンド）、およびその１つまたは複数の目的地に関する１つまたは複数の確率を含む。例えば「職場」が目的地となる確率は０．３であり、「自宅」が目的地となる確率は０．４である。
【０１８５】
実施形態の前述の説明は、例示と説明を目的として行われたものである。したがって、開示された実施形態が本発明の全てではないし、本発明を上記の実施形態に限定するもの
でもない。本発明は、上記の開示にしたがって、種々の変形が可能である。本発明の範囲は上述の実施形態に限定解釈されるべきではなく、特許請求の範囲にしたがって解釈されるべきである。本発明の技術に詳しい者であれば、本発明はその思想や本質的特徴から離れることなくその他の種々の形態で実現できることを理解できるであろう。同様に、モジュール・処理・特徴・属性・方法およびその他の本発明の態様に関する名前付けや分割方法は必須なものでものないし重要でもない。また、本発明やその特徴を実装する機構は異なる名前や分割方法や構成を備えていても構わない。さらに、当業者であれば、モジュール・処理・特徴・属性・方法およびその他の本発明の態様は、ソフトウェア、ハードウェア、ファームウェアもしくはこれらの組合せとして実装できることを理解できるであろう。また、本発明をソフトウェアとして実装する場合には、モジュールなどの各要素は、どのような様式で実装されても良い。例えば、スタンドアローンのプログラム、大きなプログラムの一部、異なる複数のプログラム、静的あるいは動的なリンクライブラリー、カーネルローダブルモジュール、デバイスドライバー、その他コンピュータプログラミングの当業者にとって既知な方式として実装することができる。さらに、本発明の実装は特定のプログラミング言語に限定されるものではないし、特定のオペレーティングシステムや環境に限定されるものでもない。以上のように、上記の本発明の説明は限定的なものではなく例示的なものであり、本発明の範囲は添付の特許請求の範囲にしたがって定められる。
【符号の説明】
【０１８６】
１０２  ナビゲーションシステム
１１２  学習システム
１１４  推定システム
１１６  忘却モジュール
１１６  記憶装置
２０１  第１の通信モジュール
２０３  運転者履歴モジュール
２０５  変換モジュール
２０６  頻度モジュール
２０７  メトリックモジュール
２０８  品質モジュール
２１０  概要モジュール
２１１  出力モジュール
２１３  履歴モジュール
２１５  ＧＵＩモジュール
３０１  学習テーブル
３１６  運転者履歴リポジトリ
３１９  学習パラメータ
３２１  メトリック推定ネットワーク
３２３  勧告データ
３２５  クラスタデータ
３２７  メトリックテーブルデータ
４０１  第２の通信モジュール
４０３  起点ＩＤモジュール
４０５  方向モジュール
４０７  所要時間モジュール
４０９  ＰＯＩタイプモジュール
６０１  第３の通信モジュール
６０３  モニタモジュール
６０５  決定モジュール
６０７  削除モジュール
【図１】
2013127461.tif 000003
【図２】
2013127461.tif 000004
【図３】
2013127461.tif 000005
【図４】
2013127461.tif 000006
【図５】
2013127461.tif 000007
【図６】
2013127461.tif 000008
【図７Ａ】
2013127461.tif 000009
【図７Ｂ】
2013127461.tif 000010
【図８Ａ】
2013127461.tif 000011
【図８Ｂ】
2013127461.tif 000012
【図９】
2013127461.tif 000013
【図１０Ａ】
2013127461.tif 000014
【図１０Ｂ】
2013127461.tif 000015
【図１１】
2013127461.tif 000016
【図１２Ａ】
2013127461.tif 000017
【図１２Ｂ】
2013127461.tif 000018
【図１３Ａ】
2013127461.tif 000019
【図１３Ｂ】
2013127461.tif 000020
【図１３Ｃ】
2013127461.tif 000021
【図１４Ａ】
2013127461.tif 000022
【図１４Ｂ】
2013127461.tif 000023
【図１５Ａ】
2013127461.tif 000024
【図１５Ｂ】
2013127461.tif 000025
【図１５Ｃ】
2013127461.tif 000026
【図１６Ａ】
2013127461.tif 000027
【図１６Ｂ】
2013127461.tif 000028
【図１６Ｃ】
2013127461.tif 000029
【図１６Ｄ】
2013127461.tif 000030