【问题标题】:Spanning tree that minimizes a dynamic 'metric'最小化动态“度量”的生成树
【发布时间】:2012-01-20 21:27:38
【问题描述】:

让我们有一个图表。当我们删除一条边时,会创建 2 辆“汽车”,每辆汽车来自边的每个顶点。当这两辆车相遇时,它们会停下来。问题是创建一棵生成树,使通过每个顶点的汽车数量之和最小。

另外的困难是,如果一个顶点有 n 辆车经过,那么成本是 K^n 而不是 n*K。

一些想法。我们可以找到最短的无弦周期作为开始,但是这些无弦周期的位置,即它们是否相互接触,会改变度量,从而改变最短周期。

这不是最小生成树问题。我想解决这个问题,因为每辆车都代表一个变量,而生成树是计算优化问题的最有效方法。当来自同一边缘的 2 辆车相遇并停下时,我从优化中减少了一个变量。

编辑:

过程是这样的。我们删除了许多边以使图成为生成树。每条移除的边会创建 2 辆汽车,在被移除的边的每个顶点上都有一辆汽车,它们需要彼此相遇。我们为每辆双车固定一条路径。然后我们检查有多少汽车(从我们移除的所有边)通过每个顶点。如果从一个顶点通过的汽车数量为 n,则成本为 K^n,其中 K 是一个常数。然后我们将所有成本相加,这就是需要最小化的全局成本。

如果有什么不清楚的地方请告诉我。 https://mathoverflow.net/questions/86301/spanning-tree-that-minimizes-a-dynamic-metric

【问题讨论】:

  • 你对汽车数量的总和是多少?所有边都不在生成树中?
  • 图的所有顶点。我认为在平面图中解决它可能更容易,因为它的欧拉特性是 2,因此欧几里得 R2 嵌入中的每个面都必须创建这 2 辆汽车。在非平面图中,我们有比需要删除的循环更多的面。所以在非平面的情况下,你必须决定哪个面最适合创建这 2 辆车。
  • 您应该在唯一的网站mathoverflow.net/questions/86301/… 中发布您的问题
  • 只是为了检查:汽车不会立即开走,它们会等到只剩下最小生成树?这似乎很明显,但我花了一段时间才明白他们的路线是如何明确的。

标签: algorithm graph minimization spanning-tree


【解决方案1】:

这里有一个见解 - 汽车永远不会通过关节点,因此您可以将图表分解成块并分别求解每个块(最小总成本函数是每个块的最低成本的总和)。

要找到一个块的最低成本 - 您可以枚举该块的所有生成树并计算每个生成树的成本 - 一种蛮力方法,但它应该有效。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-04
    • 2013-02-07
    • 1970-01-01
    • 1970-01-01
    • 2017-04-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多