私は optaplanner を使用して、ユーザーがアイテムのリスト (ショッピング カートなど) を購入するための最適な割引を計算するのに役立てたいと考えています。
これは良いアイデアのように聞こえますか?試した人いますか?どんな助けでも大歓迎です。
検討:
- 多数の異なるアイテムを購入したいユーザーがいます
この顧客には、次のような多数のプロモーション割引があります: パーセンテージ ディスカウントと、多数のアイテムで 1 つ購入するともう 1 つ無料
-
- 各割引は一部の商品にのみ適用される場合があります
- 各アイテムに適用できるプロモーションは 1 つだけです
- ただし、各プロモーションは複数のアイテムに適用される場合があります。複数の商品に同じ割引率が適用される場合があります
- 各プロモーションを異なる注文に適用すると、合計割引額が異なる場合があります
目標: 特定の順序で適用されたどのプロモーションがユーザーに最大の割引を提供するかを特定したいと考えています。
drools-expert (ブルート フォース オプションを考慮) と optaplanner の両方を調べました。optaplanner を使用すると、次のことができる方法がわかりません。
- プロモーションが複数のアイテムに適用される場合があることを考慮してください
- プロモーションから得られる割引は、適用時のバスケットの状態 (つまり、どのプロモーションが既に適用されているか) によって異なる場合があります。