平铺试验NP难度复杂

时间:2015-11-10 17:20:49

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

在最终幻想XIII-3游戏中,玩家会看到几个谜题。引入的第一个谜题叫做 Tile Trial ,它为玩家提供了一块瓷砖网格,其中一些瓷砖上有水晶。目标是检索所有晶体并到达出口,同时踩踏每个瓷砖不超过一次。

http://arxiv.org/pdf/1203.1633v1.pdf的作者说这个问题是NP-Hard,因为一个特定的案例可以简化为汉密尔顿循环。我发现这是一个天真的假设,因为他开发了一个特定的谜题,虽然适合游戏规则,但恰好涉及汉密尔顿循环。

查看一般情况:我们可以将拼图的每个图块建模为图形中的顶点。如果两个图块相邻,则顶点具有到另一个顶点的边。问题在于找到从起始区块到结束区块的路径,同时横穿所有具有晶体的顶点而不是多次访问任何顶点。

我相信这可以简化为TSP(旅行商问题),我们只需要访问一部分城市。假设 n 城市的常规TSP问题。但是,在此特定问题中,我们不必访问所有 n 城市,只需访问其中的特定子集 m ,其中 m&lt; = n < / em>的。不需要访问 n 但不在 m 中的城市,但如果路径 m1-> m2 更大,则它们可能会更大例如, m1-> n1-> m2

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

1 个答案:

答案 0 :(得分:2)

将此问题减少到TSP并不会有任何问题。在这里,我会告诉你。

考虑问题SUMS-TO-TWELVE,这是确定一组特定数字在总结时是否产生12的问题。我决定将其减少到TSP,如下所示:创建一个由一系列节点组成的图形,其边数与输入集中的数字一样多,并且每条边的成本等于输入集中的相应数字。最后,从第一个节点到最后一个节点添加一个额外的边,成本为零。如果TSP的解决方案成本为12,那么序列将通过SUMS-TO-TWELVE

这是一种非常愚蠢的方式来查看数字是否增加到12。我没有证明SUMS-TO-TWELVE 很难,我已经证明它简单,或者至少,就像NP问题一样容易 - 也就是说,这是“在NP”。但是我们不倾向于使用约简来证明问题出现在NP中,因为更容易提供一种算法来解决非确定性图灵机上的问题。

所以你经常会看到那些带有一些奇特问题并减少3SAT或TSP或其他任何问题的论文。你很少看到将异国情调问题减少到其他东西的论文。这不是一件有用的事情。