CustomerSampleSize の設定

最適性を保ちながら Contact Optimization セッションの実行時間を最短にするように、CustomerSampleSize を正しく構成するには、いくつかの考慮事項があります。

CustomerSampleSize と「チャンク」

Contact Optimization は、推奨コンタクトをランダムに副サンプリングした「チャンク」という顧客群に分割します。単一スレッドを使用する場合、Contact Optimization はチャンクを一度に 1 つずつ処理します。一人の顧客に属するすべての推奨コンタクトおよびコンタクト履歴は、その顧客が属するチャンクに含まれるその顧客とともに処理されます。顧客は、1 つのチャンクにしか所属できません。ランダム顧客のセットに対してそれぞれチャンクが作成されます。最適化アルゴリズムの精度は、顧客のチャンクが統計上互いに類似しているかどうかに応じて決まります。チャンクのサイズを大きくすると、この要求が満たされる可能性が高まります。複数の顧客にまたがるキャパシティー上の制約は、複数のチャンクにわたって均等に配分されます。例えば、Contact Optimization セッションに、最大 1000 件のオファー A が許可されると指定した制約があるとします。Contact Optimization セッションを 10 個のチャンクで実行すると、それぞれのチャンクのキャパシティー・ルールでは、最大 100 件のオファー A が許可されます。

最大チャンク・サイズを設定するには、アルゴリズム調整変数 CustomerSampleSize を使用します。チャンクが大きいほど結果の精度は高まります。ただし、セッションの実行時間とメモリー・リソースも増大します。サイズが 10,000 件を超えるチャンクを使用するときは、注意深く計画してください。多くのシステムでは、一度に 10,000 件を超える顧客を処理するのに十分なメモリー・リソースがありません。メモリー・リソースが不足すると、Contact Optimization セッションの実行がメモリー不足エラーとなって失敗します。多くの場合、チャンク・サイズを大きくしてもソリューションの最適性を大きく向上させることがまったくない可能性もありますが、それでも実行にはより多くの時間とメモリーが必要です。最適性は、最適化済みコンタクト・テーブル (OCT) に存続しているトランザクションのスコアの合計として測定されます。CustomerSampleSize は、最適化に関する特定の問題とパフォーマンス上の必要性に基づいて調整しなければならない場合があります。

複数の顧客にまたがるキャパシティー・ルールが定義されていない単純な最適化シナリオでは、チャンク・サイズを大きくしても、それによるメリットはありません。

また、Contact Optimization は、チャンクを作成する際、チャンクごとに「各顧客用」と「カスタム・キャパシティー」のルールのセットも作成します。「各顧客用 (FEC)」ルールでは、「最小/最大」制約をそのまま使用します。一方、「カスタム・キャパシティー (CC)」ルールでは、「最小/最大」制約はチャンクの数で除算され、各チャンクに割り当てられます。これにより、特定の CC ルールで、各チャンクに対してほぼ同等の割り当て量または配分が作成されます。

CustomerSampleSize と複数の顧客にまたがるキャパシティー・ルール

複数の顧客にまたがるキャパシティー・ルールを使用する場面を理解するには、このルールが複数のチャンクにどのように適用されるかを理解しておく必要があります。チャネル E メールの最小を 20 に、最大を 1,000 に設定した単一の最小/最大オファー数キャパシティー・ルールの場合について考えてみましょう。顧客が 100,000 件、最大チャンク・サイズが 10,000 の場合、それぞれのチャンクは、最大を 100 に変更したルールを使用して処理されます。Contact Optimization は、ルールの最大値 (1,000) をチャンクの数 (10) で除算することにより、変更されたルールの最大値を計算します。

最大チャンク・サイズを小さくすると、より多くのチャンクが作成される可能性があります。このように設定すると、ルールが、チャンク数よりも少ない何らかの要素 (E メール・チャネルなど) に依存する可能性が高くなります。チャンク・サイズを 100 まで小さくすると、チャンク数は 1,000 になります。すると、ルールの最小がチャンク数よりも少なくなり、ルールは 0.02 (20 ÷ 1,000) に変更されます。この場合、2% のチャンクは最小 1 というルールを使用し、残り 98% のチャンクは最小 0 を使用します。チャネル E メールに関して、各チャンクが統計的に類似している場合、Contact Optimization は想定どおりにルールを処理します。チャンクの数よりも、E メールでオファーした顧客の数が少ない場合、問題が発生します。E メールでオファーを受け取る顧客が 500 件しかない場合、各チャンクには E メールでオファーを受け取る顧客が含まれる可能性が 50% しかないことになります。また、特定のチャンクに、E メールでオファーを受け取る顧客と、最小 1 というルールの両方がある確率は 1% しかありません。Contact Optimization は指定された最小である 20 を満たせず、平均で 5 しか戻しません。

チャンクの数は、チャンク・サイズと顧客の総数に応じて決まります。最大チャンク・サイズが 10,000 であるため、最適な結果を得るためには、重要な要素 (ルールで使用される項目) を持つ顧客の最小数が、顧客数を 10,000 で除算した数を下回ってはなりません。統計上の類似性を維持するために推奨コンタクト数を増やすとパフォーマンスが低下し、推奨コンタクトが増えるとプロセッサーの使用量も増えるのは事実です。チャンクが小さくなると処理が高速になるため、これらの使用量でより小さいチャンク・サイズを使用できる場合、この使用法は欠点を補って余りあるものになります。