【发布时间】:2013-10-27 16:05:31
【问题描述】:
重述Comparing multiple price options for many customers algorithmically,几乎没有那么多废话。
我们有 1,000,000 名客户。 每种商品的销售成本可以表示为价格 A 或价格 B。
价格 A
价格 A 和价格 B 彼此之间不是线性关系。在某些情况下,B 是 2 倍,在某些情况下是 100 倍。
A 上所有客户的成本是
min( (sum(A)/count(A)) , 100 ) * count(A)
实际上,如果 A 上所有客户的平均成本小于 100,则将四舍五入到 100。
B没有这样的限制。
我想在他们的商品上花最少的钱。
如何最大化
cost=min( (sum(A)/count(A)) , 100 ) * count(A) + sum(B)
我一直认为这是双背包问题的一种形式,但我无法正确解决......
我很可能会在 Python 中解决这个问题,尽管我怀疑这很重要。
我已经通过为 x y z 分配分数并基于此进行过滤来进行手动分析,我对更多的计算解决方案感兴趣。
有什么推荐的方法吗?
【问题讨论】:
-
原地编辑并关闭。
标签: python algorithm optimization statistics branch-and-bound