次の方法で共有


重複割引の最適な組み合わせを決定する

この記事では、Microsoft Dynamics 365 Commerce で重複割引の最適な組み合わせを決定する方法について説明します。

割引が重複している場合は、最小トランザクションの合計または最上位の割引合計の重複割引の組み合わせを決定する必要があります。 一般的な「Buy 1、get X %off」(BOGO) 小売割引のように、購入する製品の価格に応じて割引額が異なる場合、このプロセスは組合せ最適化の問題になります。

この記事は、Microsoft Dynamics AX 2012 R3 の KB 3105973 (2015 年 11 月 2 日リリース) もしくはそれ以降、および Dynamics 365 Commerce に適用されます。 適時に適用する重複割引の組み合わせを決定するために、重複割引を適用する方法を導入しました。 この新しいメソッドを 基準金額の値のランキング と呼んでいます。 基準金額の値のランキング メソッドでは、重複する各ディスカウントについて、共有された製品のディスカウント値を使用して値が計算されます。 重複割引は、最も高い相対値から最も低い相対値に適用されます。 新しい方法の詳細については、この記事後半の 基準金額の値のランキング メソッド セクションを参照してください。 基準金額の値のランキングは、ある商品の割引額がその取引の他の商品の影響を受けない場合は使用されません。 たとえば、この方法は、2 つの単純割引、または単純割引および 1 つの製品数量割引には使用されません。

割引の例

共通の製品群に対して無制限の割引を作成することができます。 ただし、制限がないため、さまざまな製品で使用する割引を計算しようとすると、パフォーマンスの問題が発生する可能性があります。 次の例は、この問題をより詳細に説明しています。 例 1 では、2 つの製品と重複した 2 つの割引から始めます。 次に、例 2 では、製品が追加されるにつれて問題がどのように展開するかを示します。

例 1: 2 つの製品と 2 つの割引

この例では、各割引の資格を得るために 2 つの製品が必要で、割引を組み合わせることはできません。 この例の割引は、最良価格 割引です。 どちらの製品も両方の割引の対象となります。 ここに 2 つの割引があります。

2 つの最良価格割引の例

いずれの 2 つの製品についても、これらの 2 つの割引のうち、より良いものは 2 つの製品の価格によって異なります。 両方の製品の価格が等しいかほぼ同じであれば、割引 1 がより良いといえます。 1 つの製品の価格が他の製品の価格よりも大幅に低い場合、割引 2 がより良いといえます。 これらの 2 つの割引を相互に評価するための数学的ルールは次のとおりです。

割引を評価する際のルール

メモ

製品 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 つでトランザクションに適用されます: 割引 1 の 2 つのアプリケーション、割引 2 の 2 つのアプリケーション、または割引 1 の 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 つの割引に対して 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%) は赤で強調表示されます。

両割引に対する 2 つの製品組み合わせすべてにおける有効な割引率

メモ

価格が変動し、2 つ以上の割引が競合する場合、割引の最良の組み合わせを保証する唯一の方法は、両方の割引を評価し、それらを比較することです。

すべての可能な組み合わせ

このセクションでは、前のセクションの例を続けます。 より多くの商品や割引を追加し、いくつの組み合わせを計算して比較する必要があるかを確認します。 次の表は、製品数量が増加するにつれて可能な割引組み合わせの数を示しています。 この表は、上記の例のように 2 つの重複する割引がある場合と、3 つの重複する割引がある場合の両方を示しています。 すぐに評価する必要がある有効な割引の組み合わせの数は、高速コンピュータであっても、小売取引で受け入れられるように迅速に計算して比較できるものを超えています。

製品数量が増加するにつれて、可能な割引組み合わせの数を示しています。

さらに数量が多くなったり、より重複した割引が適用される場合、可能な割引組み合わせの総数はすぐに数百万から数十億にもなり、可能な限り最良の組み合わせを迅速に評価して選択するために必要な時間が顕著になります。 価格エンジンでは、いくつかの最適化が行われ、評価する必要がある組み合わせの総数が削減されています。 ただし、重複割引の数とトランザクションの数量には制限がないため、重複した割引がある場合は常に多数の組み合わせを評価する必要があります。 この問題は、基準金額の値のランキングが取り組む問題といえます。

基準金額の値のランキング メソッド

評価されるべき指数関数的に増加する組み合わせの問題を修正するために、2 つ以上の割引を適用できる製品セットの各割引の共有製品あたりの価値を計算する最適化が存在します。 この値を、共有製品の割引の 基準金額の値 と呼びます。 基準金額の値は、共有製品が各割引に含まれる場合、合計割引額における製品増加の平均といえます。 基準金額の値は、合計割引額 (DTotal) をとり、共有製品なしの割引額 (DMinus) を差し引き、その差を共有製品数 (ItemsShared) で割ることによって計算されます。

基準金額の計算式

共有製品郡における各割引の基準金額の値が計算された後、割引は最大限の基準金額の値から最低限の基準金額の値まで、徹底して順番に共有製品に適用されます。 この方法では、1 回の割引インスタンスが適用されるたびに、残りのすべての割引可能性が比較されることはありません。 その代わりに、重複割引は 1 回比較され、その後順番に適用されます。 追加の比較は行われません。 可能な組み合わせの総数が事前に定義されたしきい値を超えた場合に、基準金額の値のランキングの計算が自動的に開始されます。 合計割引を計算するための許容可能な時間は、小売業によって異なります。 ただし、この時間は、一般に、数 10 ミリ秒から 1 秒の範囲内に入ります。