(57)【特許請求の範囲】
【請求項１】
コンピュータシステムにより、ポータブルコンピューティングデバイス(PCD)に表示するための節約ルートを計算する方法であって、
製品カテゴリおよびサービスカテゴリのうちの少なくとも1つを受信するステップと、
所望の目的地の住所を受信するステップと、
前記製品カテゴリまたはサービスカテゴリに対応する少なくとも1つの製品またはサービスに対するオファーに基づく影響円データを受信するステップと、
前記影響円データおよび前記所望の目的地の住所に基づいて、1つまたは複数の節約ルートを計算するステップと
を備え、
前記節約ルートは、開始点で始まり、近いノードのうち、前記開始点から前記ノードまでの距離、前記ノードから前記所望の目的地までの距離、および前記影響円データに基づいてノードを選択することを繰り返して得られる、方法。
【請求項２】
前記1つまたは複数の節約ルートを前記PCDのディスプレイ画面に表示するステップ
をさらに備える、請求項1に記載の方法。
【請求項３】
前記PCDのオペレータが前記目的地の住所に対して移動しようとする最大距離を受信するステップ
をさらに備える、請求項1に記載の方法。
【請求項４】
前記PCDのディスプレイ画面に表示するための節約ルートの所望の数を受信するステップ
をさらに備える、請求項1に記載の方法。
【請求項５】
各計算された節約ルートについて利用可能な利益に対応する最小の所望の節約値を受信するステップ
をさらに備える、請求項1に記載の方法。
【請求項６】
前記製品カテゴリおよび前記サービスカテゴリのうちの前記少なくとも1つをコンピュータサーバに送信するステップ
をさらに備える、請求項1に記載の方法。
【請求項７】
入力を受信して前記PCDのディスプレイデバイスに表示されている既存のルートを修正するステップ
をさらに備える、請求項1に記載の方法。
【請求項８】
前記PCDのディスプレイデバイスに独自の図式要素で各節約ルートを表示するステップをさらに備える、請求項2に記載の方法。
【請求項９】
独自の色および独自の形状のうちの少なくとも1つで各節約ルートを表示するステップをさらに備える、請求項8に記載の方法。
【請求項１０】
前記PCDが、携帯電話、携帯情報端末、ページャ、スマートフォン、ナビゲーションデバイス、およびワイヤレス接続またはワイヤレスリンクを有するハンドヘルドコンピュータのうちの少なくとも1つを含む、請求項1に記載の方法。
【請求項１１】
ポータブルコンピューティングデバイス(PCD)に表示するための節約ルートを計算するコンピュータシステムであって、
製品カテゴリおよびサービスカテゴリのうちの少なくとも1つを受信し、
所望の目的地の住所を受信し、
前記製品カテゴリまたはサービスカテゴリに対応する少なくとも1つの製品またはサービスに対するオファーに基づく影響円データを受信し、
前記影響円データおよび前記所望の目的地の住所に基づいて、1つまたは複数の節約ルートを計算する
ように動作可能な、プロセッサ
を備え、
前記節約ルートは、開始点で始まり、近いノードのうち、前記開始点から前記ノードまでの距離、前記ノードから前記所望の目的地までの距離、および前記影響円データに基づいてノードを選択することを繰り返して得られる、システム。
【請求項１２】
前記プロセッサがさらに、
前記1つまたは複数の節約ルートを前記PCDのディスプレイ画面に表示する
ように動作可能な、請求項11に記載のシステム。
【請求項１３】
前記プロセッサがさらに、
前記PCDのオペレータが前記目的地の住所に対して移動しようとする最大距離を受信する
ように動作可能な、請求項11に記載のシステム。
【請求項１４】
前記プロセッサが、
前記PCDのディスプレイ画面に表示するための節約ルートの所望の数を受信する
ように動作可能な、請求項11に記載のシステム。
【請求項１５】
前記プロセッサが、
各計算された節約ルートについて利用可能な利益に対応する最小の所望の節約値を受信する
ように動作可能な、請求項11に記載のシステム。
【請求項１６】
前記プロセッサが、
前記製品カテゴリおよび前記サービスカテゴリのうちの前記少なくとも1つをコンピュータサーバに送信する
ように動作可能な、請求項11に記載のシステム。
【請求項１７】
前記プロセッサがさらに、
入力を受信して前記PCDのディスプレイデバイスに表示されている既存のルートを修正する
ように動作可能な、請求項11に記載のシステム。
【請求項１８】
前記プロセッサがさらに、
前記PCDのディスプレイデバイスに独自の図式要素で各節約ルートを表示する
ように動作可能な、請求項12に記載のシステム。
【請求項１９】
前記プロセッサがさらに、
独自の色および独自の形状のうちの少なくとも1つで各節約ルートを表示する
ように動作可能な、請求項11に記載のシステム。
【請求項２０】
前記PCDが、携帯電話、携帯情報端末、ページャ、スマートフォン、ナビゲーションデバイス、およびワイヤレス接続またはワイヤレスリンクを有するハンドヘルドコンピュータのうちの少なくとも1つを含む、請求項11に記載のシステム。
【請求項２１】
ワイヤレスハンドヘルドコンピューティングデバイスの1つまたは複数のメモリリソースを管理するコンピュータシステムであって、
製品カテゴリおよびサービスカテゴリのうちの少なくとも1つを受信する手段と、
所望の目的地の住所を受信する手段と、
前記製品カテゴリまたはサービスカテゴリに対応する少なくとも1つの製品またはサービスに対するオファーに基づく影響円データを受信する手段と、
前記影響円データおよび前記所望の目的地の住所に基づいて、1つまたは複数の節約ルートを計算する手段と
を備え、
前記節約ルートは、開始点で始まり、近いノードのうち、前記開始点から前記ノードまでの距離、前記ノードから前記所望の目的地までの距離、および前記影響円データに基づいてノードを選択することを繰り返して得られる、システム。
【請求項２２】
前記1つまたは複数の節約ルートを前記PCDのディスプレイ画面に表示する手段
をさらに備える、請求項21に記載のシステム。
【請求項２３】
前記PCDのオペレータが前記目的地の住所に対して移動しようとする最大距離を受信する手段
をさらに備える、請求項21に記載のシステム。
【請求項２４】
前記PCDのディスプレイ画面に表示するための節約ルートの所望の数を受信する手段
をさらに備える、請求項21に記載のシステム。
【請求項２５】
各計算された節約ルートについて利用可能な利益に対応する最小の所望の節約値を受信する手段
をさらに備える、請求項21に記載のシステム。
【請求項２６】
前記製品カテゴリおよび前記サービスカテゴリのうちの前記少なくとも1つをコンピュータサーバに送信する手段
をさらに備える、請求項21に記載のシステム。
【請求項２７】
入力を受信して前記PCDのディスプレイデバイスに表示されている既存のルートを修正する手段
をさらに備える、請求項21に記載のシステム。
【請求項２８】
前記PCDのディスプレイデバイスに独自の図式要素で各節約ルートを表示する手段
をさらに備える、請求項22に記載のシステム。
【請求項２９】
独自の色および独自の形状のうちの少なくとも1つで各節約ルートを表示する手段
をさらに備える、請求項28に記載のシステム。
【請求項３０】
前記PCDが、携帯電話、携帯情報端末、ページャ、スマートフォン、ナビゲーションデバイス、およびワイヤレス接続またはワイヤレスリンクを有するハンドヘルドコンピュータのうちの少なくとも1つを含む、請求項21に記載のシステム。
【請求項３１】
コンピュータ可読プログラムコードを備えるコンピュータプログラムであって、前記コンピュータ可読プログラムコードがポータブルコンピューティングデバイス(PCD)に表示するための節約ルートを計算する方法を実装するために実行されるように適合され、前記方法が、
製品カテゴリおよびサービスカテゴリのうちの少なくとも1つを受信するステップと、
所望の目的地の住所を受信するステップと、
前記製品カテゴリまたはサービスカテゴリに対応する少なくとも1つの製品またはサービスに対するオファーに基づく影響円データを受信するステップと、
前記影響円データおよび前記所望の目的地の住所に基づいて、1つまたは複数の節約ルートを計算するステップと
を備え、
前記節約ルートは、開始点で始まり、近いノードのうち、前記開始点から前記ノードまでの距離、前記ノードから前記所望の目的地までの距離、および前記影響円データに基づいてノードを選択することを繰り返して得られる、コンピュータプログラム。
【請求項３２】
前記プログラムコードにより実装される方法が、
前記1つまたは複数の節約ルートを前記PCDのディスプレイ画面に表示するステップをさらに備える、請求項31に記載のコンピュータプログラム。
【請求項３３】
前記プログラムコードにより実装される方法が、
前記PCDのオペレータが前記目的地の住所に対して移動しようとする最大距離を受信するステップ
をさらに備える、請求項31に記載のコンピュータプログラム。
【請求項３４】
前記プログラムコードにより実装される方法が、
前記PCDのディスプレイ画面に表示するための節約ルートの所望の数を受信するステップ
をさらに備える、請求項31に記載のコンピュータプログラム。
【請求項３５】
前記プログラムコードにより実装される方法が、
各計算された節約ルートについて利用可能な利益に対応する最小の所望の節約値を受信するステップ
をさらに備える、請求項31に記載のコンピュータプログラム。
【請求項３６】
前記プログラムコードにより実装される方法が、
前記製品カテゴリおよび前記サービスカテゴリのうちの前記少なくとも1つをコンピュータサーバに送信するステップ
をさらに備える、請求項31に記載のコンピュータプログラム。
【請求項３７】
前記プログラムコードにより実装される方法が、
入力を受信して前記PCDのディスプレイデバイスに表示されている既存のルートを修正するステップ
をさらに備える、請求項31に記載のコンピュータプログラム。
【請求項３８】
前記プログラムコードにより実装される方法が、
前記PCDのディスプレイデバイスに独自の図式要素で各節約ルートを表示するステップをさらに備える、請求項32に記載のコンピュータプログラム。
【請求項３９】
前記プログラムコードにより実装される方法が、
独自の色および独自の形状のうちの少なくとも1つで各節約ルートを表示するステップをさらに備える、請求項38に記載のコンピュータプログラム。
【請求項４０】
前記PCDが、携帯電話、携帯情報端末、ページャ、スマートフォン、ナビゲーションデバイス、およびワイヤレス接続またはワイヤレスリンクを有するハンドヘルドコンピュータのうちの少なくとも1つを含む、請求項31に記載のコンピュータプログラム。
【発明の詳細な説明】
【背景技術】
【０００１】
ポータブルコンピューティングデバイス(「PCD」)は、個人レベルおよび専門家レベルで人々にとって必需品になりつつある。これらのデバイスには、携帯電話、携帯情報端末(「PDA」)、ポータブルゲームコンソール、ポータブルナビゲーションユニット、パームトップコンピュータ、および他のポータブル電子デバイスが含まれ得る。
【０００２】
PCDは、PCDのオペレータにナビゲーション支援を提供するためのソフトウェアを実行することができる。このソフトウェアは、所望の目的地に到達する方向を判定する際のオペレータの助けになることができるが、そのようなソフトウェアは、一般に1次元であり、オペレータの他の要望に対処しない。オペレータの他の要望には、銀行へ行くこと、または商品もしくはサービスの買い物をすることなどの用事を済ませることが含まれ得る。PCDのオペレータの他の要望には、製品およびサービスに対するディスカウントを、そのようなディスカウントが利用可能なときに見つけることが含まれ得る。
【０００３】
PCDのオペレータが直面する問題に加えて、小売商およびサービスプロバイダは、消費者を自分のそれぞれのビジネスに引きつける方法を常に探している。小売商およびサービスプロバイダは、通常、消費者を自分のそれぞれの店頭および専門家オフィスに引きつけるために、ディスカウントおよびオファーを広告する最もコスト効率の高い方法は何かを判定することなどの課題に直面する。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
したがって、当技術分野で必要なものは、消費者をそれぞれの店頭に引きつけるための小売商およびサービスプロバイダの要望にも対処しながら、消費者のナビゲーションの要望および効率の要望に対処する方法およびシステムである。PCDで計画され得る旅行の効率を高める方法およびシステムに対する当技術分野での要望も存在する。
【課題を解決するための手段】
【０００５】
ポータブルコンピューティングデバイス(PCD)に表示するための節約ルートを計算するための方法およびシステムが記載される。方法は、PCDのオペレータから製品カテゴリおよびサービスカテゴリのうちの少なくとも1つを受信することを含む。PCDは目的地の住所も受信することができる。この情報とともに、製品カテゴリまたはサービスカテゴリに対応する少なくとも1つの製品またはサービスに対するオファーに基づく影響円データが生成され、PCDに提供され得る。影響円データは、グラフ検索アルゴリズムのエッジ重みに影響を及ぼす場合がある。グラフ検索アルゴリズムは、負でないエッジ経路コストを有するグラフについて単一ソースの最短経路問題を解決する。グラフ検索アルゴリズムと組み合わせた影響円により、PCDのオペレータによって提供された開始点および所望の目的地の住所に基づいて、PCDが1つまたは複数の節約ルートを計算することが可能になる。
【０００６】
方法は、1つまたは複数の節約ルートをPCDのディスプレイ画面に表示することも含む。PCDは、PCDのオペレータが目的地の住所に対して移動しようとする最大距離を受信することもできる。PCDは、PCDのディスプレイ画面に表示するための節約ルートの所望の数を受信することができる。PCDは、各計算された節約ルートについて利用可能な利益に対応する最小の所望の節約値を受信することもできる。
【０００７】
図において、別段の指示がない限り、同様の参照番号は、様々な図の全体を通して同様の部分を指す。「102A」または「102B」などの文字指定を伴う参照番号の場合、文字指定は、同じ図に存在する2つの同様の部分または要素を区別することができる。参照番号がすべての図において同じ参照番号を有するすべての部分を包含することが意図される場合、参照番号の文字指定は省略される場合がある。
【図面の簡単な説明】
【０００８】
【図１Ａ】ポータブルコンピューティングデバイス(「PCD」)を使用して節約ルートを作成することによって、計画された旅行の効率を高めるためのシステムの例示的な要素を示す機能ブロック図である。
【図１Ｂ】ポータブルコンピューティングデバイス(PCD)の一実施形態を示す機能ブロック図である。
【図２】複数の節約ルートを表示するための例示的な地図である。
【図３】PCDで表示され得る節約ルートに対応するパラメータを調整するための例示的なユーザインターフェースを示す第1の図である。
【図４】PCDで表示され得る節約ルートに対応するパラメータを調整するための例示的なユーザインターフェースを示す第2の図である。
【図５】節約ルートがPCDでどのように計算され得るかを示す図である。
【図６】節約ルートを生成するための方法を示す論理フローチャートである。
【図７】選択されたパラメータに基づいて節約ルートを生成するためのサブメソッドまたはルーチンを示す論理フローチャートである。
【発明を実施するための形態】
【０００９】
「例示的な」という語は、「例、実例、または例示としての役割を果たすこと」を意味するように本明細書で使用される。「例示的な」ものとして本明細書で記載される態様は、必ずしも他の態様よりも好ましい、または有利であると解釈されるものではない。
【００１０】
本明細書では、「アプリケーション」という用語は、オブジェクトコード、スクリプト、バイトコード、マークアップ言語ファイル、およびパッチなどの実行可能コンテンツを有するファイルを含むこともできる。加えて、本明細書で言及される「アプリケーション」は、開封される必要があり得るドキュメント、またはアクセスされる必要がある他のデータファイルなどの本質的に実行可能ではないファイルを含むこともできる。
【００１１】
「コンテンツ」という用語は、オブジェクトコード、スクリプト、バイトコード、マークアップ言語ファイル、およびパッチなどの実行可能コンテンツを有するファイルを含むこともできる。加えて、本明細書で言及される「コンテンツ」は、開封される必要があり得るドキュメント、またはアクセスされる必要がある他のデータファイルなどの本質的に実行可能ではないファイルを含むこともできる。
【００１２】
本明細書で使用されるように、「コンポーネント」、「データベース」、「モジュール」、「システム」などの用語は、ハードウェア、ファームウェア、ハードウェアとソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアのいずれかであるコンピュータ関連のエンティティを指すものとする。たとえば、コンポーネントは、プロセッサ上で動作しているプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行スレッド、プログラム、および/またはコンピュータであり得るが、これらに限定されない。例として、コンピューティングデバイス上で動作しているアプリケーションとコンピューティングデバイスの両方は、コンポーネントであり得る。1つまたは複数のコンポーネントは、プロセスおよび/または実行スレッド内に常駐することができ、1つのコンポーネントを1つのコンピュータに局在化すること、および/または2つ以上のコンピュータ間に分散することが可能である。加えて、これらのコンポーネントは、様々なデータ構造がその上に記憶された様々なコンピュータ可読媒体から実行することができる。コンポーネントは、1つまたは複数のデータパケット(たとえば、信号により、ローカルシステム、分散システムにおいて別のコンポーネントと対話し、かつ/またはインターネットなどのネットワークにわたって他のシステムと対話する、1つのコンポーネントからのデータ)を有する信号に従うなどして、ローカルプロセスおよび/またはリモートプロセスによって通信することができる。
【００１３】
本明細書では、「通信デバイス」、「ワイヤレスデバイス」、「ワイヤレス電話」、「ワイヤレス通信デバイス」、および「ワイヤレスハンドセット」という用語は互換的に使用される。第3世代(「3G」)および第4世代(「4G」)のワイヤレス技術の出現とともに、利用可能な帯域が拡大されたので、より多くの様々なワイヤレス機能を備えたより携帯が容易なコンピューティングデバイスが利用可能になった。
【００１４】
本明細書では、「ポータブルコンピューティングデバイス」(「PCD」)という用語は、バッテリーなどの限られた容量の電源で動作する任意のデバイスを記載するために使用される。何十年もの間バッテリー式PCDが使用されてきたが、第3世代(「3G」)および第4世代(「4G」)ワイヤレス技術の出現とともにもたらされた充電式バッテリーの技術的進歩は、複数の機能を有する多数のPCDを可能にした。したがって、PCDは、とりわけ、携帯電話、衛星電話、ページャ、携帯情報端末(「PDA」)、スマートフォン、ナビゲーションデバイス、スマートブックまたはリーダー、メディアプレーヤ、上述のデバイスの組合せ、およびワイヤレス接続を有するラップトップコンピュータであり得る。
【００１５】
図1Aは、ポータブルコンピューティングデバイス(「PCD」)100Aを使用して節約ルートを作成することによって、計画された旅行の効率を高めるためのシステム101の例示的な要素を示す機能ブロック図である。システム101は、PCD100A、コンピュータサーバ102、および小売商またはサービスプロバイダのコンピュータ100Bを備えることができる。図1Aに示されたシステム要素の多くは、通信リンク103を介して通信ネットワーク142Aに結合される。
【００１６】
図1Aに示されたリンク103は、有線リンクまたはワイヤレスリンクを含むことができる。ワイヤレスリンクには、無線周波(「RF」)リンク、赤外線リンク、音響リンク、および他のワイヤレス媒体が含まれるが、これらに限定されない。通信ネットワーク142Aは、ワイドエリアネットワーク(「WAN」)、ローカルエリアネットワーク(「LAN」)、インターネット、公衆交換電話網(「PSTN」)、ページングネットワーク、またはそれらの組合せを含むことができる。通信ネットワーク142Aは、ブロードキャストRFトランシーバタワーによって確立され得る。しかしながら、ブロードキャストRFトランシーバタワー以外の他のタイプの通信デバイスが通信ネットワーク142Aを確立するために利用可能であることを、当業者は認識する。PCD100Aは、それぞれのPCD100AがRFトランシーバタワーを介して通信ネットワーク142Aとワイヤレス通信リンク103Aを確立できるように、アンテナ372(図1A参照)を有するように示される。
【００１７】
PCD100Aは節約ルートアプリケーションモジュール105を備えることができる。節約ルートアプリケーションモジュール105は、ソフトウェアまたはハードウェアあるいは両方を備えることができる。例示的な一実施形態によれば、節約ルートアプリケーションモジュール105は、PCD100A内で1つまたは複数のプロセッサ110によって実行されるソフトウェアを備えることができる。節約ルートアプリケーションモジュール105は、以下でさらに詳細に記載されるように、図2〜図4に示された節約ルートなどの節約ルートを列記する1つまたは複数の様々な地図を生成することができる。節約ルートアプリケーションモジュール105は、PCD100Aのオペレータから所望の製品およびサービスの情報を受信し、この情報をコンピュータサーバ102に中継する役目を果たすことができる。
【００１８】
コンピュータサーバ102は、コンピュータネットワーク142Aを介してPCD100Aから所望の製品およびサービスの情報を受信し、この情報を使用してオファーデータ109をフィルタリングする。コンピュータサーバ102は、1つまたは複数の小売商コンピュータ100Bからオファーデータ109を受信する。詳細には、コンピュータサーバ102は、PCD100Aのオペレータによって所望された製品およびサービスを、小売商コンピュータ100Bによって供給されたオファーデータ109に対してフィルタリングする、オファーデータおよび影響円アプリケーションモジュール107を実行する。オファーデータおよび影響円アプリケーションモジュール107は、図2〜図4に示された節約ルートを生成するために使用されるエッジ重みデータを調整する役目を果たすことができる。オファーデータおよび影響円アプリケーションモジュール107は、図5に関連して下記にさらに詳しく記載される。
【００１９】
1つまたは複数の小売商コンピュータ100Bによって作成されたオファーデータ109は、小売商またはサービスベンダによって販売され得る特定の製品またはサービスについてのディスカウントおよび節約のオファーを含むことができる。オファーデータ109は、指定された期間中、自動的に更新され、サーバ102に提供される。オファーデータ109は、毎月、毎週、毎日、毎時、または取引ごともしくは要求ごとのベースで、小売商コンピュータ100Bによって更新され得る。オファーデータ109は、オファーが任意のタイプの消費者向けに書かれるように、一般的である場合がある。代替的に、オファーデータ109は、特定のオファーが単一の消費者だけに有効であるように、特有で個別化される場合がある。小売商コンピュータ100Bは、(個別化または一般的)両方のタイプのオファーデータ109を生成することもできる。
【００２０】
特有で個別化されたオファーデータ109の場合、小売商コンピュータ100Bは、サーバ102がPCD100Aのオペレータに対応する識別情報またはアカウント情報を中継すると、そのようなオファーデータ109を生成することができる。たとえば、PCD100Aのオペレータが特定のタイプの製品および/またはサービスに興味を表すと、コンピュータサーバ102は、PCD100Aのオペレータに関連付けられた識別情報またはアカウント番号を小売商コンピュータ100Bに中継することができる。識別情報またはアカウント番号が既存の顧客に対応すると小売商コンピュータ100Bが判定した場合、小売商コンピュータ100Bはその既存の顧客に固有である特定のオファーを提供することができる。固有であるこれら特定のオファーは、PCD100Aのオペレータの識別情報またはアカウント番号と一致する、小売商コンピュータ100Bがそのデータベース内に有することができる記録に基づくことができる。
【００２１】
図1B:PCD100Aの節約ルートシステム要素
図1Bを参照すると、この図は、図2〜図4に示された節約ルートを生成するための方法およびシステムを実装するための、ワイヤレス電話の形態の、PCD100Aの例示的で非限定的な態様の機能ブロック図である。図示されたように、PCD100Aは、マルチコアである第1の中央処理装置(「CPU」)110A、シングルコアタイプである第2のCPU110B、およびアナログ信号プロセッサ126を有するオンチップシステム322を含む。これらのプロセッサ110A、110B、および126は互いに結合され得る。第1のCPU110Aは、当業者によって理解されるように、第0のコア222、第1のコア224、および第Nのコア230を備えることができる。代替の実施形態では、当業者によって理解されるように、2つのCPU110を使用する代わりに、2つのデジタル信号プロセッサ(「DSP」)を利用することもできる。
【００２２】
図1Bは、1つまたは複数の節約ルートアプリケーションモジュール105を含む。本明細書の残りの部分では、モジュール105は、複数形ではなく単数形でモジュール105と呼ばれる。当業者は、本発明から逸脱することなく、モジュール105が様々な部分に分割され、異なるプロセッサ110、126によって実行され得ることを認識されよう。代替的に、モジュール105は単一の要素として編成され、単一のプロセッサ110または126によって実行され得る。
【００２３】
上述したように、モジュール105は、CPU110によって実行されるソフトウェアを備えることができる。しかしながら、当業者によって理解されるように、モジュール105はハードウェアおよび/またはファームウェアからも形成され得る。
【００２４】
一般に、モジュール105は、図2〜図4に示された節約ルートなどの、節約ルート204を生成する役目を果たすことができる。図1Bは、PCD100Aがメモリ112を含むことができることを示す。CPU110上で動作するモジュール105はメモリ112にアクセスして、以下でさらに詳細に記載されるように、節約ルートアプリケーションモジュール105から生まれた関数呼出しを実行することができる。
【００２５】
特定の態様では、本明細書に記載された方法ステップのうちの1つまたは複数は、節約ルートモジュール105を形成する、メモリ112に記憶された実行可能命令およびパラメータによって実装され得る。節約ルートモジュール105を形成するこれらの命令は、CPU110、アナログ信号プロセッサ126、または別のプロセッサによって実行され得る。さらに、プロセッサ110、126、メモリ112、メモリ112に記憶された命令、またはそれらの組合せは、本明細書に記載された方法ステップのうちの1つまたは複数を実行するための手段として動作することができる。
【００２６】
図1B:PCD100Aの他の要素
図1Bに示されたように、ディスプレイコントローラ128およびタッチスクリーンコントローラ130は、デジタル信号プロセッサ110に結合される。オンチップシステム322の外部にあるタッチスクリーンディスプレイ132は、ディスプレイコントローラ128およびタッチスクリーンコントローラ130に結合される。
【００２７】
図1Bは、マルチコア中央処理装置(「CPU」)110に結合された、ビデオコーダ/エンコーダ(「コーデック」)134、たとえば位相反転線(「PAL」)エンコーダ、順次式カラーメモリ(「SECAM」)エンコーダ、全米テレビジョン方式委員会(「NTSC」)エンコーダ、または任意の他のタイプのビデオエンコーダ134を示す概略図である。ビデオ増幅器136が、ビデオエンコーダ134およびタッチスクリーンディスプレイ132に結合される。ビデオポート138がビデオ増幅器136に結合される。図1Bに描写されたように、ユニバーサルシリアルバス(「USB」)コントローラ140がCPU110に結合される。また、USBポート142がUSBコントローラ140に結合される。加入者識別モジュール(SIM)カード146も、CPU110に結合され得る。さらに、図1Bに示されたように、デジタルカメラ148がCPU110に結合され得る。例示的な態様では、デジタルカメラ148は、電荷結合デバイス(「CCD」)カメラまたは相補型金属酸化膜半導体(「CMOS」)カメラである。
【００２８】
図1Bにさらに示されたように、ステレオオーディオコーデック150がアナログ信号プロセッサ126に結合され得る。さらに、オーディオ増幅器152がステレオオーディオコーデック150に結合され得る。例示的な態様では、第1のステレオスピーカー154および第2のステレオスピーカー156が、オーディオ増幅器152に結合される。図1Bは、マイクロフォン増幅器158もステレオオーディオコーデック150に結合され得ることを示す。加えて、マイクロフォン160がマイクロフォン増幅器158に結合され得る。特定の態様では、周波数変調(「FM」)ラジオチューナ162がステレオオーディオコーデック150に結合され得る。また、FMアンテナ164がFMラジオチューナ162に結合される。さらに、ステレオヘッドフォン166がステレオオーディオコーデック150に結合され得る。
【００２９】
図1Bは、無線周波(「RF」)トランシーバ168がアナログ信号プロセッサ126に結合され得ることをさらに示す。RFスイッチ170が、RFトランシーバ168およびRFアンテナ172に結合され得る。図1Bに示されたように、キーパッド174がアナログ信号プロセッサ126に結合され得る。また、マイクロフォン付きモノヘッドセット176が、アナログ信号プロセッサ126に結合され得る。さらに、バイブレータデバイス178がアナログ信号プロセッサ126に結合され得る。図1Bは、電源180、たとえばバッテリーがオンチップシステム322に結合されることも示す。特定の態様では、電源180は、充電式DCバッテリー、または交流(「AC」)電源に接続されたAC-DC変換器から導出されたDC電源を含む。
【００３０】
図1Bに描写されたように、タッチスクリーンディスプレイ132、ビデオポート138、USBポート142、カメラ148、第1のステレオスピーカー154、第2のステレオスピーカー156、マイクロフォン160、FMアンテナ164、ステレオヘッドフォン166、RFスイッチ170、RFアンテナ172、キーパッド174、モノヘッドセット176、バイブレータ178、熱センサ157B、および電源180は、オンチップシステム322の外部にある。
【００３１】
図2は、複数の節約ルート204を表示するための例示的な地図200Aである。この地図200Aは、PCD100Aのディスプレイ132上にレンダリングされ得る。節約ルート204に加えて、例示的な地図200Aは直接ルート202をさらに含むことができる。直接ルート202は、通常、開始点201Aと終了点201Bとの間の最短ルートを含み、いかなる節約も含むことができない。節約ルート204は、通常、開始点201Aと終了点201Bとの間の最短ルートではない。節約ルート204は、通常、特定の節約ルート204に沿って入手可能な1つまたは複数のオファー206を表示する。
【００３２】
節約ルート204に沿ったこれらのオファー206は、PCD100Aによってプロットされた節約ルート204に隣接する場合がある特定の店頭およびオフィスで、商品向けのオファーおよび/またはサービス向けのオファーを含むことができる。特定の節約ルート204に沿って存在するオファー206は、図1Aに示された小売商コンピュータ100Bによって提供されたオファーデータ109に基づくことができる。
【００３３】
節約ルート204は、開始点201Aと終了点201Bとの間の直接ルート202よりも大きい距離を含む場合がある。しかしながら、節約ルート204は、PCD100Aのオペレータにとって興味深い可能性がある商品またはサービスまたは両方を購入する機会を、PCD100Aのオペレータに提供する。また、当業者は、直接ルート202と比較して距離が等しいかまたは短い可能性がある節約ルート204が存在できることを認識する。図2の中の凡例208によって示されたように、第1の節約ルート204Aは、合計93ドルの節約をPCD100Aのオペレータに提供することができ、第2の節約ルート204Bは、合計50ドルの節約をオペレータに提供することができる。直接ルート202は、まったくいかなる節約も提供することができず、オペレータにゼロ(0)ドル節約することが示される。
【００３４】
すべてのオファー206がPCD100Aのオペレータによって受け入れられ、取られた場合、凡例208に列記された合計の節約は、特定の節約ルート204に沿って節約され得る合計金額および/または価値の総和を含むことができる。PCD100Aのオペレータは、地図200Aに表示されるものをカスタマイズすることができる。PCD100Aのオペレータは、地図200A内に表示されるべき特定の製品および/またはサービスだけを示すことによって、地図200Aをカスタマイズすることができる。さらに、オペレータは、地図200Aをカスタマイズして、特定のベンダ/小売商からのオファーのみを表示することができる。節約を示すことに加えて、オペレータは、どのルート204を取るかの判定を助ける、余分の移動距離または節約された余分のドル単位のコストを見るように選ぶことができる。当業者によって理解されるように、これらの例に沿って多数の修正が行われて、地図200Aによって提示された情報をカスタマイズすることができる。
【００３５】
各節約ルート204および直接ルート202は、ルートをお互いと区別するために色分けされ得る。代替的に、または色分けに加えて、各ルート202、204がオペレータに容易に認知可能である差別化図式要素を有するように、各ルート202、204は、カスタマイズされたシェーディング、ハッチングおよび/またはシンボルを提供され得る。
【００３６】
図2に示されたように、PCD100Aのオペレータは地図200Aと対話することができる。例示的な一実施形態によれば、特定の節約ルート204に隣接して表示されたオファー206についての追加情報を表示するために、オペレータはマウスポインタ211を使用して、特定のオファー206の上を浮遊させることができる。図2に示された例示的な実施形態では、スクリーンポインタ211がオファー206に隣接して、または直接その上に位置すると、オファー206Aなどの特定のオファーについてのさらなる詳細がPCD100Aのオペレータに表示され得る。オファー206Aは、「ジャックの自転車(Jack's Bikes)」として知られる製品ベンダからの広告を含む。
【００３７】
オファー206Aは、地図200Aがオペレータに表示された当日限り有効な50ドルオフのクーポンを含む。オファー206Aは、小売商によって作成され、小売商コンピュータ100Bに入力された一般的なオファーであった場合がある。代替的に、オファーは、コンピュータサーバ102から小売商コンピュータ100Bに渡された識別情報および/またはアカウント情報に基づいて、現在のPCD100Aのオペレータ向けに特別に生成された場合がある。一般に、PCD100Aのオペレータによってコンピュータサーバ102に提供された好みに基づいて、オペレータに関係する、またはオペレータによって所望されるオファー206だけが、地図200Aに表示される。当業者は、様々なタイプの製品および/またはサービス向けの他のオファーが、図2に示された特定のオファー206Aと同様に生成され得ることを認識されよう。
【００３８】
図3は、PCD100Aで表示され得る節約ルートに対応する地図200B上のパラメータを調整するための例示的なユーザインターフェース207を示す第1の図である。地図200Bは、開始点201Aと終了点201Bとの間の最短ルートである直接ルートA(202)、第1の節約ルートB(204A)、および第2の節約ルートC(204B)の3つのルートを含む。第1の節約ルート204Aは、第2のオファー206Bおよび第3のオファー206Cとの間に3つの区間B1、B2、およびB3を有する。第2の節約ルート204Bは、第1のオファー206Aとの間に2つの区間C1、C2を有する。
【００３９】
ユーザインターフェース207は、調整可能なスライダバー210などの調整可能なグラフィックを備えることができる。例示的なユーザインターフェース207は、3つのスライダバー210A、210B、および210Cを備えることができる。各スライダバー210は、調整可能なブロック215を備えることもできる。この調整可能なブロック215は、PCD100Aのオペレータにより、スライダバー210に沿って横方向に移動することができる。調整可能なブロック215により、オペレータが、特定のスライダバー210に沿って調整可能なブロック215に行われる調整量と一致する特定の変数についての大きさを選択することが可能になる。当業者によって理解されるように、スライダバー210および調整可能なブロック215以外の他のグラフィックが使用され得る。たとえば、スライダバー210の代わりに、またはそれに加えて、グラフィックはドロップダウンメニューおよび選択可能なメニューを備えることができる。
【００４０】
第1のスライダバー210Aは、地図200B用の調整可能なパラメータに割り当てられ得る。1つのそのようなパラメータは、オファー206を知るためにオペレータが移動しようとする、開始点201Aと終了点201Bとの間の直接ルートを超える距離量を備えることができる。第2のスライダバー210Bは、いくつの節約ルート204をオペレータがディスプレイデバイス132に表示することを望むかに対応するパラメータに割り当てられ得る。第3のスライダバー210Cは、節約ルートごとの最小の節約に対応するパラメータに割り当てられ得る。最小の節約は、特定の節約ルート204に沿って移動する可能性を考慮する前に、オペレータがもちたいと願う値であり得る。
【００４１】
図3に示された例示的な実施形態では、第1のスライダバー210Aは、ゼロマイルの最小値および20マイルの最大値を有する。第2のスライダバー210Bは、ゼロルートの最小値および20ルートの最大値を有する。第3のスライダバー210Cは、ゼロUSドルの最小値および100USドルの最大値を有する。他の最小値および最大値が使用され得るし、追加のスライダバー210またはより少ないスライダバー210が使用され得ることが、当業者によって認識される。当業者によって理解されるように、図3に示されたパラメータと比較して異なるパラメータも追跡され得る。たとえば、直接ルート202を超える距離の追跡の代わりに、時間量がPCD100Aのオペレータによって選択され得る。当業者によって理解されるように、ユーロおよびキロメートルのような測度および通貨の異なる単位も使用され得る。
【００４２】
図3に示された例示的な実施形態では、第1の調整可能なブロック215Aは、直接ルート202用に計算された任意の距離を超えてオペレータが移動しようとする5マイルの値を表示するように選択されている。第2の調整可能なブロック215Bは、オペレータが地図200B内に表示することを望む3つの節約ルートの値を表示するように選択されている。第3の調整可能なブロック215Cは、地図200B内にルート204を表示するために各節約ルート204が有する必要がある節約の最小量として40ドルの値を表示するように選択されている。
【００４３】
したがって、ユーザインターフェース207用にオペレータによって選択されたこれらのパラメータに鑑みて、各節約ルート204は、直接ルート202用の総距離に対して5マイルよりも大きい総距離を有することができない。第1の凡例208Aによって伝えられたように、直接ルート202は3マイルの距離を有し、一方第1の節約ルート204Aは4マイルの距離を有し、第2の節約ルート204Bは5マイルの距離を有する。
【００４４】
さらに、地図200B内に表示され得る節約ルート204の総数は、数において3よりも大きくなることはできない。図3に示された例示的な実施形態では、少なくとも40ドルの合計最小節約量を有することの別のパラメータを満足する2つだけのルート204がPCD100Aによって見つけられたので、2つの節約ルート204A、204Bだけが表示された。第2の凡例208Bによって伝えられたように、直接ルート202は0ドルの最小節約を有し、一方第1の節約ルート204Aは42ドルの第1の最小節約を有し、第2の節約ルート204Bは55ドルの最小節約を有する。前述のように、ユーロ、円などで、それらに限定されない他の通貨が、当業者によって理解されるように使用され得る。
【００４５】
それぞれのスライダバー210に対して調整が行われた後、節約ルートアプリケーションモジュール105は、PCD100Aのオペレータによって選択された新しい調整値に基づいて、節約ルート204を再計算することができる。代替的に、節約ルートアプリケーションモジュール105は、ディスプレイ132に表示された「再計算」ボタン(図示せず)などの、コマンドをPCD100Aのオペレータが選択して節約ルート204を再計算するまで待つことができる。
【００４６】
図4は、PCD100Aで表示され得る節約ルートに対応する地図200C上のパラメータを調整するための例示的なユーザインターフェース207を示す第2の図である。図4は図3と非常によく似ている。したがって、これら2つの図の間の差異のみが以下に記載される。
【００４７】
図4に示された例示的な実施形態によれば、直接ルート202を超える3つの節約ルート204A、204B、および204Cの合計は、地図200C内に表示されている。ユーザインターフェース207の調整可能なブロック215A、215B、および215C用の値は、次のように選択された。オペレータが特定の節約ルート204に向けて移動しようとする、直接ルート202の総距離を超える10マイル(ブロック215A)の値、4つ(ブロック215B)の節約ルート204よりも多くない値が地図200C内に表示され、最小節約量として50ドル(ブロック215C)の値が各節約ルート204によって表示される。
【００４８】
図4の例示的な実施形態は、特定のオファー206がPCD100Aのオペレータによってどのように選択され得るかも示す。PCD100Aのオペレータは、スクリーンポインタ211を使用して、特定の地図200C内に提示された特定のオファー206を選択および選択解除することができる。具体的には、図4に示された例示的な実施形態では、オペレータは第6のオファー206Fを選択解除した。第6のオファー206Fが選択解除されると、「X」を含む図式文字が第6のオファー206Fの上に位置して、このオファーがオペレータによって受け入れられず、地図200Cから削除されるべきであることを示す。
【００４９】
一方、PCD100Aのオペレータは、ポインタ211で第5のオファー206Eなどの特定のオファー206を選択することもできる。オファー206の選択を示すために、PCD100Aは、図4に示された破線円などの特定の図式文字を生成して、特定のオファー206がオペレータによって選択されたことを示すことができる。
【００５０】
PCD100Aのオペレータが特定のオファー206を選択するとき、PCD100Aは破線半円などの図式文字を生成することができる。特定のオファー206は、特定のボタンをダブルクリックすることによって選択され得るか、またはオファー206を選択する「プラス」記号および特定のオファー206を選択解除する「マイナス」記号などの特定のキーストロークに関連付けられ得る。PCD100Aは、第3のスライダバー210Cに対応するしきい値ドル金額が満足または実現されない場合でも、任意の地図再計算が少なくとも1つの節約ルート204内の選択されたオファー206を含むことを要求することもできる。
【００５１】
したがって、任意のオファー206がオペレータによって選択または選択解除された後、かつ再計算コマンドが発行された後、PCD100Aは、ドロップされたオファー206および選択されたオファー206に基づいて、節約ルート204を再計算することができる。再計算コマンドは、ユーザアクションに関連付けられ得るか、または、調整可能なブロック215が選択された後、もしくは特定のオファー206が地図200C内で選択された後、自動的に発行され得る。
【００５２】
図5は、図2〜図4の節約ルート204がどのようにPCD100Aで計算され得るかを示す図である。節約ルートアプリケーションモジュール105は、ダイクストラの最短経路アルゴリズムに類似した、グラフまたはツリーの検索アルゴリズムを利用することができる。当業者によって理解されるように、ダイクストラの最短経路アルゴリズムは、オランダのコンピュータ科学者エドガー・ダイクストラによって1956年に考案され、1959年に公告された。ダイクストラの最短経路アルゴリズムは、負でないエッジ経路コストを有するグラフについて単一ソースの最短経路問題を解決するグラフ検索アルゴリズムであり、当業者によって理解されるように最短経路ツリーを作成する。
【００５３】
節約ルートアプリケーションモジュール105によって利用されるグラフまたはツリーのアルゴリズムは、ダイクストラの最短経路アルゴリズムと比較して同様の方法で機能することができる。たとえば、アルゴリズムは以下の式によって管理され得る。
式1    f(x) = g(x)+h(x)-c(x)
ここで、f(x)は開始点201Aと終了点201Bとの間の最短距離を計算する経路選択関数であり、g(x)は開始点201Aから移動した距離であり、h(x)は終了点201Bに達する残りの距離であり、c(x)は経路選択関数f(x)上のクーポン因子または影響円と呼ばれ得る重み付けパラメータである。影響円c(x)の値は、当業者によって理解されるようにエッジ重みとも呼ばれ得る。c(x)の値は以下の式によって定義され得る。
式2    c(x) = RDN/DDN(x)
ここで、RDNは、通常、マイルまたはキロメートルのような距離の単位で言及されるディスカウントノード(「DN」)用の影響円の半径(「R」)用の固定値であり、DDNは、通常、マイルまたはキロメートルのような距離の単位で言及されるディスカウントノード(「DN」)までの距離(「D」)である。影響円c(x)の値は、通常、評価されている特定のノードに影響を及ぼすことができる、利用可能なすべての影響円の合計を含む。多くの場合、離れた影響円は、評価されている現在のノードに近い可能性がある任意の影響円と比較して無視することができる。
【００５４】
特定の影響円の半径の値(「RDN」)は、オファーの大きさに基づいてコンピュータサーバ102によって確立され得る。オファーは、地図200内の特定のロケーションについて、サービスベンダまたは小売商によって提供され得る。コンピュータサーバ102は、オファーデータ109が小売商コンピュータ100Bからアップロードされた後、オファーデータおよび影響円モジュール107に基づいて、R値を計算することができる。RDN値は、ディスカウントノード(「DN」)(ロケーション)に提示されているオファーの相対値に対応するように決定され得る。
【００５５】
たとえば、図5の第1のディスカウントノード(DN1)は、新しい自転車の購入用の50ドルオフのクーポンのオファーに対応する20マイルに設定された影響円を有することができる。一方、図5の第2のディスカウントノード(DN2)は、約5ドルと評価された、レストランでの子供の食事用のオファーに対応する10マイルに設定された影響円を有することができる。約5ドルの価値を有する子供の食事は、新しい自転車用の50ドルオフのクーポンよりもかなり小さいので、第2のディスカウントノード(DN2)用の影響円用の半径は、より大きいディスカウント値を有する第1のディスカウントノード(DN1)用に設定された20マイルの長さの半径に対して、10マイルのかなり小さい値に設定される。当業者は、前述の影響円がエッジ重み関数c(x)を計算する1つの方法にすぎないことを認識する。エッジ重み関数c(x)を計算するための他の方法およびアルゴリズムは、本開示の範囲内である。
【００５６】
図5は、半径233をもつ影響円を有するディスカウントノードDN1およびDN2で、2つの異なるオファーがどのように経路選択関数f(x)に影響を及ぼすかを示す。経路選択関数f(x)は、開始点201Aで始まり、開始点201Aとその最も近いノードA1、A2、およびA3との間の距離を検討する。第1のノードA1および第3のノードA3での経路選択関数f(x)用の値は、(1+8)に等しい。第1のノードA1または第3のノードA3のどちらに対しても、数字1はg(x)の値すなわち開始点201Aから移動した距離を表し、数字8はh(x)の値すなわち終了点201Bまでの残りの距離を表す。
【００５７】
第2のノードA2での経路選択関数f(x)用の値は、(1+7)に等しい。第2のノードに対して、数字1はg(x)の値すなわち開始点201Aから移動した距離を表し、数字7はh(x)の値すなわち終了点201Bまでの残りの距離を表す。これら第1の3つのノードA1、A2、およびA3の場合、当業者によって理解されるように、それらが遠く離れすぎている場合、影響円の値c(x)が存在しないか、c(x)の値は無視することができる。
【００５８】
節約ルートアプリケーションモジュール105は、第1の3つのノードA1、A2、およびA3ごとに計算された経路選択関数f(x)用の値に重み付けする。第2のノードA2は8(1+7)の値を有し、他の2つのノードは9(1+8)の値を有するので、節約ルートアプリケーションモジュール105は、最も効率的な方法で終了点201Bに到達する好ましい経路として、開始点201Aと第2のノードA2との間の区間または経路を選択する。
【００５９】
次いで、節約ルートアプリケーションモジュール105は、図5に示されたようにB1、B2、およびB3である次の組のノードを調べる。3つのノードの各々についての経路選択関数の値は次のようになる場合がある、B1(2+7)、B2(2+6)、およびB3(2+7)。前述のように、これらの括孤付き表現の各々における最初の数字はg(x)の値を含むことができ、前述のように、これらの括孤付き表現の各々における2番目の数字はh(x)の値を含むことができる。
【００６０】
節約ルートアプリケーションモジュール105は、最も低いg(x)、h(x)の値および最も高いc(x)の値に基づく、経路選択関数の値を有するノードを論理的に選択する。この特定の第2の組のノード(B1、B2、およびB3)では、(2+6<2+7なので)第2のノードB2が選択される。しかしながら、節約ルートアプリケーションモジュール105によるこの選択は、第3のノードB3が、20マイル(影響円用の固定値)が14マイルのディスカウントノードへの距離(DDN1)によって除算された値に等しいc(x)関数を有する半径233RDN1をもつ影響円によって影響を受けた場合、異なる。半径233RDN1を有する影響円は、オファーロケーションとも呼ばれる第1のディスカウントノード(DN1)から発信するオファーのサイズに基づく。
【００６１】
第3のノードB3が半径233RDN1以内にあるロケーションを有する場合、その経路選択関数f(x)の値は次のようになる、(2+7-(20/14)) = (2+7-1.4) = (2+5.6)。したがって、第2の3つのノードB1、B2、およびB3のうちの第3のノードB3は、7.6(2+5.6)に等しいf(x)の値を有し、第1のノードB1は9(2+7)の値を有し、第2のノードは8(2+6)の値を有する。半径233RDN2を有する第2の影響円DN2は、ノードB3に対して遠く離れすぎており、したがってその影響はノードB3用のc(x)の値のいかなる合計においても無視できることが留意される。
【００６２】
半径233RDN1を有する第1の影響円の第3のノードB3への影響があるとすれば、節約ルートアプリケーションモジュール105は、終了点201Bに到達するルートまたは経路における次の論理ノードとして、3つのノードB1、B2、およびB3の中で、この例では第2のノードB2の代わりに第3のノードB3を選択する。
【００６３】
所与のディスカウントノード(DN)用の影響円の影響をさらに実証するために、第2のディスカウントノードDN2用の影響円が評価される。ノードC3から第2のディスカウントノードDN2への距離(DDN-C3)は、5マイルの値を有する。距離DN2Bだけ分離されたノードC3用の経路選択関数f(x)の値は次のようになる、f(x) = (3+6-(10/5)) = (3+6-2) = (3+4) = 7。この式では、ノードC3はその相対値がゼロに接近するように半径RDN1の十分外側にあるので、第1の影響円の半径RDN1の影響は、(半径RDN2を有する第2の影響円と比較して)無視することができる。
【００６４】
その結果、節約ルートアプリケーションモジュール105が、3つのノードC1(3+6)、C2(3+5)、およびC3(3+4)の中でノードを選択する必要がある場合、半径233RDN2を有する影響円の影響がノードC3用のh(x)の値に有するので、モジュール105は第3のノードC3を選択する。
【００６５】
前述のように、図5は節約ルート204を生成するさらに1つの方法を示す。節約ルート204を生成する他の方法が存在する可能性がある。たとえば、別の方法は、特定の小売商または店舗を通る、開始点201Aと終了点201Bとの間の最短ルートを見つけることを含み得る。このシナリオでは、f(x)は、開始点201Aから店舗への最短ルートに、次いで店舗から終了点201Bへの最短ルートに等しく設定される。より多くの中間点に対応するために同様の方法が使用され得る。オペレータによって設定された、しきい値の距離/時間よりも大きいルート204は拒絶され得る。
【００６６】
図6は、節約ルート204を生成するための方法600を示す論理フローチャートである。ブロック605が方法600内の最初のステップである。ブロック605では、PCD100Aは、PCD100Aのオペレータから、製品および/またはサービスのカテゴリの選択を受信することができる。代替的に、または追加として、PCD100Aは、PCD100Aの使用に基づいてオペレータによって好まれた製品および/またはサービスのカテゴリを自動的に格納することができる。たとえば、PCD100Aは、インターネットブラウジングセッション中にオペレータによって見られた可能性があるサービスおよび/または製品のカテゴリのウェブブラウジング履歴を追跡することができる。さらに、PCD100Aは、オペレータによって選択された製品および/またはサービスについての好みのカテゴリをデータ設定するために、PCD100Aでオペレータによって行われた購入を追跡することもできる。当業者は、ブロック605が方法600により常に実行されるとは限らないワンタイム構成ステップを含むことができると諒解することもできる。たとえば、ブロック605は、節約ルートアプリケーションモジュール105を実行するポータブルコンピューティングデバイス100Aを構成するとき、オペレータがドロップダウンメニューで好みを識別することを含むことができる。
【００６７】
次に、ブロック610では、PCD100Aは、PCD100Aのオペレータによって望まれたロケーションの出発地の住所および目的地の住所を受信することができる。出発地の住所は、衛星ナビゲーションシステムを使用することによって判定され得るPCD100Aの現在位置を含むことができる。代替的に、このステップ内のPCD100Aは、PCD100Aによって判定されたような様々な地理的ロケーションの中でオファーを発見するために、オペレータが取ろうとする時間量を受信することができる。PCD100Aが時間量だけを受信すると、節約ルートアプリケーションモジュール105は、当業者に理解されるように、PCD100Aを現在の選択されたPCD100Aの開始点201Aに戻すルートを自動的に生成する。
【００６８】
次に、ブロック615で、PCD100Aは目的地の住所をサーバ102に送信することができる。ブロック620では、PCD100Aは、サーバ102によって受信された目的地に関係する様々な小売商またはベンダからのオファーを含む影響円データを受信することができる。
【００６９】
代替の例示的な実施形態によれば、PCD100Aがその現在位置をサーバ102に定期的に送信する場合、ブロック615および620は省略され得る。その現在位置をサーバ102に送信した後、サーバ102は、PCD100Aの現在位置に関係する市または郵便番号の集合についてなど、設定された地理的エリアについて、影響円データをPCD100Aに返信することができる。
【００７０】
次に、ブロック630では、PCD100Aは、オペレータが目的地に対して移動しようとする最大距離を受信することができる。このブロック630内で受信されたデータは、図3〜図4に示された第1のスライダバー210Aと一致する場合がある。
【００７１】
ブロック635では、PCD100Aは、地図200内に表示されるべき節約ルート204の所望の数を受信することができる。このブロック635は、図3〜図4に示された第2のスライダバー210Bと一致する場合がある。
【００７２】
ブロック640では、PCD100Aは、節約ルート204ごとに設定された最小の所望の節約値を受信することができる。このブロック640は、図3〜図4に示された第3のスライダバー210Cと一致する場合がある。
【００７３】
次に、判定ブロック645では、PCD100Aおよび詳細には節約ルートアプリケーションモジュール105は、前のブロックでオペレータによって入力されたパラメータが、PCD100Aのハードウェアおよび/またはソフトウェアの能力を超えるかどうかを判定することができる。判定ブロック645への問合せが否定である場合、ブロック650を回避して、ルーチンブロック655への「NO」の分岐に進む。判断ブロック645への問合せが肯定である場合、ブロック650への「YES」の分岐に進み、ブロック650では、PCD100Aは、下記に記載されるルーチンブロック655内でルートを計算するために、サーバ102と組み合わせて機能することができる。
【００７４】
ルーチンブロック655では、PCD100A(および場合によってはサーバ102)の節約ルートアプリケーションモジュール105は、ブロック605からブロック640で受信された調整可能なパラメータの選択されたセットに基づいて節約ルートを計算する。ルーチンブロック655のさらなる詳細は、図7に関連して下記に記載される。
【００７５】
ルーチンブロック655の後、ブロック660では、PCD100Aは、図2〜図4に示されたようにディスプレイデバイス132にルートをレンダリングする。判定ブロック665では、節約ルートアプリケーションモジュール105は、ディスプレイデバイス132に表示されている既存のルートを修正するために、任意の入力が受信されたかどうかを判定する。判定ブロック665は、一般に、図4に示されたようにオペレータが1つまたは複数のオファー206を選択することまたは選択解除することと一致する。
【００７６】
判定ブロック665への問合せが肯定である場合、ブロック670への「YES」の分岐に進む。判定ブロック665への問合せが否定である場合、判定ブロック680への「NO」の分岐に進む。
【００７７】
ブロック670では、節約ルートアプリケーションモジュール105(および場合によってはサーバ102)は、図4に示されたオファーなどの、どのオファー206がオペレータによって選択されたかに応じて、節約ルート204の全体または節約ルート204の一部を再計算することができる。ブロック675では、節約ルートアプリケーションモジュール105は、ブロック670内の再計算に基づいて再計算された節約ルート204を表示する。
【００７８】
判定ブロック680では、節約ルートアプリケーションモジュール105は、オペレータが入力を提供して、最大距離、ルートの数、および/または節約ルート204ごとの最小の所望の節約値を調整したかどうかを判定する。判定ブロック680は、一般に、図3〜図4に示されたようなスライダバー210を備えるユーザインターフェース207で受信された任意の入力と一致する。
【００７９】
判定ブロック680への問合せが否定である場合、「NO」の分岐に進み、そこで方法600は終了する。判定ブロック680への問合せが肯定である場合、ルーチンブロック655へ戻る「YES」の分岐に進む。
【００８０】
図7は、選択されたパラメータに基づいて節約ルートを生成するためのサブメソッドまたはルーチン655を示す論理フローチャートである。ブロック705がサブメソッド655の最初のステップである。ブロック705では、サーバ102は、1つまたは複数の小売商コンピュータ100Bからオファーデータ109を受信する。
【００８１】
ブロック710では、サーバ102は、オファーデータ109に基づいて1つまたは複数の影響円233を作成する。次に、ブロック715では、PCD100A上で動作する、またはサーバ102上で動作する(または両方の)節約ルートアプリケーションモジュール105は、オペレータが移動しようとする選択された距離215Aに基づいて、節約ルートの選択された数215Bを計算することができる。節約ルートの選択された数215B、およびPCD100Aのオペレータが移動しようとする選択された距離215Aは、図3〜図4に示されるようにスライダバー210で行われる選択に対応する。
【００８２】
前述のように、約100マイルまたはそれ未満の大きさを有するルートの場合、PCD100Aは、一般に、節約ルートの選択された数を生成するのに十分な計算能力を有する。しかしながら、約100マイルよりも大きい大きさを有するルートの場合、いくつかの状況では、当業者によって理解されるように、コンピュータサーバ102から利用可能な計算リソースを活用することが有益であり得る。
【００８３】
次に、ブロック720では、節約ルートアプリケーションモジュール105は、各節約ルート233が、図3〜図4に示されたような選択された最小の節約しきい値215Cよりも大きいかそれに等しいことを検証することができる。特定の節約ルート233が選択された最小の節約しきい値215Cよりも小さい場合、節約ルートアプリケーションモジュール105は、このルート233をドロップし、新しいルートを計算して所望の選択された最小の節約しきい値215Cを実現する。次いで、サブメソッド655は図6のブロック660に戻る。
【００８４】
上記の開示に鑑みて、プログラミングの当業者は、たとえば本明細書内のフローチャートおよび関連する説明に基づいて、コンピュータコードを書くか、または適切なハードウェアおよび/もしくは回路を特定して、開示された発明を容易に実装することができる。したがって、特定の1組のプログラムコード命令または詳細なハードウェアデバイスの開示が、本発明をどのように製作し使用すべきかについて適切に理解するために必要であるとはみなされない。特許請求されるコンピュータ実装の処理の発明性のある機能は、上記の説明において、かつ様々な処理の流れを示すことができる図面とともに、より詳細に説明される。
【００８５】
1つまたは複数の例示的な態様では、記載された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、1つまたは複数の命令またはコードとしてコンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体上で送信され得る。コンピュータ可読媒体には、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む、コンピュータ記憶媒体とコンピュータ通信媒体の両方が含まれる。記憶媒体は、コンピュータによってアクセスされ得る任意の利用可能な媒体であり得る。限定ではなく例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスク記憶装置、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または、命令もしくはデータ構造の形式で所望のプログラムコードを搬送もしくは記憶するために使用され得るとともに、コンピュータによってアクセスされ得る任意の他の媒体を備えることができる。
【００８６】
また、任意の接続はコンピュータ可読媒体と適切に呼ばれる。たとえば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(「DSL」)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。
【００８７】
本明細書で使用されるように、ディスク(disk)およびディスク(disc)は、コンパクトディスク(「CD」)、レーザディスク、光ディスク、デジタル多用途ディスク(「DVD」)、フレキシブルディスク、およびブルーレイディスクを含み、ディスク(disk)は、通常、磁気的にデータを再生し、ディスク(disc)はレーザで光学的にデータを再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【００８８】
代替の例示的な実施形態によれば、節約ルートアプリケーションモジュール105は、移動した総距離を表示することに加えて、節約ルート233ごとに費やされ得る推定総時間を表示することもできる。さらに、節約ルートアプリケーションモジュール105は、化石燃料ベースの車両についてのガソリンのガロン当たりのマイル(MPG)、電気自動車についての移動距離に必要な充電量、などのエネルギー測定ごとの距離に基づいて、ガソリンコストの推定金額を表示することもできる。
【００８９】
節約ルートアプリケーションモジュール105は、特定の節約ルート233について推定された総節約利益から、エネルギー(ガソリン、電気、など)のコストの推定金額を控除することもできる。そのような状況では、節約ルートアプリケーションモジュール105は、特定の節約ルート233を比較する前に、図3〜図4に示されたスライダバー210Cで選択された最小節約しきい値215Cから、エネルギーコストの推定金額を控除することができる。
【００９０】
節約ルートアプリケーションモジュール105は、(特定の節約ルート233に利用可能な合計節約を含むことができる)利益の総数に対して(消費金額および消費時間を含むことができる)総コストを重み付けする、全体的な費用便益比パラメータを表示することもできる。これら例示的な実施形態の他の変形形態は、当業者によって理解される。
【００９１】
選択された態様が詳細に例示および記載されたが、以下の特許請求の範囲によって規定されるように、本発明の趣旨および範囲から逸脱することなく、本明細書において様々な置換および改変が行われ得ることが理解されよう。
【符号の説明】
【００９２】
100A  ポータブルコンピューティングデバイス(PCD)
100B  小売商またはサービスプロバイダのコンピュータ
101  計画された旅行の効率を高めるためのシステム
102  コンピュータサーバ
103A  通信リンク
103B  通信リンク
103C  通信リンク
105  節約ルートアプリケーションモジュール
107  オファーデータおよび影響円アプリケーションモジュール
109  オファーデータ
110A  第1の中央処理装置(CPU)
110B  第2のCPU
112  メモリ
126  アナログ信号プロセッサ
128  ディスプレイコントローラ
130  タッチスクリーンコントローラ
132  タッチスクリーンディスプレイ
134  ビデオコーダ/エンコーダ(コーデック)
136  ビデオ増幅器
138  ビデオポート
140  ユニバーサルシリアルバス(USB)コントローラ
142  USBポート
142A  コンピュータネットワーク
146  加入者識別モジュール(SIM)カード
148  デジタルカメラ
150  ステレオオーディオコーデック
152  オーディオ増幅器
154  第1のステレオスピーカー
156  第2のステレオスピーカー
157B  熱センサ
158  マイクロフォン増幅器
160  マイクロフォン
162  FMラジオチューナ
164  FMアンテナ
166  ステレオヘッドフォン
168  無線周波(RF)トランシーバ
170  RFスイッチ
172  RFアンテナ
174  キーパッド
176  モノヘッドセット
178  バイブレータデバイス
180  電源
200A  地図
200B  地図
200C  地図
201A  開始点
201B  終了点
202  直接ルート
204A  第1の節約ルート
204B  第2の節約ルート
204C  第3の節約ルート
206  オファー
206A  第1のオファー
206B  第2のオファー
206C  第3のオファー
206D  第4のオファー
206E  第5のオファー
206F  第6のオファー
207  ユーザインターフェース
208  凡例
208A  第1の凡例
208B  第2の凡例
210A  第1のスライダバー
210B  第2のスライダバー
210C  第3のスライダバー
211  スクリーンポインタ
215A  第1の調整可能なブロック
215B  第2の調整可能なブロック
215C  第3の調整可能なブロック
222  第0のコア
224  第1のコア
230  第Nのコア
233  半径
322  オンチップシステム
372  アンテナ
600  節約ルートを生成するための方法
【図１Ａ】
0005769829.tif 000002
【図１Ｂ】
0005769829.tif 000003
【図２】
0005769829.tif 000004
【図３】
0005769829.tif 000005
【図４】
0005769829.tif 000006
【図５】
0005769829.tif 000007
【図６】
0005769829.tif 000008
【図７】
0005769829.tif 000009