【问题标题】:Tile Trial NP-hard complexityTile Trial NP-hard 复杂度
【发布时间】:2015-11-10 17:20:48
【问题描述】:

在最终幻想 XIII-3 游戏中,玩家会遇到几个谜题。引入的第一个谜题称为Tile Trial,它向玩家展示了一个瓷砖网格,其中一些上面有水晶。目标是取回所有水晶并到达出口,同时在每个瓷砖上踩踏不超过一次。

http://arxiv.org/pdf/1203.1633v1.pdf 的作者表示,这个问题是 NP-Hard,因为可以将特定情况简化为哈密顿循环。我发现这是一个幼稚的假设,因为他开发了一个特定的谜题,虽然符合游戏规则,但恰好涉及哈密顿循环。

看一般情况:我们可以将拼图的每个图块建模为图中的一个顶点。如果两个瓦片相邻,则一个顶点与另一个顶点有一条边。问题在于找到从起始图块到结束图块的路径,同时遍历所有具有晶体的顶点并且不多次访问任何顶点。

我相信这可以简化为 TSP(旅行商问题),我们只需要访问一部分城市。假设有 n 个城市的常规 TSP 问题。然而,在这个特定的问题中,我们不必访问所有 n 个城市,只需访问其中的一个特定子集 m,其中 m。 n 中而不是 m 中的城市不需要访问,但如果路径 m1->m2 大于m1->n1->m2 例如。

但是,这个“更简单”的 TSP 问题仍然是 NP 难题吗?任何人都知道可以用作约简的更好的 NP-hard 问题吗?

【问题讨论】:

  • 他没有证明 Tile Trial 的具体案例可以简化为寻找哈密顿循环;他证明了寻找哈密顿循环的一般问题可以简化为 Tile Trial 的特定情况。这是证明 NP 硬度的一种完全有效的方法。
  • 你试图减少错误的方法。
  • 这是一个有趣的问题,在计算机科学 stackexchange 上似乎更合适
  • 我明白了。因此,如果我有一个已证明的 NP 问题 X,通过证明如果我的未知复杂性问题至少有一个案例涉及 X,那么这个未知问题至少是像 X 一样硬(这是 NP)。对吗?
  • @G.Zuin "involves" 有点模糊,特别是你应该表明解决你的问题意味着你可以找到一些已知难题的解决方案,这意味着解决你的问题可以总的来说并不容易

标签: graph-theory traveling-salesman np np-hard


【解决方案1】:

将此问题简化为 TSP 并不会证明任何有趣的事情。在这里,我会告诉你。

考虑问题SUMS-TO-TWELVE,即确定一组特定数字相加后是否为12 的问题。我决定将其简化为 TSP,如下所示:创建一个由节点链组成的图,边的数量与输入集中的数字一样多,并且每条边的成本等于输入集中的相应数字。最后,从第一个节点到最后一个节点添加一条额外的边,成本为零。如果 TSP 的解的成本为 12,则序列通过SUMS-TO-TWELVE

这是一种非常愚蠢的方法来查看数字是否加到十二。我还没有证明SUMS-TO-TWELVEhard,我已经证明它是easy,或者至少和 NP 问题一样简单——也就是说,它是“在NP中”。但我们不倾向于使用归约来证明问题存在于 NP 中,因为在非确定性图灵机上给出解决问题的算法更容易。

因此,您经常会看到一些论文采用一些奇特的问题并降低 3SAT 或 TSP 或其他任何内容。您很少看到将奇异问题简化为其他问题的论文。这不是一件有用的事情。

【讨论】:

  • 我明白了。因此,如果我想证明这个问题的 NP-hardness,我应该尝试将 TSP 降低到它。一种方法是展示一个 TSP 减少问题的实例,就像作者对哈密顿循环所做的那样。谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-01-06
  • 2011-07-06
  • 2014-01-23
  • 2012-10-23
  • 2011-04-18
  • 1970-01-01
  • 2018-05-29
相关资源
最近更新 更多