每当销售人员到达新城市时,如何通过改变成本来解决“旅行销售人员问题”

时间:2019-12-22 06:38:16

标签: graph graph-algorithm traveling-salesman

让我们说,除了寻找最短的路径外,我们还必须在以下约束下最大化销售人员一年的利润。

  1. 推销员只能在周末去一个不同的城市,一周中的所有工作日他都会在同一个城市出售
  2. 推销员的燃料有限,因此他只能参观半径300(或任何其他恒定)英里范围内的城市
  3. 每次销售员前往不同的城市时,都会根据每个城市的需求和供应为每个城市获取其库存的新价格。为简单起见,您可以假设您已预先确定每个城市的价格。即您有Nx52矩阵,其中 N 是城市数。价格越高,利润就越大。

为进一步简化,我们可以假设Graph( G )将包含 N 个节点,并且每个节点都指向300英里半径内的所有城市。

class GraphNode:
    def __init__(self, locID, prices, close_locations)
        self.locID = locID
        self.prices = prices #List of prices in 52 weeks
        self.close_locations = close_locations #List of locations in 300 mile radius

如何解决此问题。我找不到任何资源来开始解决这个问题。 这是一个类似的问题,但是到目前为止,我可以找到一个相似之处: What is the name for this special case of the Travelling Salesman involving dynamic edge costs?

0 个答案:

没有答案