Note
Dynamics 365 Commerce による Retail Interest Group は Yammer から Viva Engage に移行しました。 新しい Viva Engage コミュニティにアクセスできない場合は、このフォーム (https://aka.ms/JoinD365commerceVivaEngageCommunity) に入力して追加し、最新のディスカッションに参加してください。
この記事では、Microsoft Dynamics 365 Commerce で重複する割引の最適な組み合わせを判断する方法について説明します。
割引が重複する場合は、トランザクションの合計が最も低いか、最大の合計割引が生成される重複する割引の組み合わせを決定する必要があります。 一般的な "Buy One, get one X percent off" (BOGO) 小売割引など、顧客が購入する製品の価格に応じて割引額が異なる場合、このプロセスは組み合わせ最適化の問題になります。
この記事は、KB 3105973 (2015 年 11 月 2 日リリース) 以降の Microsoft Dynamics AX 2012 R3 およびDynamics 365 Commerceに適用されます。 重複する割引をタイムリーに適用する組み合わせを決定するために、製品チームは重複する割引を適用する方法を導入しました。 このメソッドは 、限界値ランク付けと呼ばれます。 基準金額の値のランキング メソッドでは、重複する各ディスカウントについて、共有された製品のディスカウント値を使用して値が計算されます。 重複割引は、最も高い相対値から最も低い相対値に適用されます。 新しい方法の詳細については、この記事後半の 基準金額の値のランキング メソッド セクションを参照してください。 基準金額の値のランキングは、ある商品の割引額がその取引の他の商品の影響を受けない場合は使用されません。 たとえば、この方法は、2 つの単純割引、または単純割引および 1 つの製品数量割引には使用されません。
割引の例
共通の製品群に対して無制限の割引を作成することができます。 ただし、制限がないため、さまざまな製品で使用する割引を計算しようとすると、パフォーマンスの問題が発生する可能性があります。 次の例では、この問題について詳しく説明します。 例 1 では、2 つの製品と 2 つの重複する割引から始めます。 次に、例 2 では、製品を追加する際に問題がどのように進化するかを示します。
例 1: 2 つの製品と 2 つの割引
この例では、各割引の資格を得るために 2 つの製品が必要で、割引を組み合わせることはできません。 この例の割引は、最良価格 割引です。 どちらの製品も両方の割引の対象となります。 ここに 2 つの割引があります。
いずれの 2 つの製品についても、これらの 2 つの割引のうち、より良いものは 2 つの製品の価格によって異なります。 両方の製品の価格が等しいかほぼ同じであれば、割引 1 がより良いといえます。 1 つの製品の価格が他の製品の価格よりも大幅に低い場合、割引 2 がより良いといえます。 これらの 2 つの割引を相互に評価するための数学的ルールは次のとおりです。
Note
製品 1 の価格が製品 2 の価格の 3 分の 2 に等しい場合、2 つの割引は同等です。 この例では、割引率 1 の有効割引率は数パーセント (2 つの製品の価格が離れている場合) から最大 25 パーセント (2 つの製品が同じ価格の場合) まで変化します。 割引 2 の有効割引率は固定されています。 それは常に 20 % です。 割引 1 の有効割引率は、割引率 2 以上であるか、またはそれ未満である可能性があるので、割り引かれなければならない 2 つの製品の価格によって最適な割引が異なります。 この例では、2 つの製品に 2 つの割引のみが適用されるため、計算が迅速に完了します。 可能な組み合わせは 2 つしかありません: 割引 1 のアプリケーションまたは割引 2 のアプリケーションです。 計算する順列はありません。 各割引の価値は両方の製品を使用して計算され、最適な割引が使用されます。
例 2: 4 つの製品と 2 つの割引
次に、4 つの製品と同じ 2 つの割引を使用します。 4 つの製品は両方とも割引の対象となります。 12 の可能な組み合わせがあります。 最後に、2 つの割引が 3 つの組み合わせのいずれかでトランザクションに適用されます。割引 1 の 2 つのアプリケーション、割引 2 の 2 つのアプリケーション、または割引 1 の適用と割引 2 の 1 つの適用。 考えられる組み合わせを説明するには、価格が異なる 4 つの製品の 2 つの異なるセットを見てください。
- 4 つの製品はすべて同じ価格、$15.00 です。 この場合、最高の割引組み合わせは割引 1 の 2 つのアプリケーションです。 2 つの製品は完全な価格で、2 つの製品は 50% オフです。 トランザクションの合計割引額は $ 45 (15 + 15 + 7.50 + 7.50) で、割引前の合計 $ 60 から $ 15 (25%) を差し引いたものです。 割引 2 はわずか $12 (20%) です。
- 2 つの製品はそれぞれ $20 であり、1 つの製品は $15、および 1 つの製品は $5 です。 この場合、最良の割引組み合わせは、割引 2 の 1 つのアプリケーションおよび割引 1 の 1 つのアプリケーションです。 次の表は、割引を示しています。
表を読み取るには、行の 1 つの製品と列の 1 つの製品を使用します。 たとえば、割引 1 の表では、2 つの $20 の製品を組み合わせると、$10 の割引が得られます。 たとえば、割引 2 の表では、$15 の製品と $5 の製品を組み合わせると、$4 の割引が得られます。
まず、いずれかの割引を使用して、任意の 2 つの製品から利用できる最大の割引を見つけます。 2 つの表は、2 つの製品のすべての組み合わせの割引金額を表示します。 テーブルの網掛けされた部分は、製品が自身とペアリングされているために行えないケースや、2つの製品を逆にペアリングすることで同じ割引額が適用され、無視できるケースを表しています。 表を見ると、2 つの $20 品目の割引 1 が、 4 つの製品すべてのいずれかの割引に使用できる最大割引であることがわかります。 (この割引は、最初の表では緑色で強調表示されています)。この条件では、$15 製品と $5 製品のみが残されます。 2 つの表を再度見ると、これらの 2 つの製品について、割引 1 は $2.50 の割引を、割引 2 は $4 の割引を提供することがわかります。 したがって、割引 2 を選択します。 合計割引は $14 です。 この説明をより簡単に視覚化するために、割引 1 と割引 2 の両方で可能な 2 つの製品の組み合わせすべての有効な割引率を示すさらに 2 つのテーブルを示します。 これらの 2 つの割引については、2 つの製品が割引に入れられる順序は重要ではないため、組合せリストの半分のみが含まれます。 最も高い有効割引率 (25%) は緑で強調表示され、最も低い有効割引率 (10%) は赤で強調表示されます。
Note
価格が変動し、2 つ以上の割引が競合する場合、割引の最良の組み合わせを保証する唯一の方法は、両方の割引を評価し、それらを比較することです。
すべての可能な組み合わせ
このセクションでは、前のセクションの例を続けます。 さらに製品と別の割引を追加し、計算して比較する必要がある組み合わせの数を確認します。 次の表は、製品数量が増加するにつれて可能な割引組み合わせの数を示しています。 この表は、上記の例のように 2 つの重複する割引がある場合と、3 つの重複する割引がある場合の両方を示しています。 すぐに評価する必要がある割引の組み合わせの数は、高速コンピューターでも、小売トランザクションで許容できるほど迅速に計算および比較できる数を超えています。
さらに多くの重複する割引が適用されている場合、可能な割引の組み合わせの合計数は数百万、さらには数十億にすぐに入り、可能な限り最適な組み合わせを評価して選択するために必要な時間がすぐに顕著になります。 一部の最適化は、評価する必要がある組み合わせの合計数を減らすために、価格エンジンで行われます。 ただし、重複する割引の数とトランザクションの数量は制限されないため、重複する割引がある場合は常に多数の組み合わせが評価されます。 この問題は、限界値のランク付け方法が対処する方法です。
基準金額の値のランキング メソッド
評価する組み合わせの数が指数関数的に増加する問題に対処するには、最適化を使用して、2 つ以上の割引を適用できる製品のセットに対する各割引の共有製品ごとの値を計算します。 この値は、共有製品の割引の 限界値 です。 基準金額の値は、共有製品が各割引に含まれる場合、合計割引額における製品増加の平均といえます。 合計割引額 (D合計) を取り、共有製品のない割引額 (D- 共有) を減算し、その差を共有製品の数 (共有アイテム) で割って、限界値を計算します。
共有された一連の製品に対する各割引の限界値を計算した後、最も高い限界値から最も低い限界値まで、完全に共有製品に割引を適用します。 この方法では、割引の 1 つのインスタンスが適用された後に毎回、残りの割引の可能性をすべて比較しないでください。 代わりに、重複する割引を 1 回比較し、順番に適用します。 追加の比較は行われません。 可能な組み合わせの総数が事前に定義されたしきい値を超えた場合に、基準金額の値のランキングの計算が自動的に開始されます。 合計割引を計算するための許容可能な時間は、小売業によって異なります。 ただし、この時間は、一般に、数 10 ミリ秒から 1 秒の範囲内に入ります。