Complexidade de n-rainhas-conclusão?

27

O problema clássico de rainhas pergunta, dado um número inteiro positivo , se existe uma matriz de números inteiros que satisfazem as seguintes condições:n Q [ 1 .. n ]nnQ[1..n]

  • i1Q[i]n para todos osi
  • i jQ[i]Q[j] para todos osij
  • i jQ[i]iQ[j]j para todos osij
  • i jQ[i]+iQ[j]+j para todos osij

Cada número inteiro representa a posição de uma rainha do th linha de uma tabuleiro de xadrez; as restrições codificam o requisito de que nenhuma rainha ataca qualquer outra rainha. É fácil provar que não há soluções quando ou , e soluções de forma fechada são conhecidas por todos os outros valores de . Assim, como um problema de decisão , o problema das rainhas é completamente trivial.i n × n n = 2 n = 3 n nQ[i]in×nn=2n=3nn

O algoritmo de backtracking padrão para construir uma solução rainhas coloca especulativamente rainhas em um prefixo das linhas e determina recursivamente se existe um posicionamento legal de rainhas nas linhas restantes. O subproblema recursivo pode ser formalizado da seguinte maneira:n

  • Dado um número inteiro e uma matriz de números inteiros, é um prefixo de uma matriz que descreve uma solução para o problema das rainhas?P [ 1 .. k ] P Q [ 1 .. n ] nnP[1..k]PQ[1..n]n

Esse problema de decisão mais geral é difícil para o NP?

Sabe-se que várias questões próximas são difíceis de NP, incluindo a conclusão do quadrado latino [ Colbourn 1984 ], a conclusão do Sudoku [ Yato e Seta 2002 ] e uma generalização diferente de raens [ Martin 2007 ], mas essa questão específica parece ter escapado qualquer atenção séria.n

Questões relacionadas com cstheory.se:

Jeffε
fonte
2
Pergunto-me se as provas de completude NP existentes do Sudoku, a conclusão do quadrado latino (e muitos outros problemas similares) ... realmente lidam com representações sucintas / esparsas das instâncias (por exemplo, na prova do NPC Latin Square Completion, Colbourn diz "A associação ao NP é imediata", mas ele não menciona nenhum problema de codificação da instância).
Marzio De Biasi
1
@Marzio: essas provas são altamente dependentes da representação e (mesmo que isso geralmente não seja mencionado), muitas vezes nem é trivial estabelecer a associação ao NP, por exemplo, veja cstheory.stackexchange.com/a/5559/109
András Salamon

Respostas:

16

Levou anos, mas este post nos inspirou a escrever um artigo publicado hoje.

A resposta é que n Queens Completion é NP-Complete. No entanto, para divulgação completa, devemos mencionar que resolvemos uma pequena variante do problema. No nosso caso, o conjunto de rainhas não precisa ser um prefixo do conjunto completo. Portanto, tecnicamente, não resolvemos o problema exato solicitado aqui. No entanto, seria extremamente surpreendente se a versão do n Queens Completion dessa consulta também não fosse NP-Complete.

Quero repetir os agradecimentos que colocamos no artigo a Jeffε por levantar esta questão aqui.

A complexidade do n Queens Completion Journal of AI Research Gent, Jefferson, Nightingale doi: 10.1613 / jair.5512 http://www.jair.org/papers/paper5512.html

Ian Gent
fonte
Agradável. Parabéns!
Jeffε
n1n
6

(Isso aponta para alguns resultados relacionados. Inicialmente, pensei que os resultados relacionados são muito relacionados, mas não posso preencher as lacunas rapidamente, então talvez eles não sejam tão relacionados assim, afinal. Talvez ainda seja útil.)

O Exercício 118 na seção 7.2.2.2 de A Arte da Programação por Computador analisa um problema muito semelhante. Na solução, Knuth credita um artigo que, por sua vez, credita

[2]={0,1}

r,c[2]ma,b[2]2m1

x[2]m×mjxij=riixij=cjixi,si=asixi,d+i=bd+m1

Não está claro para mim como reduzir isso ao seu problema. Uma observação que pode ajudar é que a saída do seu problema também depende apenas das somas, e não do posicionamento exato das rainhas. (Veja o Teorema 2.4 em [Rivin, Uma Solução de Programação Dinâmica para o Problema do n-Queens, 1992], embora talvez seja fácil ver isso.)

Knuth prova que a TOMOGRAFIA DIGITAL BINÁRIA é NP-completa por uma redução do PROBLEMA DE CONTINGÊNCIA BINÁRIA. Este é um problema muito semelhante, exceto em 3 dimensões e sem diagonais.

xi,xj,xk[2]n×n

x[2]n×n×nixijk=xijkjxijk=xjikkxijk=xkij

O artigo de Gardnera et al. parece reduzir de problemas mais completos de NP padrão. Eu não entendo muito bem as reduções para explicá-las aqui, então deixarei as sugestões de cima para você explorar, se desejar.

Tudo isso pode ser inútil, a menos que alguém descubra como reduzir a TOMOGRAFIA BINÁRIA DIGITAL à pergunta que está sendo feita.

Radu GRIGore
fonte