Risorse per conoscere il problema P vs. NP


12

Di recente mi è stato ricordato il problema vs. N P , come spiegato da Stephen A. Cook sul Clay Mathematics Institute.PNP

Ha suscitato il mio interesse e vorrei saperne di più. Il primo passo sarebbe ottenere una comprensione più profonda del problema e una comprensione dell'area in generale.

Puoi consigliare libri o altre risorse in cui posso saperne di più sul problema?


Crossposted da math.stackexchange.com/questions/13742/… , che al momento non ha risposte.
Tsuyoshi Ito,

Risposte:


11

È bello vedere un compagno universitario alla ricerca di questo grande problema, con un tale entusiasmo. Permettimi di offrirti un consiglio dalle mie stesse esperienze.

è un problema molto interessante. Le implicazioni della risposta sono immense, specialmente nel caso in cui le due classi siano uguali. La ricompensa è ottima in molti livelli, da quello scientifico altruistico al premio materialistico in denaro. Ciò porta molti giovani che incontrano il problema nel tentativo di risolverlo, senza una conoscenza limitata o limitata.PNP

Forse la maggior parte degli studenti di teoria attraversa quella fase. Avrai un'idea e penserai che sia giusto, ma è quasi certo che ti sbagli. Alcune persone non superano mai quella fase e si imbarazzano essendo troppo testardi per ammettere i propri errori.

In FOCS 2010, Rahul Santhanam ha paragonato la domanda a un mostro mitico. Ci vorrebbero molti sacrifici e coraggio anche per provare a sconfiggere questo mostro. Dopotutto, potrebbe essere il problema più difficile di sempre. Per avere una possibilità di combattere, dovrai studiare molto su questo problema e sulla complessità in generale. Non saprai mai quale sarà la "debolezza del mostro".PNP

Quindi il mio consiglio è questo: prenditi il ​​tuo tempo per conoscere il problema. Ogni volta che trovi una soluzione, supponi che ti sbagli in qualche modo e prova a trovare il problema con essa. In questo modo imparerai molto.

Per quanto riguarda i riferimenti, consiglierei anche il libro di Sipser. Dopo averlo finito, consiglierei "Computational Complexity: A modern approach" di Arora e Barak, un libro più orientato alla complessità, che richiede una buona comprensione del concetto di calcolo.


4
Grazie per le tue parole di saggezza. Se sono del tutto onesto, più imparo a conoscere il problema, più sembra impossibile per qualcuno trovare una soluzione. Certamente molto interessante!
Jon Cox il

4
PvsNP

2
Inoltre, se fosse un mostro, smetterei immediatamente di inseguirla perché odio i mostri :)
Mohammad Al-Turkistany,

9

Consiglio vivamente "Introduzione alla teoria della computazione" di Sipser, in particolare perché copre almeno uno dei principali ostacoli alla risoluzione di P vs. NP, vale a dire la relativizzazione. Contiene una prova molto chiara del risultato Baker-Gill-Solovay. Non sono sicuro che contenga qualcosa sui risultati di Razborov-Rudich, ma è una risorsa introduttiva fantastica, molto chiara e di facile lettura per l'apprendimento non solo di P vs. NP ma anche di molti altri argomenti correlati nella teoria della complessità. ..questo è significativo perché se il tuo interesse è nel cercare di risolvere il problema, vorrai avere un po 'di conoscenza nel campo e idee su dove iniziare.


Grazie per il suggerimento, ne prenderò una copia dalla biblioteca e dovrò dare un'occhiata attraverso :)
Jon Cox il

7

PNP

In bocca al lupo. Il problema sembra essere difficile. :-)


7
sembra essere difficile è una descrizione molto sottovalutata della durezza di P vs NP. :)
Hsien-Chih Chang 張顯 之

Grazie per il suggerimento, ci sono un buon numero di materiali da verificare lì.
Jon Cox il


4

Il classico riferimento per completezza NP è il libro di Garey e Johnson (http://tinyurl.com/2w5yofs). È istruttivo e completo.

Personalmente, ho imparato da Kleinberg Tardos (http://tinyurl.com/37dtyyl), perché la mia Università lo ha usato.


Eccellente, ho già una copia del libro di Klienberg Tardos per un corso che svolgerò e oggi riceverò il libro di Garey e Johnson dalla biblioteca. Grazie per avermelo fatto notare.
Jon Cox il

3

Vorrei anche suggerire di prendere un'istanza del problema e provare a risolverlo. È buona norma sperimentare problemi aperti. Per esperimento intendo, puoi scrivere programmi o implementare algoritmi conosciuti da altri e capire come funzionano, dove falliscono ecc. Inoltre, puoi scoprire diverse tecniche di prova. Ricorda, non ti metteranno in prigione se studi e lavori molto su questo e non riesci a trovare alcuna soluzione. Al contrario, il tuo livello di competenza è garantito per aumentare.

Nella maggior parte dei casi, questi problemi in generale sono difficili da risolvere rispetto ai loro casi specifici . Leggi su NFL per avere un'idea.

Nel mio caso sono stato presto sepolto sotto un pool di idee e concetti correlati. Ci sono modifiche di programmazione / codifica e ci sono manovre teoriche. Ad esempio, se vuoi risolvere qualsiasi istanza problematica usando i concetti di algoritmo genetico, scopriresti presto che GA da solo è un vasto mondo da scoprire! Recentemente ho imparato a conoscere l' apprendimento dei collegamenti in GA / EA. Non ne so molto però.

Inoltre, quando si tenta di codificare le cose, alcuni linguaggi / strumenti di programmazione sono migliori / più facili di altri. Mi sono perso nella discussione del perché Alex Stepenov ritiene che OOP sia matematicamente errato e quale sia il vantaggio della programmazione funzionale. Non ho la pista ma ricordo chiaramente, all'inizio stavo studiando un problema NP-Complete / Hard.

Ti do il benvenuto, poiché il viaggio è seppur avventuroso!





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.