Qual è la classe di complessità più strettamente associata a ciò che la mente umana può realizzare rapidamente?


59

Questa domanda è qualcosa che mi chiedevo da un po '.

Quando le persone descrivono il problema P vs. NP, spesso confrontano la classe NP con la creatività. Notano che comporre una sinfonia di qualità Mozart (analoga a un'attività NP) sembra molto più difficile che verificare che una sinfonia già composta sia di qualità Mozart (che è analoga a un'attività P).

Ma NP è davvero la "classe di creatività?" Non ci sono molti altri candidati? C'è un vecchio detto: "Una poesia non è mai finita, solo abbandonata". Non sono un poeta, ma per me questo ricorda l'idea di qualcosa per la quale non esiste una risposta giusta definita che può essere verificata rapidamente ... mi ricorda più il coNP e problemi come TAUTOLOGIA che NP o SAT. Immagino che ciò che ottengo sia che è facile verificare quando una poesia è "sbagliata" e deve essere migliorata, ma difficile da verificare quando una poesia è "corretta" o "finita".

In effetti, NP mi ricorda più la logica e il pensiero sinistro che la creatività. Prove, problemi di ingegneria, puzzle di Sudoku e altri "problemi cerebrali" stereotipati sono più NP e facili da verificare dal punto di vista della qualità rispetto alla poesia o alla musica.

Quindi, la mia domanda è: quale classe di complessità cattura più precisamente la totalità di ciò che gli esseri umani possono realizzare con le loro menti? Mi sono sempre chiesto pigramente (e senza prove scientifiche a supporto della mia speculazione) se forse il cervello sinistro non è un risolutore SAT approssimativo e il cervello destro non è un risolutore TAUTOLOGIA approssimativo. Forse la mente è impostata per risolvere i problemi di PH ... o forse può persino risolvere i problemi di PSPACE.

Ho offerto i miei pensieri sopra; Sono curioso di sapere se qualcuno può offrire spunti migliori al riguardo. Per affermare la mia domanda in modo succinto: sto chiedendo quale classe di complessità debba essere associata a ciò che la mente umana può realizzare, e per prove o argomenti a sostegno del tuo punto di vista. Oppure, se la mia scelta è errata e non ha senso confrontare gli umani e le classi di complessità, perché è così?

Grazie.

Aggiornamento : ho lasciato tutto tranne il titolo intatto sopra, ma ecco la domanda che volevo davvero porre: quale classe di complessità è associata a ciò che la mente umana può realizzare rapidamente ? Cos'è il "tempo umano polinomiale", se vuoi? Ovviamente, un essere umano può simulare una macchina di Turing con infiniti tempi e risorse.

Sospetto che la risposta sia PH o PSPACE, ma non riesco davvero a articolare un argomento intelligente e coerente sul perché questo sia il caso.

Nota anche: sono principalmente interessato a ciò che gli umani possono approssimare o "fare la maggior parte del tempo". Ovviamente, nessun essere umano può risolvere casi difficili di SAT. Se la mente è un risolutore di X approssimativo e X è completo per la classe C , è importante.


18
+1 per aver sottolineato che sorprendentemente molte sfide del design nella vita reale hanno un sapore coNP. Si applica anche all'ingegneria. Se una macchina si rompe o un ponte crolla, questa è una prova facilmente verificabile che il design era cattivo, ma come dimostrare che un design è buono ...?
Jukka Suomela,

4
I cervelli sono dispositivi fisici e quindi finiti. La classe di complessità che stai cercando è un sottoinsieme proprio di SPACE (O (1)) = TIME (O (1)).
Jeffε

15
@JeffE: Anche i computer sono dispositivi fisici, e quindi finiti. Eppure pensiamo ancora che le classi di complessità ci aiutino a capire i computer (anche se non in modo inequivocabile, vale a dire le molte discussioni su "cosa succede se P = NP ma l'esponente o le costanti sono enormi"). D'altra parte, la potenza di un singolo computer aumenta su una scala temporale molto più veloce della potenza di un singolo cervello ...
Joshua Grochow

4
Penso che sia stata Punya Biswal a inventare questa battuta: la ragione per cui abbiamo difficoltà a trovare funzioni esplicite e dure è che il nostro cervello non è abbastanza potente da immaginare tali funzioni :)
arnab

3
Joshua: Gli informatici teorici non studiano i computer; studiamo le astrazioni matematiche dei computer. Dammi un'astrazione matematica di un cervello umano e probabilmente risponderai alla tua stessa domanda.
Jeffε

Risposte:


17

Non pretendo che questa sia una risposta completa, ma qui ci sono alcuni pensieri che si spera siano sulla falsariga di ciò che stai cercando.

NP corrisponde approssimativamente ai "puzzle" (vale a dire la completezza NP di Sudoku, Minesweeper, Free Cell, ecc., Quando questi puzzle sono opportunamente generalizzati per consentire ). PSPACE corrisponde a "partite a 2 giocatori" (vale a dire la completezza PSPACE di scacchi, gioco, ecc.). Questa non è una novità.n

Le persone generalmente sembrano fare bene con esempi finiti di enigmi NP-completi, e tuttavia li trovano abbastanza banali da essere divertenti. Le istanze finite di giochi completi di PSPACE a cui giochiamo sono considerate alcuni dei compiti intellettuali più difficili di questo tipo. Questo almeno suggerisce che PSPACE sta "colpendo i limiti superiori" delle nostre capacità. (Eppure i nostri avversari in questi giochi completi di PSPACE sono generalmente altre persone. Anche quando gli avversari sono computer, i computer non sono avversari perfetti. Questo si dirige verso la questione del potere delle prove interattive quando i giocatori sono limitati dal punto di vista computazionale. anche il tecnicismo che alcune generalizzazioni di questi giochi sono complete EXP anziché complete di PSPACE.)

In una certa misura, le dimensioni del problema che si presentano in puzzle / giochi reali sono state calibrate in base alle nostre capacità. Il Sudoku 4x4 sarebbe troppo facile, quindi noioso. Il Sudoku 16x16 richiederebbe troppo tempo (non più della vita dell'universo, ma più di quanto le persone siano generalmente disposte a sedersi per risolvere un puzzle di Sudoku). 9x9 sembra essere la dimensione "Riccioli d'oro" per le persone che risolvono il Sudoku. Allo stesso modo, giocare a Free Cell con un mazzo di 4 semi di 13 carte ciascuno e 4 celle libere sembra avere la giusta difficoltà per essere risolvibile ma stimolante per la maggior parte delle persone. (D'altra parte, una delle persone più intelligenti che conosco è in grado di risolvere i giochi di Free Cell come se stesse contando i numeri naturali "1,2,3,4, ...") Analogamente per le dimensioni di Go e Chess stiro.

Hai mai provato a calcolare un permanente 6x6 a mano?

Suppongo che il punto sia che se prendi problemi naturali in classi significativamente al di sopra di PSPACE (o EXP), gli unici casi finiti che le persone sono in grado di risolvere sembrano essere così piccoli da non essere interessanti. Parte del motivo per cui "naturale" è necessario qui è che si può prendere un problema naturale, quindi modificare "innaturalmente" tutte le istanze di dimensione modo che per tutti i casi un essere umano possa mai provare il problema diventa totalmente intrattabile, indipendentemente dalla sua complessità asintotica.<1010

Al contrario, per problemi in EXP, qualsiasi dimensione del problema al di sotto del "tallone dell'esponenziale" ha la possibilità di essere risolvibile dalla maggior parte delle persone in un ragionevole lasso di tempo.

Per quanto riguarda il resto del PH, non ci sono molti (nessuno?) Giochi naturali che le persone giocano con un numero fisso di round. Ciò è anche in qualche modo correlato al fatto che non conosciamo molti problemi naturali completi per livelli di PH superiori al terzo.

Come menzionato da Serge, FPT ha un ruolo da svolgere qui, ma (penso) principalmente nel fatto che alcuni problemi hanno naturalmente più di una "dimensione di input" associata ad essi.


13

La tesi Tractable Cognition postula che le capacità cognitive umane sono vincolate dalla tracciabilità computazionale. In questo modo, la tesi P-Cognition utilizza il tempo polinomiale deterministico come modello per la trattabilità computazionale, mentre nel documento che segue, si sostiene che la tesi FPT-Cognition è più appropriata. Vedi l'articolo di Iris van Rooij nell'edizione di giugno 2009 della newsletter sulla complessità parametrizzata per una discussione più dettagliata e indicazioni per altri articoli.


C'è qualche prova che questo sia vero?
yters

13

Penso che uno sia condotto al modello sbagliato provando a estrapolare dal tipo di cose che il cervello umano sembra calcolare, e penso che sarebbe meglio prendere la visione opposta e invece estrapolare dal modello computazionale che è.

Quindi, per me la classe di complessità che più ragionevolmente cattura la mente umana è la classe di circuito non uniforme . Questa visione è supportata modellando il funzionamento del cervello come una rete neurale che esegue calcoli in un istante.TC0

Inoltre, non sono d'accordo con l'affermazione nella domanda che la mente umana può simulare una macchina di Turing. Piuttosto, ciò che può fare è simulare il controllo finito della macchina di Turing. Per eseguire compiti molto complicati, sembra necessario essere in grado di registrare informazioni su un "nastro".


2
Per quanto riguarda la simulazione umana di una MT ... supponevo che agli umani fossero concesse risorse ragionevoli, come carta e matita. Il tuo punto è giusto però.
Philip White

3
Punto di vista interessante, ma non credo che arrivi abbastanza a ciò che l'OP stava chiedendo. La divisione dei numeri interi è completa per (una versione uniforme di) con riduzioni (secondo lo Zoo). Tuttavia la divisione intera deve essere vicina a uno dei compiti più semplici che la mente umana può svolgere. Forse qualche versione più generale delle reti neurali si adatterebbe meglio qui? T C 0 A C 0TC0TC0AC0
Joshua Grochow,

4
Annotare i fatti è senza dubbio uno dei motivi principali per cui siamo progrediti come umani e forse ha anche fatto evolvere il nostro cervello. Per lo meno, ci consente di costruire una base su cui costruire le nostre idee (ad esempio immaginiamo se TCS o qualsiasi altro campo fosse basato solo sulla parola). Per questo motivo, credo che se si rimuove l'abilità umana "matita e carta", si potrebbe anche rimuovere il nastro dalla TM e ridurlo a una semplice macchina finita.
Chazisop,

2
@Joshua: Sono d'accordo, la divisione (o moltiplicazione, o semplicemente il conteggio semplice) è un compito facile. Ma penso che questo argomento sia in qualche modo invalidato se si consentono riduzioni alla divisione. Consentitemi di riformulare un vecchio detto: per quanto ne sappiamo, tutto il NEXP può essere calcolato in modo efficiente da circuiti non uniformi di profondità 3 costituiti da porte di "divisione". AC0
Kristoffer Arnsfelt Hansen,

2
Punto valido. Suppongo che se il NEXP potesse essere calcolato da tali circuiti "semplici", ciò costituirebbe una prova abbastanza forte che un cervello costituito da neuroni "semplicemente semplici" potrebbe davvero essere abbastanza potente, il che concorda con la nostra esperienza. OTOH, penso che il circuito del cervello abbia una profondità molto più alta di 3 :).
Joshua Grochow,

10

Le classi di complessità sono definite in termini di complessità asintotica, quindi non si adattano bene alle capacità cognitive degli esseri umani, che sono necessariamente limitate a dimensioni del problema limitate.

La regola empirica è: se qualcosa è facile per un computer, allora potrebbe essere difficile per un essere umano, viceversa, se è difficile per un computer potrebbe essere facile per un essere umano.

Qui "facile / difficile per un computer" si riferisce alla tracciabilità pratica, non a una classe di complessità astratta.

Ad esempio, sommare un elenco di 1 miliardo di numeri interi è facile per un computer moderno e difficile per un essere umano, mentre produrre una descrizione verbale di un'immagine è facile per un essere umano ma difficile (attualmente impossibile nel caso generale) per un computer.

La ricerca sull'intelligenza artificiale ha mostrato che molti compiti cognitivi che l'uomo e gli animali svolgono facilmente, in alcuni casi anche inconsciamente, possono essere modellati come problemi NP-difficili. Gli esseri umani non sono in grado di trovare soluzioni ottimali a questi problemi per tutte le dimensioni, ma sono in grado di trovare soluzioni euristiche per dimensioni pratiche molto meglio degli algoritmi AI più noti.

Si noti inoltre che la distinzione tra cervello sinistro e cervello destro menzionata è troppo semplicistica e obsoleta. La lateralizzazione delle funzioni cerebrali è molto più sottile e può persino variare da un individuo all'altro.


1
+1 per il primo paragrafo, -1 per tutto il resto. MOLTE attività sono facili sia per l'uomo che per il computer e MOLTE altre attività sono difficili per entrambi.
Jeffε

1
Ho pensato che fosse ovvio che ci sono compiti banali che sono facili sia per gli umani che per i computer, comunque sto aggiornando la mia risposta per renderlo più esplicito.
Antonio Valerio Miceli-Barone,

2

Se scegliamo di studiare il cervello umano stesso piuttosto che il modo in cui gli umani usano il cervello per risolvere i problemi, non credo che si tratti di una questione di complessità, ma piuttosto di calcolabilità. Poiché ogni TM ha bisogno di una funzione di transizione, un essere umano può imitare i suoi passi, quindi il cervello umano è Turing completo.

Nella direzione opposta, le TM possono calcolare tutto ciò che gli umani fanno? La risposta breve è che non lo sappiamo. Supponendo che la tesi di Church-Turing sia vera, se la risposta cambierà o meno dipende dalla tua visione del mondo (filosofica, spirituale, religiosa e altro). In tal caso, possiamo tranquillamente affermare che il cervello umano stesso come parte del mondo materiale, può essere simulato da una macchina di Turing. Il resto è in discussione e, almeno secondo me, non legato al TCS.

Si potrebbe sostenere che se tutti i problemi in ridurrebbero per tutta la vita. Ma stiamo parlando del potere del cervello stesso. La tabella di transizione e il nastro di lavoro potrebbero essere trasmessi di generazione in generazione fino alla risoluzione della risposta. Anche se richiediamo che i problemi risolvibili dagli esseri umani non superino la durata di vita di una sola persona, fa , che è solo lineare, sembra fattibile? Penso di no. Si può sostenere che esiste una TM che fa lo stesso in solo usando il teorema dell'accelerazione, ma che richiederebbe la memorizzazione diN P - P 10 10 100 n n 2 log 10 10 100PNPNPP1010100nn2log1010100volte più informazioni in ogni fase dell'algoritmo accelerato. Naturalmente, sarebbe necessario un limite inferiore specifico per garantire che non esista un algoritmo più veloce (costanti incluse).

Quindi, se desideri calcolare con precisione quali problemi il cervello umano, dati i vincoli della vita reale, come le distrazioni, l'intervallo di attenzione, ecc., Dovresti avere un limite superiore sul numero di passaggi effettuati in totale, un limite superiore sul numero di passaggi eseguiti consecutivamente (anche il ricercatore più devoto deve dormire e mangiare), una limitazione dello spazio (non solo nel nastro, ma anche in tutti i registri "interni"), una simulazione di come la memoria agisce perché, a differenza delle TM, noi può dimenticare qualcosa che scriviamo nel nostro "nastro di lavoro" o lo stato esatto e, naturalmente, determinare la relazione tra i passi del tempo della macchina e il tempo in secondi o "passi del cervello umano". Forse potrebbero apparire altri problemi come faresti tu. In una svolta ironica, forse uno o più di questo problema non possono essere risolti dal cervello umano, almeno in modo efficiente.


Supponendo che un essere umano abbia una memoria finita, Turing non è completo. Al massimo, può simulare macchine arbitrarie a stati finiti, fino a una certa dimensione. Un essere umano immortale con infinita carta, matite e pazienza sarebbe Turing completo.
Antonio Valerio Miceli-Barone,

@ user1749, sì, questa è l'idea in realtà. Se ti piacerebbe vedere il cervello umano per quello che è e non perché è collegato a un essere umano. I computer stanno diventando completi ma hanno una vita molto più piccola di quella di qualsiasi essere umano. Sono sicuro che una TM fisica non durerebbe neanche per millenni.
Chazisop,

2

Bene, è la classe di funzioni che una rete neurale (dimensione polinomiale) può risolvere in tempo costante. Nel tempo polinomiale potrebbe gestire con precisione e nel tempo di polilogo . Ma forse dovremmo consentire in modo esponenziale molti neuroni e tempi polinomiali? Credo che questo produca la gerarchia di conteggio, costruita su . Il numero di livelli della gerarchia è, credo, il numero di volte in cui un neurone usa la sua capacità di avere un afflusso esponenziale.P NC#PThC0PNC#P


-1

Se dai a un essere umano una matita e una carta, può risolvere quasi ogni problema, agendo come una macchina. Quindi penso che questo non possa essere il punto.

Imho ciò che rende il pensiero umano è l'astrazione, cioè gli umani non gestiscono le cose (in primo luogo), creano viste sulle cose. Sebbene, come devo ammettere, non posso fornire alcuna teoria quasi pronta all'uso per l'astrazione.

| =


-1

Ho pensato a questa domanda per molto tempo. Questo è ciò a cui sono arrivato:

noi umani di solito pensiamo in oggetti mentali astratti e non in algoritmi. I numeri che conosciamo, la lingua che parliamo, il pensiero era una volta un'idea astratta. Queste idee furono estese da filosofi, scienziati e poi messe in pratica. Quello che abbiamo è diverso da come hanno avuto origine.

La tua domanda: "Quale classe di complessità cattura con precisione la totalità di ciò che gli esseri umani possono realizzare con le loro menti?" si può rispondere solo se ci sono prove sufficienti che gli umani seguano modelli matematici / algoritmici / probabilistici. Bene, potrebbero seguire ognuna delle precedenti o una combinazione di esse. Ma in realtà sono qualcosa di diverso. Questo è solo il normale pensiero umano. Abbattere i pensieri creativi come la composizione di Mozart, una poesia o il pensiero di uno sportivo nei rispettivi modi formali (metodi matematici / logici del loro pensiero) e cercare di generalizzare sarebbe una vera impresa, non sono sicuro se ciò sarà possibile.

Penso anche che potremmo approssimare la classe di complessità, ma non possiamo mai esserne sicuri.

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.