具有运输成本的优化策略网店

数据挖掘 Python 优化
2022-02-22 09:53:57

在过去的几周里,我在不同的网站上搜集了几种产品的价格。这些价格被存储、绘制并每天通过电子邮件发送给我,其中包含有关价格变化的最新信息。现在我想把它提升到一个新的水平,并根据几种产品进行商店选择。

我想要的是挑选一些产品,并计算出购买这些产品的最佳商店,包括运费。

例如,我想在 X 和 Y 商店购买产品 A、B 和 C,价格如下(因此产品 A 在 X 商店的价格为 2,在 Y 商店的价格为 3):

   X Y
A  2 3
B  3 4
C  3 2

不考虑运费,我会在 X 店买 A 和 B,在 Y 店买 C。但是,如果 Y 店的运费太高,最好在 X 店买所有东西。复杂,如果商店 X 和 Y 的运费为 5,但 Y 在购买超过特定数量时是免费的,那么在 Y 购买所有东西可能更有利可图。

谁能指出我正确的方向如何解决这个问题?目前的想法是在三个商店中包含约 10 种产品。我虽然关于线性优化,但我不知道如何包括运输成本。

1个回答

我做了与您的问题相反的事情-我编写了代码来实现在其网站上运行的电子商务网站的运费。

运费规则几乎可以是完全任意的逻辑。在一般情况下,您别无选择,只能将它们实现为按订单评估的逻辑。这意味着您的优化器必须针对它考虑的每种购买组合运行该逻辑。这使得这是一个计划/组合问题。

这可能不是那么糟糕 - 例如,对于在 5 家商店购买 10 件商品,您有组合,即 9765625。这可以通过蛮力实现。510

对于较大的订单或更多的商店选择,您可能需要查看动态解决方案以优化成本,例如模拟退火、遗传算法。按订单运行的强化学习也可能有效。