Ragioni generali per cui i problemi sono in P o BPP


56

Di recente, quando ho parlato con un fisico, ho affermato che, nella mia esperienza, quando un problema che sembra ingenuo dovrebbe richiedere tempo esponenziale si rivela non banalmente essere in P o BPP, in genere si può identificare un "motivo generale" per cui la riduzione si verifica --- e quasi sempre, questa ragione appartiene a un elenco di una dozzina o meno di "soliti sospetti" (ad esempio: programmazione dinamica, algebra lineare ...). Tuttavia, questo mi ha fatto pensare: possiamo davvero scrivere un elenco decente di tali motivi? Ecco un primo tentativo incompleto in uno:

(0) Caratterizzazione matematica. Problema ha una caratterizzazione "puramente matematica" non ovvia che, una volta conosciuta, rende immediato che puoi semplicemente fare una ricerca esaustiva su un elenco di poli (n) possibilità. Esempio: planarità grafica, per la quale un algoritmo O (n 6 ) segue dal teorema di Kuratowski.

(Come indicato di seguito "planare", questo è stato un cattivo esempio: anche quando conosci una caratterizzazione combinatoria della planarità, dare un algoritmo polinomiale per il tempo è ancora piuttosto non banale. Quindi, lasciami sostituire un esempio migliore qui: che ne dici , diciamo, "dato un input n scritto in binario, calcola quanti colori sono necessari per colorare una mappa arbitraria incorporata su una superficie con n buchi." Non è ovvio a priori che ciò sia calcolabile (o addirittura finito!). Ma c'è una formula nota che dà la risposta, e una volta che conosci la formula, è banale calcolare in tempo polinomiale. Nel frattempo, "ridurre ai minori esclusi / teoria di Robertson-Seymour" dovrebbe probabilmente essere aggiunto come motivo generale separato per cui qualcosa può essere in P.)

Comunque, questo è specificamente non è il tipo di situazione che più mi interessi.

(1) Programmazione dinamica. Il problema può essere suddiviso in modo tale da consentire una soluzione ricorsiva senza esponenziale esponenziale, spesso perché i vincoli da soddisfare sono disposti in un ordine lineare o di altro tipo. "Puramente combinatorio"; nessuna struttura algebrica necessaria. Probabilmente, la raggiungibilità del grafico (e quindi 2SAT) sono casi speciali.

(2) Matroidi. Il problema ha una struttura matroid, che consente a un algoritmo avido di funzionare. Esempi: matching, spanning tree minimo.

(3) Algebra lineare. Il problema può essere ridotto per risolvere un sistema lineare, calcolare un determinante, calcolare autovalori, ecc. Probabilmente, la maggior parte dei problemi che coinvolgono "cancellazioni miracolose", compresi quelli risolvibili dal formalismo del matchgate di Valiant, cadono anche sotto l'ombrello lineare-algebrico.

(4) Convessità. Il problema può essere espresso come una sorta di ottimizzazione convessa. La programmazione semidefinita, la programmazione lineare e i giochi a somma zero sono casi comuni (sempre più) speciali.

(5) Test di identità polinomiale. Il problema può essere ridotto al controllo di un'identità polinomiale, in modo che il Teorema Fondamentale dell'Algebra porti a un algoritmo randomizzato efficiente - e in alcuni casi, come la primalità, persino un algoritmo dimostrabilmente deterministico.

(6) Markov Chain Monte Carlo. Il problema può essere ridotto al campionamento dall'esito di una camminata a miscelazione rapida. (Esempio: conteggio approssimativo degli abbinamenti perfetti.)

(7) Algoritmo euclideo. GCD, frazioni continue ...

Varie / Non ovvio esattamente come classificare: matrimonio stabile, factoring polinomiale, problema di appartenenza ai gruppi di permutazione, vari altri problemi nella teoria dei numeri e nella teoria dei gruppi, problemi reticolari a bassa dimensione ...

La mia domanda è: quali sono le cose più importanti che ho lasciato fuori?

Per chiarire:

  • Mi rendo conto che nessuna lista può essere completa: qualunque sia il numero finito di motivi che fornisci, qualcuno sarà in grado di trovare un problema esotico che si trova in P ma non per nessuno di questi motivi. In parte per questo motivo, sono più interessato alle idee che mettono molti problemi diversi e apparentemente non correlati in P o BPP, piuttosto che in idee che funzionano solo per un problema.

  • Mi rendo anche conto che è soggettivo come dividere le cose. Ad esempio, i matroidi dovrebbero essere solo un caso speciale di programmazione dinamica? La solvibilità mediante una ricerca approfondita è abbastanza importante da essere la sua stessa ragione, separata dalla programmazione dinamica? Inoltre, spesso lo stesso problema può essere in P per diversi motivi, a seconda di come lo si guarda: ad esempio, trovare un autovalore principale è in P a causa dell'algebra lineare, ma anche perché è un problema di ottimizzazione convessa.

In breve, non spero in un "teorema di classificazione", ma solo in un elenco che riflette utilmente ciò che attualmente sappiamo sugli algoritmi efficienti. Ed è per questo che ciò che mi interessa di più sono le tecniche per mettere cose in P o BPP che hanno ampia applicabilità ma che non rientrano nell'elenco sopra - o altre idee per migliorare il mio primo tentativo grezzo di fare del mio vanto il fisico.


10
NPcoNP

3
NPcoNP

4
ϑϑ

8
Aggiungerei la sottomodularità a quell'elenco. Mentre alcuni risultati che coinvolgono la massimizzazione o la minimizzazione delle funzioni sottomodulari sono correlati a matroidi o convessità, non credo che la connessione sia abbastanza forte da spiegare la maggior parte dei risultati algoritmici che coinvolgono la sottomodularità.
1313

7
Come segue un algoritmo di planarità O (n ^ 6) dal teorema di Kuratowski?

Risposte:


19

Alcune classi di grafici consentono algoritmi a tempo polinomiale per problemi NP-difficili per la classe di tutti i grafici. Ad esempio, per grafici perfetti, è possibile trovare un set indipendente più grande in tempo polinomiale (grazie a vzn in un commento per fare jogging nella mia memoria). Tramite la costruzione di un prodotto, ciò consente anche di tracciare una spiegazione unificata per diversi CSP apparentemente abbastanza diversi (come quelli con struttura ad albero che sono solitamente risolti dalla decomposizione gerarchica e il vincolo Tutto-Diverso che di solito è risolto da una corrispondenza perfetta).

Si potrebbe argomentare che i grafici perfetti sono "facili" perché consentono piacevoli formulazioni di programmazione semidefinite dei problemi in questione (e quindi rientrano in algebra lineare e / o convessità). Tuttavia, non sono sicuro che catturi completamente ciò che sta accadendo.

  • András Z. Salamon e Peter G. Jeavons, I vincoli perfetti sono trattabili , CP 2008, LNCS 5202, 524-528. doi: 10.1007 / 978-3-540-85958-1_35

  • Meinolf Sellmann, il politopo dei problemi di soddisfazione dei vincoli binari strutturati ad albero , CPAIOR 2008, LNCS 5015, 367–371. doi: 10.1007 / 978-3-540-68155-7_39


Come osservato da Gil Kalai, le proprietà dei grafici che formano classi minori chiuse possono essere definite da un insieme finito di minori proibiti (questo è il teorema di Robertson-Seymour ). Un altro risultato di Robertson e Seymour è che i test per la presenza di un minore possono essere eseguiti in tempi cubi. Insieme, questi portano a un algoritmo a tempo polinomiale per decidere le proprietà che sono chiuse in modo minore.

  • Neil Robertson e PD Seymour, Graph Minors. XIII. Il problema dei percorsi disgiunti , Journal of Combinatorial Theory, Serie B 63 (1) 65–110, 1995. doi: 10.1006 / jctb.1995.1006

Un problema con le proprietà dei grafici con chiusura minore è che sono "piccole"; escludendo anche un solo minore si escludono molti grafici. Questo è forse uno dei motivi per cui la decomposizione strutturale di Robertson-Seymour funziona: ci sono pochi grafici rimanenti per avere una bella struttura.

  • Serguei Norine, Paul Seymour, Robin Thomas e Paul Wollan, Le famiglie con minoranze chiuse sono piccole , Journal of Combinatorial Theory, Serie B 96 (5) 754-757, 2006. doi: 10.1016 / j.jctb.2006.01.006 ( prestampa )

Un tentativo di andare oltre le classi minori chiuse è attraverso classi definite da sottografie proibite o sottografie indotte proibite.

Le proprietà del grafico definite da un insieme finito di sottografi proibiti o sottografi indotti sono decidibili in tempo polinomiale, esaminando tutti i possibili sottografi.

FFFF

F

FFFF

  • Maria Chudnovsky e Paul Seymour, esclusi i sottografi indotti , Surveys in Combinatorics 2007, 99-119, Cambridge University Press, ISBN 9780521698238. ( prestampa )

FFF


questi ref catturano la riduzione delle "belle formulazioni di programmazione semidefinite"? ma solo alcuni problemi SDP sono in P, giusto?
vzn

Il collegamento con la programmazione semidefinita (e la prova che i più grandi set indipendenti possono essere trovati in grafici perfetti in tempo polinomiale) è stato creato nel documento originale del 1981 di Grötschel / Lovász / Schrijver (sezione 6), vedi dx.doi.org/10.1007/ BF02579273 mentre i riferimenti sopra riguardano il collegamento con CSP.
András Salamon,

1
Un altro esempio importante è quello dei grafici con sottografi proibiti in cui la teoria di Roberson-Seymour consente l'algoritmo P-time per varie domande algoritmiche. (Spesso con costanti enormi.) L'algoritmo P per grafici perfetti e grafico con sottografi indotti proibiti va oltre le applicazioni della programmazione LP e PSD.
Gil Kalai,

@Gil: grazie, ho provato a rispondere a questo commento in una modifica. Forse potresti espandere la connessione SDP separatamente?
András Salamon,

1
Un risultato interessante e simile alla teoria dei minori proibiti è la caratterizzazione di matrici totalmente unimodulari da parte di Seymour. Questi sono equivalenti ai matroidi regolari e il teorema di Seymour dice che possono essere "costruiti" da (co) matroidi grafici e 5 matroidi speciali usando semplici operazioni di composizione. Le composizioni sono anche facili da "annullare", il che porta ad un algoritmo di riconoscimento totalmente non ovvio per l'unimodularità totale. Come accennato da @Kunal, la totale unimodularità stessa spiega la solvibilità del politmo di molti problemi.
Sasho Nikolov,

18

Riduzione su base reticolare (algoritmo LLL). Questa è la base per un'efficiente fattorizzazione polinomiale intera e alcuni algoritmi crittoanalitici efficienti come la rottura di generatori lineari congruenziali e RSA di basso grado. In un certo senso puoi vedere l'algoritmo euclideo come un caso speciale.


Direi che LLL (e PSLQ / HJLS) sono generalizzazioni dell'algoritmo GCD, piuttosto che il contrario.
user834

2

3
Cosa sono PSLQ / HJLS?
Gil Kalai,

L' algoritmo LQ parziale (come nella fattorizzazione) e l' algoritmo Hastad, Just, Lagarias e Schnorr (suppongo che l'algoritmo prende il nome dai cognomi dell'autore) sono algoritmi più "moderni" per il rilevamento delle relazioni intere.
user834

15

La programmazione di numeri interi di Lenstra in dimensione limitata, l'algoritmo Lenstra-Lenstra-Lovasz e i relativi algoritmi successivi - l'algoritmo di Barvinok per il numero di soluzioni di numeri interi per un problema IP in dimensione limitata e l'algoritmo P di Kannan per il problema di Frobenius / Sylvester come una categoria speciale. Un notevole problema aperto qui è trovare un algoritmo P per problemi di ordine superiore nella Gerarchia di Presburger.

Un'altra classe di algoritmo P degna di nota è quella che l'algoritmo P dato all'oggetto ha dimostrato di esistere con prove randomizzate. Esempi: algoritmi per applicazioni di Lovasz-Local Lemma; versioni algoritmiche del risultato di discrepanza di Spencer; (di sapore leggermente diverso) versioni algoritmiche del lemma di regolarità di Szemeredi.


14

Esiste un ampio e ancora crescente corpus di teoria sulle classi di problemi di soddisfazione dei vincoli a modello fisso che hanno algoritmi a tempo polinomiale. Gran parte di questo lavoro richiede la padronanza del libro Hobby e MacKenzie , ma fortunatamente per quelli di noi che sono più interessati all'informatica rispetto all'algebra universale, alcune parti di questa teoria sono state ora semplificate abbastanza da essere accessibili a un pubblico TCS.

ΓSTΓST

Γk3kΓ(0,0,,0)S0T

ΓΓΓΓ; ciò significa in pratica che la classe di problemi contiene tutti i sottoproblemi successivamente più semplici considerati da un risolutore di vincoli, quindi il processo di risoluzione dei vincoli evita di generare istanze intermedie "dure" mentre risolve problemi "facili".

ΓΓ

I risultati fino ad oggi sembrano indicare che dovrebbe esserci una sorta di trasformazione del potere generale di uno spazio degli stati di raggiungibilità sottostante che può trasformare tali problemi in problemi con una tupla costante in ogni relazione, come nell'esempio sopra. (Questa è la mia interpretazione personale della ricerca in corso e potrebbe anche essere completamente sbagliata , a seconda di come la ricerca in corso di un algoritmo per algebre con termini ciclici si estenda, quindi mi riservo il diritto di ritrattare questo.) È noto che quando non c'è t tale trasformazione quindi il problema è NP-completo. La frontiera della congettura della dicotomia comporta attualmente la chiusura di questo divario; vedi l' elenco aperto dei problemi del Workshop su Algebra e CSP del 2011 .

In entrambi i casi, questo probabilmente merita una voce nell'elenco di Scott.

Una seconda classe in PTIME consente di applicare tecniche di coerenza locale per potare possibili soluzioni, fino a quando non viene trovata una soluzione o non sono possibili soluzioni. Questa è essenzialmente una versione sofisticata del modo in cui la maggior parte delle persone risolve i problemi di Sudoku. Non credo che questo motivo sia attualmente presente nell'elenco di Scott.

Γ

Infine, c'è anche un lavoro molto eccitante avviato da Manuel Bodirsky per il caso di domini infiniti. Alcuni algoritmi sembrano piuttosto strani e alla fine potrebbero rivelarsi più voci nell'elenco di Scott.


11

Vedo Chandra alluso ad esso, ma penso che la struttura di un rilassamento LP (ad esempio a causa della totale unimodularità) sia una forma pervasiva di "struttura" che porta alla polinomialità. Rappresenta una grande classe di algoritmi poli-tempo. Se uno include problemi promettenti, rappresenta anche una grande classe di algoritmi di approssimazione. Le classi di motivi più frequenti che si incontrano che non derivano dagli LP e / o dagli SDP sono l'eliminazione gaussiana e la programmazione dinamica. Esistono ovviamente altri algoritmi olografici che non hanno spiegazioni semplici.

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.