Ci sono problemi NP-completi con soluzioni temporali attese polinomiali?


24

Ci sono problemi NP completi per i quali è noto un algoritmo che il tempo di esecuzione previsto è polinomiale (per una distribuzione ragionevole sulle istanze)?

In caso contrario, ci sono problemi per i quali è stata stabilita l'esistenza di un tale algoritmo?

O l'esistenza di un tale algoritmo implica l'esistenza di un algoritmo temporale polinomiale deterministico?


6
Non capisco bene quale sia la domanda. Stai chiedendo risultati nel caso medio per problemi NP-difficili o stai chiedendo se possiamo risolvere i problemi NP-difficili nel peggiore dei casi nel tempo polinomiale previsto?
Moritz,

2
Cosa intendi con "tempo di esecuzione previsto"? Stai accettando l'aspettativa su una distribuzione casuale di input (come sembra pensare la maggior parte delle risposte) o sulla distribuzione di bit casuali utilizzati dall'algoritmo (il solito significato per algoritmi randomizzati) o entrambi?
Jeffε,

@Moritz: sto chiedendo risultati nel caso medio per problemi NP-difficili. Risolvere i problemi NP-difficili nel peggiore dei casi nel tempo polinomiale atteso mi sembra un risultato ancora più forte, quindi sarei interessato anche a tali risultati. @JeffE Sto parlando del tempo previsto e della distribuzione sulle istanze. Se l'algoritmo è randomizzato, ci si aspetterebbe anche per i bit casuali. Ma la mia domanda non riguarda principalmente l'algoritmo randomizzato.
Steve Kroon,

Risposte:


3

Una semplice tecnica di imbottitura ti offre un modo per costruirli da qualsiasi problema.


Supponiamo che sia un linguaggio Completo che richiede tempo per essere risolto. Quindi lascia che sia Quindi viene risolto come segue: un algoritmo a tempo lineare controlla se una stringa di input ha un numero pari di caratteri di cui i primi sono . In caso contrario, rifiuta; altrimenti si risolve . Se viene disegnato in modo uniforme a caso, il tempo previsto per risolvere èN P O ( 2 n ) K K = { 1 n x | X = n  ed  x L }LNPO(2n)K

K={1nx | x=n and xL}
n 1 n x ? L y R { 0 , 1 } 2 n y ? K 1Kn1nx?LyR{0,1}2ny?K
122n(2n2n+(22n2n)O(n))=1+(112n)O(n)O(n).

K è Completo. Una riduzione da è:NPL

x{0,1}n1nX

13

Esiste un algoritmo temporale polinomiale per trovare cicli hamiltoniani su grafici casuali, che ha successo asintoticamente con la stessa probabilità che esista un ciclo hamiltoniano. Ovviamente, questo problema è NP-difficile nel peggiore dei casi.

Mostrano anche che un algoritmo di programmazione dinamica che è sempre garantito per trovare un ciclo hamiltoniano, se esiste, ha un tempo di esecuzione previsto polinomiale, se la distribuzione di input è uniformemente casuale sull'insieme di tutti i grafici di vertici.n

Riferimento: "Un algoritmo per la ricerca di cicli di Hamilton in grafici casuali"

Bollobas, Fenner, Fregio

http://portal.acm.org/citation.cfm?id=22145.22193


10

Per quanto riguarda la tua ultima domanda sul fatto che l'esistenza di un buon algoritmo del caso medio implicherebbe l'esistenza di un buon algoritmo nel caso peggiore: questa è una grande domanda aperta che è particolarmente interessante per i crittografi. La crittografia richiede problemi che sono duri in media, ma i crittografi vorrebbero basare le loro costruzioni sui presupposti minimi possibili, quindi è di grande interesse trovare problemi in cui la durezza del caso medio è dimostrabilmente uguale alla durezza del caso peggiore.

È noto che numerosi problemi reticolari presentano riduzioni dal caso peggiore a quello medio. Vedi, ad esempio, Generazione di casi difficili di problemi reticolari di Ajtai e un articolo di indagine di Micciancio.


9

Fondamentalmente, Max 2-CSP su variabili e vincoli scelti casualmente possono essere risolti nel tempo lineare previsto (vedere il riferimento sotto per la formulazione esatta del risultato). Si noti che Max 2-CSP rimane NP-hard quando il numero di clausole è uguale al numero di variabili in quanto NP-hard se il grafico del vincolo dell'istanza ha il massimo grado al massimo 3 ed è possibile aggiungere alcune variabili fittizie per ridurre la media grado a 2.nn

Riferimento:

Alexander D. Scott e Gregory B. Sorkin. Risoluzione di istanze casuali sparse di Max Cut e Max 2-CSP nel tempo previsto lineare. Pettine. Probab. Comput., 15 (1-2): 281-315, 2006. Preprint


2
Θ(n)G(n,c/n)

@Bart: potrei aver frainteso la domanda. Sostengo che Max 2-CSP con un numero lineare di clausole è NP-difficile, ma che esiste un algoritmo con tempo lineare previsto che risolve questo problema per istanze casuali.
Serge Gaspers,

Fondamentalmente, se capisco correttamente il tuo argomento, stai dicendo che Max 2-CSP dotato della distribuzione G (n, c / n) sui grafici sottostanti può essere risolto nel tempo lineare previsto. Concordo con Bart sul fatto che la distribuzione non mi sembra del tutto "sensata" o "naturale", ma penso che risponda adeguatamente alla mia domanda.
Steve Kroon,

@Steve: sono d'accordo.
Serge Gaspers,

7

Questo non risponde completamente alla tua domanda, ma per l'indagine dei risultati su istanze casuali di 3-SAT puoi vedere questo: www.math.cmu.edu/~adf/research/rand-sat-algs.pdf

Di solito è difficile definire cosa significhi veramente "distrazione sensibile". Puoi seguire questo link per saperne di più nel sondaggio "Complessità dei tempi medi" di Bogdanov e Trevisan: http://arxiv.org/abs/cs/0606037 .


Grazie per i collegamenti. Sfortunatamente i risultati "con alta probabilità" del documento 3-SAT non sono abbastanza forti (per quanto posso vedere) per affermare la mia domanda. Sono d'accordo che la "distribuzione ragionevole" può essere pelosa. In questo, lo preferirei se la distribuzione non fosse ovviamente scelta in modo tale che lo "spazio di istanza efficace" non riduca semplicemente il problema a uno noto per essere in P.
Steve Kroon,

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.