Complessità parametrizzata da P a NP-hard e viceversa


60

Sto cercando esempi di problemi parametrizzati da un numero , in cui la durezza del problema non è monotona in . La maggior parte dei problemi (nella mia esperienza) ha una transizione a fase singola, ad esempio -SAT ha una transizione a fase singola da (dove il problema è in P) a (dove il il problema è NP-completo). Sono interessato a problemi in cui vi sono transizioni di fase in entrambe le direzioni (da facile a difficile e viceversa) all'aumentare di . k k k { 1 , 2 } k 3 kkNkkk{1,2}k3k

La mia domanda è in qualche modo simile a quella posta a Hardness Jumps in Computational Complexity , e in effetti alcune delle risposte sono rilevanti per la mia domanda.

Esempi di cui sono a conoscenza:

  1. k = 3k -colorabilità dei grafici planari: in P tranne quando , dove è NP-completo.k=3
  2. Albero di Steiner con terminali : In P quando (collassa al percorso - più breve ) e quando (collassa a MST), ma NP-hard "in mezzo". Non so se queste transizioni di fase siano nitide (ad esempio, P per ma NP-difficile per ). Anche le transizioni di dipendono dalla dimensione dell'istanza di input, a differenza dei miei altri esempi.kk=2stk=nk0k0+1k
  3. Conteggio delle assegnazioni soddisfacenti di una formula planare modulo : In P quando è un numero primo di Mersenne e # P-complete per la maggior parte (?) / Tutti gli altri valori di (da Aaron Sterling in questo thread ). Molte transizioni di fase!nnn=2k1n
  4. Rilevamento del sottografo indotto: il problema non è parametrizzato da un numero intero ma da un grafico. Esistono grafici (dove indica un certo tipo di relazione del sottografo), per cui determinare se per un dato grafico è in P per ma NP-completo per . (da Hsien-Chih Chang nella stessa discussione ).H1H2H3HiGGi{1,3}i=2

3
Correzione minore per esempio (3): il problema è in se è un numero intero di tipo Mersenne, ovvero per un certo numero naturale ; non deve essere un numero primo. (Ad esempio, non è primo.) A meno che non sia in questa forma, il problema è # -completo. n n = 2 k - 1 k n 2 11 - 1 n PPnn=2k1kn2111nP
Aaron Sterling,

Grazie @Aaron Sterling - Ho rivisto questo esempio in modo appropriato.
mikero,

1
Esempio di correzione maggiore (3): le formule devono anche essere monotone, lette due volte e con clausole size , dove , per essere tracciabili. Ciò è stato dimostrato da Jin-Yi Cai e Pinyan Lu. Non è così che Valiant l'ha motivato. Ha fissato la dimensione della clausola su 3 e poi ha variato solo il modulo. Era noto per essere duro nella caratteristica 0. Valiant mostrava la durezza mod 2 e la trattabilità mod 7. La durezza mod 2 è la durezza non la durezza P Non so quale famiglia parametrica di problemi stai cercando di descrivere. n = 2 k - 1 P = # 2 Pkn=2k1P=#2P
Tyson Williams,

1
Per ulteriori informazioni al riguardo, compresi i riferimenti cartacei, vedere la storia di Holographic_algorithm # su Wikipedia.
Tyson Williams,

Una preoccupazione per quanto riguarda ad esempio (4): Spero che dire che denotano essendo una realizzazione della -graph . Ma come possiamo dire che la piramide theta prisma ? Si noti che stiamo parlando di sottografi indotti e non sottografi. G s H HGGsH
Cyriac Antony

Risposte:


25

Un campo con molta non monotonicità della complessità del problema è il testing delle proprietà. Sia l'insieme di tutti i grafici -vertex e chiama una proprietà del grafico. Un problema generico è determinare se un grafico ha la proprietà (cioè ) o è "lungi" dall'avere la proprietà in un certo senso. A seconda di cosa sia e di quale tipo di accesso alla query si abbia al grafico, il problema può essere piuttosto difficile. nP G n GPGPPPGnnPGnGPGPPP

Ma è facile vedere che il problema non è monotono, in quanto se abbiamo , il fatto che sia facilmente verificabile non implica che sia facilmente verificabile o che sia. P S TSPTPST

Per vederlo, è sufficiente osservare che e sono entrambi banalmente testabili, ma che per alcune proprietà esistono forti limiti inferiori. P = P=GnP=


Potresti per favore menzionare (o indicare) un esempio non banale? Immagino ne conosca già alcuni. È anche interessante sapere se ci sono transizioni di fase da P NP P NP.
Cyriac Antony

20

Per un dato grafico e un intero , la -esima potenza di , indicata con , ha lo stesso vertice impostato in modo tale che due vertici distinti siano adiacenti in se la loro distanza in è a più . La potenza -th del problema del grafico diviso chiede se un dato grafico è la potenza -th di un grafico diviso.k 1 k G G k G k GGk1kGGkGkGk kkkk


17

Uno di questi problemi è la colorazione dei bordi dei grafici planari in cui il parametro è - grado massimo di un grafico. Quando o ci sono noti algoritmi polinomiali esatti ( vedi qui ), mentre per tali algoritmi non sono noti e non ci sono prove di durezza NP per questi casi .ΔΔ=23 Æ 6Δ73Δ6

La domanda correlata è discussa qui .


14

Determinare se un grafico ha una cricca dominante per:G

  • diam(G)=1 è banale - la risposta è sempre "sì"
  • diam(G)=2 è NP-completo
  • diam(G)=3 è NP-completo
  • diam(G)4 è banale - la risposta è sempre "no"

Il caso è dovuto a Brandstädt e Kratsch e il caso è annotato in un mio recente documento .d i a m ( G ) = 2diam(G)=3diam(G)=2


+1 bella risposta. Cos'è la cricca dominante?
Mohammad Al-Turkistany,

1
Proprio come sembra - un set dominante che è anche una cricca .
Austin Buchanan,

13

È questo un esempio del fenomeno che stai cercando?

Considera il problema di k-Clique, dove k è la dimensione della cricca che stiamo cercando. Quindi il problema è "Esiste una cricca di dimensione k nel grafico G su n vertici?"

Per tutte le costanti k, il problema è in P. (L'algoritmo della forza bruta viene eseguito nel tempo .) Per valori elevati di k, ad esempio valori come n / 2, è NP-completo. Quando k si avvicina molto a n, come nc per qualche costante c, il problema è di nuovo in P perché possiamo cercare su tutti i sottoinsiemi di n vertici di dimensione nc e verificare se uno di essi forma una cricca. (Esistono solo tali sottoinsiemi, che è polinomialmente grande quando c è una costante.)O ( n c )O(nk)O(nc)


7
Questo fenomeno è solo perché potremmo anche vedere k come min (k, nk) e risolvere k-clique o k-indept set (davvero lo stesso problema). Se pensiamo a 0 <k <= n / 2 per questo motivo, la complessità è strettamente crescente in k.
Aaron Roth,

4
@Aaron: temo che il tuo argomento non sia corretto. Trovare una cricca di dimensioni n-k è molto diverso dal trovare un insieme indipendente di dimensioni k. Devi essere confuso dal fatto che trovare una cricca di dimensione k in un grafico G equivale a trovare un insieme indipendente di dimensione k nel complemento di G.
Tsuyoshi Ito

Tsuyoshi: Sì, certo. Intendevo dire che WLOG, puoi assumere k <= n / 2, poiché in caso contrario, prendi il grafico del complemento e risolvi il problema per k '= nk. E, naturalmente, questo evidenzia che la complessità sta aumentando in k.
Aaron Roth,

1
@Aaron: "In caso contrario, prendi il grafico del complemento e risolvi il problema per k '= nk." Questa è esattamente l' affermazione errata che sto cercando di obiettare. Consentitemi di ripetere ciò che ho detto: "trovare una cricca di dimensione k in un grafico G equivale a trovare un insieme indipendente di dimensione k nel complemento di G." Trovare una cricca di dimensione k in un grafico G non equivale a trovare una cricca di dimensioni n-k nel complemento di G.
Tsuyoshi Ito

2
Ah sì. :-) È stato sciocco, ritiro la mia obiezione. Quello che sta succedendo qui è solo che Binomial [n, k] = Binomial [n, nk], e quindi il tempo di esecuzione della ricerca esaustiva è monotono crescente per k <n / 2 e monotono decrescente per k> n / 2.
Aaron Roth,

12

Ecco un esempio che potrebbe essere del tipo che stai cercando. Il parametro non è un numero intero, è una coppia di numeri. (Anche se uno di essi può essere risolto per renderlo un problema di un parametro.)

Il problema è valutare il polinomio Tutte di un grafico G alle coordinate (x, y). Possiamo limitare le coordinate in numeri interi. Il problema è in P se (x, y) è uno dei punti (1, 1), (-1, -1), (0, -1), (-1,0) o soddisfa (x-1 ) (y-1) = 1. Altrimenti è # P-difficile.

L'ho preso dall'articolo di Wikipedia sul polinomio Tutte .


12

Che dire della questione del calcolo del permanente di una matrice modulo ? Per questo è facile (poiché permanente = determinante) e Valiant (in " La complessità del calcolo del permanente ") ha mostrato che può essere calcolato modulo nel tempo per con una variante modificata dell'eliminazione gaussiana. Ma per che non è una potenza di , è UP-Hard. k = 2 2 d O ( n 4 d - 3 ) d 2 k 2kk=22dO(n4d3)d2k2


10

Un altro problema con questo fenomeno è il minimo problema -SPANNER su grafici divisi.t

Per una costante , un -spanner di un grafo connesso è collegato spanning sottografo di tale che per ogni coppia di vertici ed , la distanza tra ed in è al massimo volte la loro distanza in . Il problema MIN -SPANNER richiede una chiave con un numero minimo di spigoli di un dato grafico.t G H G x y x y H t G t tttGHGxyxyHtGtt

Un grafico diviso è un grafico il cui set di vertici può essere partizionato in una cricca e in un set indipendente.

In questo articolo è stato dimostrato che MINIMUM 2-SPANNER su grafici divisi è NP-difficile mentre per ogni , MINIMUM SPANNER è facile su grafici divisi.tt3t


10

Esempio ben noto è colorazione -edge.k

È decidibile in tempo polinomiale se altrimenti è completo .N PkΔNP

Per i grafici cubici, decidere l'esistenza della colorazione del bordo usando:

  • k=2 colori è banale poiché la risposta è sempre no.
  • k=3 colori è completoNP
  • colori è banale poiché la risposta è sempre sì.k4

Holyer, Ian (1981), "La completezza NP della colorazione dei bordi", SIAM Journal on Computing 10: 718–720

http://en.wikipedia.org/wiki/Edge_coloring


Potresti, per favore, aggiungere un riferimento?
Oleksandr Bondarenko,



6

UV(G)GG[U]GU

Decidere se un grafico del diametro 1 ha un cutset disconnesso è banale. Il problema diventa NP-difficile su grafici di diametro 2, vedere questo documento ed è di nuovo facile su grafici di diametro almeno 3, vedere questo documento .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.