我希望使用optaplanner来帮助计算购买商品列表(例如购物车)的用户的最佳折扣。
这听起来是个好主意吗?有试过吗?任何帮助都将不胜感激。
考虑:
目标:我想确定按一定顺序应用的促销将给用户提供最大的折扣。
我已经看过两种口水专家(考虑到蛮力选项)和视觉规划师。对于optaplanner,我不知道如何做以下工作:
发布于 2014-01-24 08:00:20
像这样的东西应该管用。它允许在多个项目上使用相同的促销。添加一个购买-3-获取-1所需的硬约束。
class ItemAssignment {
Item item;
@PlanningVariable(nullable = true, ...)
Promotion promotion;
}为只能使用一次的晋升添加一个严格的限制。添加一个软约束来激活一个需要购买3件物品的促销活动。我会在这个软约束下做一个insertLogical(新折扣),这样其他规则就可以变得足够聪明,以至于已经适用了哪些促销。
我有点怀疑元启发式是否是最好的方法,假设您的问题非常小。除非有人一次购买10件以上的物品,否则我认为蛮力(在光学规划师中实现)或分支绑定(尚未在optaplanner中实现)可能是一个更好的选择。
https://stackoverflow.com/questions/21307368
复制相似问题