n-皇后完成的复杂性?


27

在给定正整数,经典皇后问题询问是否存在满足以下条件的整数数组:n Q [ 1 .. n ]nnQ[1..n]

  • 1Q[i]n代表所有i
  • Q[i]Q[j]对所有ij
  • Q[i]iQ[j]j对于所有ij
  • Q[i]+iQ[j]+j对于所有ij

每个整数表示女王/王后在棋盘的第行上的位置;约束编码要求没有女王可以攻击其他女王。容易证明当或时没有解,并且对于n的所有其他值,已知闭式解。因此,作为决策问题,n皇后问题完全无关紧要。i n × n n = 2 n = 3 nQ[i]in×nn=2n=3nn

对于标准回溯算法构建一个n -queens解决方案推测皇后放置在行的前缀,然后递归地确定是否有在剩余行皇后的法律位置。递归子问题可以形式化如下:

  • 给定一个整数n和一个整数数组P[1..k]P是否是描述n皇后问题解决方案P的数组Q [1..n]的前缀?Q[1..n]n

这是更一般的决策问题吗?

几个附近的问题被认为是NP难的,包括拉丁方完成度[ Colbourn 1984 ],数独完成度[ Yato和Seta 2002 ]以及n -queens 的另一泛化[ Martin 2007 ],但是这个特定的问题似乎已经逃脱了任何认真的注意。

相关的cstheory.se问题:


2
我想知道数独的现有NP完整性证明,拉丁方完成度(以及大量其他类似问题)是否真的处理了实例的简洁/稀疏表示形式(例如,在拉丁方完成NPC证明,科本中说“ NP中的成员身份是即时的”,但他没有提及任何实例编码问题)。
Marzio De Biasi 2014年

1
@Marzio:这些证据都高度依赖于代表性,(即使这通常是没有提到),这往往是不平凡的,甚至建立成员NP,例如见cstheory.stackexchange.com/a/5559/109
安德拉斯萨拉蒙2014年

Answers:


16

花费了多年的时间,但这篇文章启发了我们写一篇今天发表的论文。

答案是n个皇后区完成是NP完成。但是,为了全面披露,我们需要解决该问题的一些细微变化。在我们的情况下,皇后集不必是完整集的前缀。因此,从技术上讲,我们尚未解决此处提出的确切问题。但是,如果来自此查询的n Queens Completion的版本也不是NP-Complete,那将非常令人惊讶。

我想重复我们在论文中对杰夫斯的感谢,因为他在这里提出了这个问题。

n皇后区完成度研究的复杂性根特研究中心,杰斐逊,夜莺doi:10.1613 / jair.5512 http://www.jair.org/papers/paper5512.html


真好 恭喜你!
杰夫斯(Jeffε)

我有一个幼稚的问题:在我看来,如果存在一个长度为的(正确)前缀,那么可以通过检查前缀的对角线(从而在线性时间内)来过渡到集。是这样,还是我想念什么?(我确实不知道帖子中的原始问题并不意味着前缀有n1n
Serg Rogovtsev

6

(这指向一些相关结果。我最初认为相关结果非常相关,但是我无法迅速填补空白,因此也许它们毕竟并没有那么相关。也许仍然有帮助。)

计算机编程艺术》第7.2.2.2节(草稿)中的练习118研究了一个非常相似的问题。在解决方案中,Knuth引用了一篇文章,而该文章又引用了

练习118证明二进制数字断层扫描是NP完全的。此问题的输入由线和对角线总和组成,所有和均来自。[2]={0,1}

输入:和r,c[2]ma,b[2]2m1

输出:是否存在,使得 和和和 x[2]m×mjxij=riixij=cjixi,si=asixi,d+i=bd+m1

我不清楚如何解决这个问题。一种可能有用的观察结果是,问题的输出也仅取决于总和,而不取决于皇后的确切位置。(请参阅[Rivin,n皇后问题的动态编程解决方案, 1992年]中的定理2.4 ,尽管也许这很容易看到。)

Knuth通过减少二进制偶发问题来证明二进制数字断层扫描是NP完全的。这是一个非常相似的问题,除了3维且没有对角线。

输入:xi,xj,xk[2]n×n

输出:是否存在使得 和和 Σ X Ĵ ķ = X Ĵ ķ Σ Ĵ X Ĵ ķ = X Ĵ ķ Σ ķ X Ĵ ķ = X ķ Ĵx[2]n×n×nixijk=xijkjxijk=xjikkxijk=xkij

Gardnera等人的文章。似乎可以减少更多标准的NP完全问题。我对任何一种还原都不太理解,因此在这里不作解释,所以如果您愿意,我只会把指针从上面留给您探索。

除非有人弄清楚如何将“二进制数字断层摄影”简化为所要提出的问题,否则这可能都是无用的。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.