A dureza salta na complexidade computacional?

34

O problema da largura de banda mínima é encontrar uma ordem dos nós do gráfico na linha inteira que minimiza a maior distância entre dois nós adjacentes. Uma lagarta é uma árvore formada a partir do caminho principal por meio de caminhos de comprimento separados por arestas, no máximo partir de seus nós ( é chamado comprimento do cabelo). O problema da largura de banda mínima está em para 2 lagartas, mas é completo para 3 lagartas.kkkPNP

Aqui está um fato muito interessante: o problema da largura de banda mínima é solucionável em tempo polinomial para 1 lagartas (comprimento do cabelo no máximo uma), mas é completo para 1 lagartas cíclicas (na lagarta cíclica, uma borda é adicionada para conectar os pontos finais do caminho principal). Portanto, a adição de exatamente uma aresta torna o problema completo.NPNP

Qual é o exemplo mais impressionante de salto de dureza do problema, em que uma pequena variação da instância de entrada causa um salto de complexidade, da solvabilidade no tempo polinomial para a complexidade do ?NP

Mohammad Al-Turkistany
fonte
6
Permanente vs Determinante. Esses são dois problemas diferentes (então eu acho que não se qualificam como resposta), mas o salto na dureza é bastante impressionante.
Jagadish
@Jadadish, eu concordo. Ainda assim, acho que você pode publicá-lo como resposta.
Mohammad Al-Turkistany
8
Permanente de uma matriz 0-1 pode ser visto como o valor esperado do determinante da matriz quando as 1 entradas são substituídas por +1 ou -1 aleatoriamente.
Dana Moshkovitz
@Dana, você poderia fazer um comentário separado em seu comentário? (de preferência com uma referência)
Mohammad Al-Turkistany
Wiki da comunidade?
Niel de Beaudrap

Respostas:

46

Um dos exemplos aplicados mais interessantes de saltos de dureza pode ser observado no seguinte problema:

Considere um campeonato da liga de futebol com equipes: o problema de decidir se uma determinada equipe pode (ainda) vencer a liga está em se em uma partida, a equipe vencedora recebe 2 pontos, a derrota é 0 e cada equipe é premiada 1 ponto em uma partida de empate. Mas se mudarmos as regras para que a equipe vencedora consiga 3 pontos, o mesmo problema se torna difícil.P N PnPNP

O resultado pode ser generalizado para qualquer regra de ponto para cada e mesmo para apenas três rodadas restantes.k > 2(0,1,k)k>2

Fonte: “Teoria da complexidade”, de Ingo Wegener ( http://portal.acm.org/citation.cfm?id=1076319 )

Dimitri Scheftelowitsch
fonte
12
isso me lembra do TSP: você pode obter um aproximadamente 1.5 com pesos que são 1 ou 2, mas não se pesos são 1 ou 3
Suresh Venkat
24

Isso responde à pergunta feita no título da pergunta, mas não à pergunta.

Um exemplo chocante de dureza de salto surge da pergunta: "Quantas tarefas satisfatórias possui uma fórmula planar, módulo ?" Pensa-se que isso seja # P-difícil, e é para "a maioria" dos valores de , mas se for um número inteiro de Mersenne (por exemplo, , porque 7 é da forma ), então o resposta pode ser calculada em tempo polinomial.n n n = 7 2 3 - 1nnnn=7231

Isso foi descoberto pela primeira vez por Valiant, em seu inovador artigo sobre Algoritmos Holográficos.

Aaron Sterling
fonte
4
Isso não está certo. A fórmula não precisa apenas ser plana. Ele também precisa ser monótono, ler duas vezes e ter cláusulas de tamanho , em que . A apresentação de Valiant nos algoritmos holográficos é fixar o tamanho da cláusula em e depois variar o módulo. A dureza característica 0 (isto é, chicote # P) era conhecida. Dureza comprovada valente, mod 2 e mod. Tratável 7. Observe que essa dureza é dureza, não # P-dureza. Acredito que a complexidade mod outros valores esteja aberta. Mais tarde, Jin-Yi Cai e Pinyan Lu deram rastreio para todos os . n = 2 k - 1 k = 3 P = # 2 P kkn=2k1k=3P=#2Pk
Tyson Williams
2
Para saber mais sobre isso, incluindo as referências em papel, consulte Holographic_algorithm # History na Wikipedia.
Tyson Williams
21

INDEPENDENT SET é NP-completo para gráficos livres de (cruz, triângulo) , mas pode ser resolvido em tempo linear para gráficos livres de (cadeira, triângulo) . (Os gráficos sem X são aqueles que não contêm gráfico de X como um subgrafo induzido.)

cadeira: imagem do gráfico da cadeira de ISGCI triângulo: imagem do gráfico do triângulo de ISGCI cruz:imagem do gráfico cruzado de ISGCI

Observe que a cruz é obtida da cadeira adicionando uma única aresta.

András Salamon
fonte
12
E esse exemplo mais simples: INDEPENDENT SET é NP-c para de , mas pode ser resolvido em tempo linear para de (ou seja, sem garras). K 1 , 3K1,4K1,3
usar o seguinte
19

Não tenho certeza se concordaria com a sua caracterização de que adicionar uma única borda à entrada torna o problema NP completo, pois na verdade, uma permite que uma borda seja adicionada a todas as infinitas instâncias de entrada.

Aqui está um exemplo de um problema que mostra uma dicotomia acentuada ao longo das linhas que você sugere.

O problema de determinar se existe um homomorfismo de gráfico do gráfico de entrada G para um gráfico de modelo fixo H está em P quando H é um gráfico com auto-loop ou um gráfico sem loop bipartido. Quando H não é bipartido (isso geralmente pode ser alcançado adicionando uma única borda), o problema se torna NP-completo.

A chave aqui é que a coloração 2 está em P (isso corresponde a um homomorfismo a , o caminho em 3 vértices), enquanto a coloração 3 está completa em NP (isso corresponde a um homomorfismo em , o triângulo).K 3P3K3

András Salamon
fonte
14

Aqui está outro exemplo interessante, gerado na detecção de subgráficos induzidos:

Um teta é um gráfico com vértices não adjacentes , três caminhos de a , em que dois caminhos induziram um ciclo com comprimento maior que 3.x,yP1,P2,P3xy

Uma pirâmide é um gráfico com um vértice , um triângulo e os caminhos de a para cada , com no máximo um caminho com o comprimento um.xy1,y2,y3Pixyii=1,2,3

Finalmente, um prisma é um gráfico com dois triângulos e e caminhos de a para cada .x1,x2,x3y1,y2,y3Pixiyii=1,2,3

É fácil descrever nas figuras:

teta, prisma e pirâmide

Para detectar teta e pirâmide induzidas, é conhecido por estar em tempo polinomial. (De fato, o algoritmo mais conhecido para teta leva tempo , e para pirâmide leva .) Mas, para detectar um prisma induzido, o problema se torna NP-difícil.O(n11)O(n9)

Pode-se ver " Detectando subgrafos induzidos " por Leveque, Lin, Maffray e Trotignon como referência. A razão pela qual teta e pirâmide são relativamente fáceis está relacionada ao problema "três em uma árvore", descrito em " O problema das três em uma árvore ", de Chudnovsky e Seymour.

Hsien-Chih Chang 張顯 之
fonte
13

er ... eu tenho certeza que você está procurando exemplos menos triviais ... mas eu gostaria de ressaltar que há algo de especial no número vs . para , vs , etc. Intuitivamente, sempre achei que era porque um nó com no máximo 2 arestas pode formar no máximo uma linha, mas um nó com 3 arestas pode formar uma árvore, quando passamos de 2 a 3, obtemos uma explosão combinatória.232SAT3SAT2COL3COL

gabgoh
fonte
9
por outro lado, o MAX 2SAT é difícil. então 2 não é tão especial.
Suresh Venkat
1
2 E a perfeição perfeita parece especial. :)
Daniel Apon 5/11
Além disso, correspondência perfeita 2D vs correspondência perfeita 3D.
Mohammad Al-Turkistany
13

Eu acho que não faz muito sentido falar sobre instâncias. Podemos falar sobre duas distribuições de instâncias de entrada com dificuldades diferentes, mas seria mais interessante se houver relação entre a distribuição ou entre instâncias nas distribuições.

Podemos considerar uma família de distribuições parametrizada e depois falar sobre o que acontece quando alteramos o parâmetro. Você pode estar interessado no que é chamado de fenômeno do limiar ", onde um sistema passa por uma rápida mudança qualitativa como resultado de uma pequena mudança em um parâmetro ...". Dê uma olhada nesta pesquisa: Ehud Friedgut , " Hunting for Sharp Thresholds ", Random Structures Algorithms 26, 2005.

Eu acho que um dos exemplos mais impressionantes e bonitos é o k-SAT aleatório com densidade de cláusula , a transição de fase é realmente incrível.Δ

Kaveh
fonte
11

Inferir tipos para termos lambda é DEXPTIME-complete com sistemas de tipo polimórfico prenex e rank-2 (quando os quantificadores de tipo são aninhados no máximo em um nível), mas se torna indecidível para o rank-3 e superior. Estranho que um nível de aninhamento extra possa tornar um problema indecidível.

Alex Rubinsteyn
fonte
10

Encontrando o estado fundamental do modelo Ising planar com 0 campo magnético está em P, com campo magnético diferente de zero é NP-difícil. A função de partição do modelo Isar planar com 0 campo magnético está em P, com campo magnético diferente de zero é NP-difícil.

Yaroslav Bulatov
fonte
9

Aqui está um bom problema com um salto interessante de complexidade, como a Largura de banda mínima que você abordou na sua pergunta.

Deixe ser um gráfico e uma árvore geradora de . O desvio para um bordo é o único caminho em . O congestionamento de , denotado por é o número de desvios que contêm . O congestionamento de em , designado por , é a congestão máximo ao longo de todas as bordas em . O congestionamento da árvore de abrangência de , denotado por GTGuvE(G)uvTeE(T)cngG,T(e)eGTcngG(T)TGstc(G), É o congestionamento mínimo sobre todas as árvores geradoras de . O problema de congestionamento da árvore de abrangência pergunta se um determinado gráfico tem congestionamento de árvore de abrangência, no máximo, com um dado .Gk

O seguinte salto de complexidade é mostrado em: Bodlaender et al., Complexidade parametrizada do problema de congestionamento em árvores de abrangência, Algorithmica 64 (2012) 85-111 :

Para cada e fixo, o problema é solucionável em tempo linear para gráficos de grau no máximo . Por outro lado, se permitirmos apenas um vértice de grau ilimitado, o problema imediatamente se tornará completo para qualquer fixo .kddNPk8

vb le
fonte
8

Eu me pergunto por que ninguém mencionou isso:

K-Sat vs Horn-Sat

Acho que todo mundo sabe o que é. Se não:

Horn-Sat é descobrir se um conjunto de cláusulas de horn é satisfatório (cada cláusula tem no máximo 1 literal positivo).

O K-Sat é descobrir se um conjunto de cláusulas é satisfatório (cada cláusula pode ter mais de 1 literal positivo).

Portanto, permitir mais de um literal positivo em cada cláusula torna o problema de P-complete NP-complete.

George
fonte
7

Graph Coloring

Como mencionado em outra resposta, o 2-COL é solucionável em tempo polinomial, enquanto o 3-COL é NP completo. Mas ao aumentar o número de cores, depois de algum ponto (desconhecido?), O problema fica mais fácil!

Por exemplo, se tivermos N vértices e N cores, o problema pode ser resolvido atribuindo uma cor diferente a cada vértice.

George
fonte
QUALQUER gráfico planar é de 4 cores. [1]: projecteuclid.org/DPubS/Repository/1.0/…
rphv
6

Na mesma linha: Permanente vs Determinante.

Jagadish
fonte
3
A diferença entre perm e det é realmente muito mais significativa e de um tipo diferente do que os outros saltos de dureza discutidos na pergunta e nas outras respostas. A negação é muito poderosa: em certo sentido, é o que nos permite calcular det facilmente, mas não perm; A Valiant tem um documento "A negação pode ser exponencialmente poderosa" portal.acm.org/citation.cfm?id=804412 ; muitos limites inferiores são conhecidos pela complexidade monótona (mesmo no modelo algébrico, onde a monotonicidade exclui negações e constantes negativas), mas muito poucos deles se traduzem em complexidade não monótona.
Joshua Grochow
3
Outro exemplo: a negação também é necessária para o algoritmo de Strassen para multiplicar matrizes 2x2. Sem ele, você não pode vencer o algoritmo trivial para multiplicar matrizes 2x2.
Joshua Grochow
6

Acabei de ler um artigo que lida com o particionamento de hipergráficos . O problema é definido como este, citação:

Dados dois parâmetros e , , o problema [ ] é definido da seguinte forma: Seja um hipergrafo e sejam números inteiros não negativos, de modo que e . Existe uma coloração (partição) de em subconjuntos de tamanho modo que os vértices de cada hiper-borda em sejam coloridos com no máximo cores?kl1l<kPklH=(V,E)t1,,tk|V|=n=i=1kti|E|=mVkt1,,tkEl

Em geral, está provado que:

  • Pk1 é solucionável em tempo polinomial (em ) para fixon,mk2
  • Pkl é NP-completo para todos os fixos2l<k

Se isso não for suficiente, continue a ler. Para hypergraphs com hyperedges disjuntas, é mostrado:

  • Pk1k2
  • Pklm2l<k

Laurent Lyaudet. 2010. Variantes NP-rígidas e lineares do particionamento de hipergráficos. Theor. Comput. Sci. 411, 1 (janeiro de 2010), 10-21. http://dx.doi.org/10.1016/j.tcs.2009.08.035

Rafael
fonte
5

Saltos de complexidade interessantes são conhecidos pelo problema de planejamento da oficina.

nMmjμjO1j,O2j,,OμjjOijpijmijMCjj

Cmax=maxjCjCj

J||γγ

J2|n=k|FJ|n=2|FJ2 (n=k)2 (k)F

J3|n=3|CmaxJ3|n=3|C

J2||CmaxJ2||C

Assim, aqui podemos ver que há um salto quando passamos de dois trabalhos / máquinas para três.

Oleksandr Bondarenko
fonte
1
Bom, estou confuso com a terminologia especial. Você poderia simplificar a terminologia (ou melhor ainda removê-la)?
Mohammad Al-Turkistany
1

lnn(1o(1))lnn

Andras Farago
fonte
0

2n2n(a+b)n=i0..n(ni)aibnipb(a)a=b=12n=p1(1)como uma soma. Agora, suponha que você tenha uma matriz de problemas com desempenho em duas variáveis ​​proporcionais aos coeficientes binomiais (em comparação com o tamanho do problema descrito por duas variáveis) organizadas como um triângulo pascal. Em seguida, resolver todos os problemas na enésima linha deve levar . Os coeficientes binomiais descrevem quantas maneiras diferentes existem para escolher combinações k de n elementos. Portanto, se seu algoritmo depende da enumeração de k-combinações de n elementos o algoritmo não pode ser um tempo polinomial. Como se esse problema era tempo polinomial, o argumento acima prova , pois a soma de dois polinômios é um polinômio. Mas provas corretas do problema qualquer maneira são raras.DTIME(2n)(k<n)P=NP=DTIME(2n)P=NP

Esa Pulkkinen
fonte