Festlegen von CustomerSampleSize
Um die bestmögliche Ausführung von Optimize zu erreichen und gleichzeitig die Optimalität zu erhalten, muss die Konfiguration von CustomerSampleSize sorgfältig bedacht werden.
CustomerSampleSize und "Datenblöcke"
Optimize unterteilt die vorgeschlagenen Kontakte in zufällige Teilkundenstichproben, die als "Datenblöcke" bezeichnet werden. Alle vorgeschlagenen Kontakte und der Kontaktverlauf eines bestimmten Kunden werden mit dem Kunden in dem Datenblock verarbeitet, zu dem der Kunde gehört. Ein Kunde kann nur zu einem einzelnen Datenblock gehören. Um die Genauigkeit des Optimierungsalgorithmus zu gewährleisten, müssen diese Kundendatenblöcke statistisch ähnlich sein. Je größer ein Datenblock, desto höher die Wahrscheinlichkeit, dass diese Anforderung erfüllt wird. Kundenübergreifende Kapazitätsbedingungen werden gleichmäßig über die Datenblöcke verteilt. Angenommen, Ihre Optimize-Sitzung enthält die Bedingung, dass maximal 1000 Angebote des Typs A zulässig sind. Wenn die Optimize-Sitzung mit 10 Datenblöcken ausgeführt wird, enthält jeder dieser Datenblöcke eine Kapazitätsregel, die maximal 100 Angebote des Typs A zulässt.
Mit der Variable CustomerSampleSize für die Optimierung des Algorithmus legen Sie die maximale Datenblockgröße fest. Je größer der Datenblock, desto genauer sind die Ergebnisse. Jedoch nehmen dann auch die Ausführungszeit der Sitzung und die erforderlichen Speicherressourcen zu. Verwenden Sie keine Datenblockgrößen von mehr als 10.000, ohne dies sorgfältig zu planen. Auf vielen Systemen sind nicht ausreichend Speicherressourcen verfügbar, um mehr als 10.000 Kunden gleichzeitig zu verarbeiten. Der fehlende Speicherplatz führt dazu, dass die Ausführung der Optimize-Sitzung fehlschlägt und ein Speicherfehler ausgegeben wird. In vielen Fällen führen größere Datenblöcke nicht zu einer wesentlich höheren Optimalität der Lösung, während sie aber mehr Zeit und Arbeitsspeicher für die Ausführung beanspruchen. Die Optimalität wird als Summe der Bewertungen der verbleibenden Transaktionen in der Tabelle der optimierten Kontakte gemessen. Die Variable CustomerSampleSize muss eventuell an Ihre spezifischen Optimierungs- und Leistungserfordernisse angepasst werden.
In einem einfachen Optimierungsszenario ohne kundenübergreifende Kapazitätsregeln bieten größere Datenblöcke keine zusätzlichen Vorteile.
CustomerSampleSize und kundenübergreifende Kapazitätsregeln
Zum Verständnis der Fälle, in denen kundenübergreifende Kapazitätsregeln verwendet werden, müssen Sie wissen, wie diese Regeln auf mehrere Datenblöcke angewendet werden. Angenommen, Sie haben eine einzelne Kapazitätsregel des Typs "Min./max. Anz. Angebote", bei der für den Kanal "E-Mail" das Minimum auf 20 und das Maximum auf 1.000 festgelegt ist. Bei 100.000 Kunden und einer maximalen Datenblockgröße von 10.000 wird jeder Datenblock mit einer modifizierten Regel verarbeitet, deren Maximum 100 beträgt. Optimize berechnet den Maximalwert der modifizierten Regel, indem es den Maximalwert der Regel (1.000) durch die Anzahl der Datenblöcke (10) dividiert.
Bei einer kleineren maximalen Datenblockgröße werden möglicherweise mehr Datenblöcke erstellt. Durch diese Einstellung steigt die Wahrscheinlichkeit, dass eine Regel von einem Element abhängt (etwa vom Kanal "E-Mail"), das kleiner ist als die Anzahl der Datenblöcke. Wenn die Datenblockgröße auf 100 reduziert wird, entstehen 1.000 Datenblöcke. Nun ist das Minimum der Regel kleiner als die Anzahl der Datenblöcke, weshalb die modifizierte Regel 0,02 lautet (20 geteilt durch 1.000). In diesem Fall verwenden 2 % der Datenblöcke eine Regel mit dem Minimum 1 und die anderen 98 % der Datenblöcke eine Regel mit dem Minimum 0. Solange jeder Datenblock hinsichtlich des Kanals "E-Mail" statistisch gleich ist, verarbeitet Optimize die Regel wie erwartet. Ein Problem tritt auf, wenn die als E-Mail-Empfänger vorgesehenen Kunden weniger sind als die Anzahl der Datenblöcke. Wenn nur 500 Kunden E-Mails erhalten sollen, besteht bei jedem Datenblock nur eine Wahrscheinlichkeit von 50 %, dass dieser Datenblock einen solchen Kunden enthält. Auch beträgt die Wahrscheinlichkeit, dass ein Datenblock einen E-Mail-Empfänger und eine Regel mit dem Minimum 1 enthält, lediglich 1 %. Anstatt das angegebene Minimum von 20 zu erfüllen, gibt Optimize durchschnittlich nur 5 zurück.
Die Anzahl der Datenblöcke richtet sich nach der Datenblockgröße und der Gesamtanzahl der Kunden. Da als maximale Datenblockgröße 10.000 empfohlen wird, werden optimale Ergebnisse nur dann erzielt, wenn die Mindestanzahl an Kunden mit einem signifikanten Element (das in einer Regel verwendet wird) nicht kleiner ist als die Anzahl der Kunden geteilt durch 10.000. Es scheint, dass eine höhere Anzahl vorgeschlagener Kontakte zur Beibehaltung der statistischen Ähnlichkeit die Leistung beeinträchtigt, und tatsächlich führen mehr vorgeschlagene Kontakte zu einer höheren Prozessorauslastung. Dieser Nachteil wird jedoch ausgeglichen, wenn kleinere Datenblöcke verwendet werden können, da sich diese schneller verarbeiten lassen.