(57)【特許請求の範囲】
【請求項１】
受信者に関係する受信者コンピュータに通信可能に結合されている１つ以上のサーバによって実現される、キャンペーンメッセージを前記受信者コンピュータに自動的に送信するコンピュータで実現される方法において、
前記１つ以上のサーバで、受信者が現行キャンペーンに対応するキャンペーンメッセージを受信する適格性を有するか否かを決定し、前記決定は、前記１つ以上のサーバのメモリ中に記憶されている前記受信者の特性が、前記現行キャンペーンに関係する所望の範囲内にあるか否かをチェックすることを含み、
前記受信者がキャンペーンメッセージを受信する適格性を有する場合、前記現行キャンペーンに対するキャンペーンスコアを計算して、前記１つ以上のサーバのメモリ中に記憶させ、前記キャンペーンスコアは、キャンペーンメトリック値の標準偏差に基づいて計算され、前記キャンペーンメトリック値は、キャンペーンメッセージ当たりベースでの前記現行キャンペーンによって受け取られる収益と、キャンペーンメッセージ当たりの購入の数とから導出されており、
前記１つ以上のサーバで、前記現行キャンペーンに対する前記キャンペーンスコアが、前記受信者がキャンペーンメッセージを受信する適格性を有するキャンペーンに対するキャンペーンスコアのうちで、最高のスコアであるか否かを決定し、
前記現行キャンペーンに対する前記キャンペーンスコアが、前記受信者がキャンペーンメッセージを受信する適格性を有するキャンペーンに対するキャンペーンスコアのうちで、最高のスコアであることが決定された場合、前記１つ以上のサーバによって、前記現行キャンペーンに対応するキャンペーンメッセージを前記受信者コンピュータに自動的に送信することを含む方法。
【請求項２】
前記現行キャンペーンに対するキャンペーンスコアを計算することは、
前記現行キャンペーンに対する前記キャンペーンスコアを他のキャンペーンの平均キャンペーンスコアに設定し、
前記現行キャンペーンの後のパフォーマンスに基づいて前記キャンペーンスコアを更新し、前記後のパフォーマンスは、時間期間にわたって、前記現行キャンペーンに対して計算された前記キャンペーンメトリック値によって決定されることを含む請求項１の方法。
【請求項３】
前記現行キャンペーンに対するキャンペーンスコアを計算することは、
前記現行キャンペーンに対する前記キャンペーンスコアを、同様のタイプの少なくとも１つの他のキャンペーンのキャンペーンスコアに設定し、
前記現行キャンペーンの後のパフォーマンスに基づいて前記キャンペーンスコアを更新し、前記後のパフォーマンスは、時間期間にわたって、前記現行キャンペーンに対して計算された前記キャンペーンメトリック値によって決定されることを含む請求項１記載の方法。
【請求項４】
前記現行キャンペーンに対するキャンペーンスコアを計算することは、
複数のキャンペーンに対するキャンペーンスコアを組み合わせ、
前記複数のキャンペーンの後のパフォーマンスに基づいて前記キャンペーンスコアを更新し、前記後のパフォーマンスは、時間期間にわたって、前記複数のキャンペーンに対して計算された前記キャンペーンメトリック値によって決定されることを含む請求項１記載の方法。
【請求項５】
前記現行キャンペーンに対するキャンペーンスコアを計算することは、
テストキャンペーンに関係するキャンペーンメッセージを受信することになる、適格性を有する受信者のテストグループを識別し、前記テストグループは、前記１つ以上のサーバのメモリ中に記憶されている受信者のリストから識別され、前記リストは前記現行プランニング期間中にキャンペーンメッセージを受信する適格性を有する受信者を含み、
前記テストキャンペーンに関係するキャンペーンメッセージを受信しないことになる、適格性を有する受信者の制御グループを識別し、前記制御グループは、前記１つ以上のサーバのメモリ中に記憶されている受信者のリストから識別され、前記リストは前記現行プランニング期間中にキャンペーンメッセージを受信する適格性を有する受信者を含み、
前記テストキャンペーンに関係するキャンペーンメッセージを前記テストグループに送信し、
前記テストキャンペーンに関係するキャンペーンメッセージを受信した前記テストグループの挙動と、前記テストキャンペーンに関係するキャンペーンメッセージを受信しなかった前記制御グループの挙動とを比較し、
前記比較に基づいて前記キャンペーンスコアを更新することを含む請求項１記載の方法。
【請求項６】
前記キャンペーンメッセージは、電子メールメッセージ、ショートメッセージサービスメッセージ、ＷＡＰメッセージ、インスタントメッセンジャーメッセージ、オーディオメッセージからなるグループから選択される請求項１記載の方法。
【請求項７】
コンピュータネットワーク上で、１つ以上のサーバによって実現される、キャンペーンを処理するコンピュータで実現される方法において、
前記１つ以上のサーバで、複数のキャンペーンに対するプランニング期間を規定し、
前記１つ以上のサーバで、各受信者の特性が前記キャンペーンに関係する所望の範囲内にあるか否かを決定することによって、前記プランニング期間中に前記複数のキャンペーンからのキャンペーンメッセージを受信する適格性を有する各受信者を、前記１つ以上のサーバのメモリ中に記憶されている受信者のリストから識別し、
前記１つ以上のサーバで、前記プランニング期間後に利用可能な複数のキャンペーンに対するルックアヘッド期間を規定し、
前記１つ以上のサーバで、前記ルックアヘッド期間中に利用可能な前記複数のキャンペーンからのキャンペーンメッセージを受信する適格性を有する各受信者を、前記１つ以上のサーバのメモリ中に記憶されている受信者のリストから識別し、
前記１つ以上のサーバで、キャンペーンメッセージを受信する適格性を有する各受信者に対して、各受信者に関係する受信者コンピュータに送信するためにベストキャンペーンを選択し、前記ベストキャンペーンは、最も高いキャンペーンスコアを有し、かつ、前記プランニング期間中に利用可能な前記複数のキャンペーンと、前記ルックアヘッド期間中に利用可能な前記複数のキャンペーンとから選択されることを含む方法。
【請求項８】
ルックアヘッド期間中に利用可能な何らかのキャンペーンが、前記ベストキャンペーンのキャンペーンスコアより高いキャンペーンスコアを有するか否かを決定し、
前記ルックアヘッド期間中に利用可能な何らかのキャンペーンが、前記ベストキャンペーンのキャンペーンスコアより高いキャンペーンスコアを有する場合、そのような各キャンペーンに対して、前記キャンペーンのキャンペーンスコアに対して重み値を割り当てることによって、前記キャンペーンのキャンペーンスコアをディスカウントし、
最高のディスカウントされたキャンペーンスコアを有するキャンペーンが、前記ベストキャンペーンのキャンペーンスコアより高いスコアを有するか否かを決定することをさらに含む請求項７記載の方法。
【請求項９】
前記最高のディスカウントされたキャンペーンスコアを有するキャンペーンが、前記ベストキャンペーンのキャンペーンスコアより高いスコアを有する場合、受信者は前記ベストキャンペーンに割り当てされない請求項８記載の方法。
【請求項１０】
コンピュータネットワークを通して、受信者コンピュータに通信可能に結合されている１つ以上のサーバによって実現される、キャンペーンスコアを自動的に決定するコンピュータで実現される方法において、
前記１つ以上のサーバで、現行プランニング期間に対するテストキャンペーンを取得し、
前記１つ以上のサーバで、前記テストキャンペーンに対する適格性を有するテスト受信者を識別し、前記適格性を有するテスト受信者は、前記１つ以上のサーバのメモリ中に記憶されている受信者のリストから識別され、前記リストは現行プランニング期間中にキャンペーンメッセージを受信する適格性を有する受信者を含み、
前記１つ以上のサーバで、前記適格性を有するテスト受信者の一部を、前記テストキャンペーンに関係するキャンペーンメッセージを受信することになる、受信者のテストグループとして識別し、
前記１つ以上のサーバで、前記適格性を有するテスト受信者の一部を、前記テストキャンペーンに関係するキャンペーンメッセージを受信しないことになる、受信者の制御グループとして識別し、
前記１つ以上のサーバで、前記テストキャンペーンに関係するキャンペーンメッセージを前記テストグループに送信し、
前記１つ以上のサーバで、前記テストキャンペーンに関係する前記キャンペーンメッセージが送信された後に、前記テストグループのアクションと前記制御グループのアクションとを比較することによって、前記テストキャンペーンに対するテストキャンペーンスコアを計算し、
前記比較に基づいて、前記テストキャンペーンスコアを更新することを含む方法。
【請求項１１】
テストキャンペーンに対する前記テストグループと前記制御グループとの前記アクションを測定するメトリックを計算することをさらに含み、
前記メトリックは、前記テストキャンペーンに関係するキャンペーンメッセージの受信に続く、前記テストグループと、前記制御グループとの購入挙動を表すデータから導出され、そして、前記メトリックは、メッセージ当たりの収益、メッセージ当たりの購入と、購入当たりの収益からなるグループから選択されるメトリックを含む請求項１０記載の方法。
【請求項１２】
前記テストキャンペーンスコアは、他キャンペーンのメトリックからの前記メトリックの標準偏差値に基づいて計算される請求項１１記載の方法。
【請求項１３】
キャンペーンメッセージを選択して受信者に関係する受信者コンピュータに送信するコンピュータシステムにおいて、
キャンペーンメッセージを記憶するデータベースと、
前記データベースと通信する送信側サーバとを具備し、
前記送信側サーバは、
前記受信者が、現行キャンペーンに対応し、前記データベースに記憶されているキャンペーンメッセージを受信する適格性を有するか否かを決定し、前記受信者が適格性を有することの決定は、前記受信者の特性が、前記現行キャンペーンに関係する所望の範囲内にあるか否かをチェックすることを含み、
前記受信者がキャンペーンメッセージを受信する適格性を有する場合、前記現行キャンペーンに対するキャンペーンスコアを計算して、前記サーバのメモリ中に記憶させ、前記キャンペーンスコアは、キャンペーンメトリック値の標準偏差に基づいて計算され、前記キャンペーンメトリック値は、キャンペーンメッセージ当たりベースでの前記現行キャンペーンによって受け取られる収益と、キャンペーンメッセージ当たりの購入の数とから導出されており、
前記現行キャンペーンに対する前記キャンペーンスコアが、前記受信者がキャンペーンメッセージを受信する適格性を有するキャンペーンに対するキャンペーンスコアのうちで、最高のスコアであるか否かを決定し、
前記現行キャンペーンに対する前記キャンペーンスコアが、前記受信者がキャンペーンメッセージを受信する適格性を有するキャンペーンに対するキャンペーンスコアのうちで、最高のスコアであることが決定された場合、前記現行キャンペーンに対応するキャンペーンメッセージをデータベースから取得して、前記キャンペーンメッセージを前記受信者コンピュータに送信するように構成されているコンピュータシステム。
【請求項１４】
前記送信側サーバと通信し、前記現行キャンペーンからのキャンペーンメッセージが前記送信側サーバによる送信のために選択されるように前記現行キャンペーンを登録する登録サーバをさらに具備する請求項１３記載のシステム。
【請求項１５】
前記送信側サーバと通信し、どれくらいの頻度で前記受信者コンピュータが前記送信側サーバより送信されるキャンペーンメッセージを受信するかを調整するインボックスマネージャーサーバをさらに具備する請求項１３記載のシステム。
【請求項１６】
前記送信側サーバと通信し、前記現行キャンペーンの後のパフォーマンスを測定するメトリックサーバをさらに具備し、
前記後のパフォーマンスの測定は、時間期間にわたって、前記現行キャンペーンに対して前記キャンペーンメトリック値を計算することを含む請求項１３記載のシステム。
【発明の詳細な説明】
【発明の分野】
【０００１】
本発明は、一般的に、オンラインメッセージ通信に関し、特に、指定された受信者へのｅメールの送信を自動化するシステムと方法に関する。
【発明の背景】
【０００２】
通信ネットワークは、コンピュータ通信の分野でよく知られている。定義によると、ネットワークは、通信設備もしくはリンクにより接続されている、コンピュータと関係デバイスのグループである。さらには、インターネットワークは、ゲートウェイもしくはルータによる同様なもしくは異種の多数のコンピュータネットワークの結合であり、ゲートウェイもしくはルータはさまざまなネットワークからのデータ伝送および変換を容易にする。用語インターネットワークに対するよく知られた略語は「インターネット」である。現在、理解されているように、大文字で始まる用語「インターネット」は、インタープロトコル（「ＩＰ」）を使用して互いに通信するネットワークおよびルータの集合のことを意味する。昨今、インターネットは、世界中に配置されているコンピュータをリンクできる能力により、爆発的な成長がみられる。以下の説明により正しく認識されるように、本発明は、多くのインターラクティブ環境において用途を見いだすことができるが、説明のために、本発明を実現するのに例示的なインターラクティブ環境としてインターネットが使用される。
【０００３】
インターネットは、多くは情報を速く確実に配信するその能力のおかげで、情報を広める一般的な方法にすぐになった。文書もしくは他のデータをインターネットで送信するために、ユーザは一般的に通信ソフトウェアを使用する。文書をアドレス指定する共通の方法はｅメールアドレスを通してであり、ｅメールアドレスは、インターネットに接続されているサーバ上のｅメールアカウントを有する個人の位置を提供する。
【０００４】
ｅメールを使用して個人と通信する際の欠点は、特定の受信者に送信されるｅメールの量に対する考慮不足である。特定の受信者が、多数の異なるｅメールを受信する基準を満した場合、その受信者により受信されるｅメールの量を制限する方法はなかった。「インボックス制御」の欠如は、多すぎるｅメールを受信した受信者に、そして、そのｅメールが所望の報酬を与えなかったキャンペーンメッセージ送信者に幻滅をもたらした。キャンペーンメッセージ送信者のｅメールは、より少ないメッセージが送信されていたならば受信されたかもしれない。
【０００５】
したがって、受信者の異なるグループにキャンペーンメッセージ（メール）を送信することを自動的に制御し、常にオペレータが介在する必要がなく、安定し、どれくらい多くのキャンペーンメッセージが特定の受信者に送信されるべきかを制限する「インボックスマネンジメント」メカニズムをサポートする方法に対する必要性がある。
【発明の開示】
【発明の概要】
【０００６】
本発明は、コンピューティング環境において、キャンペーンメッセージの送信を自動化することに向けられている。本発明の１つの観点にしたがうと、メッセージキャンペーンはキャンペーンスコアに割り当てられ、キャンペーンスコアはキャンペーンメッセージを受信する適格性を有する受信者を割り当てるために使用される。より詳細に述べると、適格性がある受信者は、キャンペーンのスコアにしたがって、特定のメッセージキャンペーンに割り当てられる。加えて、適格性がある受信者の一部は、各キャンペーンに対する制御グループとして指定され、キャンペーンメッセージは送信されない。キャンペーンメッセージが、割り当てられた受信者に送信された後、キャンペーンメッセージを受信した受信者のアクションと、制御グループのメンバーのアクションは、キャンペーンのスコアを更新するために区別される。キャンペーンスコアを連続的に更新すると、どのキャンペーンが特定の受信者にとってベストであるかを連続的に決定することができる。
【０００７】
本発明の他の観点にしたがうと、キャンペーンは、最初に、キャンペースコアを持って開始しない。その代わりに、キャンペーンはテストキャンペーンを指定され、適格性がある受信者がテストキャンペーンに割り当てられる。加えて、適格性があるテストキャンペーン受信者の一部は、テスト制御グループとして指定される。テストキャンペーンメッセージは、テストキャンペーンに割り当てられた受信者に送信され、テストキャンペーンに対するキャンペーンスコアに到達するように、割り当てられた受信者と制御グループメンバーのアクションは区別される。一度、テストキャンペーンがスコアを有すると、テストキャンペーンは、キャンペーンスコアに基づいて、受信者がキャンペーンに割り当てられる通常のキャンペーンとなる。
【０００８】
本発明のさらに別の観点にしたがうと、キャンペーンメッセージ受信者のアクションと制御グループメンバーのアクションを表すメトリックからキャンペーンスコアが計算される。
【０００９】
本発明のまた別の観点にしたがうと、特定の受信者をどのキャンペーンに割り当てるかは、ルックアヘッド期間中のキャンペーンを分析して、将来におけるキャンペーンが特定の受信者にとって現行プランニング期間中のキャンペーンよりも良いか否かの決定を行うことを含む。
【００１０】
本発明の他の観点にしたがうと、どれくらいの頻度で、受信者が特定の種類のキャンペーンからメッセージを受信するかについて、インボックスデータが維持される。インボックスデータは、本発明にしたがって実行されるキャンペーンから受信者が多すぎるメッセージを確実に受信しないように使用される。
【００１１】
先述の概要から、当業者によってたやすく正しく認識されるように、本発明は、キャンペーンと受信者のデータとの両方を効果的に分析して、キャンペーンメッセージの送信を自動化する。したがって、本発明がキャンペーンメッセージの送信を自動化する新規で改良された方法、システム、そして読み取り可能な媒体を提供することも、先述の概要から正しく認識されるであろう。
【００１２】
本発明の先の観点とそれに伴う多くの利点は、添付図面を考慮に入れて、以下の詳細な説明を参照することにより本発明がより理解されるにしたがって、さらに容易に理解されるようになるであろう。
【詳細な説明】
【００１３】
以下に述べる詳細な説明は、主に、プロセッサ、プロセッサ用のメモリ記憶デバイス、接続されたディスプレイデバイス、入力デバイスを含む、従来のコンピュータ構成要素による処理および動作の象徴的な表現に関して表されている。これらのプロセスと操作のそれぞれは、リモートファイルサーバ、コンピュータサーバ、メモリ記憶デバイスを含む、異機種分散型コンピューティング環境における従来のコンピュータ構成要素を利用してもよい。これらの従来の分散型コンピューティング構成要素のそれぞれは、通信ネットワークを通してプロセッサによってアクセス可能である。
【００１４】
図１は、キャンペーンメッセージの送信を自動化するシステム１００を絵で表した図を図示している。図１に示されているシステム１００は、送信側サーバ１１５、インボックスマネージャーサーバ１２０、プランナサーバ１２５、登録サーバ１３０、メトリックサーバ１３５およびデータベースサーバ２００を含む。これらは、１つもしくはそれ以上のネットワークを通してすべて相互に接続されている。キャンペーンメッセージはインターネット１１０を通して、受信者デバイス１０５に送信される。システム１００は、通常、１つもしくはそれ以上のネットワークを通して相互に接続されている個々のコンピュータシステムを含む分散型コンピューティング環境で動作するが、システム１００は単一のスタンドアローンコンピュータシステムとして、またはシステム１００で図示されているより多いもしくは少ないコンピュータシステムとして等しく機能しうるということを当業者は正しく認識するであろう。したがって、図１で示されているシステムは、制限のない、例示的なものとして理解すべきである。
【００１５】
送信側サーバ１１５は、簡単化された表現のインターネット１１０を経由して、受信者デバイス１０５の受信者にキャンペーンメッセージを送信する役割を持っている。当業者は、送信者側サーバ１１５が、さまざまなフォーマットでキャンペーンメッセージを送出してもよいことを正しく認識するだろう。このようなフォーマットは、決して制限されるものではないが、電子メールメッセージ、ショートメッセージサービス（ＳＭＳ）メッセージ、ワイヤレスアプリケーションプロトコル（ＷＡＰ）メッセージ、インスタントメッセンジャーメッセージおよびオーディオメッセージを含んでいてもよい。当業者は、さまざまな送信側サーバ１１５、もしくは、同様デバイスが、キャンペーンメッセージを送信するために本発明により使用されてもよいことを正しく認識するであろう。
【００１６】
インボックスマネージャーサーバ１２０はインボックスデータ２７０を管理して、本発明にしたがって、どれぐらいの頻度で受信者がキャンペーンメッセージを受信しうるかを調整する。プランナサーバ１２５はキャンペーンメッセージの送信を自動化するシステム１００の他のデバイスと調整を行う。登録サーバ１３０は、キャンペーンのための、特に新規キャンペーンのための登録情報を集めるために使用される。メトリックサーバ１３５は、キャンペーンメッセージの受信者および潜在的受信者のアクションと挙動についてのメトリック情報を集める。
【００１７】
先に述べたように、図１は、例示的な、制限ないものとして理解すべきである。図１における図示された何らかのコンピューティングデバイスのルーチンと役割は他のサーバのルーチンおよび役割と組み合わせてコンピューティングデバイスの数を減少させてもよいことは当業者によって正しく認識されるであろう。加えて、この図示されたコンピューティングデバイスのルーチンと役割は、並列処理のために同様のデバイスと共有されてもよく、あるいは、何らかの１つのデバイスにおける負荷を減少させるために、より一層多いコンピューティングデバイスに分割されてもよい。
【００１８】
図２はデータベースサーバ２００のいくつかの基本構成を図示する。当業者は、データベースサーバ２００が図２で示されているものよりも多くの構成要素を含んでいてもよいことを正しく認識するであろう。しかしながら、本発明を実行するために実施可能な実施形態を開示するために、これらの一般的な従来の構成要素のすべてを示す必要はない。図２に示されるように、データベース２００は、（示されていない）他のデバイスに対して接続するための入力／出力（「Ｉ／Ｏ」）ネットワークインターフェイス２３０を含む。
【００１９】
データベースサーバ２００は、処理ユニット２１０、オプショナルディスプレイ２４０、メモリ２５０を含み、すべてバス２２０を経由してＩ／Ｏインターフェイス２３０と相互接続されている。通常、メモリ２５０はランダムアクセスメモリ（「ＲＡＭ」）、リードオンリーメモリ（「ＲＯＭ」）、および、ディスクドライブ、テープドライブ、オプティカルドライブ、フロッピー（登録商標）デスクドライブ、もしくは、それらの組み合わせのような永久的な大容量記憶デバイスを備える。メモリ２５０は、オペレーティングシステム２５５、（各キャンペーンに対するパラメータとともに、キャンペーンメッセージを作成する情報を含む）キャンペーンデータ２６０、（現行プランニング期間中に送信されるべき、受信者とキャンペーンメッセージの対を含む）メッセージプラン２６５、（どれぐらいの頻度で各受信者がキャンペーンメッセージを受信しうるかについての情報を含む）インボックスデータ２７０、送信メッセージデータ２７５（どのメッセージが送信されたかの記録と、どの受信者に送信されたかの記録）、キャンペーンスコア２８０（スコアを有する各キャンペーンに対する現行スコアの記録）、および、パフォーマンスデータ２８５（制御グループメンバーのメトリックとともに、キャンペーンメッセージ受信者メトリックに対するパフォーマンスメトリックの記憶されたコピー）を記憶する。これらのソフトウェアデータ構成要素は、フロッピー、テープまたはＤＶＤ／ＣＤ-ＲＯＭドライブのようなコンピュータを読み取り可能な媒体と関係するドライブメカニズムを使用して、あるいは、Ｉ／Ｏネットワークインターフェイス２３０を経由して、コンピュータ読み取り可能な媒体からデータベースサーバ２００のメモリ２５０にロードしてもよいことが正しく認識されるだろう。
【００２０】
図面に図示されている本発明の観点とルーチンを取り扱う前に、発明の概略を説明する。本発明は、キャンペーンメッセージの送信を自動化する。しかしながら、キャンペーンを構成するキャンペーンメッセージが送出される前に、最初にキャンペーンを作成しなければならない。キャンペーンの作成は、図３で図示され、下記に説明されているキャンペーン登録ルーチンのような、キャンペーン登録ルーチンを通して行われる。一度、キャンペーンを登録するために必要な情報が受信され、処理のために記憶されると、キャンペーンの作成者の仕事は終了する。本発明はオペレータが介入することなく（あるいは少なくとも最小限で）、現在登録されているキャンペーンの処理、分析および送信を扱うことができる。
【００２１】
本発明における自動化されたキャンペーン送信システムは、受信者が加入しているキャンペーンとともに、キャンペーンのパラメータと受信者の特徴に基づいて特定の受信者に動的に割り当てられるであろうキャンペーンを扱うのに十分な柔軟性がある。例えば、ある作家の第１の本の購入者すべてに同じ作家による第２の本がちょうど出版されたことを通知するためにキャンペーンが登録される場合、その作家の第１の本を購入した受信者の特徴は、彼らを特定のキャンペーンにマッチさせるかもしれない１つの基準であるということができる。しかしながら、本発明は多すぎるキャンペーンメッセージをどんな受信者にも送信することは好ましくないという認識を織り込んでいる。それゆえに、それらの受信者の特徴に基づいて、１つより多いキャンペーンを受信する適格性を有する受信者がいる場合、本発明は、最も知覚される値（すなわち、最高のスコア）を有するキャンペーンだけが受信者に送信されるようにスコアでキャンペーンをランク付けする。
【００２２】
キャンペーンが初めて登録されるとき、受信者によりその価値をテストする方法がないのでキャンペーンはスコアを持たない。それゆえに、キャンペーンが初めて登録されるとき、テストキャンペーンはテストフェーズを通過する。テストフェーズ間に、テストキャンペーンは統計学上大きい十分な受信者のグループに送出され、受信者の挙動は、テストキャンペーンメッセージを受信する適格性を有していたがテストキャンペーンメッセージが送信されなかった個人の制御グループと比較される。キャンペーンメッセージが送信された受信者と送信されなかった受信者の挙動および応答の差を分析することにより、キャンペーンに対する１組のメトリックを導き出すことにより、キャンペーンをスコア記録することが可能になる。これらのメトリックは、分析され処理されるとき、テストキャンペーンメッセージに対するキャンペーンスコアを生成する。一度、キャンペーンメッセージがスコア記録されると、スコアを有する他の「アクティブ」キャンペーンに対してランク付けすることができる。
【００２３】
本発明の代替実施形態において、キャンペーンはキャンペーンのタイプによりグループ分けされ、同じタイプのキャンペーンがキャンペーンスコアを共有する。これは、以前にスコア記録されたキャンペーンと同じタイプの新規なキャンペーンがいったん登録されると、最初にテストされることなく、直ちに「アクティブ」モードに移行できるようにする。
【００２４】
どのキャンペーンを送信するかの日々の分析は、受信者が加入している何らかのキャンペーンを送出すること、何らかのテストキャンペーン（そのキャンペーンスコアがないか、もしくは、考慮されていないキャンペーン）を送出すること、パートナーキャンペーン（第三者のパートナーから報酬のために送信されるかもしれない第三者キャンペーン）のような他の何らかのタイプのキャンペーンを送出すること、および、ランク付けされ、受信者が割り当てられた何らかのアクティブ販売促進キャンペーンを送出することを含む。本発明におけるキャンペーンに対する受信者の割り当ては、多すぎるキャンペーンメッセージで受信者に負担をかけさせないで、より高くランク付けされた（より好ましい）キャンペーンメッセージの送信をバランスさせることを目的とする。
【００２５】
１．キャンペーンの作成と登録  
明瞭にするために、キャンペーンは２つのタイプのうちの１つに入るように一般化される。２つのタイプとは、義務的か任意的かである。当業者は、他の種類のキャンペーンを、本発明のキャンペーン送信システムと両立させ、本発明のキャンペーン送信システムに組み込んでもよいことを正しく認識するであろう。
【００２６】
義務的キャンペーンは、キャンペーン送信者がある期間内にあるグループの受信者にキャンペーンを送出することが(契約上かまたは別な方法で)要求されるキャンペーンである。義務的キャンペーンの例は、受信者が選択して加入するメーリングリストにサインアップすることによるような、受信者が周期的なｅメールを受信することを要求する加入キャンペーンである。他の義務的キャンペーンの例は、１組の価格に対してある数の受信者にパートナーのために送信されるパートナーキャンペーンである。
【００２７】
任意的なキャンペーンは、送出されるメッセージの数とキャンペーンのタイミングとをキャンペーンオペレータが判断するキャンペーンである。任意的なキャンペーンの例は新商品の販売を顧客に対して持ちかける販売促進キャンペーンである。任意的キャンペーンの他の例はキャンペーン（もしくはキャンペーンタイプ）に対する新規なキャンペーンスコアを決定するために使用されるテストキャンペーンである。
【００２８】
各キャンペーンは下記のパラメータの１つ以上によって規定され、下記のパラメータの１つ以上を含むことができる。  
（１）メッセージのタイプ（例えば、新製品予告メッセージ、発送プロモーションメッセージ、等）に対するテンプレートに対応するキャンペーンタイプ  
（２）キャンペーンメッセージに含めるコンテンツ（例えば、グラフィックとテキスト）もしくは、コンテンツを集める基準（例えば、製品の画像と説明が記憶されている製品データベース参照される在庫数）  
（３）キャンペーンが送信されるべきすべての受信者の識別子（例えば、すべての受信者のリスト、もしくは、キャンペーンを受信すべき受信者のタイプの記述）  
（４）その間にキャンペーンが送信されるべき日付
【００２９】
図面に戻ると、図３はキャンペーン登録ルーチン３００を図示している機能フロー図である。上記の概略と下記の説明から理解されるように、登録ルーチン３００は登録サーバ１３０によって、キャンペーンを本発明のキャンペーン送信システムに登録するために使用される。
【００３０】
キャンペーン登録ルーチン３００はブロック３０１で始まり、ブロック３０５に進む。ここで、（例えば、手動でキャンペーンオペレータから、もしくは自動的にデータベースから）キャンペーンパラメータが取得される。これらのキャンペーンパラメータは、メッセージテンプレート、テンプレートのコンテンツ（例えば、参照、言語、製品情報）、キャンペーンの何らかの規定パラメータ（例えば、受信者、継続期間）を特定することによって、キャンペーンメッセージを形成するために使用される情報の一部である。本発明の例示的な実施形態では、キャンペーンを登録する際において使用されるキャンペーンパラメータは、特定のメッセージテンプレートに対応するキャンペーンタイプを含む。キャンペーンパラメータは１つの商品に対する在庫数も含んでいてもよく、これは、キャンペーンメッセージに対する関連情報でメッセージテンプレートを占めるために使用されてもよい。同様に、キャンペーンパラメータはすべての受信者のリストもしくはキャンペーンメッセージがアドレス指定されるべき受信者のタイプの説明を含んでいてもよい。上記の例は、パラメータとして含まれるかもしれないさまざまなタイプの情報を何らかの方法で制限することを意味しない。つまり、単に、本発明の理解を他住めるために提供されているにすぎない。当業者は、多くの他の変数をキャンペーンパラメータとして含めてもよいことを正しく認識するであろう。
【００３１】
一度、キャンペーンパラメータが取得されると、ブロック３１０において、登録されているキャンペーンに対する潜在的に適格性を有する受信者のリストが（例えば、手動でキャンペーンオペレータから、もしくは自動的にデータベースから）取得される。どの受信者がキャンペーンを受信する適格性を有するかの選択は、データベースに記憶されている個人の特徴とキャンペーンの性質とに基づく。特徴は、例えば、（年齢、性別、収入のような）人口統計学的特徴もしくは、（同様なタイプの製品の先の購入のような）マーケティング的特徴であってもよい。そして、ブロック３１５では、パラメータと受信者の識別子は、キャンペーンを処理するときにプランナサーバにより後にアクセスするために、データサーバ２００に転送される。パラメータと受信者の識別子が転送された後、ブロック３９９で、キャンペーン登録ルーチン３００が終わる。
【００３２】
２．キャンペーンのテストとスコア記録
顧客が、多すぎるメッセージ、特に、小売店または他の当事者から多すぎる要求していないマーケティングメッセージを受信することは、顧客の共通する不満である。多すぎるキャンペーンメッセージが受信者に送信される場合、受信者はメッセージに対して前向きな応答を示す可能性は少ない。したがって、本発明は、所定時間期間内に各受信者に送信されるメッセージ数を管理するインボックスマネージャーサーバ１２０を含む。本発明の１つの実施形態において、キャンペーンメッセージの数はオペレータにより設定される。例えば、オペレータは、受信者に送信されるメッセージの数を制限するために、「各カレンダー月の間に２つのメッセージ」の制限を設定するかもしれない。メッセージ送信制限および期間はインボックスマネージャーサーバ１２０によりインボックスデータ２７０として記憶される。代替実施形態において、インボックスマネージャーサーバ１２０は、受信するキャンペーンを受信するそれら自身の間隔を設定する受信者に明かされる制御を提供する。例えば、アカウントウェブページが制御とともに受信者に提供されてもよく、この制御は、受信者がある期間内に受信したいメッセージ数を受信者が選択できるようにする。受信者が受信する要求していないキャンペーンメッセージ数を制限することによって、受信者は負担になる可能性が少なくなり、彼らが受信する定期的キャンペーンメッセージに対して、前向きに応答する可能性が高くなる。この方法では受信者は応答するかもしれない。というのは、殺到するメッセージが減少するから、もしくは、稀なメッセージは受信者により大きな影響を与えるからである。それは、特に、本発明は各受信者に送信するベストキャンペーンを決定するように試みるからである。
【００３３】
受信者に送信することができるメッセージの数が制限される場合、最も価値があるメッセージのみが送信されることが重要である。結果として、何らかの所定のキャンペーンの有効性を決定するために、キャンペーンスコアが発生され、キャンペーンの相対的な価値を示し、これにより１つのキャンペーンを他のキャンペーンと比較することが可能になる。キャンペーンスコアに基づいて、より価値が少ないキャンペーンを選択しない一方で、システムが、最も価値ある１つまたは複数のキャンペーンを選択して、受信者に送信することができる。多数の異なる方法を使用して、このようなキャンペーンスコアを発生させてもよいことが正しく認識されるであろう。例えば、ある技術は平均スコアを各新規キャンペーンに割り当て、そして、（ここで開示されている技術を使用して）ある期間にわたりキャンペーンパフォーマンスを測定し、キャンペーンの後のパフォーマンスに基づいて平均スコアを修正する。キャンペーンスコアを発生させる他の技術は、同じキャンペーンタイプのすべてのキャンペーン間でキャンペーンスコアを共有する。さらに別の技術は、以前に存在していたキャンペーンからキャンペーンスコアを同じキャンペーンタイプの新規なキャンペーンに割り当てるが、各キャンペーンのパフォーマンスに基づいて、各キャンペーンスコアを独立的に変化できるようにする。
【００３４】
キャンペーンスコアを発生させるさらに他の技術は、そのキャンペーンに特有であるキャンペーンスコアを発生させるために、各新規キャンペーンがテストを受けるものである。そのようにするために、「テストキャンペーン」が生成され、制限されているが、（例えば、仮説テストを使用して決定されるような）統計学上、有意な個人のグループに送信される。テストキャンペーンに参加する受信者のグループは、（下記に定義されるような）現行プランニング期間内にメッセージを受信する適格性を有するキャンペーンの受信者から選択される。すなわち、既にメッセージプランに入っておらず、インボックスデータ２７０にしたがってメッセージを受信する適格性を有する受信者から選択される。最低数の適格性を有する受信者が選択されて、テストキャンペーンに参加することが好ましい。テストキャンペーンにとって、最低数は、メトリックとスコア記録の統計学上、有意な（例えば、±２％誤差のマージン）分析を可能にする、受信者の統計学上十分に大きなサンプリングに相当する。代わりに、テストキャンペーンは、テストキャンペーンを受信することが指定された予め定められた数（例えば、５０，０００）の受信者を単に有していてもよい。一度、最低数の受信者が選択されると、キャンペーンの受信者から選択されなかった受信者の第２のグループが制御グループに配置される。テストキャンペーンにより、キャンペーンメトリックのより正確な評価を得るべく追加された動機付けがあるということ、および、それゆえ、統計的に十分大きなサンプリングを確実なものとするために、制御グループの大きさがそれにしたがって増加されてもよいことを正しく認識するであろう。一度、テストグループと制御グループが選択されると、テストキャンペーンメッセージがメッセージプランに加えられ、メッセージプランの処理の一部として、テストグループ中の受信者に送信される。
【００３５】
テストキャンペーンメッセージを受信する受信者の結果として生じる行動が追跡され、受信者の挙動を示す生メトリックデータが発生される。生メトリックデータは、多数の形態をとってもよい。例えば、生メトリックデータは、特定の製品、プロモーションもしくはサービスを記載しているメッセージの受信に続く、受信者のその後の購入挙動を表すデータを含んでいてもよい。購入挙動についてのデータは、受信者が関連付けられているウェブサイトへの受信者の訪問を追跡することにより集められ、受信されたキャンペーンメッセージ中で明確に参照されていない、他の製品、プロモーションまたはサービスの購入を含む。他の例では、生メトリックデータは、受信者が関連付けられているウェブサイト上の製品、プロモーションまたはサービスについての付加的な詳細を単に見た受信者の数を示してもよい。受信者の見る挙動についてのデータは、受信者がテストメッセージによって関連付けられているウェブサイトの問い合わせログを分析することによって集められてもよい。テストメッセージの結果として、ユーザが関連付けられているウェブサイトへのユーザの訪問に関係する他のメトリック情報が発生されてもよいことを当業者は正しく認識するであろう。すべての生メトリックデータは、パフォーマンスデータ２８５としてデータベースサーバ２００中に記憶される。
【００３６】
テストグループの活動に関係する生データが記録された後、生メトリックデータが処理され、キャンペーンの効果が決定される。図４は、本発明にしたがって形成され、メトリックサーバ１３５によって処理されるキャンペーンスコア記録ルーチン４００によって実行されるメトリック分析を図示している機能フロー図である。下記の説明からより理解されるように、キャンペーンスコア記録ルーチン４００が使用されて生メトリックデータが分析され、キャンペーンに対するキャンペーンスコアが発生される。
【００３７】
キャンペーンスコア記録ルーチン４００は、ブロック４０１で始まり、ルーピングブロック４０５に進む。ここで、スコア記録されるべき各キャンペーンの反復が始まる。ブロック４１０で、生メトリックデータが記憶装置から取得される。この例では、生メトリックデータは、パフォーマンスデータ２８５から取得される。処理はブロック４１５に進む。ここで、販売促進メトリックが生メトリックデータから計算される。例示的な実施形態において、計算された販売促進メトリックは下記のものを含む。
【００３８】
・「ＤＰＭ」は、キャンペーンメッセージ当たりベースでのキャンペーンによって受信される収益の計算である（すなわち、収益／メッセージカウント）。  
・「ＰＰＭ」は、メッセージ当たりの購入の数である（すなわち、購入／メッセージカウント）。  
・「ＰＰＭＴ」は、制御グループのメンバーとキャンペーンメッセージを受信した受信者とに対するメッセージ当たりの購入である。  
・「ＤＰＰ」は、キャンペーンメッセージを受信した受信者による購入当たりで受信された平均収益の表示である。  
・「ＤＰＰＴ」は、制御グループのメンバーとキャンペーンメッセージを受信した受信者とに対する購入当たりの平均収益である。
【００３９】
当業者は、本発明の他の非小売りの例において、販売促進メトリックは、図５に図示され、以下で説明されている小売メトリックモデル以外の形態を取ってもよいことを正しく認識するであろう。したがって、以下に説明された小売メトリックモデルは、例示的なものであり、制限するものでないことを理解すべきである。これは、メトリックを分析および処理する多くの方法のうちの１つの例示的な方法を単に示すために使用されている。
【００４０】
ブロック４１５の後、処理はブロック５００に進み、ここで、販売促進メトリックを使用して、メインキャンペーンメトリック値が計算される。適切なメインキャンペーンメトリック計算サブルーチン５００の例が図５に図示され、以下に説明されている。メインキャンペーンメトリック計算サブルーチン５００が戻った後、処理はブロック４２０に進み、ここで、メインキャンペーンメトリック値が保存される。次に、ループバックブロック４２５において、スコア記録されるべきすべてのキャンペーンが反復され終わらない限り、処理は循環してルーピングブロック４０５に戻る。
【００４１】
スコア記録されるべきすべてのキャンペーンが反復され終えた後、処理はループバックブロック４２５からルーピングブロック４３０に進み、ここで、スコア記録されるべきすべてのキャンペーンに対する新規なループが始まる。新規なループにおける最初のステップはブロック４３５に示されており、ここで、スコア記録されるべき現行キャンペーンのメインキャンペーンメトリック値の標準偏差が、キャンペーンスコアを有する他のすべてのキャンペーンと関連して計算される。処理はブロック４４０に進み、ここで、現行キャンペーンのメインキャンペーンメトリック値の標準偏差に基づいて、キャンペーンスコアが現行キャンペーンに割り当てられる。本発明の例示的な制限をしない実施形態では、キャンペーンスコアは０と５との間の整数値として設定される。この例では、このメインキャンペーンメトリックの標準偏差に基づいて、キャンペーンスコアをキャンペーンに割り当てることは下記のことを含む。
【００４２】
・メインキャンペーンメトリック値が、平均メインキャンペーンメトリック値より小さい、２よりも大きい標準偏差である場合、以上、メインキャンペーンメトリック値の平均以下の場合（ここで、平均はスコア記録されるべきすべてのキャンペーンのものである）、キャンペーンスコアは０に設定される。  
・メインキャンペーンメトリック値が、平均メインキャンペーンメトリック値より小さい、１と２の標準偏差の間である場合、キャンペーンスコアは１として設定される。  
・メインキャンペーンメトリック値が、平均より下の１の標準偏差よりも小さいが、依然として平均メインキャンペーンメトリック値より下である場合、キャンペーンスコアは２に設定される。  
・メインキャンペーンメトリック値が、平均メインキャンペーンメトリック値より大きい、１の標準偏差よりも小さいが、依然として平均メインキャンペーンメトリック値よりも大きい場合、キャンペーンスコアは３に設定される。  
・メインキャンペーンメトリック値が、平均メインキャンペーンメトリック値より大きい、１と２の標準偏差の間である場合、キャンペーンスコアは４に設定される。  
・メインキャンペーンメトリック値が、平均メインキャンペーンメトリック値より大きい、２の標準偏差より大きい場合、キャンペーンスコアは５に設定される。
【００４３】
上記の例は、例示目的のためだけに提供されている。当業者は、本発明の精神および範囲を逸脱することなく、他の値および他の範囲を使用してもよいことを正しく認識するだろう。
【００４４】
ルーチン４００がブロック４４５に進む。ここで、キャンペーンスコアがキャンペーンスコアデータ２８０中で更新される。既に上記で述べてきたように、例示的な実施形態では、個々のキャンペーンは個々のキャンペーンスコアを有する。しかしながら、代替実施形態では、同じタイプのキャンペーンは単一のキャンペーンスコアを共有する。メトリックが同じタイプのキャンペーンに対して決定されると、そのキャンペーンタイプに対する組み合わされたキャンペーンスコアを生成するように、キャンペーンスコアおよび／または、メインキャンペーンメトリックが組み合わされてもよいことを当業者は正しく認識するであろう。処理はループバックブロック４５０に進み、ループバックブロック４５０は循環してルーピングブロック４３０に戻る。スコア記録されるべきすべてのキャンペーンが反復され終わるまで処理は継続する。スコア記録されるべきすべてのキャンペーンが反復され終わった後、処理はブロック４９９に進む。ここで、キャンペーンスコア記録ルーチン４００が終わる。
【００４５】
図５は、メトリックサーバ１３５で実行されるキャンペーンメトリック計算サブルーチン５００により遂行される計算を図示している機能フロー図である。先に着目したように、キャンペーンメトリック計算サブルーチン５００が使用されて、後にキャンペーンスコアを決定する際に使用するためのメインキャンペーンメトリック値が計算される。キャンペーンメトリック計算サブルーチン５００は、ブロック５０１で始まってブロック５０５に進み、ここで、ＤＰＭの「上昇量」が計算される。ＤＰＭの上昇量は、制御グループのＤＰＭと受信者のＤＰＭとの間の差である。次に、決定ブロック５１０において、ＤＰＭの上昇量が統計学上、有意か否かの決定がされる。ブロック５１０において、ＤＰＭの上昇量が統計学上、有意であると決定された場合、処理がブロック５１５に進み、ここで、ＤＰＭの上昇量の値がメインキャンペーンメトリックとして割り当てられる。そして処理はブロック５９９に進み、ここでキャンペーンメトリック計算サブルーチン５００が終了し、その呼び出しルーチンに戻る。
【００４６】
（決定ブロック５１０において）ＤＰＭの上昇量が統計学上、有意でないと決定された場合、処理はブロック５２０に進み、ここで、ＰＰＭの上昇量が計算される。ＰＰＭの上昇量は、受信者のＰＰＭと、制御グループすなわち、キャンペーンメッセージを受信していないグループのメンバー当たりの購入との差を決定することによって計算される。次に、決定ブロック５２５において、ＰＰＭの上昇量が統計学上、有意か否かの決定がなされる。決定ブロック５２５において、ＰＰＭの上昇量が統計学上、有意であると決定された場合、処理はブロック５３０に進み、ここで、ＰＰＭの上昇量がＤＰＰＴにより乗算される。次に、ブロック５３５では、結果値が、メインキャンペーンメトリックとして割り当てられる。そして処理はブロック５９９に進む。
【００４７】
（決定ブロック５２５において）ＰＰＭの上昇量が統計上、有意でないと決定された場合、処理はブロック５４０に進み、ここで、ＤＰＰの上昇量が計算される。ＤＰＰの上昇量は、受信者のＤＰＰと、制御グループメンバーの購入当たりの平均収益との差を決定することにより計算される。次に、決定ブロック５４５において、ＤＰＰの上昇量が統計学上、有意であるか否かの決定がなされる。統計学上、有意である場合、処理はブロック５５０に進み、ここで、ＤＰＰの上昇量がＰＰＭＴにより乗算される。そして、処理はブロック５３５に進み、上記に述べられたように続く。
【００４８】
しかしながら、決定ブロック５４５において、ＤＰＰの上昇量が統計学上、有意でないと決定がなされた場合、処理はブロック５５５に進み、ここで、予め定められた値がメインキャンペーンメトリックとして割り当てられる。ある例示的な実施形態において、ＤＰＭ、ＰＰＭもしくはＤＰＰのいずれもが統計学上、有意でないことが明らかになる場合、予め定められた値はゼロとして設定される。ブロック５５５において割り当てられた予め定められた値は、多数の適切な値のいずれであってもよいことを当業者は正しく認識するであろう。そして処理はブロック５９９に進む。
【００４９】
キャンペーンのテストを新規キャンペーンの状況において説明したが、ここで開示されているテスト技術とキャンペーンスコアの方法論が、既存のまたは継続しているキャンペーンに対してもまた適用できることが正しく認識されるであろう。このケースでは、キャンペーンシステムが、関連したキャンペーンスコアを既に有する販売促進キャンペーンを処理するとき、制御グループが指定される（図６と下記の説明参照）。販売促進キャンペーンにおいて制御グループを指定することは、キャンペーンのメトリックを、それゆえ、そのキャンペーンスコアを継続的に更新できるようにする。結果として、特定のキャンペーンもしくはキャンペーンタイプのキャンペーンスコアは、システムによってキャンペーンのパフォーマンスが変化するにしたがって、時間の経過とともにシステムによりに自動的に改良されてもよい。
【００５０】
３. 処理とキャンペーンの送信
一度、キャンペーンが登録されスコア記録されると、キャンペーン送信システム１００は、本発明にしたがってアクティブ販売促進キャンペーンを処理して送信することができる。キャンペーンシステムのオペレータはプランニング期間を選択することができ、プランニング期間は多数のキャンペーンメッセージが送信されるべき期間を定義する。プランニング期間は、何らかの予め定められた時間期間、例えば、時間、日、週等であってもよい。一般的にプランニング期間の長さは、オペレータによって作られた新規キャンペーンの数と頻度に依存する。例示的な実施形態において、プランニング期間の範囲は、１時間から１５０時間である。
【００５１】
一度、プランニング期間が定義されると、システムは、そのプランニング期間に関係するアクティブ販売促進キャンペーンを識別する。アクティブ販売促進キャンペーンは、（１）現行プランニング期間内に渡る日付パラメータ、（２）しきい値より上のキャンペーンスコア（例えば、上記に述べられている例示的なスコア記録値では「１」より大きい）を有する。
【００５２】
図６は、例示的な販売促進キャンペーン処理ルーチン６００を図示しており、販売促進キャンペーン処理ルーチン６００は、プランニング期間中にメッセージを受信すべきアクティブ販売促進キャンペーン中の受信者を識別する（以下に定義されるような）メッセージプランを生成する。販売促進キャンペーン処理ルーチン６００はブロック６０１で始まり、ブロック６０５に進み、ここで、現行プランニング期間と現行ルックアヘッド期間中のすべての販売促進キャンペーンからのすべて受信者が取得され、それぞれの受信者は彼らが適格性を有するキャンペーンの記録を持っている。
【００５３】
ルックアヘッド期間は、現行プランニング期間後の任意に決定される時間量であり、どのキャンペーンに受信者が割り当てられるべきかを評価するときに、本発明が「前方を見る（ルックアヘッド）」ものである。ルックアヘッド期間は時間的に前を見て、受信者を割り当てるのにさらに有効な、将来に（例えば、プランニング期間後）おけるキャンペーンがないか否かを見るように設計される。将来のキャンペーンのキャンペーンスコアに重み付けを適用して、キャンペーンの値をディスカウントしてもよい。将来キャンペーンのディスカウント値が、プランニング期間内のキャンペーンの知覚された値を超える場合、将来のキャンペーンにおいて含めるために受信者が使用可能であるように、システムは現行プランニング期間中に受信者をキャンペーンに入れるのを延期することを選択してもよい。ルックアヘッド期間の長さは、将来のキャンペーンに対するキャンペーンスコアに適用されるディスカウント方法に依存して変化してもよい。下記の説明からより理解されるように、ルックアヘッド期間は、キャンペーンと受信者がキャンペーンとよりマッチできるようにする。
【００５４】
ルーピングブロック６１０とループバックブロック６２５との間で、プランニング期間とルックアヘッド期間中のキャンペーンから取得された各受信者を通してルーチンは反復する。ブロック６１５で、現在、受信者が販売促進キャンペーンメッセージを受信するのに使用できないことをインボックスデータ２７０が示している場合、受信者は考慮から除かれる(例えば、現在、受信者がメッセージを受信する適格性を有さないことを受信者のインボックスデータが示す)。ブロック６２０で、受信者が既に現行メッセージプラン中に入っている（すなわち、彼らが既にプランニング期間間中にキャンペーンメッセージを受信するように選択されている）場合にも、受信者は考慮から除かれる。
【００５５】
現行の受信者は、受信者割当サブルーチンを利用する「ベスト」販売促進キャンペーンに割り当てられる。図７から１０は、例示的な代替受信者割当サブルーチン７００、８００、９００および１，０００をそれぞれ図示している。当業者は、キャンペーンの数、頻度、長さ、もしくはオペレータによって決定された他の要素に依存して、システムによる使用のために、割当サブルーチンの１つが選択されてもよいことを正しく認識するであろう。これらの受信者割当サブルーチンのうちの１つが戻った後、処理はループバックブロック６２５に進む。ループバックブロック６２５は、プランニング期間とルックアヘッド期間中のキャンペーンに対するすべての取得された受信者が反復され終わるまで、ルーピングブロック６１０に循環して戻る。この結果は、プランニング期間中のキャンペーンに割り当てられる適格性を有する受信者のグループである（「割り当てられた受信者」）。
【００５６】
すべての取得された受信者が反復され終えた後、処理はルーピングブロック６３０に進む。ルーピングブロック６３０は、割り当てられた受信者を有する各アクティブ販売促進キャンペーンを通して反復する。次に、ループで、処理はブロック６３５に進む。ここで、キャンペーンに関係するキャンペーンスコアを連続的にテストして更新するために、各アクティブ販売促進キャンペーンに対する割り当てられた受信者の一部が制御グループに入れられる。そして処理はブロック６４０に進む。ここで、各アクティブ販売促進キャンペーンに対する残りの割り当てられた受信者が現行プランニング期間のメッセージプラン２６５に割り当てられる。メッセージプランは、現行プランニング期間中に送信されるべきすべてのキャンペーンメッセージの集合である。現行プランニング期間が終了したとき、メッセージプランは送信側サーバ１１５に送信される。送信側サーバ１１５はメッセージプランを使用して、プランニング期間中のすべてのキャンペーンメッセージを自動的にスケジュール調整して送信する。
【００５７】
次に、ルーチン６００はループバックブロック６４５に進む。ループバックブロック６４５は、割り当てられた受信者を有するすべてのキャンペーンが反復され終わらない限り、循環してルーピングブロック６３０に戻る。割り当てられた受信者を有するすべてのキャンペーンが反復され終えた場合、処理はブロック６９９に進み、ここで、キャンペーン処理ルーチン６００が終わる。
【００５８】
図７は、ルックアヘッド期間中のキャンペーンが考慮されないときに、受信者をキャンペーンに割り当てるために適している例示的なキャンペーン割当サブルーチン７００を図示している。図示されているキャンペーン割当サブルーチン７００は、ブロック７０１で始まり、決定ブロック７０５に進む。ここで、プランニング期間中に何らかのキャンペーンが受信者に使用可能か否かが決定される。１つ以上のキャンペーンが、プランニング期間中に使用可能であることが見いだされた場合、処理はブロック７１０に進み、ここで、最高のキャンペーンスコアを有するキャンペーンに受信者が割り当てられる。処理はブロック７９９に進む。しかしながら、決定ブロック７０５で、プランニング期間中に、受信者に対して使用可能なキャンペーンがないことが決定された場合、キャンペーンを割り当てることなく、処理はブロック７９９に直接進む。ブロック７９９ではサブルーチン７００が終了し、呼び出しルーチンに戻る。
【００５９】
図８は、ルックアヘッド期間中のキャンペーンが考慮されるとき、受信者をキャンペーンに割り当てるのに適している代替キャンペーン割当サブルーチン８００を図示している。図示されているキャンペーン割当サブルーチン８００はブロック８１０で始まり、決定ブロック８０５に進む。ここで、プランニング期間およびルックアヘッド期間内に何らかのキャンペーンが受信者に対して使用可能か否かの決定がされる。１つ以上のキャンペーンが、プランニング期間およびルックアヘッド期間内に受信者に使用可能であることが決定される場合、処理はブロック８１０に進み、ここで、最高のキャンペーンスコアを有するキャンペーンが選択される。処理はそして決定ブロック８１５に進み、ここで、選択されたキャンペーンがプランニング期間内に使用可能か否か決定される。プランニング期間内に、選択されたキャンペーンが使用可能であると決定された場合、処理はブロック８２０に進み、ここで、受信者は選択されたキャンペーンに割り当てられる。処理はブロック８９９に進み、ここで、キャンペーン割当サブルーチン８００が終了し、呼び出しルーチンに戻る。しかしながら、決定ブロック８１５で、選択されたキャンペーンがプランニング期間内で使用可能でないということが決定される場合、そして、処理は（受信者を何らかのキャンペーンに割り当てることなく）ブロック８９９に直接進む。同様に、決定ブロック８０５で、プランニング期間中もしくはルックアヘッド期間中に、使用可能なキャンペーンがないということが決定された場合、処理は同様にブロック８９９に直接進む。
【００６０】
図９は、受信者をキャンペーンに割り当てるのに適している他の代替キャンペーン割当サブルーチン９００を図示しており、ルックアヘッド期間が考慮され、ルックアヘッド期間内のキャンペーンのキャンペーンスコアが重み付けされる場合に使用可能である。図示されたキャンペーン割当サブルーチンはブロック９０１で始まり、ブロック９０５に進む。ここで、受信者を割り当てることができる、すなわち、受信者が適格性を有する何らかのキャンペーンがプランニング期間中に使用可能であるか否か決定される。キャンペーンが使用可能であることが見いだされた場合、処理はブロック９１０に進む。ここで、受信者を割り当てることができる、プランニング期間に対して最高のスコアを有するキャンペーンが選択される。次に、決定ブロック９１５では、受信者を割り当てることができる、ルックアヘッド期間内の何らかのキャンペーンが、より高いキャンペーンスコアを有するか否か決定される。より高いキャンペーンスコアを有する、ルックアヘッド期間内のキャンペーンがある場合、処理はブロック９２０に進む。ここで、より良いすべての将来のキャンペーンが重み付けされる。
【００６１】
当業者は、非常に多くの重み付け方法を使用して、ルックアヘッド期間中の将来のキャンペーンスコア値を調整してもよいことを正しく認識するであろう。ある例示的な実施形態において、０から５のスコア記録範囲での重み付けは、ルックアヘッド期間が１０日であるとき、ルックアヘッド期間の初日から始まる一日当たりのポイントの半分のディスカウントを有する。したがって、最大スコア５を有するルックアヘッド期間の８日目におけるキャンペーンは、１[５−（８ｘ０．５）＝１]の重み付けされたスコアを有するであろう。この例は単に、例として提供されるものであり、制限すべきことを意味していない。
【００６２】
処理は決定ブロック９２５に進む。ここで、受信者を割り当てることができる、ベストの重み付けされた将来のキャンペーンが、選択されたキャンペーンよりもより良いか否か決定される。もし、そうでない場合、処理はブロック９３０に進む。ここで、受信者は選択されたキャンペーンに割り当てられる。決定ブロック９１５で、ルックアヘッド期間内でキャンペーンが見いだされなかった場合、処理はブロック９３０に進む。ブロック９３０の後、処理はブロック９９９に進む。ここで、サブルーチン９００が終了し、呼び出しルーチンに戻る。決定ブロック９２５で、ベストの重み付けされた将来のキャンペーンが、選択されたキャンペーンより良い場合、処理はブロック９９９に進む。決定ブロック９０５で、受信者を割り当てることができる使用可能なキャンペーンがプランニング期間中にない場合、処理はブロック９９９に進む。
【００６３】
図１０は、受信者をキャンペーンに割り当てるのに適している別の代替キャンペーン割当サブルーチン１０００を図示しており、ルックアヘッド期間が考慮され、ルックアヘッド期間内のキャンペーンのキャンペーンスコアが重み付けされ、インボックスデータ２７０のさらなるテストが実施される場合に使用可能である。図示されたキャンペーン割当サブルーチン１０００はブロック１００１で始まり、ブロック１００５に進む。ここで、受信者を割り当てることができる、すなわち受信者が適格性を有する何らかのキャンペーンがプランニング期間中に使用可能か否か決定される。キャンペーンがプランニング期間中に使用可能であることが見いだされた場合、処理はブロック１０１０に進む。ここで、プランニング期間中に最高のスコアを有するキャンペーンが選択される。次に、決定ブロック１０１５で、受信者を割り当てることができる、ルックアヘッド期間内の何らかのキャンペーンがより良いか否か、すなわち、より高いスコアを有するか否かが決定される。ルックアヘッド期間内により良いキャンペーンがある場合、処理はブロック１０２０に進む。ここで、より良い将来のキャンペーンが重み付けされる。図９に関して上述したように、非常に多くの重み付け方法を使用して、ルックアヘッド期間中の将来のキャンペーンスコア値を調整してもよいことを当業者は正しく認識するであろう。処理は決定ブロック１０２５に進む。ここで、ベストの重み付けされた将来のキャンペーンが、選択されたキャンペーンよりもより良いか否か決定される。もし、そうでなければ、処理はブロック１０３５に進む。ここで、受信者は選択されたキャンペーンに割り当てられる。（決定ブロック１０２５において）将来にベストの重み付けされたキャンペーンが、選択されたキャンペーンよりも良いことが決定されていた場合、処理は決定ブロック１０３０に進む。決定ブロック１０３０で、インボックスデータ２７０にしたがって受信者がメールを受信できる次の日付（インボックスマネージャー日付／期間すなわち「ＩＭ日付」）後に、将来にベストの重み付けされたキャンペーンが使用可能か否かの決定がなされる。もし、そうであれば、処理はブロック１０３５に進み、ここで、受信者は選択されたキャンペーンに割り当てられる。同様に、決定ブロック１０１５で、ルックアヘッド期間内のキャンペーンに、選択されたキャンペーンよりも良いものがない場合、処理はブロック１０３５に進む。ブロック１０３５後、処理はブロック１０９９に進み、ここで、サブルーチン１０００が終了し、呼び出しルーチンに戻る。決定ブロック１００５で、今日、使用可能なキャンペーンがない場合、処理はブロック１０９９に進む。しかしながら、将来に、ベストの重み付けされたキャンペーンがＩＭ日付に、もしくはＩＭ日付後に使用可能でない場合、そして、処理はブロック１０９９に直接進む。
【００６４】
当業者は、図７から１０の割当サブルーチンが、現行プランニング期間後であるプランニング期間に関係するキャンペーンに受信者を割り当てるのに使用されてもよいことも正しく認識するであろう。すなわち、受信者は、彼らのインボックスデータ２７０によって表されているように（すなわち、プランニング期間が次の使用可能な日付に設定される）、受信者がメッセージを受信するのに適格性を有する次の使用可能な日付に関係するキャンペーンに受信者を割り当ててもよい。受信者を将来のメッセージキャンペーンに割り当てる効果は、将来のキャンペーンに先立って生じる何らかのプランニング期間中でのキャンペーンへの割り当てに対する考慮から受信者を除くことである。
【００６５】
４．キャンペーンパフォーマンス
本発明の任意的キャンペーンは、これらのキャンペーンスコアもしくはキャンペーンパラメータの結果として、これらの存在の途中にステータスを変更してもよい。図１１は、任意的なキャンペーンに対する可能性ある状態を図示している状態図である。新規キャンペーン１１０１は、ちょうど登録されたキャンペーンである。したがって、図１１に示されているように、新規キャンペーン１１０１は進行して、次の３つの状態のうちの１つになることができる。
【００６６】
・テスト１１１０、キャンペーンが未だキャンペーンスコアを持たないが、現行プランニング期間中にキャンペーンを送信できることを示す日付パラメータを有する場合  
・アクティブ１１２０、キャンペーンが選択されたしきい値より上のキャンペーンスコアと、現行プランニング期間中にキャンペーンを送信できることを示す日付パラメータとを有する場合  
・インアクティブ１１４０、キャンペーンが現行プランニング期間中に送信されるべき適格性を有さない場合
【００６７】
キャンペーンは、一度、テスト１１１０の状態でキャンペーンスコアに対してテストされると、３つの状態のうちの１つに移る。
【００６８】
・拒否１１３０、キャンペーンのスコアが予め定められた受け入れ可能であるしきい値より低い場合  
・アクティブ１１２０、キャンペーンが、選択されたしきい値より上のキャンペーンスコアと、現行プランニング期間中にキャンペーンを送信できることを示す日付パラメータとを有している場合
・インアクティブ１１４０、現行プランニング期間中にキャンペーンが送信される適格性を有さない場合
【００６９】
アクティブキャンペーン１１２０は下記状態のうちの１つに変化することができる。
・拒否１１３０、キャンペーンの定期的なテストに基づいて、キャンペーンスコアが、予め定められた受け入れ可能なしきい値より下に落ちた場合  
・インアクティブ１１４０、現行プランニング期間中にキャンペーンが送信される適格性を有さない場合
【００７０】
インアクティブキャンペーン１１４０は下記状態に変化することができる。
・テスト１１１０、キャンペーンが、現行プランニング期間中、ターンオンされるのを待っていて、キャンペーンに対するスコアがまだ知られていない場合  
・アクティブ１１２０、キャンペーンが、選択されたしきい値より上のキャンペーンスコアと、現行プランニング期間中にキャンペーンを送信できることを示す日付パラメータとを有している場合
・削除１１９９、キャンペーンがもはや望まれないことが決定された場合
【００７１】
拒否キャンペーン１１３０は下記状態に変化することができる。
・テスト１１１０、再テストされるべきことの表示を（例えば、オペレータから）キャンペーンが受け取った場合  
・削除１１９９、キャンペーンがもはや望まれないことが決定された場合
【００７２】
本発明のキャンペーン送信システム１００における任意的キャンペーンに対するステータス変化についての上記説明から理解できるように、キャンペーンの異なるフェーズを取り扱うときに、オペレータの介入は、少し必要とされるかあるいはまったく必要とされない。キャンペーンが登録された後、キャンペーンスコアは（テストを通して、もしくは他の方法を通して）自動的に割り当てられる。キャンペーンメッセージは自動的にメッセージプランに入れられ、メッセージプランは自動的にメッセージを受信者に送信するために使用される。個々の受信者に対するキャンペーンメッセージは、受信者がある時間枠内に最も価値あるメッセージのみを受信するように制御される。キャンペーンパフォーマンスは監視され、キャンペーンメッセージを受信した後に受信者によって取られる動作に基づいてキャンペーンスコアは調整される。手動的にキャンペーンを調整するときを除いて、オペレータの介入は要求されない。
【００７３】
本発明の現在の好ましい実施形態を図示して説明してきたが、特許請求の範囲に規定される発明の範囲および精神を逸脱することなく、さまざまな変更が可能であることを理解するであろう。
【図面の簡単な説明】
【００７４】
【図１】図１は、本発明にしたがって、ｅメールメッセージを受信者デバイスに送信することを調整する、ネットワークに接続された多くのデバイスの描画図である。
【図２】図２は、メモリを含むデータサーバのブロック図である。
【図３】図３は、本発明にしたがった、メッセージキャンペーン登録する登録サーバによって実行される例示的なキャンペーン登録ルーチンを図示している機能フロー図である。
【図４】図４、は本発明での使用に適したキャンペーンスコアルーチンを図示している機能フロー図である。
【図５】図５は、図４での使用に適したメトリック処理サブルーチンを図示している機能フロー図である。
【図６】図６は、本発明での使用に適した販売促進キャンペーン送信ルーチンを図示している機能フロー図である。
【図７】図７は、図６での使用に適した代替キャンペーン割当サブルーチンを図示している機能フロー図である。
【図８】図８は、図６での使用に適した代替キャンペーン割当サブルーチンを図示している機能フロー図である。
【図９】図９は、図６での使用に適した代替キャンペーン割当サブルーチンを図示している機能フロー図である。
【図１０】図１０は、図６での使用に適した代替キャンペーン割当サブルーチンを図示している機能フロー図である。
【図１１】図１１は、本発明にしたがった、キャンペーンが有するかもしれない可能性ある状態を図示している状態図である。
【図１】
0004600392.tif 000002
【図２】
0004600392.tif 000003
【図３】
0004600392.tif 000004
【図４】
0004600392.tif 000005
【図５】
0004600392.tif 000006
【図６】
0004600392.tif 000007
【図７】
0004600392.tif 000008
【図８】
0004600392.tif 000009
【図９】
0004600392.tif 000010
【図１０】
0004600392.tif 000011
【図１１】
0004600392.tif 000012