Algoritmi avidi ottimali per problemi NP-difficili


38

L'avidità, per mancanza di una parola migliore, è buona. Uno dei primi paradigmi algoritmici insegnati nel corso degli algoritmi introduttivi è l' approccio avido . L'approccio avido si traduce in algoritmi semplici e intuitivi per molti problemi in P. Più interessante, per alcuni problemi NP-difficili l'algoritmo avido / locale ovvio e naturale si traduce in un fattore di approssimazione (dimostrabile) ottimale (sotto ipotesi teoriche di complessità adeguate). Un classico esempio è il problema con la copertina . Un algoritmo naturale avido fornisce un fattore di approssimazione O (ln n), che è ottimale a meno che P = NP.

Nomina alcuni algoritmi naturali avidi / locali per problemi NP-difficili che sono dimostrati ottimali in base a ipotesi teoriche di complessità adeguate.


Suresh (o) Ryan, puoi per favore aggiungere un tag chiamato "durezza di approssimazione" e taggare questa domanda. Non posso aggiungere nuovi tag con la mia attuale reputazione :( Inoltre, poiché i tag lunghi (> 20 caratteri) non sono consentiti, suppongo che dovrebbe essere una durezza approssimativa.
Shiva Kintali

Ciao Shiva, ho aggiunto il tag di durezza approssimativa come mi hai suggerito, ma personalmente penso che la durezza di approssimazione suona meglio e dovrebbe essere possibile in quanto è più breve degli algoritmi di approssimazione.
Kaveh,

6
Prima frase ben scelta. ;)
AlcubierreDrive

Risposte:


19

Il metodo delle aspettative condizionali (per derandomizzare gli algoritmi di "assegnazione casuale" per Max-Cut e Max-SAT) può essere visto come una strategia avida: per , scegli il valore di una variabile x i tale che il numero previsto di vincoli soddisfatti nell'istanza ridotta risultante supera il numero previsto di vincoli soddisfatti nell'istanza corrente. (In realtà, l'algoritmo greedy per 1 / 2 -approximating Max-Cut è la stessa come "metodo di valore atteso condizionato" algoritmo per 1 / 2 -approximating Max-Cut.)i=1,,nxi1/21/2

Poiché il metodo funziona anche per Max-E3-SAT e raggiunge un -approximation, questo è un esempio di un algoritmo greedy che è un'approssimazione ottimale soltanto P = N P (cfr Hastad e Moshkovitz-Raz di risultati inapproximability per Max -E3-SAT).7/8P=NP


16

Copertura del vertice: il miglior algoritmo di approssimazione dei fattori costanti comporta (avidamente) la ricerca di una corrispondenza massima e la selezione di tutti i vertici coinvolti come soluzione approssimativa. Ciò produce una soluzione approssimativa di 2 e nessuna migliore approssimazione a fattore costante è possibile a meno che la congettura dei giochi unici sia falsa.

Subhash Khot e Oded Regev, la copertina di Vertex potrebbe essere difficile da approssimare entro 2 − ε , JCSS 74 (3), 2008.

Fuori tema: penso che questo sia un algoritmo di approssimazione davvero carino, soprattutto perché è così banale con il senno di poi.


1
l'algoritmo di matching massimo è davvero avido?
Suresh Venkat,

Sì, poiché fa una scelta localmente ottimale ad ogni passaggio. L'algoritmo rende effettivamente una scelta locale / fattibile, ma poiché i bordi non sono ponderati, questa è anche una scelta ottimale.
gphilip,

11

Dato un grafico diretto, trova il sottografo aciclico con il numero massimo di spigoli.

Algoritmo di approssimazione 2 Trivial: scegli un ordinamento arbitrario di vertici e prendi i bordi in avanti o indietro.

Battere l'approssimazione 2 è noto per essere un gioco unico (anche se potrebbe non essere NP-difficile).

  • Vincere l'ordinamento casuale è difficile: inapprossimabilità del massimo sottografo aciclico Venkatesan Guruswami, Rajsekar Manokaran e Prasad Raghavendra.

11

La massimizzazione sottomodulare rispetto al vincolo di cardinalità ha un'approssimazione avida di 1-1 / e. L'algoritmo è dovuto a Nemhauser, Wolsey, Fisher. La durezza NP deriva dalla durezza np della copertura impostata poiché la copertura massima è un caso speciale di massimizzazione sottomodulare.


1
L'analisi di Nemhauser-Wolsey-Fisher dell'algoritmo avido serve solo a massimizzare il soggetto a un semplice vincolo di cardinalità. Greedy dà solo -approximation anche per il semplice matroide partizione. L' approssimazione ( 1 - 1 / e ) per massimizzare una funzione sottomodulare soggetta a un matroide arbitrario è un risultato recente dovuto a Vondrak e ad altri (incluso me stesso). Si basa su diversi strumenti e non è un algoritmo avido. 1/2(11/e)
Chandra Chekuri,

Naturalmente, errore mio. Modificata la risposta per riflettere la correzione.
Ashwinkumar BV,

10

Greedy fornisce un'approssimazione (1-1 / e) di Max-k-cover, e questo non può essere migliorato a meno che P = NP.


Penso che questo sia lo stesso problema della risposta di @ AshwinkumarBV, che immagino sia stata pubblicata mentre stavo scrivendo la mia ...
Lev Reyzin


6

kG=(V,E)dij0i,jVk

kSV,|S|=kkkkrr

iVS|S|<kjVd(j,S)S|S|=k

2kρρ<2P=NPkk2



1

Forse questo potrebbe interessarti anche (adattato dai metodi per tradurre i vincoli globali in vincoli locali )

Poiché i metodi avidi (metodi più correttamente locali ) utilizzano solo informazioni locali per ottenere l'ottimizzazione globale, se vengono individuati modi in grado di trasformare le condizioni globali in condizioni che possono essere utilizzate utilizzando solo informazioni locali, ciò fornisce una soluzione (globale) ottimale ai problemi usando solo tecniche avide / locali.

Riferimenti:

  1. Pensare a livello globale, adattarsi a livello locale: apprendimento senza supervisione di collettori a bassa dimensione (Journal of Machine Learning Research 4 (2003))
  2. Ottimizzazione globale utilizzando le informazioni locali con applicazioni per il controllo del flusso, Bartal, Y.
  3. Why Natural Gradient ?, Amari S., Douglas SC
  4. Ottimizzazione locale degli obiettivi globali: risoluzione competitiva dei deadlock distribuiti e allocazione delle risorse, Awerbuch, Baruch, Azar, Y.
  5. Apprendimento con coerenza locale e globale
  6. Vincoli problemi di soddisfazione risolvibili con metodi di coerenza locale

Ci sono un paio di riferimenti che affrontano il problema della traduzione delle funzioni di valutazione globali (o vincoli) in quelle locali (usando le informazioni locali) e della loro coerenza (cioè convergenza con lo stesso ottimale globale):

  1. Funzioni di valutazione locale e funzioni di valutazione globale per l'evoluzione computazionale, HAN Jing, 2003
  2. Emersione dalla funzione di valutazione locale, Han Jing e Cai Qingsheng, 2002

Estratto (da 1. sopra)

Questo documento presenta un nuovo sguardo sull'evoluzione computazionale dall'aspetto della località e della globalità delle funzioni di valutazione per risolvere il problema combinatorio classico: il problema del kcoloring (problema decisionale) e il problema minimo di colorazione (problema di ottimizzazione). Per prima cosa esaminiamo gli algoritmi attuali e modelliamo il problema della colorazione come un sistema multi-agente. Mostriamo quindi che la differenza essenziale tra algoritmi tradizionali (ricerca locale, come ricottura simulata) e algoritmi distribuiti (come il modello Alife & AER) risiede nella funzione di valutazione: la ricottura simulata utilizza le informazioni globali per valutare l'intero stato del sistema, che viene chiamato il metodo della funzione di valutazione globale (GEF); il modello Alife & AER utilizza le informazioni locali per valutare lo stato di un singolo agente, che è chiamato metodo LEF (Local Evaluation Function). Confrontiamo le prestazioni dei metodi LEF e GEF per risolvere i problemi di colorazione k e i problemi minimi di colorazione. I risultati sperimentali al computer mostrano che il LEF è paragonabile ai metodi GEF (Simulated Annealing e Greedy), in molti casi problematici il LEF batte i metodi GEF. Allo stesso tempo, analizziamo il rapporto tra GEF e LEF: coerenza e incoerenza. Il teorema di coerenza mostra che Nash Equilibria di un LEF è identico all'optima locale di un GEF quando il LEF è coerente con il GEF. Questo teorema spiega in parte perché il LEF può condurre il sistema a un obiettivo globale. Vengono proposte alcune regole per costruire un LEF coerente. Oltre alla coerenza,

Nello specifico il documento affronta i metodi per determinare se una funzione locale (LEF) è coerente con una funzione globale (GEF) e metodi per costruire LEF coerenti da determinati GEF ( teorema di coerenza ).

Estratto dalla sezione Conclusioni (dal punto 1. sopra)

Questo documento è solo l'inizio degli studi LEF e GEF. Oltre al rapporto di ricerca di cui sopra, c'è ancora molto lavoro futuro: più esperimenti sui metodi LEF; studio analitico su LEF; sufficienza delle informazioni locali per LEF; e l'esistenza di un GEF coerente per qualsiasi LEF; Il concetto di coerenza è sufficiente? Poiché gli algoritmi genetici hanno anche una funzione di valutazione (funzione fitness), possiamo applicare LEF e GEF agli algoritmi genetici? ... È nostra intenzione studiare e tentare di rispondere a tutte queste domande

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.