(57)【特許請求の範囲】
【請求項１】
ユーザに代わってリコメンデーションを取り出す、ユーザコンピュータ装置で実行可能なパーソナルエージェントプログラムであって、
前記ユーザコンピュータ装置及び／又は１以上の他のユーザコンピュータ装置で前記ユーザによって使用される複数のコンピュータプログラムにわたってユーザ活動をモニタするためのユーザ承認と、前記ユーザが当該パーソナルエージェントプログラムにリコメンデーションサーバから取り出してもらいたい製品又はサービスのリコメンデーションを示す１以上のユーザリコメンデーション選択とを受け取るよう構成されるセットアップモジュールと、
前記ユーザの検出される現在位置及び移動の方向並びに前記ユーザのカレンダー上の活動を含む、前記複数のコンピュータプログラムによる前記ユーザ活動を、前記ユーザ承認に従ってモニタするよう構成され、前記ユーザ活動から行動パターンを学習するよう構成されるモニタリングエンジンと、
前記ユーザの前記検出される現在位置、前記ユーザの前記行動パターン、及び１以上のコンテクスト因子に基づき、前記１以上のユーザリコメンデーション選択のためのトリガ条件が現れるとの推測を行い、
前記１以上のユーザリコメンデーション選択に従って、目的の製品又はサービスのためのリコメンデーションについて前記リコメンデーションサーバへリクエストを送り、
前記リコメンデーションサーバから前記リコメンデーションを受け取り、且つ
前記ユーザコンピュータ装置に付随するディスプレイに前記リコメンデーションを表示する
よう構成されるリコメンデーションエンジンと
を有し、
前記モニタリングエンジンは、友人用コンピュータ装置から、友人の検出される現在位置及び移動の方向並びに前記友人のカレンダー上の活動を含む前記友人のモニタされた友人活動の通知を受けるよう更に構成され、
前記トリガ条件が現れるとの推測は、前記リコメンデーションエンジンが、前記ユーザ及び前記友人の各自の検出された現在位置及び移動の方向に基づき、前記ユーザ及び前記友人が所定の時間窓内で交差場所に近づくと推定し、前記ユーザ及び前記友人の各自のカレンダー上の活動に基づき、前記ユーザ及び前記友人が前記所定の時間窓において会うために応対可能であると決定することを含み、
前記目的の製品又はサービスは、前記ユーザと前記友人との会合を容易にすることができる前記交差場所の閾距離内のサービス場所で提供されるサービスを含み、
前記リコメンデーションは、前記サービス場所で提供される推奨サービスを含み、前記ユーザが、前記リコメンデーションの表示を見ることで、前記所定の時間窓内のある時間に前記サービス場所で前記ユーザと会うことを可能にする、パーソナルエージェントプログラム。
【請求項２】
前記セットアップモジュールは更に、ユーザが試験する権限を当該パーソナルエージェントプログラムに与えるデータのカテゴリを示すユーザプライバシ設定を受け取るよう構成される、
請求項１に記載のパーソナルエージェントプログラム。
【請求項３】
前記ユーザプライバシ設定は、前記ユーザが前記複数のコンピュータプログラムから試験するが外部から共有しない権限を当該パーソナルエージェントプログラムに与える前記ユーザ活動の試験専用カテゴリを特定する、
請求項２に記載のパーソナルエージェントプログラム。
【請求項４】
前記ユーザプライバシ設定は、前記ユーザが前記リコメンデーションについての前記リクエストを前記リコメンデーションサーバへ送信する権限を当該パーソナルエージェントプログラムに与える前記ユーザ活動の共有承認カテゴリを特定する、
請求項２に記載のパーソナルエージェントプログラム。
【請求項５】
前記モニタリングエンジンは、
前記ユーザ及び友人が、前記交差場所で交わる方向性軌道において移動していると決定する
よう構成される、
請求項１に記載のパーソナルエージェントプログラム。
【請求項６】
前記複数のプログラムは、電子メールプログラム、カレンダープログラム、電話／メッセージングプログラム、モバイル装置位置追跡プログラム、ブラウザプログラム、地図プログラム、又はソーシャルネットワーキングプログラムを含み、前記１以上のコンテクスト因子は、日付、曜日、時刻、又は前記ユーザコンピュータ装置が前記検出される現在位置にある時間期間を含む、
請求項１に記載のパーソナルエージェントプログラム。
【請求項７】
前記モニタリングエンジンは更に、前記ユーザ活動から収集される情報の期待値を計算することに基づき、選択的に前記複数のコンピュータプログラムの中の少なくとも１つのプログラムをアクティブにし又は該プログラムにアクセスすることによって、前記ユーザ活動を動的にモニタするよう構成される、
請求項１に記載のパーソナルエージェントプログラム。
【請求項８】
前記モニタリングエンジンは、前記リコメンデーションサーバから集合的な行動パターンを受け取り、前記ユーザ活動を、閾度内で前記集合的な行動パターンと一致するユーザ活動について前記コンピュータプログラムにおいて試験することによって、前記ユーザの行動パターンを学習するよう構成される、
請求項１に記載のパーソナルエージェントプログラム。
【請求項９】
前記モニタリングエンジンは、前記ユーザ活動からの前記行動パターンに基づき、追加のユーザリコメンデーション選択を生成するよう構成され、前記トリガ条件は、前記ユーザの将来の位置を含む、
請求項１に記載のパーソナルエージェントプログラム。
【請求項１０】
ユーザに代わってリコメンデーションを取り出す装置の作動方法であって、
前記装置のユーザインターフェースによって、前記ユーザによって使用される複数のコンピュータプログラムにわたってユーザ活動をモニタするためのユーザ承認を受け取るステップと、
前記ユーザインターフェースによって、前記ユーザがリコメンデーションサーバから取り出したい製品又はサービスのリコメンデーションを示す１以上のユーザリコメンデーション選択を受け取るステップと、
前記装置において実装されるモニタリングエンジンによって、前記ユーザの検出される現在位置及び移動の方向並びに前記ユーザのカレンダー上の活動を含む、前記複数のコンピュータプログラムによる前記ユーザ活動を、前記ユーザ承認に従ってモニタするステップと、
前記モニタリングエンジンによって前記ユーザ活動から行動パターンを学習するステップと、
前記装置において実装されるリコメンデーションエンジンによって、前記ユーザの前記検出される現在位置、前記ユーザの前記行動パターン、及び１以上のコンテクスト因子に基づき、１以上のユーザリコメンデーション選択のためのトリガ条件が現れるとの推測を行うステップと、
前記リコメンデーションエンジンによって、前記１以上のユーザリコメンデーション選択に従って、目的の製品又はサービスのためのリコメンデーションについて前記リコメンデーションサーバへリクエストを送るステップと、
前記リコメンデーションエンジンによって、前記リコメンデーションサーバから前記リコメンデーションを受け取るステップと、
前記リコメンデーションエンジンによって、当該装置に付随するディスプレイに前記リコメンデーションを表示するステップと
を有し、
前記モニタリングエンジンは、友人用コンピュータ装置から、友人の検出される現在位置及び移動の方向並びに前記友人のカレンダー上の活動を含む前記友人のモニタされた友人活動を受けるよう更に構成され、
前記トリガ条件が現れるとの推測は、前記リコメンデーションエンジンが、前記ユーザ及び前記友人の各自の検出された現在地及び移動の方向に基づき、前記ユーザ及び前記友人が所定の時間窓内で交差場所に近づくと推定し、前記ユーザ及び前記友人の各自のカレンダー上の活動に基づき、前記ユーザ及び前記友人が前記所定の時間窓において会うために応対可能であると決定することを含み、
前記目的の製品又はサービスは、前記ユーザと前記友人との会合を容易にすることができる前記交差場所の閾距離内のサービス場所で提供されるサービスを含み、
前記リコメンデーションは、前記サービス場所で提供される推奨サービスを含み、前記ユーザが、前記リコメンデーションの表示を見ることで、前記サービス場所で前記ユーザと会うことを可能にする、方法。
【発明の詳細な説明】
【背景技術】
【０００１】
無線ナビゲーション装置の出現前は、フリーウェイ上でのドライバはしばしば、次のフリーウェイ出口でアクセスされ得るサービスを彼らに知らせる標識に頼っていた。この状況は、通行者がそれらのサービスにアクセスするためにフリーウェイから抜け出たいと望むかどうかに関して、標識による通知と有効にフリーウェイから抜ける機会との間の短い間隔の間の車内での多くの激しい話し合いを含め、不十分な立案をもたらしていた。無線ナビゲーション装置の出現により、乗車者は現在、ルートに沿って車で移動しながら所望のサービス（例えば、給油所、レストラン）を入力し、そのようなサービスの場所のリストとルート沿いの夫々への距離とを見ることができる。
【０００２】
そのような無線ナビゲーション装置が有用であるのと同時に、乗車者は、結果のリストを受け取る前に、それらの装置からサービスのリストをリクエストすることを課される。このタスクを達成するよう、乗車者は、前もってサービスを利用したいとの要望を認識する必要があり、且つ、サービスリクエストをナビゲーション装置に入力する時間をとる必要がある。これは、ユーザが別なふうに使用したいと望んだであろうサービスを利用する多くの機会を逃すことをもたらしうる。一例として、この認識は、フリーウェイ出口まで運転し、後部座席から「トイレに行きたい。」と子供が悲しげに訴えるのが聞こえ、結局ただ「次の出口まで４３マイル」を示す標識を見る結果となった後に、起こり得る。これはしかし、近くのサービスに関する情報を要求するためにユーザに自身のニーズを認識していることを強いるシステムが、ユーザに満足な結果を提供することができない多くの例との１つである。
【発明の概要】
【課題を解決するための手段】
【０００３】
ユーザに代わってリコメンデーションを取り出す、ユーザコンピュータ装置で実行可能なパーソナルエージェントプログラム、並びに関連する方法がここで開示される。一例において、パーソナルエージェントプログラムは、前記ユーザコンピュータ装置及び／又は１以上の他のユーザコンピュータ装置で前記ユーザによって使用される複数のコンピュータプログラムにわたってユーザ活動をモニタするためのユーザ承認を受け取るよう構成されるセットアップモジュールを有する。該セットアップモジュールはまた、前記ユーザが当該パーソナルエージェントプログラムにリコメンデーションサーバから取り出してもらいたい製品又はサービスのリコメンデーションを示す１以上のユーザリコメンデーション選択とを受け取るよう構成される。
【０００４】
パーソナルエージェントプログラムは、前記複数のコンピュータプログラムによる前記ユーザ活動を前記ユーザ承認に従ってモニタするよう構成されるモニタリングエンジンを更に有する。前記ユーザ活動は、前記ユーザの検出される現在位置を含み、前記モニタリングエンジンは、前記ユーザ活動から行動パターンを学習するよう構成される。パーソナルエージェントプログラムは、前記ユーザの前記検出される現在位置、前記ユーザの前記行動パターン、及び１以上のコンテクスト因子に基づき、前記１以上のユーザリコメンデーション選択のためのトリガ条件が現れるとの推測を行うよう構成されるリコメンデーションエンジンを更に有する。該リコメンデーションエンジンは、前記１以上のユーザリコメンデーション選択に従って、目的の製品又はサービスのためのリコメンデーションについて前記リコメンデーションサーバへリクエストを送るよう構成される。前記リコメンデーションエンジンはまた、前記リコメンデーションサーバから前記リコメンデーションを受け取り、該リコメンデーションを前記ユーザコンピュータ装置に付随するディスプレイに表示するよう構成される。
【０００５】
この項目は、詳細な説明において以下で更に記載される簡略化された形において概念の選択を導入するよう設けられている。この項目は、請求される対象の重要な特徴又は必須の特徴を特定するよう意図されず、且つ、請求される対象の適用範囲を決定する助けとして使用されるよう意図されない。更に、請求される対象は、本開示のいずれかの部分において言及されるいずれか又は全ての欠点を解消する実施に制限されない。
【図面の簡単な説明】
【０００６】
【図１】ユーザに代わってリコメンデーションを取り出すためにユーザコンピュータ装置で実行可能なパーソナルエージェントプログラムを含むコンピュータシステムの一実施形態の概略図を示す
【図２】推測がなされ且つリコメンデーションリクエストが生成される方法を説明する、図１のパーソナルエージェントプログラムの部分詳細図である。
【図３】図１に示されるリコメンデーションのためのグラフィカルユーザインターフェースの第１の画面例の概略図である。
【図４】図１に示されるリコメンデーションのためのグラフィカルユーザインターフェースの第２の画面例の概略図である。
【図５】図１のパーソナルエージェントプログラムを有するコンピュータシステムの使用例を表す概略図である。
【図６】ユーザに代わってリコメンデーションを取り出す方法の一実施形態を表す図である。
【図７】図６の続きである。
【発明を実施するための形態】
【０００７】
図１は、全体として、ユーザ１４に代わってリコメンデーションを取り出すためのユーザのコンピュータ装置（以降、ユーザコンピュータ装置と呼ぶ。）１２で実行可能なパーソナルエージェントプログラム１０を有するコンピュータシステム５の一実施形態を表す。以下でより詳細に記載されるように、パーソナルエージェントプログラム１０は、セットアップモジュール２０、モニタリングエンジン２２、及びリコメンデーションエンジン２４を有する。
【０００８】
一例において、ユーザコンピュータ装置１２は、大容量記憶装置２８、メモリ３０、ディスプレイ３２、プロセッサ３４、及びＧＰＳ受信器３６のような位置認識技術を有する。ＧＰＳ受信器３６は、衛星信号の受信に基づきユーザコンピュータ装置１２の位置を決定する。大容量記憶装置２８は、パーソナルエージェントプログラム１０と、電子メールプログラム４０、カレンダープログラム４２、電話／メッセージングプログラム４４、モバイル装置位置追跡プログラム４６、及びブラウザ４８のような様々な他のアプリケーションプログラムとを有してよい。これらのプログラムは、ここで記載される様々な機能を達成するよう、ディスプレイ３２に表示される出力とともに、メモリ３０を用いてプロセッサ３４によって実行されてよい。他の例では、ユーザコンピュータ装置１２は、例えば、タッチスクリーン、キーボード、マウス、ゲームコントローラ、カメラ、及び／又はマイクロホンを含むユーザ入力装置のような、図１に図示されていない他の構成要素を有してよい。更に、図１に図示されていないが、他のユーザコンピュータ装置５２及び５４が、ユーザコンピュータ装置１２について上述されたのと同様に機能する同様の構成要素を有することは明らかである。
【０００９】
また、以下でより詳細に記載されるように、装置独立方式において、複数のユーザコンピュータ装置（例えば、１２、５２及び５４）にわたって、リコメンデーションが取り出されてよく、ユーザ活動がモニタされてよく、動作がユーザ１４に代わってとられてよいことは明らかである。更に、パーソナルエージェントプログラム１０に関して以下で記載されるこの及び他の機能が、複数のコンピュータ装置と通信するネットワークアクセス可能なサービスによって実行及び／又は協調されてよいことは明らかである。そのようなサービスは、例えば、複数のユーザコンピュータ装置との結合及び／又は通信を可能にする標準の検知及びインタラクションインターフェースを提供してよい。代替的に、又は追加的に、それらの装置は、ユーザ活動をモニタし、リコメンデーションを生成し且つユーザに代わって行動するための通信プロトコルを提供するエージェントソフトウェアを実行してよい。
【００１０】
パーソナルエージェントプログラム１０がユーザに代わってリコメンデーションを取り出すプロセスについて以下記載する。一例において、セットアップモジュール２０は、ユーザコンピュータ装置１２のディスプレイ３２に表示されるリコメンデーションのためのグラフィカルユーザインターフェース（例えば、ＧＵＩ）８２を介して、ユーザ１４からユーザ承認５６を受け取るよう構成される。ユーザ承認５６は、ユーザコンピュータ装置１２及び／又は１以上の他のユーザコンピュータ装置（例えば、ユーザコンピュータ装置５２及び５４）でユーザによって使用される複数のコンピュータプログラムにわたってユーザ活動をモニタする権限をパーソナルエージェントプログラム１０に与える。ユーザコンピュータ装置５２で使用されるコンピュータプログラムの例は、地図プログラム５８であってよい。コンピュータ装置５４で使用されるコンピュータプログラムの例は、ソーシャルネットワーキングプログラム６０であってよい。ユーザコンピュータ装置５２、５４でのそれらのプログラムの使用は、単なる例にすぎず、それらのプログラム５８、６０は、代わりに又は追加的に、ユーザコンピュータ装置１２で使用されてよいことは明らかである。更に、上記の様々なコンピュータプログラムは、制限なしで、電子メールプログラム４０、カレンダープログラム４２、電話／メッセージングプログラム４４、モバイル装置位置追跡プログラム４６、及びブラウザ４８を含め、コンピュータ装置１２及び／又は他のコンピュータ装置５２、５４でユーザによって使用されてよい。
【００１１】
モニタリングエンジン２２は、ユーザ承認５６に従って複数のコンピュータプログラムによるユーザ活動をモニタするよう構成される。電子メールプログラム４０におけるユーザ活動は、破線４０′によって示され、カレンダープログラム４２におけるユーザ活動は、破線４２′によって示され、電話／メッセージングプログラム４４にわたるユーザ活動は、破線４４′によって示され、モバイル装置位置追跡プログラム４６におけるユーザ活動は、破線４６′によって示され、ブラウザ４８におけるユーザ活動は、破線４８′によって示され、地図プログラム５８におけるユーザ活動は、破線５８′によって示され、ソーシャルネットワーキングプログラム６０におけるユーザ活動は、破線６０′によって示される。ユーザ活動は、ユーザ１４の検出される現在位置を含んでよい。該現在位置は、ＧＰＳ又は他の適切な追跡技術を用いてモバイル装置位置追跡プログラム４６によって検出されてよい。
【００１２】
適切な承認を受け取ると、モニタリングエンジン２２はまた、ユーザ１４の友人１５によって使用される友人用コンピュータ装置５５で実行される様々なプログラムにおける友人の活動５７をモニタするよう構成されてよい。図１に図示されていないが、友人用コンピュータ装置５５は、ユーザコンピュータ装置１２、５２及び５４について上述されたのと同様に機能する同様の構成要素及びプログラムを有してよい。例えば、モニタリングエンジン２２は、友人用コンピュータ装置５５で実行されるカレンダープログラム、モバイル装置位置追跡プログラム及びソーシャルネットワーキングプログラムにおける友人の活動５７をモニタしてよい。
【００１３】
以下でより詳細に記載される一例において、モニタリングエンジン２２は、ユーザコンピュータ装置１２のモバイル装置位置追跡プログラム４６におけるユーザ活動４６′と、友人用コンピュータ装置５５のモバイル装置位置追跡プログラムにおける友人の活動５７とをモニタして、ユーザ１４及び友人５５が交差場所で交わる方向性軌跡において移動していると決定してよい。モニタリングエンジン２２はまた、ユーザコンピュータ装置１２のカレンダープログラム４２におけるユーザ活動４２′と、友人用コンピュータ装置５５のカレンダープログラムにおける友人の活動とをモニタして、ユーザ１４及び友人５５が交差場所に到着するおおよその時間を含む時間期間内のユーザ１４及び友人１５の応対可能性を確認してよい。
【００１４】
ユーザ１４及び友人１５がその時間期間中に応対できる場合は、リコメンデーションエンジン２４は、交差場所の閾距離内で提供される目的のサービスのためのリコメンデーション（ＲＥＣ）７０をリコメンデーションサーバ６６に要求し受け取るよう構成される。次いで、リコメンデーション７０は、ユーザコンピュータ装置１２のディスプレイ３２に表示されてよい。リコメンデーションエンジン２４の動作の更なる記載は、以下で与えられる。また、適切な承認を受け取ると、モニタリングエンジン２２は、ユーザ１４の他の友人、親戚、同僚及び／又は知人に付随するコンピュータ装置における活動をモニタしてよいことは明らかである。
【００１５】
モニタリングエンジン２２はまた、ユーザ活動から収集され得る情報の期待値を計算することに基づき、選択的に複数のコンピュータプログラムの中の少なくとも１つをアクティブにするか又はそれにアクセスすることによって、ユーザ活動を動的にモニタするよう構成されてよい。このように、パーソナルエージェントプログラム１０は、ユーザ活動に関連する追加のデータへのアクセスを得て、以下でより詳細に記載されるように、予測モデルを学習するために機能及び／又は長期にわたるデータの収集を行うプログラムの実時間決定を強化することができる。
【００１６】
一例において、１以上のコンピュータプログラムからのユーザ活動は、ユーザのプライバシー選択により通常はアクセスできない。パーソナルエージェントプログラム１０が必要なユーザのオプトイン許可を受け取った場合に、モニタリングエンジン２２は、それらのコンピュータプログラムに選択的にアクセスし、そうでなければ入手できないユーザ活動をモニタしてよい。他の例では、１以上のコンピュータプログラムは、データモニタリングがそうでなければ有用である状況又は時点で、電力消費削減のために動作を停止しているＧＰＳ受信器３６のように、リソース考慮のために非アクティブであってよい。先と同じく、必要な許可が受け取られているならば、モニタリングエンジン２２は、非アクティブであるプログラムを選択的にアクティブにし、そのプログラムに関連するユーザ活動をモニタしてよい。
【００１７】
モニタリングエンジン２２は、有用なユーザ活動情報を生成すると思われる特定の時点及び／又は場所で複数のコンピュータプログラムの中の１つを選択的にアクティブにするか又はそれにアクセスしてよい。モニタリングエンジン２２はまた、コンピュータプログラムに関連するユーザ活動から収集され得る情報の期待値を計算することによって、複数のコンピュータプログラムの中の１つを選択的にアクティブにするか又はそれにアクセスするべき時を決定してよい。一例において、情報の期待値を計算することは、ヒューリスティック・プロシージャ又は他の計算に基づく評価を用いることを含んでよい。結果として得られる期待値が閾値を超える場合は、モニタリングエンジン２２は、さもなければアクセスできない又は非アクティブであるコンピュータプログラムを選択的にアクティブにするか又はそれにアクセスしてよい。
【００１８】
モニタリングエンジン２２はまた、様々なユーザコンピュータ装置での様々なコンピュータプログラムにおけるユーザ活動から行動パターン７４を学習するよう構成されてよい。一例において、モニタリングエンジン２２は、ユーザへ提供されるリコメンデーションに対するユーザの応答又はその欠如を推測するようＧＰＳ受信器３６をモニタしてよい。１つの場合に、モニタリングエンジン２２は、例えば、ユーザが駐車ガレージに入ったか又はコンピュータ装置の電源を切ったことでＧＰＳ信号が特定の場所で失われた、と決定してよい。ユーザがこの場所で提供される製品又はサービスのためのリコメンデーションをまさに受け取った場合に、ユーザはそのリコメンデーションに好意的に応答したと推測されてよい。
【００１９】
加えて、ＧＰＳ受信器がしばらく後に同じ場所でアクティブにされる場合、ユーザはしばらくの間その場所にいたと更に推測されてよい。この情報はまた、ユーザの満腹具合を推測するために使用されてもよい。一例において、ＧＰＳの位置は、ユーザがしばらくの間（例えば、１．５時間）レストランに止まっていたことを示す。これは、食事がとられたであろうことを示す。このデータを用いて、リコメンデーションエンジン２４は、ユーザが他の食事を望むまでの時間はどれくらいかを推測してよい。
【００２０】
そのような行動パターンは、時間にわたって特定のユーザの活動の観測から学習され、一方、いずれかの特定のユーザのパターンは、時間にわたって全体的なユーザ人口を観測することから生成される集合的な行動パターンに基づき且つ該集合的な行動パターンと比較されてよい。よって、モニタリングエンジン２２は、１つのモードにおいて、リコメンデーションサーバ６６から集合的な行動パターンを受け取り、ユーザ活動を、閾度内で集合的な行動パターンと一致するユーザ活動についてコンピュータプログラムにおいて試験することによって、ユーザの行動パターンを学習してよい。
【００２１】
パーソナルエージェントプログラム１０は、どのようなリコメンデーションをユーザが受け取りたいかを決定するために、ユーザ活動履歴及びリコメンデーション選択を利用する。そのようなユーザリコメンデーション選択は、６２で示されるようにパーソナルエージェントプログラム自体によって推測される好みのように間接的であってよく、あるいは、６４で示されるようにユーザによって入力される好みのように明示的であってよい。その目的のために、モニタリングエンジン２２は、行動パターン７４に基づき、推測されるユーザリコメンデーション選択６２を生成するよう構成されてよく、ユーザリコメンデーション選択６２は、モニタリングエンジン２２によって推測される、ユーザがパーソナルエージェントプログラム１０にリコメンデーションサーバ６６から取り出してもらいたい製品又はサービスのリコメンデーションを示す。セットアップモジュール２０はまた、ユーザ１４からユーザ入力を介してリコメンデーションＧＵＩ８２への１以上の入力されるユーザリコメンデーション選択６４を受け取るよう構成されてよい。
【００２２】
推測されるユーザリコメンデーション選択６２に関する１つの例となる場合において、モニタリングエンジン２２は、ユーザコンピュータ装置５４におけるソーシャルネットワーキングプログラム６０のようなソーシャルネットワーキングプログラムにわたるユーザ活動を含む行動パターン７４を観測してよい。ユーザが関与する社会的相互作用を観測することによって、モニタリングエンジン２２は、ユーザのソーシャルグラフの一人以上のメンバーが特定のユーザ購買決定に影響すると推測してよい。例えば、モニタリングエンジン２２は、ユーザが３つのレストランで、ユーザのソーシャルグラフ内の友人Ａからそれらのレストランの夫々に関する肯定的なコメントを受け取った後、食事をしたと観測してよい。この情報を用いて、モニタリングエンジン２２は、ユーザの友人Ａが好むか又はしばしば訪れているレストランについて、推測されるユーザリコメンデーション選択６２を生成してよい。ユーザの友人Ａが好むか又はしばしば訪れているレストランに関する情報はまた、例えば、友人Ａが関与する通信を含む、ソーシャルネットワーキングプログラムにわたるユーザの活動を観測することによって、集められてよい。
【００２３】
加えて、セットアップモジュール２０は、ユーザが試験する権限をパーソナルエージェントプログラムに与えるデータのカテゴリを示すユーザ１４からのユーザプライバシ設定６８を受け取るよう構成されてよい。プライバシー設定はまた、データの共有が外部サーバ（例えば、リコメンデーションサーバ６６）により認められているかどうかを示してよい。具体的に、ユーザプライバシ設定６８は、ユーザが複数のコンピュータプログラムから試験するが外部から共有しない権限をパーソナルエージェントプログラムに与えるユーザ活動の試験専用カテゴリ、及び／又はユーザがリコメンデーション７０についてのリクエスト（ＲＥＱ）７２をリコメンデーションサーバ６６へ送信する権限をパーソナルエージェントプログラムに与えるユーザ活動の共有承認カテゴリを示してよい。
【００２４】
リコメンデーションエンジン２４は、ユーザの検出される現在位置、ユーザの行動パターン７４、及び現在観測されるユーザ活動に関連する１以上のコンテクスト因子７８に基づき、１以上のユーザリコメンデーション選択のためのトリガ条件が現れるとの推測７６を行うよう構成される。トリガ条件は、ユーザによって直接特定されるか、又はモニタリングエンジンによって決定される１つ又は組の所定条件であってよい。幾つかの例として、トリガ条件は、ユーザの予測される将来の位置又は他の予測される条件を含んでよい。
【００２５】
他の例では、リコメンデーションエンジン２４は、ユーザの来るべき場所及びそれらの場所とユーザとの関連性（家、職場、等）について予測モデルを構築するための機械学習プロシージャを使用するとともに、データから好みを学習し、ユーザが交わることができる将来に起こる機会を特定するよう構成されてよい。このように、ユーザ並びにユーザの行動及び関係（ユーザを異なる好み、性格、及び行動とつなげるソーシャルグラフにおける図式的な関係を含む。）の側面に関するデータが収集され、様々なタイプの予測モデルを構築するためのトレーニング及び試験データとして利用されてよい。そのようなモデルを構築するツールは、例えば、ベイジアン構造検索、サポートベクターマシン、ガウス過程、ロジスティック回帰、並びにエンティティ及び／又は特性の間の関係のパターン又は制約を考慮する関係変化への拡張を含む。そのような予測モデルによって可能にされ得る予測の例は、ユーザ又はユーザグループの好み、ユーザの将来の位置（又は、直接観測されない場合は、現在の位置）、ユーザが交わることができる将来の機会、及び世界におけるユーザ活動を含む。
【００２６】
一例において、予測モデルは、スケジューリングのための機会であり且つ商売及び宣伝の申し出と結合され得る将来のイベントについてユーザへの提案を生成するために使用されてよい。１つの場合に、予測モデルは、次の土曜の晩がユーザに使用可能であることをカレンダープログラム４２から特定してよい。予測モデルは、次いで、次の土曜の晩についてユーザ及びユーザの配偶者のための素晴らしい多段階の計画を生成してよい。計画は、例えば、ディナー又はエンターテイメントのような１以上のアクティビティと結合される場所へのドライブを含んでよい。予測モデル及びリコメンデーションエンジン２４はまた、アクティビティ及び目的地に関連する１以上のリコメンデーション、提案及び／又はお薦めを共に考えだしてよい。リコメンデーションサーバ６６からリコメンデーションエンジン２４によって受け取られるリコメンデーション、提案及び／又はお薦めの中の１又はそれ以上は、１以上のユーザリコメンデーション選択及び／又はユーザの行動パターンに従って生成されてよい。このように、更に、パーソナルエージェントプログラム１０によって収集されるユーザ活動、行動パターン及び他の情報は、適切な承認がユーザから受け取られるとの前提で、ターゲット・マーケティング及び／又は宣伝の目的のために使用されてよいことが明らかである。
【００２７】
リコメンデーションを提供することに加えて、上述されたように、リコメンデーションエンジン２４はまた、将来起こる機会に関してユーザに代わって１以上の行動をとってよい。例えば、上記の土曜の晩のための多段階の計画において、リコメンデーションエンジン２４は、ユーザが提案される目的地の中の１つの近くのレストランでのユーザ及びユーザの配偶者のためのディナーの予約を積極的に行ってよい。レストランのリコメンデーション及び予約に関する情報を含むメッセージが、ユーザコンピュータ装置１２でユーザに表示されてよく、且つ／あるいは、カレンダープログラム４２のような他のコンピュータプログラムを介する後のアクセスのために記憶されてよい。他の例では、パーソナルエージェントプログラム１０は、奨励に対する見返りとしてユーザに広告を送りたいと望む第三者サービスと積極的に通信してよい。この場合に、パーソナルエージェントプログラム１０は、広告及び奨励を受け取って記憶してよく、ユーザに、第三者サービスと通信して広告／奨励をダウンロードしており、ユーザが望む場合はいつでも広告を再生する用意があることを知らせてよい。
【００２８】
現在観測されるユーザ活動に関連する１以上のコンテクスト因子７８は、ユーザ活動におけるユーザ行動が行われる状況を記述する。コンテクスト因子は、日付、曜日、時刻、又はユーザコンピュータ装置１２が検出される現在位置にある時間期間を含んでよいが、これらに限られない。それら及び他の考えは、続く例となる使用場合においてより十分に説明される。
【００２９】
次に図２を参照して、リコメンデーションエンジン２４によって推測がなされ且つリコメンデーション要求が生成される態様について記載する。図１に関して上述されたプログラム４０〜４８、５８及び６０のような様々なコンピュータプログラム８４から出力されるユーザ活動は、パーソナルエージェントプログラム１０のデータベース８３にセーブされる。ユーザ活動８５は、現在観測されるユーザ活動８６のストリームを含み、該現在観測されるユーザ活動８６は、周期的にユーザ活動履歴８７に加えられる。ユーザ活動履歴８７は、前述のモニタリングエンジン２２によってレビューされる。モニタリングエンジン２２は、ユーザについてユーザ行動パターン７４を学習し、該学習された行動パターン７４もデータベース８３に記憶される。全体的なユーザ人口のユーザ活動に基づく集合的な行動パターン８８は、リコメンデーションサーバからダウンロードされ、同様にデータベース８３において記憶され、上述されたように、学習されたユーザ行動パターン７４を特定するために使用されてよい。データベース８３はまた、ユーザリコメンデーション選択６２、６４と、それらの関連するトリガ条件６５とを記憶する。それらは、セットアップモジュール２０を介してユーザ入力として直接受け取られたか、あるいは、モニタリングエンジン２２によってユーザ活動８５から推測されている。
【００３０】
リコメンデーションエンジン２４は、ユーザ活動８５の少なくとも一部、通常は、ユーザの現在検出されている位置９０と、現在観測されているユーザ活動に関連するコンテクスト因子７８（例えば、日時）とを含む現在観測されているユーザ活動８６を受け取る。リコメンデーションエンジン２４は、それらのデータを行動パターン７４、８８と比較して、ユーザリコメンデーション選択６２、６４のトリガ条件６５が、例えば確率の閾範囲内で、満足されそうかどうかを決定する。そうである場合、リコメンデーションエンジン２４は、ユーザリコメンデーション選択６２、６４のためのトリガ条件が現れるとの推測を行う。
【００３１】
更に再び図１を参照して、夫々のユーザリコメンデーション選択６２、６４は、通常、自身に関連づけられた少なくとも１つの目的の製品又はサービスを有するので、推測７６が生成されると、リコメンデーションエンジン２４は、ユーザリコメンデーション選択６２、６４の１又はそれ以上に従って目的の製品又はサービスのためのリコメンデーションについてリコメンデーションサーバ６６へリクエスト７２を送信するよう構成される。リコメンデーションエンジン２４は更に、リコメンデーションサーバ６６から目的の製品又はサービスに関するリコメンデーション７０を受け取り、ユーザコンピュータ装置１２のディスプレイ３２でリコメンデーションＧＵＩ８２においてリコメンデーション７０を表示するよう構成される。
【００３２】
［第１の使用ケース例］
例となる使用ケースにおいて、ユーザコンピュータ装置１２は、モバイル通信装置であり、ユーザ１４は、モバイル装置位置追跡プログラム４６からのユーザ活動４６′を介して、現在ワシントン州レドモンドにいると検出される。ユーザ１４は、ユーザがレドモンド近くの、カタルニャ料理を提供する高評価のレストランと、スペインのバルセロナにある、カタルニャ料理を提供する高評価のレストランとについてリコメンデーションを受け取りたいとパーソナルエージェントプログラム１０に知らせている。次に図３を参照して、ユーザは、それらのユーザリコメンデーション選択を、リコメンデーションＧＵＩ８２内のユーザ入力インターフェース２０２を介してユーザのモバイルコンピュータ装置１２に予め入力している。
【００３３】
リコメンデーションＧＵＩ８２の他のスクリーンで、ユーザはまた、カレンダープログラム４２におけるユーザのカレンダー活動４２′と、モバイル装置位置追跡プログラム４６におけるロケーション活動４６′を介した位置と、ブラウザ４８におけるブラウザ活動４８′と、他のユーザコンピュータ装置５４にあるソーシャルネットワーキングプログラム６０におけるソーシャルネットワーキング活動６０′とをモニタするための承認をパーソナルエージェントプログラムに与えている。ユーザはまた、ユーザのカレンダー活動４２′が、外部から共有され得ない試験専用カテゴリ内にあることと、ユーザのロケーション活動４６′、ブラウザ活動４８′、及びソーシャルネットワーキング活動６０′が、リコメンデーションの要求とともにリコメンデーションサーバへ送信され得る共有承認カテゴリ内にあることとを示すユーザプライバシ設定を入力している。
【００３４】
ユーザのＧＰＵ利用モバイル通信装置及びモバイル装置位置追跡プログラム４６からの位置と、“ファミリーカレンダー”と呼ばれるユーザの共有カレンダーを含むカレンダープログラム４２からのユーザ活動４２′とをモニタすることによって、パーソナルエージェントプログラム１０は、ユーザがここ３年間毎年８月に２週間のバケーションを家族と過ごしているとの行動パターンを学習している。今は６月であり、ユーザは、簡単に“バルセロナ”と読める８月２〜６日の間のファミリーカレンダーからの共有されるカレンダー項目を有する。加えて、ブラウザ４８からのユーザ活動４８′をモニタすることによって、パーソナルエージェントプログラム１０は、ユーザが最近、オンラインの書籍販売業者から“スペイン語学習”というオーディオブックを購入したと学習する。それらのコンテクスト因子に基づき、パーソナルエージェントプログラム１０は、ユーザが、この時点では８月２〜６日の間のスペインのバルセロナへの、８月の家族旅行を再び計画しているとの推測を行う。パーソナルエージェントプログラム１０のリコメンデーションエンジン２４はまた、国際的な自宅交換サービスのリコメンデーションのためのリコメンデーションのような、追加のユーザリコメンデーション選択６２を、この行動パターンに基づき生成してよい。
【００３５】
ユーザのソーシャルネットワーキング活動６０′及びユーザの関連するソーシャルグラフを試験することによって、パーソナルエージェントプログラム１０は、ワシントン州レドモンドのユーザの自宅近くにある住所を有するユーザの友人のうちの一人である友人Ａからの“８月のバルセロナ旅行を待ちきれない”という投稿に注目する。この投稿、レドモンドにおけるユーザの現在の位置、現在の日付、及びユーザの推定されるバルセロナへのバケーションを鑑み、パーソナルエージェントプログラム１０は、レドモンドの近くの高評価のカタルニャレストランについてのユーザリコメンデーション選択のためのトリガ条件が現れる、すなわち、ユーザが、８月２日より前にレドモンドの近くのカタルニャレストランでの食事のために友人Ａを会い、彼らの近々のバルセロナへの旅行について楽しく話し合う、との推測を行う。パーソナルエージェントプログラム１０はまた、ユーザと彼の友人Ａとが偶然に同時にバルセロナにいるならば、ユーザがバルセロナにあるカタルニャレストランで友人Ａとの食事を楽しむとの別の推測を行ってよい。
【００３６】
パーソナルエージェントプログラム１０は、レドモンド近くの、カタルニャ料理を提供する高評価のレストランと、バルセロナにある、カタルニャ料理を提供する高評価のレストランとについてのリコメンデーションのためのリコメンデーションサーバ６６へのリクエストを送信する。リコメンデーションサーバ６６から受け取られたリコメンデーションは、リコメンデーションＧＵＩ８２のリコメンデーション範囲２０４において表示される。
【００３７】
［第２の使用ケース例］
他の例となる使用ケースにおいて、ユーザコンピュータ装置１２は、モバイル通信装置であり、ユーザは、モバイル装置位置追跡プログラム４６からのユーザ活動４６′を介して、現在、州間ハイウェイ４０号（Ｉ−４０）に沿ってテネシー州ノックスビルの近くのトラックストップダイナーに対応する場所にいると検出される。ユーザ１４は、ユーザがノースカロライナ州ウィルミントンとカリフォルニア州バーストーとの間にあるＩ−４０沿いの平均以上のコーヒーを提供するコーヒーショップのためのリコメンデーションを受け取りたいとパーソナルエージェントプログラム１０に知らせている。次に図４を参照して、ユーザは、それらのユーザリコメンデーション選択を、リコメンデーションＧＵＩ８２内のユーザ入力インターフェース３０２を介してユーザのモバイル通信装置に予め入力している。
【００３８】
リコメンデーションＧＵＩ８２の他のスクリーンで、ユーザはまた、カレンダープログラム４２におけるユーザのカレンダー活動４２′と、モバイル装置位置追跡プログラム４６におけるロケーション活動４６′を介した位置と、ブラウザ４８におけるブラウザ活動４８′と、電子メールプログラム４０における電子メール活動４０′と、電話／メッセージングプログラム４４における通話活動４４′と、ナビゲーションシステムのような、他のユーザコンピュータ装置５２にある地図プログラム５８における地図活動５８′とをモニタするための承認をパーソナルエージェントプログラムに与えている。ユーザはまた、ユーザの電子メール活動４０′及び通話活動４４′が、外部から共有され得ない試験専用カテゴリ内にあることと、ユーザのカレンダー活動４２′、ロケーション活動４６′、ブラウザ活動４８′、及び地図活動５８′が、リコメンデーションの要求とともにリコメンデーションサーバへ送信され得る共有承認カテゴリ内にあることとを示すユーザプライバシ設定を入力している。
【００３９】
ユーザのＧＰＵ利用モバイル通信装置及びモバイル装置位置追跡プログラム４６からの位置をモニタすることによって、パーソナルエージェントプログラム１０は、ユーザが、ノースカロライナ州マートルグローブにあるユーザの住所から８時間前に運転し始めて州間ハイウェイ４０号を西に移動していると学習する。パーソナルエージェントプログラム１０はまた、“ロサンゼルス旅行”と読めるユーザのカレンダーにおける今日付けの共有されるカレンダー項目に気付く。加えて、８時間前に、ユーザは、ナビゲーションシステムにおけるマッププログラム５８から、ノースカロライナ州マートルグローブからカリフォルニア州ロサンゼルスまえの経路指定を要求している。それらのコンテクスト因子に基づき、パーソナルエージェントプログラム１０は、ユーザがノースカロライナ州マートルグローブからロサンゼルスへＩ−４０に沿って運転しているとの推測を行う。
【００４０】
パーソナルエージェントプログラム１０は、現在時刻が午後１２時５２分であり、ユーザはＩ−４０を西に向かって運転し始めたばかりであり、且つ、ユーザの位置が前の４７分間にトラックストップダイナーに止まっていたと気付く。昼食時を超えて４７分間このレストランにユーザがいたことを鑑み、これは、ユーザがランチを食べたばかりであることと、ユーザがＩ−４０を西に向かって運転し続けるであろうとの推測とを示し、パーソナルエージェントプログラム１０は、Ｉ−４０沿いの絶品のコーヒーについてのユーザのリコメンデーション選択のためのトリガ条件が現れる、すなわち、ユーザが約１時間１５分後に停車してコーヒーを楽しむ、との他の推測を行う。１時間１５分後との時間は、この旅行中のＩ−４０におけるユーザの平均運転速度に基づき、ユーザの現在の位置から約８３マイルである予測される将来の位置に対応する。ユーザがこの場所の近くで停車してコーヒーを楽しむとの推測において、パーソナルエージェントプログラム１０はまた、全体的なユーザ人口にわたる様々な条件下でのユーザ行動の関連する機械学習を利用してよい。そのような機械学習は、フリーウェイ沿いを移動するユーザが平均して昼食後１時間２０分のコーヒー及び休憩時間のために停車することを示唆する。
【００４１】
パーソナルエージェントプログラム１０は、Ｉ−４０沿いの、望ましくは、ユーザの現在位置から８３マイルの平均以上のコーヒーを提供するコーヒーショップのためのリコメンデーションについてリコメンデーションサーバ６６へリクエストを送信する。リコメンデーションサーバは、テネシー州モンテレーにあるコーヒーショップＡについてリコメンデーションを返す。テネシー州モンテレーは、ユーザの現在位置から約８８マイルである。リコメンデーションサーバ６６から受け取られたリコメンデーションは、リコメンデーションＧＵＩ８２のリコメンデーション範囲３０４において表示される。
【００４２】
パーソナルエージェントプログラム１０はまた、ユーザが少なくとも２時間止まることなくフリーウェイ上を運転している場合にユーザに休憩又はコーヒーブレイクをとるよう提案するルールを適用してよい。この例では、ユーザがコーヒーショップＡで止まらず、ランチ休憩後の２時間運転し続けている場合に、パーソナルエージェントプログラム１０は、Ｉ−４０上のユーザの期待される経路又はユーザの現在位置に近い、平均以上のコーヒーを提供するコーヒーショップのためのリコメンデーションについてリコメンデーションサーバ６６へリクエストを送信してよい。ルールは、パーソナルエージェントプログラム１０において存在してよく、あるいは、ユーザによって入力されてよい。
【００４３】
［第３の使用ケース例］
他の例となる使用ケースにおいて、図５を参照して、ユーザコンピュータ装置１２は、モバイル通信装置であり、ユーザ１４は、方向性軌道３５２を移動している車３５０の中にいる。ユーザ１４は、ユーザがコーヒーショップのためのリコメンデーションを受け取りたいとパーソナルエージェントプログラム１０に知らせている。ユーザはまた、カレンダープログラム４２におけるユーザのカレンダー活動４２′と、モバイル装置位置追跡プログラム４６におけるロケーション活動４６′を介した位置と、他のユーザコンピュータ装置５４にあるソーシャルネットワーキングプログラム６０におけるソーシャルネットワーキング活動６０′とをモニタするための承認をパーソナルエージェントプログラムに与えている。ユーザのソーシャルネットワーキング活動６０′を試験することによって、パーソナルエージェントプログラム１０は、ユーザ１４が頻繁に一緒に飲みに又は食べに行っている友人１５を有すると決定する。
【００４４】
ユーザの友人１５は、方向性軌道３５６を移動している車３５４の中にある。友人１５は、同じくモバイル通信装置である自身の友人用コンピュータ装置５５を持っている。友人１５はまた、友人用コンピュータ装置５５でのカレンダープログラム、モバイル装置位置追跡プログラム、及びソーシャルネットワーキングプログラムにおける友人の活動をモニタする権限をパーソナルエージェントプログラム１０に与えている。
【００４５】
ユーザのモバイル通信装置からの位置をモニタすることによって、パーソナルエージェントプログラム１０は、ユーザが方向性軌道３５２を移動していると決定する。同様に、友人用モバイル通信装置からの位置をモニタすることによって、パーソナルエージェントプログラム１０は、友人が方向性軌道３５４を移動していると決定する。パーソナルエージェントプログラム１０は、方向性軌道３４２、３５４から推定し、それらの方向性軌道が交差場所３６０で交わると決定する。パーソナルエージェントプログラム１０はまた、車３５０の中のユーザ１４がおおよそ午後１２時４２分に交差場所に到着し、車３５４の中の友人１５がおおよそ午後１２時４４分に交差場所に到着すると見積もる。
【００４６】
パーソナルエージェントプログラム１０は、ユーザ１４及び友人１５が、彼らが交差場所３６０に到着するであろうおおよその時間を含む時間期間内に応対できるかどうかを確かめるよう、ユーザ１４のカレンダープログラム４２及び友人１５のカレンダープログラムをチェックする。この例では、時間期間は１５分である。５分、３０分、１時間又はその他の適切な時間期間が、当該時間期間として使用されてよいことは明らかである。
【００４７】
前述の情報に基づき、パーソナルエージェントプログラム１０は、例えば１ブロックといった交差場所３６０の閾距離内にあるコーヒーショップのためのリコメンデーションについてリコメンデーションサーバ６６へリクエストを送信する。３ブロック、１０ブロック、又は他の適切な距離が、当該閾距離として使用されてよい。リコメンデーションサーバは、交差場所３６０から０．５ブロックにあるコーヒーショップＢでユーザ１４及び友人１５が会うようユーザ１４へリコメンデーションを返す。リコメンデーションは、友人１５がおおよそ午後１２時４４分に、すなわち、ユーザが交差点に到着すると期待される２分後に交差点３６０にいると期待されるとユーザ１４に知らせる。リコメンデーションはまた、ユーザ１４及び友人１５にコーヒーショップＢ３６２で会うよう奨励するグループ割引クーポン等のクーポンを含んでよい。友人１５が適切な許可を与えている場合は、パーソナルエージェントプログラム１０又はリコメンデーションサーバ６６は、友人用コンピュータ装置５５にもリコメンデーションを送信してよい。
【００４８】
次に図６を参照して、図は、本開示の一実施形態に従ってユーザに代わってリコメンデーションを取り出す方法４００を表す。方法は、図１に示される前述のパーソナルエージェントプログラム１０及びユーザコンピュータ装置のソフトウェア及びハードウェアコンポーネントを用いて、又は他の適切なコンポーネントを用いて、実行されてよい。
【００４９】
４０２で、方法は、ユーザコンピュータ装置及び１以上の他のユーザコンピュータ装置によって使用される複数のコンピュータプログラムにわたってユーザ活動をモニタするためのユーザ承認を受け取ることを含む。上述されたように、複数のコンピュータプログラムは、電子メールプログラム、カレンダープログラム、電話／メッセージングプログラム、モバイル装置位置追跡プログラム、ブラウザプログラム、地図プログラム、又はソーシャルネットワーキングプログラムを含んでよいが、これらに限られない。ユーザコンピュータ装置はまた、ＧＰＳを利用可能なモバイルコンピュータ装置であってよい。
【００５０】
４０４で、方法は、ユーザがリコメンデーションサーバから受け取りたい製品又はサービスのリコメンデーションを示す１以上のユーザリコメンデーション選択を受け取ることを含む。４０６で、方法は、ユーザが複数のコンピュータプログラムから試験するが外部から共有しない権限をパーソナルエージェントプログラムに与えるユーザ活動の試験専用カテゴリを示すユーザプライバシ設定を受け取ることを含んでよい。ユーザプライバシ設定はまた、ユーザがリコメンデーションについてのリクエストをリコメンデーションサーバへ送信する権限をパーソナルエージェントプログラムに与えるユーザ活動の共有承認カテゴリを示してもよい。
【００５１】
４０８で、方法は、ユーザ承認に従って複数のコンピュータプログラムによるユーザ活動をモニタすることを含む。一例において、ユーザ活動は、ユーザの検出される現在位置を含んでよい。他の例では、ユーザ活動のモニタリングは、ユーザ活動から収集され得る情報の期待値を計算することに基づき、選択的に複数のコンピュータプログラムの中の少なくとも１つを作動させるか又はそれにアクセスすることを含んでよい。４１０で、方法は、ユーザ活動から行動パターンを学習することを含む。４１２で、方法は更に、ユーザ活動からの行動パターンに基づき、追加のユーザリコメンデーション選択を生成することを含んでよい。
【００５２】
次に図７を参照して、４１４で、方法は、ユーザの検出される現在位置と、ユーザの行動パターンと、１以上のコンテクスト因子とに基づき、ユーザリコメンデーション選択の中の１又はそれ以上のためのトリガ条件が現れるとの推測を行うことを含んでよい。コンテクスト因子は、日付、曜日、時刻、又はユーザコンピュータ装置が検出される現在位置にいる時間期間を含んでよいが、これらに限られない。
【００５３】
４１６で、方法は、１以上のユーザリコメンデーション選択に従って目的の製品又はサービスのためのリコメンデーションについてリコメンデーションサーバへリクエストを送信することを含む。４１８で、方法は、リコメンデーションサーバからリコメンデーションを受け取ることを含む。４２０で、方法は、ユーザコンピュータ装置に付随するディスプレイでリコメンデーションを表示することを含む。
【００５４】
前述のシステム及び方法を用いて、１以上のコンピュータ装置での様々なコンピュータプログラムにおけるユーザ活動は、ユーザによって明示的に認められる範囲で受動的にモニタされ得、ユーザの行動パターンは、それから学習され得る。そのような行動パターンに基づき、リコメンデーションは、ユーザが優先傾向を表している製品又はサービス及びそのような優先傾向が推測されている製品又はサービスについて都合良く取り出され得る。このように、ユーザのニーズ及び要望は、ここで記載されるシステム及び方法によって積極的に予想され得る。
【００５５】
ここで記載されるソフトウェア及びハードウェア動作環境に関して、用語「モジュール」、「プログラム」及び「エンジン」が、１以上の特定の機能を実行するよう、ここで記載される様々なコンピュータハードウェア装置のプロセッサによって実施されるソフトウェアコンポーネントを記述するために、使用されていることは明らかである。用語「モジュール」、「プログラム」及び「エンジン」は、実行可能ファイル、データファイル、ライブラリ、ドライバ、スクリプト、データベースレコード、等の個々又はグループを包含するよう意図される。
【００５６】
また、用語「ユーザコンピュータ装置」は、パーソナルコンピュータ、ラップトップ型装置、モバイル通信装置、タブレット型コンピュータ、ホームエンターテイメントコンピュータ、ゲーム機、スマートホン、又は様々な他のコンピュータ装置を含んでよいことが理解されるであろう。更に、プロセッサ及びメモリは、幾つかの実施形態において所謂システムオンチップとして共通の集積回路において一体化されてよく、大容量記憶装置は、ハードドライブ、ファームウェア、読出専用メモリ（ＲＯＭ）、電子的消去可能プログラム可能読出専用メモリ（ＥＥＰＲＯＭ）、フラッシュメモリ、光学ドライブ等の様々な不揮発性記憶装置であってよい。媒体は、それらのコンピュータ装置に提供されてよく、それらのコンピュータ装置によって実行される場合に該装置にここで記載される方法を実施させる命令を記憶している。そのような媒体には、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ及び他の媒体がある。
【００５７】
当然、ここで記載される例となる実施形態、構成及び／又はアプローチは事実上例であり、それらの具体的な実施形態又は例は、多数の変形例が可能であることから、限定の意味で考えられるべきではない。ここで記載される具体的なルーチン又は方法は、あらゆる数の処理方法の中の１以上に相当してよい。そのようなものとして、様々な動作が、表されている手順で、他の手順で、又は同時に実行されてよく、あるいは幾つかの場合には省略されてよい。同様に、上記のプロセスの順序は変更されてよい。
【００５８】
本開示の対象は、ここで開示される様々なプロセス、システム及び構成、並びに他の特徴、機能、動作及び／又は特性の全て新規且つ自明でない結合及び小結合と、それらのありとあらゆる同等物とを含む。
【図１】
0005996644.tif 000002
【図２】
0005996644.tif 000003
【図３】
0005996644.tif 000004
【図４】
0005996644.tif 000005
【図５】
0005996644.tif 000006
【図６】
0005996644.tif 000007
【図７】
0005996644.tif 000008