Problemi di decisione in


15

Quali sono alcuni esempi di problemi decisionali difficili che possono essere risolti in tempi polinomiali? Sto cercando problemi per i quali l'algoritmo ottimale è "lento" o problemi per i quali l'algoritmo più veloce conosciuto è "lento".

Ecco due esempi:

  • Riconoscimento di grafici perfetti. Nel loro articolo FOCS'03 [1] Cornuéjols, Liu e Vuskovic hanno fornito un algoritmo temporale per il problema, dove n è il numero di vertici. Non sono sicuro che questo limite sia stato migliorato, ma a quanto ho capito, è necessaria più o meno una svolta per ottenere un algoritmo più veloce. (Gli autori forniscono un algoritmo temporale O ( n 9 ) nella versione journal di [1], vedere qui ).O(n10)nO(n9)

  • Riconoscimento dei grafici delle mappe. Thorup [2] ha dato un algoritmo piuttosto complesso con l'essere esponente (circa?) . Forse questo è stato persino notevolmente migliorato, ma non ho un buon riferimento.120

Sono particolarmente interessato a problemi che hanno un'importanza pratica e l'ottenimento di un algoritmo "veloce" (o anche pratico) è stato aperto per diversi anni.


[1] Cornuéjols, Gérard, Xinming Liu e Kristina Vuskovic. "Un algoritmo polinomiale per il riconoscimento di grafici perfetti." Fondamenti di informatica, 2003. Atti. 44 ° Simposio IEEE annuale su. IEEE, 2003.

[2] Thorup, Mikkel. "Mappa grafici in tempo polinomiale." Fondamenti di informatica, 1998. Atti. 39 ° Simposio annuale su. IEEE, 1998.


Potresti dare un'occhiata a Raymond Greenlaw, H. James Hoover, Walter L. Ruzzo, Limits to Parallel Computing: -Completeness TheoryP , 1995
Kaveh,

Risposte:


12

Forse i seguenti problemi si adattano ai tuoi esempi:

  • (La versione decisionale di) Coloring, Clique, Stable Set, Clique Cover in grafici perfetti. Finora, gli unici algoritmi temporali polinomiali noti per questi problemi si basano sul metodo ellissoide, che è "lento" (e numericamente instabile).

  • Test di primalità AKS nel tempo . Sebbene molti miglioramenti (attualmente O ( ( log n ) 7.5 ) ), l'algoritmo AKS è ancora troppo lento nella pratica.O((logn)12)O((logn)7.5)


Sì, questi sono ottimi esempi!
Juho,

Si noti che esistono algoritmi conosciuti molto rapidamente per i test di primalità se è consentita la randomizzazione. In pratica, non soddisfa i criteri secondo cui "l'algoritmo più veloce conosciuto è lento".
6005

11

C'è una domanda simile su cstheory , con molti esempi che vanno dagli algoritmi "realisticamente impraticabilmente lenti" con esponenti da 6 o 7 verso l'alto. Questa domanda discute anche di grandi costanti.

C'è un classico che voglio riprodurre in quanto sembra un esempio così orribilmente spettacolare di tempo polinomiale (rubato spudoratamente dalla risposta di JeffE):

Corollario 1. Il numero di passaggi nel nostro algoritmo è al massimo .1752484608000n79L25/D26(Θ0)

Corollario 2. Il numero di passaggi nel nostro algoritmo è al massimo 117607251220365312000n79(max/dmin(Θ0))26.

Da: Jason H. Cantarella, Erik D. Demaine, Hayley N. Iben, James F. O'Brien, Un approccio guidato dall'energia al dispiegamento dei legami, SOCG 2004.


Mi chiedo se questo sia davvero un problema pratico. Inoltre, l'elenco dei problemi su CSTheory è breve e la maggior parte dei problemi sembrano piuttosto esoterici ... :-(
Juho,

@Juho c'è un ulteriore link nel primo commento sull'altra domanda a un'altra domanda simile su math.se. Ho trovato quello che ho riprodotto troppo divertente per resistere, ma ci sono alcuni importanti risultati ptime che hanno algoritmi terribili o non costruttivi: il teorema di Courcelle e un mucchio di modelli simili che controllano i metateoremi, molte cose minori grafiche e algoritmi di decomposizione per proprietà come la larghezza degli alberi.
Luke Mathieson,
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.